Point-in-time note: 2026-05-12. This file intentionally avoids copying API details that can go stale. Treat these as pointers to upstream sources of truth, not as a versioned API summary.
Current reviewer SDK versions and migration notes are in adapters.md. Package source/types were inspected for each upgraded SDK. Isolated CLI argument/help probes covered Claude Code 2.1.261, Cursor Agent 2026.09.02-c22c1a3, Pi 0.84.4, Gemini 0.58.0, OpenCode 1.18.29, Grok 1.0.13, and Antigravity 1.1.26. Droid SDK 0.9.1 tool-policy setup was also exercised against isolated Droid CLI 0.212.1 after verifying the official binary checksum. Copilot SDK 1.0.13 started bundled runtime 1.0.83 with protocol 3. These probes did not send model requests or replace installed executables.
- Cursor TypeScript SDK documentation: https://cursor.com/docs/api/sdk/typescript
- Cursor TypeScript SDK release post: https://cursor.com/blog/typescript-sdk
- Cursor cookbook examples: https://github.com/cursor/cookbook
- NPM package: https://www.npmjs.com/package/@cursor/sdk
- Local package inspection on 2026-05-14:
@cursor/sdk@1.0.13. - Updated package inspection on 2026-06-06:
@cursor/sdk@1.0.18exposes localmode,autoReview,sandboxOptions,settingSources,store,customTools, MCP config, and stream tool-call types, but not native JSON-schema output. - Implemented adapter dependency on 2026-06-06:
@cursor/sdk@1.0.18; local live tests require pnpm to build the SDK'ssqlite3dependency. - Cursor SDK June 2026 update: https://cursor.com/changelog/sdk-updates-jun-2026
- Cursor model docs: https://docs.cursor.com/models
- Cursor model-list API docs: https://docs.cursor.com/en/background-agent/api/list-models
Use the official docs and cookbook examples for current SDK usage, authentication, local/cloud execution, and streaming behavior.
- Claude Agent SDK TypeScript repository: https://github.com/anthropics/claude-agent-sdk-typescript
- Claude Code / Agent SDK docs index: https://code.claude.com/docs/llms.txt
- NPM package: https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk
- Implemented adapter dependency on 2026-05-18:
@anthropic-ai/claude-agent-sdk@0.3.143. - Local inspection on 2026-05-19: Claude Code
2.1.143supportsclaude -pandclaude auth status --json; SDKquery()can use local Claude Code auth by settingpathToClaudeCodeExecutable: "claude". - Claude native structured output implemented on 2026-05-19 through
options.outputFormat: { type: "json_schema", schema }; live smoke requiredmaxTurnsabove1for the SDK's schema-validation flow. - Local inspection on 2026-07-10: Claude Code
2.1.206auth status --jsonemitsloggedIn,authMethod,apiProvider,email,orgId,orgName, andsubscriptionType; the previously parsedtokenSourcefield is gone andapiKeySourceappears only under api-key auth, which the claude-code status path never exercises.--effortacceptslow, medium, high, xhigh, max. - Live
query.supportedModels()catalog on 2026-07-10 (SDK0.3.167):haikureports no effort support, and thesupportedEffortLevelscomposition forsonnetvaried between probes on the same day (low, medium, high, maxin one, all five levels includingxhighin another). Because the catalog's top-tier composition is not stable, the adapter resolvesxhigh/maxagainst the live catalog at preflight and substitutes within the top tier when only one of the two is listed.
Use upstream docs for current query() options, structured output support, tool permissions, authentication behavior, and SDK version notes.
- Pi mono repository: https://github.com/badlogic/pi-mono
- Pi Coding Agent SDK package: https://www.npmjs.com/package/@earendil-works/pi-coding-agent
- Pi Agent Core package: https://www.npmjs.com/package/@earendil-works/pi-agent-core
- Local source inspected on 2026-05-19:
/Users/auro/code/upstream/pi-monoat commit04e93af5. - Implemented adapter dependency on 2026-05-19:
@earendil-works/pi-coding-agent@0.75.3. - Pi structured execution uses
createAgentSession()with explicitmodelandscopedModels, an isolatedModelRuntime, an extension-freeResourceLoader, and a terminating customreview_outputtool.
Use the upstream repository for the current SDK docs, JSON mode docs, extension examples, structured output patterns, and agent harness lifecycle.
- Factory CLI reference: https://docs.factory.ai/reference/cli-reference
- Droid Exec docs: https://docs.factory.ai/cli/droid-exec/overview
- Factory CLI repository: https://github.com/Factory-AI/factory
- Droid TypeScript SDK repository: https://github.com/Factory-AI/droid-sdk-typescript
- NPM package: https://www.npmjs.com/package/@factory/droid-sdk
- Implemented adapter dependency on 2026-05-21 and updated on 2026-05-22:
@factory/droid-sdk@0.3.0. - Local CLI inspection on 2026-05-21: Droid CLI
0.131.0supportsdroid exec --output-format json,--file,--cwd,--model, and--reasoning-effort; default exec mode is read-only unless--autois set. - Local CLI and SDK inspection on 2026-05-22: Droid persists sessions under
~/.factory/sessionsby working directory;droid execexposes repeatable--tagmetadata but no ephemeral/no-history flag, and@factory/droid-sdk@0.3.0exposestagsandmachineIdonrun()options. - Product decision on 2026-05-22: prefer Droid CLI transport for routine reviews because current SDK runs still appear in Factory session history and do not expose a supported no-history option.
- Local CLI and SDK inspection on 2026-06-19: Droid CLI
0.142.0advertisesstream-jsonandstream-jsonrpc; installed@factory/droid-sdk@0.3.0already exposes JSON-RPC-backed streaming for SDK reviews. Diffwarden keeps Droid CLI on single-shot JSON for now.
Use official Factory docs over local source when CLI or SDK behavior differs.
-
Review-process refresh on 2026-09-04: Codex
rust-v0.153.4. Detached reviews use the bundledreview-agentskill; Diffwarden adapts its inspection sequence into a schema-constrained turn with developer-level review rules. The rubric's July 21 repository-rule attribution is included. See the integration decision. -
OpenAI Codex repository: https://github.com/openai/codex
-
Local reference inspected on 2026-05-14:
/Users/auro/code/upstream/codexat commit02a7205250. -
Local CLI/source refreshed on 2026-05-23:
/Users/auro/code/upstream/codexat commit7d47056ea4;codex execis the CLI transport path becausecodex reviewis a specialized wrapper and does not expose the same JSON-schema contract used by Diffwarden's shared parser. -
Local CLI/source refreshed on 2026-05-28:
/Users/auro/code/upstream/codexat commit462deb0426bf; Codex review still uses a review-specific child task and prompt, while Diffwarden's Codex CLI transport still usescodex exec --output-schemafor shared schema enforcement.
Use Codex as the semantic reference for review behavior, especially its review process, review rubric, and review output model. Diffwarden adapts that contract across SDK and CLI transports. Do not duplicate large Codex prompt or protocol excerpts here; link to the upstream source and copy only what the implementation needs into source-controlled constants with attribution.
- Gemini CLI repository: https://github.com/google-gemini/gemini-cli
- Gemini CLI Plan Mode docs: https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/plan-mode.md
- Gemini CLI Policy Engine docs: https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/policy-engine.md
- Gemini CLI trusted folders docs: https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/trusted-folders.md
- Gemini CLI tools reference: https://github.com/google-gemini/gemini-cli/blob/main/docs/reference/tools.md
- Google Gemini CLI to Antigravity CLI transition notice: https://developers.googleblog.com/an-important-update-transitioning-gemini-cli-to-antigravity-cli/
- OpenCode repository: https://github.com/sst/opencode
- Factory Droid CLI docs: https://docs.factory.ai/reference/cli-reference
- Grok Build getting started docs: https://docs.x.ai/build/overview
- Grok Build headless and scripting docs: https://docs.x.ai/build/cli/headless-scripting
- Grok Build modes and commands docs: https://docs.x.ai/build/modes-and-commands
- Grok Build enterprise/security controls docs: https://docs.x.ai/build/enterprise
- Grok Build changelog: https://x.ai/build/changelog
- Antigravity CLI docs: https://antigravity.google/docs/cli-overview
- Antigravity CLI permissions docs: https://antigravity.google/docs/cli-permissions
- Antigravity CLI sandbox docs: https://antigravity.google/docs/cli-sandbox
- Antigravity CLI reference docs: https://antigravity.google/docs/cli-reference
Point-in-time local research on 2026-05-20 inspected installed executables for Codex, Claude, Cursor Agent, Gemini, OpenCode, Pi, Grok, and Antigravity. Grok was refreshed on 2026-06-07 against @xai-official/grok@0.2.32 / grok 0.2.32 help and official xAI Build docs. Antigravity was refreshed on 2026-06-07 against agy 1.0.6 help/changelog and official Antigravity CLI permissions, sandbox, settings, and reference docs. The direct CLI adapter keeps those details near the adapter code; this file remains a route map rather than a copy of volatile CLI help output.
These are convenience working copies on Auro's machine, not portable repo dependencies:
/Users/auro/code/upstream/codex
/Users/auro/code/upstream/gemini-cli
/Users/auro/code/upstream/opencode
/Users/auro/code/upstream/cursor-cookbook
/Users/auro/code/upstream/claude-agent-sdk-typescript
/Users/auro/code/upstream/pi-mono
Do not require these paths for normal development. If implementation needs fixtures or copied prompt text, vendor the minimal stable artifact into this repo with clear attribution.
Before implementing SDK adapters, re-check these local upstream clones and refresh them if needed. The spec should describe product behavior; version-sensitive SDK details belong near adapter code, with the upstream commit or package version noted when the implementation depends on a specific shape.
Prefer stable pointers over stale summaries:
- Link to official docs, repositories, and NPM packages.
- Avoid embedding detailed API signatures unless the implementation directly depends on them.
- Put version-sensitive SDK details in code comments near the adapter implementation, not in high-level docs.
- If a copied upstream artifact is required, include only the minimum needed, preserve attribution, and note the upstream commit or package version used.
- Keep this file as a route map, not a maintenance burden.