Skip to content

Commit 3c4db33

Browse files
authored
feat: default crabcode to codex (#69)
## Why Crabcode is moving to Codex as the default experience, and the repo's release metadata was inconsistent: the CLI version in `src/crabcode` was already `0.13.0` while release-please metadata still said `0.12.0`. ## What - default missing-agent and blank-main behavior to Codex, while preserving legacy Claude inference for older configs that explicitly hardcoded a Claude main command - make `crab court` user-facing behavior Codex-led: Codex judge, generic teammate Reviewer A, Codex Reviewer B, and a Codex requirement for court sessions - update README, top-level docs, examples, and promptfoo defaults to present Codex/GPT-5 as the defaults; remove Claude hints from `crab court`, README, and the core docs surfaces - align release metadata to `0.13.0` and add an `Unreleased` changelog note for the Codex-default change - keep internal Claude compatibility paths intact; this PR does not remove Claude support repo-wide ## How to Test - run `bash -n src/crabcode` - run `git diff --check` - run `cd plugins/promptfoo && npm run build` - verify `rg -n "Claude|claude" README.md docs/index.html docs/llms.txt` returns no matches - check the `crab court` help text and session metadata to confirm a Codex judge, teammate Reviewer A, and Codex Reviewer B - note: the root formatter step `pnpm exec biome check --write .` is not runnable in this repo because there is no root `package.json` or `pnpm-workspace.yaml` (`ERR_PNPM_RECURSIVE_EXEC_NO_PACKAGE`)
1 parent 1301081 commit 3c4db33

File tree

14 files changed

+323
-190
lines changed

14 files changed

+323
-190
lines changed

.ralph/PROMPT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ layout:
9494
- name: server
9595
command: pnpm dev
9696
- name: main
97-
command: claude --dangerously-skip-permissions
97+
command: codex --full-auto
9898
9999
env_sync:
100100
files:

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.12.0"
2+
".": "0.13.0"
33
}

CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,11 @@
22

33
## Unreleased
44

5-
## [0.12.0] - 2026-02-20
5+
### Changed
6+
7+
- Codex is now the default agent when `agent:` is omitted, `crab court` uses a Codex judge, and the top-level docs/examples reflect Codex-first defaults
8+
9+
## [0.13.0] - 2026-03-11
610

711
### Added
812

README.md

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
< >
88
```
99

10-
A lightning-fast tmux-based workspace manager for multi-repo development. Agent-agnostic — works with both [Claude Code](https://claude.ai/code) and [Codex CLI](https://github.com/openai/codex). Manage multiple projects, start full dev environments in seconds.
10+
A lightning-fast tmux-based workspace manager for multi-repo development, built around [Codex CLI](https://github.com/openai/codex). Manage multiple projects, start full dev environments in seconds.
1111

1212
## Quick Start
1313

@@ -260,9 +260,9 @@ crab court 3230 # Judge + 2 reviewers
260260
```
261261

262262
**Court Review** uses the judge pattern:
263-
- **Judge (Claude)**: Orchestrates, verifies findings, delivers verdict
264-
- **Reviewer A (Claude teammate)**: Independent code review
265-
- **Reviewer B (Codex)**: Independent code review
263+
- **Judge (Codex)**: Orchestrates, verifies findings, delivers verdict
264+
- **Reviewer A (teammate pass)**: Independent code review
265+
- **Reviewer B (Codex)**: Secondary review pass
266266

267267
The judge traces every finding to actual code, resolves disagreements, and produces a verdict with zero false positives.
268268

@@ -286,14 +286,14 @@ crab session delete "feature-x" # Delete a session
286286

287287
### Agent Sync (`crab agent`)
288288

289-
Sync user-level configurations (MCP servers, custom agents/skills) between Claude Code and Codex CLI. Useful when switching a project's agent or maintaining parity across both.
289+
Sync user-level Codex configuration, MCP servers, and skills.
290290

291291
```bash
292292
crab agent status # Audit what's configured on each side
293-
crab agent sync mcp --from claude # Preview MCP server sync (dry run)
294-
crab agent sync mcp --from claude --apply # Sync MCP servers Claude → Codex
295-
crab agent sync agents --from claude # Preview agent → skill rewrites (dry run)
296-
crab agent sync agents --from claude --apply # Rewrite Claude agents as Codex skills (LLM-assisted)
293+
crab agent sync mcp # Preview MCP server sync (dry run)
294+
crab agent sync mcp --apply # Apply MCP server sync
295+
crab agent sync agents # Preview skill sync (dry run)
296+
crab agent sync agents --apply # Apply skill sync
297297
crab agent sync all --apply # Sync everything both directions
298298
```
299299

