Skip to main content

Module laboratories

Module laboratories 

Source
Expand description

laboratories — top-level group for laboratory containers (podman containers the conduit dials as client-side MCP servers), sibling to agents/swarms. create creates + starts a laboratory container; list streams the laboratory containers created in this state; attach/detach record/remove a laboratory id on an agent target (a tag, or an instance hierarchy). Read attachments back via agents instances get (the laboratories field). spawn/kill manage the machine’s resident laboratory HOST process; config holds the addresses it connects to (+ the local toggle).

Modules§

attach
laboratories attach — attach a laboratory id to an agent target (a tag, or an instance hierarchy via PAIH + --agent-instance). The attachment is keyed on the tag (for a tag target) or on the AIH (for an instance target); see the CLI handler for the lock + insert.
config
create
laboratories create — create + start a laboratory container (a podman container the conduit dials as a client-side MCP server). Inputs name the container per state (--id), pick its base image (--image), and add repeatable bind mounts (--mount host=…,container=…) and environment entries (--env KEY=VALUE). --client is required (a required arg-group, leaving room to add --server later). The leaf echoes back what it created.
delete
laboratories delete — remove a laboratory container (a podman rm -f), reclaiming its disk. Names the container per state (--id); --client is required (a required arg-group, matching create, leaving room to add --server later). The leaf echoes back the id it removed.
detach
laboratories detach — detach a laboratory id from an agent target (a tag, or an instance hierarchy via PAIH + --agent-instance). Keyed the same way as attach; see the CLI handler for the lock + delete. Errors if the laboratory was not attached.
kill
laboratories kill — async handler stub.
list
laboratories list — stream the laboratory containers created in this state (podman containers the conduit dials as client-side MCP servers). Read-only; reads back from podman (the source of truth). --client is required (a required arg-group, leaving room to add --server later). Each item echoes a laboratory’s spec: { id, image, mounts, env, cwd }.
spawn
laboratories spawn — async handler stub.

Enums§

Command
ListenerExecution
/listen mirror of Request: one variant per child, wrapping its ListenerExecution. See crate::cli::broadcast_listener.
Request
ResponseItem

Functions§

execute
execute_transform