← ClaudeAtlas

agent-contract-handofflisted

Use when you need the exact field schema, required/conditional/optional status, or the trigger for any field of the agent_contract_handoff envelope -- input or output, top-level field, sub-field table, agent_state enum, or the JSON-not-YAML rule
metraton/gaia · ★ 3 · AI & Automation · score 76
Install: claude install-skill metraton/gaia
# Agent Contract Handoff The `agent_contract_handoff` is the uniform structured block every subagent emits at the end of its turn and the orchestrator consumes to decide the next dispatch. This skill is its field dictionary: every field, whether it is required, when a conditional field triggers, and which code symbol owns the rule. ## The name collision: INPUT vs OUTPUT `agent_contract_handoff` names two different things, and this is where the distinction is owned. The runtime injects an INPUT envelope before the turn; the subagent emits an OUTPUT envelope after it. Same name, two directions. ### INPUT envelope (what the subagent receives) The orchestrator-side context the runtime injects before a turn. Detection of `consolidation_required` reads from here -- see `requires_consolidation_report` in `contract_validator.py`. Five named sections: | Section | Carries | Use | |---------|---------|-----| | `project_knowledge` | indexed workspace facts (`project_context_contracts`) | read before scanning the filesystem | | `surface_routing` | routed surface(s), `multi_surface` flag, adjacent agents | know whether you are primary or assisting | | `agent_contract_handoff` (input sub-block) | goal, acceptance criteria, scope, plus `consolidation_required` / `cross_check_required` flags | decides whether your OUTPUT must carry `consolidation_report` | | `write_permissions` | exact `writable_sections` you may emit `update_contracts` clauses for | writing outside the list is rejected