hyperhive/hive-core-agent-sock
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 87970a8c93 mcp: remove the restart/kill/start/update/get_logs agent verbs
Container lifecycle from inside an agent goes away: an agent no longer
starts, stops, restarts or rebuilds a container in its subtree, and no
longer reads another container's journal. Those are operator actions —
the dashboard and hivectl keep their own paths to the same job-queue
and hive-priv plumbing, which is why none of that machinery is removed
here, only the five MCP verbs and what they alone reached.

What went with them: the `Request` variants and `Response::Logs` on the
agent socket, the five tool definitions and their arg structs, the four
lifecycle handlers plus `handle_get_logs`, and `require_descendant` —
the topology guard those five were the only remaining callers of.
`ToolGroup::Diagnostics` goes too: `get_logs` was its only tool, so it
would otherwise be a grantable group that grants nothing. `lifecycle`
stays, now carrying `list_containers` alone.

An agent that gets a `needs_update` or `container_crash` helper event
has no remedy of its own left, so the system prompt and the docs now
send it to the operator instead of to a tool that no longer exists.

Refs #4480
2026-09-19 10:47:39 +02:00
..
src mcp: remove the restart/kill/start/update/get_logs agent verbs 2026-09-19 10:47:39 +02:00
Cargo.toml docs(#2627): add READMEs for the remaining infra crates 2026-07-23 13:16:29 +02:00
README.md treefmt: apply prettier 2026-09-02 15:25:07 +02:00

hive-core-agent-sock

Wire types for the per-agent + manager socket (/run/hive/mcp.sock) — the unified Request / Response protocol spoken between an agent's in-container harness (and the manager) and the hive-c0re daemon.

Why it's its own crate

Re-homed out of hive-sh4re so this one socket owns its protocol crate, mirroring the hive-host-sock / hive-priv-sock splits. The shared payload types it references (Message, LooseEnd, Approval, …) stay in hive-sh4re, which this crate depends on — this crate is just the request/response envelope for this socket.

Not to be confused with hive-agent-sock

This is the host-served protocol: the harness talks out to hive-c0re over /run/hive/mcp.sock (broker sends, approvals, lifecycle). hive-agent-sock is the separate in-container socket the harness serves to its own local producers — that one never leaves the container. See docs/trust-boundary/boundary.md for the socket topology.