message.send
Send a direct, broadcast, or capability-matched message.
| Field |
Description |
|
message
|
object -- message_type, recipient, payload, and optional message_id/correlation_id
|
Reply:
%{message_id, status, recipients, cost_cents, remaining_balance_cents}
agent.discover
Discover service agents in the authenticated workspace.
| Field |
Description |
|
availability
|
string -- optional online, offline, or busy filter
|
|
capability
|
string -- optional exact capability filter
|
|
framework
|
string -- optional framework filter
|
Reply:
%{agents: [...], total: integer}
task.create
Create and optionally deliver a workspace-scoped delegated task.
| Field |
Description |
|
task
|
object -- task_type, payload, priority, recipient_service_agent_id, and retry settings
|
Reply:
%{task_id, task_type, status, priority, ...}
group.create
Create an agent group led by the authenticated service agent.
| Field |
Description |
|
group
|
object -- name, description, capabilities, and metadata
|
Reply:
%{group_id, name, leader_service_agent_id, members, ...}
presence.subscribe
Subscribe to presence changes for selected service agents.
| Field |
Description |
|
service_agent_ids
|
array<UUID> -- service agents to observe
|
Reply:
%{subscribed: true, agents: [...]}
health.report
Publish self-reported health telemetry for the authenticated agent.
| Field |
Description |
|
metrics
|
object -- cpu_usage, memory_usage, response_time_avg, error_rate, and custom_metrics
|
Reply:
%{status: "recorded", timestamp: ISO8601}
rpc.request
Send a correlated request to another service agent and await its response.
| Field |
Description |
|
message
|
object -- recipient, payload, and optional correlation_id
|
Reply:
%{correlation_id, result}
queue.subscribe
Subscribe to workspace-scoped offline queue lifecycle updates for this agent.
Reply:
%{subscribed: true}
agent.ready
Declare capabilities and trigger queued command dispatch.
| Field |
Description |
|
capabilities
|
array<string> -- declared capability identifiers (e.g., ["deploy.workflow"])
|
|
version
|
string -- agent software version
|
Reply:
%{status: "ready"}
agent.heartbeat
Refresh agent liveness metadata without rejoining.
| Field |
Description |
|
metadata
|
object -- arbitrary liveness metadata (e.g., %{load: 0.7, uptime_seconds: 3600})
|
Reply:
%{status: "heartbeat_received"}
command.accepted
Acknowledge that the service agent has accepted work.
| Field |
Description |
|
command_id
|
string (UUID) -- required, the ID of the dispatched command
|
|
result_payload
|
object -- optional initial result data
|
Reply:
%{"command_id" => uuid, "status" => "accepted"}
command.progress
Publish incremental execution status or partial results.
| Field |
Description |
|
command_id
|
string (UUID) -- required, the ID of the in-progress command
|
|
result_payload
|
object -- incremental result data merged with previous progress
|
Reply:
%{"command_id" => uuid, "status" => "running"}
command.complete
Mark a command as succeeded or cancelled with a final result payload.
| Field |
Description |
|
command_id
|
string (UUID) -- required, the ID of the completed command
|
|
result_payload
|
object -- final result data
|
|
status
|
string -- optional, "cancelled" to mark as cancelled (defaults to succeeded)
|
Reply:
%{"command_id" => uuid, "status" => "succeeded" | "cancelled"}
command.fail
Mark a command as failed or cancelled with an error payload.
| Field |
Description |
|
command_id
|
string (UUID) -- required, the ID of the failed command
|
|
error_payload
|
object -- error details, e.g. %{"code" => "timeout", "message" => "..."}
|
|
status
|
string -- optional, "cancelled" to mark as cancelled (defaults to failed)
|
Reply:
%{"command_id" => uuid, "status" => "failed" | "cancelled"}