pub(crate) const WORK_HEARTBEAT_TOOL: &str = r#"{
"name": "WorkHeartbeat",
"description": "Extend your lease on a claimed Muxqueue item while you are still working on it. Call this periodically during long work; without it the lease expires and another agent may take the item. Requires the 'attempt' number from your WorkClaim response — a heartbeat from a superseded claim is rejected (HTTP 409) rather than silently extending someone else's.",
"inputSchema": {
"type": "object",
"properties": {
"id": { "type": "string", "description": "The item id from WorkClaim" },
"attempt": { "type": "integer", "description": "The 'attempt' number returned by the WorkClaim that gave you this item" },
"lease_ms": { "type": "integer", "description": "New lease length in ms. Default 120000." }
},
"required": ["id", "attempt"]
}
}"#;