@@ -407,7 +407,7 @@ Per-project config (`~/.crabcode/projects/<alias>.yaml`):
407407
408408
```yaml
409409
session_name: pf
410-
agent: claude # or "codex" — defaults to claude if omitted
410+
agent: codex # defaults to codex if omitted
411411
workspace_base: ~/Dev/my-project-workspaces
412412
main_repo: ~/Dev/my-project
413413
@@ -430,7 +430,7 @@ layout:
430430
- name: server
431431
command: pnpm dev
432432
- name: main
433-
command: claude --dangerously-skip-permissions # or: codex --full-auto
433+
command: "" # defaults to codex --full-auto; override directly if needed
434434
435435
# Optional: persistent storage across resets
436436
shared_volume:
@@ -457,18 +457,17 @@ See `examples/` for more configuration examples.
457457
- `OPENAI_API_KEY` or `ANTHROPIC_API_KEY` (for `crab pf`)
458458
- Slack bot token (for `crab pf serve`)
459459

460-
**For AI agents (pick one or both):**
461-
- [Claude Code](https://claude.ai/code): `npm install -g @anthropic-ai/claude-code`
460+
**For AI agents:**
462461
- [Codex CLI](https://github.com/openai/codex): `npm install -g @openai/codex`
463462

464463
**For PR reviews (`crab review`, `crab court`):**
465464
- [gh](https://cli.github.com/)
466-
- Claude Code and/or Codex CLI (court review uses both)
465+
- Codex CLI
467466

468467
```bash
469468
# macOS
470469
brew install tmux yq zip gh
471-
npm install -g @anthropic-ai/claude-code # and/or @openai/codex
470+
npm install -g @openai/codex
472471
```
473472

474473
## Installation
@@ -506,7 +505,7 @@ git pull origin main
506505
┌─────────────────────────┬─────────────────────────┐
507506
│ terminal │ │
508507
│ (shell) │ main │
509-
├─────────────────────────┤ (claude/codex/editor) │
508+
├─────────────────────────┤ (codex/editor)
510509
│ server │ │
511510
│ (pnpm dev) │ │
512511
└─────────────────────────┴─────────────────────────┘
@@ -573,9 +572,9 @@ The restore agent walks through each phase — installing tools, restoring confi
573572
6. **Edit config for your project:**
574573
```bash
575574
# Set your layout commands in ~/.crabcode/projects/<alias>.yaml
576-
# - agent: claude or codex (defaults to claude)
575+
# - agent: codex (defaults to codex)
577576
# - server pane: your dev server (e.g., pnpm dev)
578-
# - main pane: your agent command (e.g., claude --dangerously-skip-permissions, codex --full-auto)
577+
# - main pane: optional override (defaults to codex --full-auto)
579578
```
580579

581580
7. **Start working:**

docs/index.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1599,7 +1599,7 @@ <h3>Multi-Agent Code Review Tribunal</h3>
15991599
<div class="terminal-preview">
16001600
<div><span class="prompt">$</span> <span class="command">crab court 3230</span></div>
16011601
<div class="output">⚖️ Assembling review tribunal...</div>
1602-
<div class="output">✓ Reviewer A (Claude): analyzing architecture impact</div>
1602+
<div class="output">✓ Reviewer A (Teammate): analyzing architecture impact</div>
16031603
<div class="output">✓ Reviewer B (Codex): analyzing implementation correctness</div>
16041604
<div class="output">✓ Judge: cross-referencing findings against source...</div>
16051605
<div class="output">✓ Verdict delivered. 0 false positives. <span class="command">Justice served. 🦀</span></div>
@@ -1609,7 +1609,7 @@ <h3>Multi-Agent Code Review Tribunal</h3>
16091609
<div class="bento-card medium">
16101610
<div class="icon">🎫</div>
16111611
<h3>Ticket-Driven Development</h3>
1612-
<p>Connect workspaces directly to Linear tickets for automatic context injection. Branch naming, ticket metadata, and Claude context all provisioned from a single identifier. Reduces ticket-to-first-commit latency by 76%.</p>
1612+
<p>Connect workspaces directly to Linear tickets for automatic context injection. Branch naming, ticket metadata, and agent context are all provisioned from a single identifier. Reduces ticket-to-first-commit latency by 76%.</p>
16131613
</div>
16141614

16151615
<div class="bento-card half">
@@ -1708,7 +1708,7 @@ <h2 class="section-title">Optimized Developer Experience</h2>
17081708
<div class="tmux-pane main">
17091709
<span class="pane-label">main</span>
17101710
<div class="pane-content">
1711-
<span style="color: var(--crab-shell);">claude</span> <span class="active">></span> <br>
1711+
<span style="color: var(--crab-shell);">codex</span> <span class="active">></span> <br>
17121712
<br>
17131713
AI pair programming<br>
17141714
session operationalized. 🦀
@@ -1996,7 +1996,7 @@ <h3>Extensibility & Customization</h3>
19961996
</div>
19971997
<div class="command-item">
19981998
<code>crab session resume &lt;name&gt;</code>
1999-
<p>Restore named Claude session with full context continuity</p>
1999+
<p>Restore named agent session with full context continuity</p>
20002000
</div>
20012001
</div>
20022002
</div>
@@ -2473,7 +2473,7 @@ <h3>Extensibility & Customization</h3>
24732473
lines: [
24742474
{ type: 'typed', text: '$ crab review 3230' },
24752475
{ type: 'output', text: '📋 Fetching PR context...' },
2476-
{ type: 'output', text: '🤖 Claude reviewing...' },
2476+
{ type: 'output', text: '🤖 Codex reviewing...' },
24772477
{ type: 'output', text: '✓ Review saved!' }
24782478
]
24792479
},
@@ -2490,7 +2490,7 @@ <h3>Extensibility & Customization</h3>
24902490
{ type: 'typed', text: '$ crab ticket ENG-123' },
24912491
{ type: 'output', text: '🎫 Fetching ticket context...' },
24922492
{ type: 'output', text: '→ Workspace 4 provisioned' },
2493-
{ type: 'output', text: '✓ Claude has ticket context' }
2493+
{ type: 'output', text: '✓ Codex has ticket context' }
24942494
]
24952495
},
24962496
'crab projects': {

docs/llms.txt

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ crab review https://github.com/... # Full URL
8282
crab court 3230 # Judge + 2 reviewers
8383
```
8484

