Provider compatibility

July 20, 2026 ยท View on GitHub

The supported floor and the versions exercised for this release are:

ProviderSupported floorContract fixturesReal local smoke
Codex CLI0.100.00.100.0, 0.144.50.144.5
Claude Code2.0.02.0.0, 2.1.2142.1.214

Compatibility means the provider exposes the resume and hook-configuration flags used by the native session command and the non-persistent structured output flags used by the same-provider summary command. doctor checks these contracts from provider help output instead of invoking a model.

tests/e2e/provider_compatibility.sh covers every fixture pair. The fixtures model the CLI contract rather than provider rendering, which remains owned by the provider. tests/e2e/real_provider_doctor.sh runs the same no-model smoke against locally installed/configured binaries.

tests/e2e/real_provider_sessions.exp is the release-only interactive smoke: it starts one empty real session per provider, refreshes discovery, stops the PTY daemon, and re-enters through the provider resume contract. It never sends a prompt.

Packaged platforms

OSArchitectureRust targetPTY lifetime
Windowsx86_64x86_64-pc-windows-msvcprocess-local ConPTY
Linuxx86_64x86_64-unknown-linux-gnudetached daemon
LinuxARM64aarch64-unknown-linux-gnudetached daemon
macOSIntelx86_64-apple-darwindetached daemon
macOSApple Siliconaarch64-apple-darwindetached daemon

Every pushed semantic version tag is built on a native GitHub-hosted runner. Packages contain the platform binary and README; the release also contains one SHA256SUMS file covering all archives. Starting with v0.0.6, both macOS targets are Developer ID signed and notarized before their archives are created; non-publishing packaging dry runs intentionally remain unsigned.