Skip to main content

WORK_ENQUEUE_TOOL

Constant WORK_ENQUEUE_TOOL 

Source
pub(crate) const WORK_ENQUEUE_TOOL: &str = r#"{
  "name": "WorkEnqueue",
  "description": "Put a unit of work on the shared Muxqueue for ANY agent to pick up later. Use this instead of SendMessage when you do NOT need a specific agent, or need it done eventually rather than now — 'someone should repro this', 'this PR needs review when a reviewer frees up'. The item persists across pane closes, app restarts, and version/channel changes, and is visible to every agent on this machine. If you know exactly who should do it and it should happen immediately, use SendMessage instead; if it should happen on a schedule, use CronCreate. Returns the item id.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "title":        { "type": "string",  "description": "Short human-scannable summary (e.g. 'repro the minimize distortion on a 3-pane cross-split')" },
      "payload":      { "type": "string",  "description": "The full instruction injected into whichever agent claims this. Write it as a standalone prompt: the claimant has none of your conversation context." },
      "kind":         { "type": "string",  "description": "Optional free-form tag used to filter claims (e.g. 'review', 'repro', 'triage'). Agents can claim only a kind they handle. Omit for untyped work anyone may take." },
      "target_agent": { "type": "string",  "description": "Optional: restrict to ONE agent, by name or by uid. Mutually exclusive with target_group. Omit so any agent can claim — that is the normal case and the point of the queue. A name held by several agents is refused with the candidates; retry with the uid." },
      "target_group": { "type": "string",  "description": "Optional: restrict to members of an agent group id. Mutually exclusive with target_agent." },
      "priority":     { "type": "integer", "description": "Higher claims first; ties break oldest-first. Default 0. Use sparingly — everything urgent means nothing is." },
      "not_before":   { "type": "integer", "description": "Unix ms timestamp; the item is not claimable before it. Use for deferred work ('look at this after the release lands'). Omit for immediately claimable." },
      "max_attempts": { "type": "integer", "description": "How many claims this item gets before it is parked as failed. Default 3. Guards against an item that crashes or defeats every agent that takes it." }
    },
    "required": ["title", "payload"]
  }
}"#;