Expand description
caliband’s control-plane wire types.
These are caliban’s own definitions, re-exported from the published
caliban-contract crate (#239): serde-only, no daemon internals, so it is
not the wide coupling ADR-0003 rejected — that was caliban-supervisor,
the whole daemon. ADR-0003’s “revisit if” clause called for exactly this
once hand-mirroring became a drift source, and it had: the mirror never
learned caliban’s AgentStatus::Drained (caliban ADR 0057), so a single
drained agent failed the entire Listed reply.
What stays here is what has no upstream home: AttachInbound (caliban’s
per-agent attach protocol, not part of the control-plane contract) and the
boundary conversion to prospero’s own domain crate::model::AgentStatus,
which is prospero’s public API vocabulary and deliberately not caliban’s
type.
Structs§
- Agent
Record - Snapshot describing a registered sub-agent.
- Daemon
Status - Daemon status returned by
CtlRequest::Status. - Drained
Agent - One agent drained by a
CtlRequest::Drain— its id plus the resume reference (session directory) the caller records to bring it back (#650, ADR 0057). - Spawn
Spec - Parameters for a new sub-agent spawn. The supervisor stores this so
respawncan reuse it.
Enums§
- Agent
Status - Lifecycle state of an agent. Mirrors caliban’s
AgentStatuswire enum exactly so the same value round-trips through both protocols. - Attach
Inbound - Inbound control frames written to an interactive agent’s per-agent socket.
Mirrors caliban
AttachInbound(caliban/src/attach.rs); the outbound stream stays caliban stream-json, so the two never share a direction. - CtlReply
- Control-plane replies.
- CtlRequest
- Control-plane requests from the CLI / parent agent to the daemon.
- Drive
Protocol - Which wire protocol a driver uses to reach an agent over its per-agent network listener (ADR 0059, #675). Selected per spawn; the worker serves one or the other on its single TLS+token listener, never both at once.
- Endpoint
- Where a caliband socket lives, independent of transport family.
- Permission
Posture - How a session handles tool calls that need permission (#238).
- Supervisor
Error - Errors the supervisor reports back to clients.
- Wire
Agent Status - caliban’s lifecycle enum, as it appears on the wire. Converted to
prospero’s
crate::model::AgentStatusat the boundary bydomain_status— the two are separate on purpose: prospero’s is the vocabulary its own API and dashboard speak. Lifecycle state of a registered sub-agent. - Wire
Permission Posture - caliban’s permission posture, as it appears on the wire. Prospero’s own
crate::model::PermissionPosture(#238) is what the API and CR use. Per-session permission posture carried on aSpawnSpec(ADR 0059).
Traits§
- Endpoint
Ext - Prospero’s accessor on caliban’s
Endpoint.
Functions§
- domain_
status - Map caliban’s wire status onto prospero’s domain status.
- wire_
posture - Map prospero’s domain posture onto caliban’s wire posture (#238).
- wire_
status - Map prospero’s domain status onto caliban’s wire status.