agentleFS
MicrosoftKnown publishermicrosoft/Huabu/apps/server/src/prompt/external-agent/http-native/agents.md

Huabu / http-native

AGENTS.md168 starsChanged 8 months agoMITView on GitHub

Load this guide when work should be handled by a visible Agent conversation instead of direct Space operations. An Agent may use Huabu's default Profile or another available Profile. The entry marked default: true is the first selectable external Profile used when Agent creation omits profileId. If no entry is marked, explicitly choose an available Profile; do not assume Built-In Pi is an implicit fallback. The huabu Profile uses Huabu's configured model provider. Other Profiles use their own configured runtimes…

We split this agents.md into the rules it gives an agent

3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use JSON to choose a Profile, position, working directory, stable initial instructions, or optional parent conversation:

    line 26
  2. Very specific:

    Use JSON without prompt and set X-Huabu-Agent-Start: false:

    line 44
  3. Very specific:

    If you know the Agent Node but did not retain its creation response, resolve its existing thread association through INSPECT_NODES:

    line 59

≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
agents.md

Creating and Prompting Agents

Load this guide when work should be handled by a visible Agent conversation instead of direct Space operations. An Agent may use Huabu's default Profile or another available Profile.

1. Discover available Profiles

curl -fsS -H "$AUTH" "$HUABU_RFS_URL/agent/profiles"

The entry marked default: true is the first selectable external Profile used when Agent creation omits profileId. If no entry is marked, explicitly choose an available Profile; do not assume Built-In Pi is an implicit fallback.

The huabu Profile uses Huabu's configured model provider. Other Profiles use their own configured runtimes and do not depend on that provider.

2. Create and start an Agent

To use the configured default Profile, send the first prompt directly. This creates a visible Agent Node and immediately starts its first turn. An unconfigured or deleted default produces an explicit error rather than selecting another Agent.

curl -N -H "$AUTH" -H "Content-Type: text/plain" \
  --data-binary @./prompt.txt "$HUABU_RFS_URL/agent"

The response is SSE. Its created event contains the new nodeId, threadId, effective profileId, and parent-connection result. Save the threadId.

Use JSON to choose a Profile, position, working directory, stable initial instructions, or optional parent conversation:

curl -N -H "$AUTH" -H "Content-Type: application/json" \
  -H "X-Huabu-Host-Thread-Id: $HUABU_THREAD_ID" \
  --data-binary '{
    "profileId": "profile-id",
    "prompt": "Complete this bounded piece of work.",
    "position": { "x": 1200, "y": 480 },
    "workingDirPath": "/optional/absolute/path",
    "additionalInitialPreamble": "Optional stable role instructions."
  }' "$HUABU_RFS_URL/agent"

The parent thread is only a best-effort lineage hint. Missing parents or rejected edges produce a warning in the successful creation response; they never prevent Agent Node creation.

3. Create without starting

Use JSON without prompt and set X-Huabu-Agent-Start: false:

curl -fsS -H "$AUTH" -H "Content-Type: application/json" \
  -H "X-Huabu-Agent-Start: false" \
  --data-binary '{
    "profileId": "profile-id",
    "position": { "x": 1200, "y": 480 }
  }' "$HUABU_RFS_URL/agent"

The JSON response contains the same creation metadata. The Agent remains idle until prompted.

4. Continue an Agent conversation

If you know the Agent Node but did not retain its creation response, resolve its existing thread association through INSPECT_NODES:

THREAD_ID="$(curl -fsS -H "$AUTH" -H "Content-Type: application/json" \
  --data-binary '{"type":"INSPECT_NODES","ids":["node-123"]}' \
  "$HUABU_RFS_URL/query" \
  | node -e 'let s="";process.stdin.on("data",d=>s+=d).on("end",()=>process.stdout.write(JSON.parse(s).result.nodes[0]?.threadId ?? ""))')"

curl -N -H "$AUTH" -H "Content-Type: text/plain" \
  --data-binary @./follow-up.txt \
  "$HUABU_RFS_URL/agent/$THREAD_ID/prompt"

Only Question Nodes with a non-empty existing association include threadId; non-Question Nodes and unbound Questions omit it. Inspection is read-only and never creates or realizes Agent state. The prompt endpoint never creates another Agent or changes its Profile. The response is SSE, and closing the connection stops delivery without aborting the durable turn.

An Agent can repeat the same create-and-prompt workflow to delegate recursively. Prefer direct work when another Agent adds no useful specialization, isolation, or parallelism.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.