Normalizers — ready to use
| Framework | Package | Native input | Supported peer | Status |
|---|---|---|---|---|
| Claude Agent SDK | @silverprotocol/claude-agent-sdk | SDKMessage | @anthropic-ai/claude-agent-sdk >=0.2.76 <0.4 | Shippedlive-verified at claude-agent-sdk 0.3.207 (2026-07-13) |
| OpenAI Agents SDK | @silverprotocol/openai-agents | RunItemStreamEvent / Responses streaming | @openai/agents >=0.2.0 <0.14 | Shippedlive-verified at agents 0.13.2 (2026-07-13) |
| Google ADK | @silverprotocol/google-adk | ADK Event / Gemini Content.parts[] | @google/adk >=1.0.0 <2 | Shippedlive-verified at adk 1.3.0 (2026-07-13) |
All three normalize one direction today — native events in, AgEvent[] out. Each ships @silverprotocol/core as a required dependency and its framework's own SDK as an optional peer (only needed for native types, not required at import time). The status column reflects each package's append-only verification evidence log — the full per-version table (fixture-tier vs live-capture-tier, with evidence) is generated into every package README and enforced by the same CI gate that catches upstream drift.
Studied, not yet a normalizer
These frameworks were part of the cross-framework survey that shaped AgJSON's wire format, or anchor specific constructs directly — but don't have a @silverprotocol/<framework> package yet. No package yet either for Mastra, LangGraph.js, Microsoft Agent Framework, CrewAI, or AWS Strands — normalizers are community-contributable, so if you want one,open an issueto vote it up.
- LangGraph — Two general-purpose AgJSON constructs are anchored directly on it: state.snapshot/state.delta (values/updates stream modes) and hitl.ask.metadata/AgPausedAsk.metadata (interrupt(value: Any)).
- Vercel AI SDK — Part of the cross-framework survey (v5/v6) that shaped the wire shape — no normalizer package yet.
- Pydantic AI — Part of the survey (v2) — its delta-stream and signature-accumulation patterns informed the Normalizer contract's index-keyed re-key duties.
- Google A2A — Studied at v0.3.0 (task lifecycle, artifact updates) — informs how AgJSON's artifact side-channel and turn model handle agent-to-agent handoff.
Composed with, not normalized
AgJSON is Layer-A: it carries content and interaction anchors. Rendering is Layer-B, owned entirely by these two respected specs — AgJSON defines zero component schema and never reinvents them.
- MCP (MCP Apps) — carried via
resourceblocks for HTML surfaces plusui.*surface RPC. - A2UI v1.0 — carried Layer-A-opaquely via the
ui.surface.*/ui.data-modelsurface-stream events.