swarm: the contract for an agent's bash task status and output
A status key per task in the bash-task-status bucket and the task's output rows in a per-agent stream, kept apart as for subagents. The controller creates the bucket and the streams, and the agent credential may publish its own keys and subjects. Nothing publishes yet; the bash MCP half follows.
This commit is contained in:
parent
ca51bb9d54
commit
1779fa0568
1 changed files with 388 additions and 1 deletions
|
|
@ -995,6 +995,14 @@ in
|
|||
# and swarm-controller creates the bucket, so no
|
||||
# `$$JS.API.*` subject.
|
||||
"--agent-token-publish-subject ${lib.escapeShellArg "\$\$KV.subagent-status.{agent}.*"}"
|
||||
# Its bash tasks (`swarm_wire::bash_task`): one status key per
|
||||
# task in the `bash-task-status` KV bucket and the task's output
|
||||
# rows. Publish only and no `$JS.API.*` subject:
|
||||
# swarm-controller creates the bucket and the
|
||||
# `term-bash-{agent}` stream, so their limits are never the
|
||||
# agent's to choose.
|
||||
"--agent-token-publish-subject ${lib.escapeShellArg "\$\$KV.bash-task-status.{agent}.*"}"
|
||||
"--agent-token-publish-subject ${lib.escapeShellArg "\$\$SWARM.term.{agent}.bash.>"}"
|
||||
# Reading its own key of the `agent-schedules` KV bucket
|
||||
# (`swarm_queue_client::agent_schedules`), and nothing else of
|
||||
# JetStream: a direct get names the key in its subject, so
|
||||
|
|
|
|||
Loading…
Reference in a new issue