| Filename | Latest commit message | Latest commit date |
|---|---|---|
mara's ruling on this PR: the principle that landed for the role path is general, so the no-role path moves the task out of the system prompt as well. `system_prompt_and_trigger`'s no-role branch still passed `prompt_file` straight through as `--append-system-prompt-file` — byte-identical to main's pre-PR behaviour, and the exact bug this PR exists to fix. Since no agent ships roles yet, every real dispatch takes this path, so the standing-system-prompt bug (a task re-asserting itself as an instruction on turn 2/3/N under continue/goal) was still live for 100% of usage; only the unused role path had actually been fixed. `compose_prompt` now always folds the task into `trigger`, role or not. Without a role there is no role text to hold a system-prompt file open for, so none exists at all — `--append-system-prompt-file` is omitted from the spawn entirely, not pointed at anything task-shaped. Replaces `without_a_role_the_task_file_is_what_claude_is_pointed_at` (which pinned the bug as "unchanged") with a test asserting the task is absent from what reaches `--append-system-prompt-file` and present in the trigger. Role-path tests are untouched in behavior; only mechanical fallout from `compose_prompt`'s `Option<PathBuf>` return and `&str` trigger params (clippy needless_pass_by_value once both branches only borrowed it). Blast radius: this changes behaviour for every existing dispatch, since prompt_file's content has always gone into the system-prompt file before this fix. |
||
| .. | ||
| bash.md | ||
| forge-cli.md | ||
| forge.md | ||
| hivectl-cli.md | ||
| hivectl.md | ||
| matrix.md | ||
| README.md | ||
| scheduling.md | ||
| subagent.md | ||
| swarm-logs-cli.md | ||
| swarmctl-cli.md | ||
Tools
hivectl is your tool — the operator's own host CLI. Everything
else here documents the tool surface your agents get inside their
containers (the MCP tools an agent's own claude session can call).
You never call these directly, but they're the reference for what an
agent can actually do — useful when you're trying to understand or
debug agent behavior.
For the operator
- hivectl — the curated guide: provisioning forge and matrix accounts, gateway htpasswd management, container lifecycle shortcuts, interactive agent shell access.
- hivectl-cli — the exhaustive, autogenerated flag-by-flag reference, kept in lockstep with the binary by CI.
For the swarm operator
- swarmctl-cli — the exhaustive, autogenerated
flag-by-flag reference for
swarmctl, kept in lockstep with the binary by CI the same wayhivectl-cli.mdis.swarmctlitself runs as root on the swarm-controller host, not throughhivectl— seeswarmctl/README.mdfor why. Two verb families today:user(authelia's subject store, edited in place) andagent create(queues the swarm-controller's creation job graph). No curated guide yet; add one here if/when that grows.
What your agents can do
- bash — background shell execution (
mcp__bash__*), available on every agent unconditionally. - subagent — spawn nested headless claude sessions
(
mcp__subagent__{start,continue,status,interrupt}), shipped default-on for every agent today alongsidebash(expected to become a real opt-in capability later). - forge — the
hive-forgeForgejo CLI every agent has for issues, PRs, and comments. Not an MCP tool — a binary agents shell out to instead of ad-hoc curl. - forge-cli — the exhaustive, autogenerated
flag-by-flag reference for
hive-forge, kept in lockstep with the binary by CI the same wayhivectl-cli.mdis. - matrix — the matrix MCP tool surface
(
mcp__matrix__*) for agents with a matrix account, multiple accounts per agent, and declaring extra MCP servers generally. - scheduling — scheduled prompts (operator
approval required) and the
get_host_journaldiagnostics tool.