Claude Provider Behavior Manifest

Copy Markdown View Source

Provider-native Claude Code behavior must be proven here before this SDK translates it. This manifest is SDK-owned evidence; it is not proof that ASM can expose the feature as common behavior across providers.

FeatureEvidence typeCLI version/source revisionFixtureLive smokeKnown unsupported semanticsDate verified
Claude Code streaming JSON argument renderingCLI help/source inspection and SDK render testscurrent Claude Code CLI contract as represented by SDK optionstest/claude_agent_sdk/options_streaming_test.exs; test/claude_agent_sdk/runtime/cli_render_test.exsexamples/promotion_path/sdk_direct_claude.exsSDK-native option shaping; not an ASM common schema2026-04-29
Claude-native tools, allowed/disallowed tools, and tool suppressionprovider docs/source inspection and SDK testscurrent Claude Code CLI contracttest/claude_agent_sdk/options_streaming_test.exs; test/claude_agent_sdk/runtime/cli_render_test.exsexamples/promotion_path/sdk_direct_claude.exstools: [] and Claude tool flags are Claude-native; ASM must not expose common no-tool or host-tool options without all-four proof2026-04-29
Claude-native MCP, hooks, permission callbacks, permission modes, and control-client routingsource inspection note and SDK transport testscurrent Claude SDK/CLI control contracttest/claude_agent_sdk/transport/streaming_router_test.exs; test/claude_agent_sdk/runtime/cli_render_test.exsExisting live hook/MCP/permission examples; promotion example stays text-only with tool suppressionProvider-native control behavior only; does not establish common ASM tools, approvals, or MCP semantics2026-04-29
Shared execution_surface normalization for local and SSH placementsource inspection note and SDK runtime testscurrent cli_subprocess_core dependencytest/claude_agent_sdk/query_cli_stream_test.exs; test/claude_agent_sdk/runtime/cli_render_test.exsexamples/promotion_path/sdk_direct_claude.exs for local keyword input; live SSH tests remain opt-inPlacement only; execution surface metadata must not become provider-native Claude configuration2026-04-29
Claude Opus 5 model-registry refresh (opus and the retained opus[1m] compatibility alias both resolve to claude-opus-5)source inspection of the shared cli_subprocess_core catalog (priv/models/claude.json, catalog_version 2026-07-25) plus SDK registry and option-resolution testscli_subprocess_core catalog revision 2026-07-25; prior full IDs claude-opus-4-8/claude-opus-4-7 retained as aliasestest/claude_agent_sdk/config_model_registry_test.exs; test/claude_agent_sdk/options_custom_model_test.exsexamples/model_selection_live.exs (alias rendering); examples/max_effort_opus_live.exs for opus/opus[1m] effortCatalog ownership stays in cli_subprocess_core; no claude-opus-5[1m] provider id exists (Opus 5 is inherently 1M context) and this SDK must not mint one2026-07-25