I have a $200/mo Claude subscription and a $200/mo Codex subscription, and I'm signed in to both. The Docker containers keep each session isolated, so dev servers, browser testing, etc. can work without conflicts.
It includes `/ask-claude` and `/ask-codex` skills that I use very frequently to have the Claude or Codex harness call out to the other one for advice on plans, bug repro, code review, etc.
The agents run in total "yolo" mode, so there are no permission prompts to approve. The risk is mitigated by the Docker containers (which don't necessarily provide a security barrier but do limit accidents).
I was doing this manually in Ghostty tabs for a long time, and it got painful, so I built a much more sophisticated version that I (and my friends/colleagues) could use.
Generally using Claude Code with Fable 5.1 (high) to plan and implement (Opus 5 (medium) as the implementer subagents), and using Codex with Astra high to review the plan and review the implementers' output.
Using the OpenAI codoex plugin thingy:
"Ask claude about this"
"Ask codex to implement this"
"Ask claude to review this plan"
etc
It's also more polite than "tell" or "yell at"!
I have created wrappers for Codex (https://github.com/micw/codex-wrapper-advanced) and claude (https://github.com/micw/claude-wrapper-advanced) that uses their SDK (Codex) and the CLI (Claude) internally to align with the subscription ToS and still have a common API ;-) This way I can use both in any harness and can easily switch between both.
I am doing this with the Pi harness right now. To use a Claude monthly plan you need to use the pi-claude-bridge plugin.
If you are using just Claude for example you can use Sonnet as the implementer and Fable/Opus as the planner.