85-
Court review uses the judge pattern: a Judge (Claude) orchestrates two independent reviewers (Claude teammate + Codex), verifies every finding against actual code, resolves disagreements, and delivers a verdict with zero false positives.
85+
Court review uses the judge pattern: a Codex-led judge by default orchestrates two independent review passes, verifies every finding against actual code, resolves disagreements, and delivers a verdict with zero false positives.
8686

8787
```bash
8888
crab review ls # List review sessions
@@ -151,7 +151,7 @@ crab alias rm rr # Remove alias
151151

152152
### Session Management
153153

154-
Track and resume named Claude conversations:
154+
Track and resume named agent conversations:
155155

156156
```bash
157157
crab session ls # List sessions
@@ -190,6 +190,7 @@ Per-project config (`~/.crabcode/projects/<alias>.yaml`):
190190

191191
```yaml
192192
session_name: pf
193+
agent: codex
193194
workspace_base: ~/Dev/my-project-workspaces
194195
main_repo: ~/Dev/my-project
195196

@@ -213,7 +214,7 @@ layout:
213214
- name: server
214215
command: pnpm dev
215216
- name: main
216-
command: claude
217+
command: "" # defaults to codex --full-auto
217218

218219
# Persistent storage across workspace resets
219220
shared_volume:
@@ -243,7 +244,7 @@ slack:
243244
┌─────────────────────────┬─────────────────────────┐
244245
│ terminal │ │
245246
│ (shell) │ main │
246-
├─────────────────────────┤ (claude/editor) │
247+
├─────────────────────────┤ (codex/editor)
247248
│ server │ │
248249
│ (pnpm dev) │ │
249250
└─────────────────────────┴─────────────────────────┘
@@ -259,9 +260,7 @@ Keybindings (prefix: `Ctrl+a`):
259260

260261
**Core:** bash, tmux, git, [yq](https://github.com/mikefarah/yq), zip
261262

262-
**For PR reviews:** [gh](https://cli.github.com/) (GitHub CLI), [Claude Code](https://claude.ai/code) (`claude` CLI)
263-
264-
**Optional:** [Codex CLI](https://github.com/openai/codex) (for court review with Codex reviewer)
263+
**For PR reviews:** [gh](https://cli.github.com/) (GitHub CLI), [Codex CLI](https://github.com/openai/codex) (`codex` CLI)
265264

266265
## Links
267266

docs/promptfoo-plugin.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ promptfoo eval
9191
|------|-------------|
9292
| `--file`, `-f` | Input file path |
9393
| `--output`, `-o` | Output directory (default: current dir) |
94-
| `--provider` | LLM provider (default: `openai:gpt-4o`) |
94+
| `--provider` | LLM provider (default: `openai:gpt-5`) |
9595
| `--verbose`, `-v` | Show detailed agent output |
9696
| `--max-turns` | Max agent iterations (default: 30) |
9797

examples/nodejs-monorepo.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ layout:
2323
- name: server
2424
command: pnpm dev
2525
- name: main
26-
command: claude --dangerously-skip-permissions
26+
command: codex --full-auto
2727

2828
env_sync:
2929
files:

examples/promptfoo-cloud.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ layout:
2323
- name: server
2424
command: pnpm dev
2525
- name: main
26-
command: claude --dangerously-skip-permissions --chrome
26+
command: codex --full-auto
2727

2828
env_sync:
2929
files:

examples/python-project.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ layout:
2323
- name: server
2424
command: uvicorn app.main:app --reload --port $API_PORT
2525
- name: main
26-
command: claude --dangerously-skip-permissions
26+
command: codex --full-auto
2727

2828
env_sync:
2929
files:

0 commit comments

Comments
 (0)