Skip to content

Commit 0065b99

Browse files
Dusan Milicevicclaude
authored andcommitted
feat(core): add authoritative agents.manifest.json + optional contract description
OTAIP had four overlapping notions of "which agents exist" (discovery, count-agents, docs/agents.md, the contract registry). This adds one generated source of truth. - scripts/generate-manifest.ts (`pnpm gen:manifest`) writes committed agents.manifest.json: every discovered agent with has_contract first-class, plus action_type + input/output JSON Schema (via the same zodToJsonSchema the tool catalog uses) for the 18 contracted agents. `--check` mode fails if the committed file is stale; wired into CI. - Add optional `description` to AgentContract; the catalog/describe_agent generator uses it (falling back to the previous string). Authors fill it as agents graduate — no bulk, domain-inventing schema generation. This is the OTAIP-honest answer to "one schema for every agent": the two-tier model is made queryable rather than papered over. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 56bc01d commit 0065b99

6 files changed

Lines changed: 6336 additions & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@ jobs:
4646
- name: Verify built bundles load
4747
run: pnpm verify:dist
4848

49+
# The committed agent manifest must match what the generator produces
50+
# from discovery + contracts. Fails loud if a contributor changed an
51+
# agent or contract without regenerating `agents.manifest.json`.
52+
- name: Verify agent manifest is up to date
53+
run: pnpm gen:manifest --check
54+
4955
- name: Type check
5056
run: pnpm run typecheck
5157

0 commit comments

Comments
 (0)