One contract, two engines
The anthropic engine loads the Claude Agent SDK in-process: the full Claude Code toolset — Read, Write, Edit, Bash, Glob, Grep, plus skills, subagents, and hooks. The openai engine shells out to the user-installed Codex CLI — one codex exec per turn, with its own apply_patch and sandbox. Both surface identically.