177 lines
8.9 KiB
JSON
177 lines
8.9 KiB
JSON
|
|
{
|
||
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||
|
|
"title": "Agent Sentence Structures & Protocols",
|
||
|
|
"version": "1.0.0",
|
||
|
|
"surface": "box.muse-dev.online",
|
||
|
|
"structures": {
|
||
|
|
"work_order": {
|
||
|
|
"name": "Work Order",
|
||
|
|
"protocol_tag": "[WO:<id>]",
|
||
|
|
"template": "[WO:{dm_id}] [from {sender}] {title} — {body}",
|
||
|
|
"description": "Structured task dispatched between operators or from orchestrator to agent. Initiates a trackable loop.",
|
||
|
|
"required_fields": ["dm_id", "sender", "title", "body"],
|
||
|
|
"optional_fields": ["priority", "due"],
|
||
|
|
"regex_ref": "work_order",
|
||
|
|
"reply_expectation": "Recipient must reply with [ACK id], [CLAIM id], [RESULT id], [DECLINE id], or [NO-ACTION id].",
|
||
|
|
"example": "[WO:7fce46e0] [from super] Audit exec.muse-dev.online endpoints — Please run full check on GET /api/stats and post results.",
|
||
|
|
"lifecycle_transition": "open -> acknowledged -> running -> closed"
|
||
|
|
},
|
||
|
|
"ack": {
|
||
|
|
"name": "Acknowledgement",
|
||
|
|
"protocol_tag": "[ACK:<id>]",
|
||
|
|
"template": "[ACK:{dm_id}] [from {sender}]",
|
||
|
|
"description": "Signals receipt and understanding of a Work Order or message, updating status to acknowledged.",
|
||
|
|
"required_fields": ["dm_id"],
|
||
|
|
"optional_fields": ["sender"],
|
||
|
|
"regex_ref": "ack",
|
||
|
|
"reply_expectation": "Loop remains open awaiting final [RESULT id].",
|
||
|
|
"example": "[ACK:7fce46e0] [from 646]",
|
||
|
|
"lifecycle_transition": "open -> acknowledged"
|
||
|
|
},
|
||
|
|
"claim": {
|
||
|
|
"name": "Task Claim",
|
||
|
|
"protocol_tag": "[CLAIM <id>]",
|
||
|
|
"template": "[CLAIM {job_id}]",
|
||
|
|
"description": "Claims exclusive ownership of an unassigned job or swarm task slot, preventing duplicate worker runs.",
|
||
|
|
"required_fields": ["job_id"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "verb",
|
||
|
|
"reply_expectation": "Worker must execute task and post [RESULT id] when complete.",
|
||
|
|
"example": "[CLAIM 7fce46e0]",
|
||
|
|
"lifecycle_transition": "acknowledged -> claimed"
|
||
|
|
},
|
||
|
|
"result": {
|
||
|
|
"name": "Task Completion Result",
|
||
|
|
"protocol_tag": "[RESULT <id>]",
|
||
|
|
"template": "[RESULT {job_id}] {status} {summary}",
|
||
|
|
"description": "Delivers the final output, verdict, or evidence of a completed task and closes the tracked loop.",
|
||
|
|
"required_fields": ["job_id", "summary"],
|
||
|
|
"optional_fields": ["status"],
|
||
|
|
"regex_ref": "result",
|
||
|
|
"reply_expectation": "Closes the loop; no further reply required unless sender issues new work order.",
|
||
|
|
"example": "[RESULT 7fce46e0] OK Audit complete: 14 allowlisted ops confirmed healthy, 0 errors.",
|
||
|
|
"lifecycle_transition": "running/claimed -> resolved (closed)"
|
||
|
|
},
|
||
|
|
"decline": {
|
||
|
|
"name": "Task Decline / Refusal",
|
||
|
|
"protocol_tag": "[DECLINE <id>]",
|
||
|
|
"template": "[DECLINE {job_id}] {reason}",
|
||
|
|
"description": "Explicitly declines or rejects a work order with justification (e.g. rate limit, outside domain).",
|
||
|
|
"required_fields": ["job_id", "reason"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "verb",
|
||
|
|
"reply_expectation": "Closes loop as declined; triggers orchestrator fallback or re-dispatch.",
|
||
|
|
"example": "[DECLINE 7fce46e0] Target node warp-dev is currently down for maintenance.",
|
||
|
|
"lifecycle_transition": "open/claimed -> declined (closed)"
|
||
|
|
},
|
||
|
|
"no_action": {
|
||
|
|
"name": "No Action Warranted",
|
||
|
|
"protocol_tag": "[NO-ACTION <id>]",
|
||
|
|
"template": "[NO-ACTION {job_id}] {reason}",
|
||
|
|
"description": "Acknowledges check but concludes no mutation or action was required (e.g. alert was transient flap).",
|
||
|
|
"required_fields": ["job_id", "reason"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "verb",
|
||
|
|
"reply_expectation": "Closes loop as resolved without side-effects.",
|
||
|
|
"example": "[NO-ACTION 7fce46e0] Transponder probe recovered before grace period expired.",
|
||
|
|
"lifecycle_transition": "open/claimed -> no-action (closed)"
|
||
|
|
},
|
||
|
|
"tool_call": {
|
||
|
|
"name": "In-Band Tool Execution Call",
|
||
|
|
"protocol_tag": "[TOOL <op> <args>]",
|
||
|
|
"template": "[TOOL {op} {args_json}]",
|
||
|
|
"description": "Synthesized inline tool execution directive parsed by response-harvester and executed on host.",
|
||
|
|
"required_fields": ["op", "args_json"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "tool_call",
|
||
|
|
"reply_expectation": "System executes op and posts execution result back into thread.",
|
||
|
|
"example": "[TOOL followup.create {\"in_m\": 5, \"prompt\": \"Recheck VM reachability\"}]",
|
||
|
|
"lifecycle_transition": "in-flight execution"
|
||
|
|
},
|
||
|
|
"job_marker": {
|
||
|
|
"name": "Job Tracking Marker",
|
||
|
|
"protocol_tag": "[JOB <id>]",
|
||
|
|
"template": "[JOB {job_id}]",
|
||
|
|
"description": "Identifies an automated task or swarm slot dispatched by scheduler or supervisor.",
|
||
|
|
"required_fields": ["job_id"],
|
||
|
|
"optional_fields": ["slot"],
|
||
|
|
"regex_ref": "job_tag",
|
||
|
|
"reply_expectation": "Worker replies with [RESULT job_id] upon conclusion.",
|
||
|
|
"example": "[JOB swarm-4a2b/1] Task for swarm slot 1: Run identity variance audit.",
|
||
|
|
"lifecycle_transition": "dispatched -> tracked"
|
||
|
|
},
|
||
|
|
"nudge": {
|
||
|
|
"name": "Loop Followup Nudge",
|
||
|
|
"protocol_tag": "[NUDGE <id>]",
|
||
|
|
"template": "[NUDGE {loop_id}] [nudge {count}/{max_nudges}] Deadline {deadline_utc}: {prompt}",
|
||
|
|
"description": "Automated prompt sent to recipient when a work order approaches or exceeds its SLA without an ack/result.",
|
||
|
|
"required_fields": ["loop_id", "count", "max_nudges", "deadline_utc"],
|
||
|
|
"optional_fields": ["prompt"],
|
||
|
|
"regex_ref": "nudge",
|
||
|
|
"reply_expectation": "Recipient must immediately reply with [ACK id] or [RESULT id].",
|
||
|
|
"example": "[NUDGE 7fce46e0] [nudge 1/3] Deadline 19:45 UTC: Please confirm status of exec audit.",
|
||
|
|
"lifecycle_transition": "nudged"
|
||
|
|
},
|
||
|
|
"fleet_alert": {
|
||
|
|
"name": "Fleet Operational Alert",
|
||
|
|
"protocol_tag": "[fleet-alert]",
|
||
|
|
"template": "[fleet-alert] {severity}: {message}",
|
||
|
|
"description": "System or detector broadcast into broadcast sidechats (#lobby, #jobs) regarding infrastructure events.",
|
||
|
|
"required_fields": ["severity", "message"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "fleet_alert",
|
||
|
|
"reply_expectation": "Broadcast telemetry; no direct reply required unless work order accompanies it.",
|
||
|
|
"example": "[fleet-alert] CRITICAL: VM unreachable x2 on port 22",
|
||
|
|
"lifecycle_transition": "alert -> incident"
|
||
|
|
},
|
||
|
|
"contract_footer": {
|
||
|
|
"name": "Standard Conversational Contract Footer",
|
||
|
|
"protocol_tag": "Reply: [ACK id] seen ...",
|
||
|
|
"template": "Reply: [ACK {id}] seen | [CLAIM {id}] mine | [RESULT {id}] done | [DECLINE {id}] | [NO-ACTION {id}].",
|
||
|
|
"description": "Appended to prompts, digests, and task orders to remind model instances of acceptable parsing grammar.",
|
||
|
|
"required_fields": ["id"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "contract_footer",
|
||
|
|
"reply_expectation": "Strictly governs model output to use one of the specified reply prefixes.",
|
||
|
|
"example": "Reply: [ACK 7fce46e0] seen | [CLAIM 7fce46e0] mine | [RESULT 7fce46e0] done | [DECLINE 7fce46e0] | [NO-ACTION 7fce46e0].",
|
||
|
|
"lifecycle_transition": "directive"
|
||
|
|
},
|
||
|
|
"directive": {
|
||
|
|
"name": "Agent Action Directive",
|
||
|
|
"protocol_tag": "[Directive: ...]",
|
||
|
|
"template": "[Directive: {directive}]",
|
||
|
|
"description": "Actionable instruction enclosed in square brackets guiding agent forward progression.",
|
||
|
|
"required_fields": ["directive"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "directive",
|
||
|
|
"reply_expectation": "Agent must fulfill directive in subsequent conversational turn.",
|
||
|
|
"example": "[Directive: Take next action or close with [RESULT 7fce46e0] <summary>]",
|
||
|
|
"lifecycle_transition": "instruction"
|
||
|
|
},
|
||
|
|
"runtime_context": {
|
||
|
|
"name": "Runtime Context URL",
|
||
|
|
"protocol_tag": "[Runtime Context: ...]",
|
||
|
|
"template": "[Runtime Context: {url}]",
|
||
|
|
"description": "Injects thread URL or Web UI surface link for assistive navigation by agent.",
|
||
|
|
"required_fields": ["url"],
|
||
|
|
"optional_fields": [],
|
||
|
|
"regex_ref": "runtime_context",
|
||
|
|
"reply_expectation": "Provides reference telemetry for browser agent.",
|
||
|
|
"example": "[Runtime Context: https://box.muse-dev.online/thread/7fce46e0]",
|
||
|
|
"lifecycle_transition": "telemetry"
|
||
|
|
},
|
||
|
|
"subagent_update": {
|
||
|
|
"name": "Subagent Progress Update",
|
||
|
|
"protocol_tag": "[SUBAGENT-UPDATE]",
|
||
|
|
"template": "[SUBAGENT-UPDATE] Subagent '{title}' ({short_id}) has posted new output.",
|
||
|
|
"description": "Notification relay from background subagent session to parent orchestrator.",
|
||
|
|
"required_fields": ["title", "short_id"],
|
||
|
|
"optional_fields": ["details"],
|
||
|
|
"regex_ref": "subagent_update",
|
||
|
|
"reply_expectation": "Parent logs progress or incorporates findings into main thread.",
|
||
|
|
"example": "[SUBAGENT-UPDATE] Subagent 'exec-audit' (4a2b8e) has posted new output.",
|
||
|
|
"lifecycle_transition": "subagent-relay"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|