set_status: consolidate whoami into get_agent_meta with optional name

This commit is contained in:
damocles 2026-05-23 10:57:27 +02:00 committed by Mara
parent 77fdaf0d1e
commit 73871f18c3
10 changed files with 118 additions and 204 deletions

View file

@ -214,8 +214,17 @@ it as a stdio child via `--mcp-config`. The hyperhive socket name is
short pointer. Each agent's pending-reminder count is capped
(default 50, override via `HIVE_REMIND_MAX_PENDING_PER_AGENT`);
scheduling a new one fails if the cap is already hit.
- `whoami()``{ name, role, pronouns, hyperhive_rev }` for
self-identification without scraping the system prompt.
- `set_status(text)` — set a free-text status string visible on
the operator dashboard. Persisted to
`{state_dir}/hyperhive-status`; survives harness restarts. Pass
an empty string to clear.
- `get_agent_meta(name?)` — fetch identity + status metadata for
an agent: `{ name, role, hyperhive_rev, status_text,
status_set_at }`. Pass `name` to query a peer (e.g. check
whether a sub-agent is idle before sending it work). Omit
`name` to get your own identity stamp — replaces the previous
`whoami` tool. Status fields are `None` when the target has
never called `set_status` or has cleared it.
- `request_next_turn()` — ask the harness to start another turn
immediately after this one ends, even if the inbox is empty. Use for
multi-turn tasks (long builds, sequential steps) where you want to
@ -314,10 +323,11 @@ meta's.
startup crashes, etc.). Pass the plain logical agent name;
hive-c0re resolves the machine name (`h-<name>`, manager
`hm1nd`). `lines` defaults to 50, host-capped at 500.
- `remind` / `get_loose_ends` / `cancel_loose_end` / `whoami`
same as the sub-agent tools above. `get_loose_ends` scopes to
the manager's own items by default; pass `agent: "*"` for a
hive-wide view, or `agent: "<name>"` to inspect one agent.
- `remind` / `get_loose_ends` / `cancel_loose_end` / `set_status`
/ `get_agent_meta` — same as the sub-agent tools above.
`get_loose_ends` scopes to the manager's own items by default;
pass `agent: "*"` for a hive-wide view, or `agent: "<name>"`
to inspect one agent.
`cancel_loose_end` may cancel any agent's row.
The boundary: lifecycle ops on *existing* sub-agents