Codex 0.164 Shipped /presets. Agent CLIs Are Converging, So Bet on Your Workflow

2026-11-03来源 dev.to ProductivityEnglish
Codex 0.164 Shipped /presets. Agent CLIs Are Converging, So Bet on Your Workflow

Codex CLI 0.164.0, tagged October 23, leads its release notes with this: "Save reusable prompts and slash commands in ten numbered /presets slots, with a keyboard menu for quick access." The second bullet: "Set model, reasoning effort, speed, and permission profiles directly with inline /model and /permissions arguments."

The same day, Anthropic tagged Claude Code v2.1.310. That made ten releases, v2.1.301 through v2.1.310, starting October 15. Ten releases in nine days.

Read those two changelogs next to each other for a few weeks and a pattern shows up. The two biggest agent CLIs are shipping the same checklist. My take: the agent CLI is turning into a commodity that changes every week, and the thing worth investing in is the workflow around it.

Two weeks of changelogs, side by side

Start with worktrees. Two weeks before /presets, Codex 0.162.0 (October 8) added "tools for creating and listing managed Git worktrees from trusted local projects when the worktrees feature is enabled." Then 0.164 lists "Retire worktree and voice feature flags" in its changelog. Claude Code has had this for a while: claude --worktree starts a session in .claude/worktrees/<name>, and mid-session you can ask Claude to "work in a worktree" and it calls its EnterWorktree tool.

The rest of the list:

Feature Claude Code Codex CLI
Model switch with an argument /model [model] inline /model args, 0.164
Agent creates worktrees EnterWorktree worktree tools, 0.162
Compaction /compact [instructions] changes in 0.162, fixes in 0.164
Hooks around compaction PreCompact, PostCompact PreCompact, PostCompact
Headless runs claude -p codex exec
Subagents --agents, .claude/agents/ on by default
Reusable prompts skills and commands /presets, 0.164

Even the hook names line up. Codex's hooks page lists twelve events. Eleven of them (SessionStart, PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, UserPromptSubmit, SubagentStart, SubagentStop, Stop and SessionEnd) have the same name in Claude Code's hooks reference. The odd one out is Codex's Interrupt.

Two near-identical command-line terminals facing each other like mirror images, each holding the same set of small tools
Two vendors, two release trains, one converging feature list.

Where they still differ

Claude Code's hooks reference lists 33 events, including WorktreeCreate, WorktreeRemove, PreModelSwitch and FileChanged (hooks). Its worktree mode enforces isolation: it blocks edits and git commands aimed at the main checkout from inside a worktree session, and the same checks cover subagents (worktrees). A custom subagent can carry isolation: worktree in its frontmatter so it always gets its own checkout.

On the Codex side, codex exec runs in a read-only sandbox by default and prints only the final agent message to stdout, which makes it pleasant to pipe in CI (non-interactive mode). Hooks can live inline in config.toml as [hooks] tables (hooks). And /presets gives you ten numbered slots out of the box, where Claude Code's equivalent is skills and custom commands you write yourself.

So pick by fit: depth of hooks and isolation on one side, a quiet scriptable exec and a built-in preset menu on the other. This comparison will look different next month.

The CLI is the wrong thing to get attached to

Look at what a weekly release train does to anything built tightly on top of one CLI.

Claude Code's changelog for 2.1.304 fixed claude --worktree "removing the worktree and its branch without asking at exit when HEAD was detached or on another branch, which could lose commits." Five releases later, 2.1.309 changed its worktrees to ignore git replace refs. Codex 0.164 retired a feature flag that 0.162 had described its worktree tools as depending on. That is what fast-moving tools look like, and it is fine.

If your process is "the way Claude Code does worktrees" or "the Codex preset I set up last week", your process breaks every time a changelog moves. If your process is plain git plus a review step, the CLI underneath can change weekly and you don't care.

There is a second reason. The checklist is converging, but the models behind the CLIs aren't the same, and neither are your subscriptions or usage limits. When two tools do the same job, the useful freedom is choosing per task: the agent that is best at this refactor, or the one that still has quota at 5 p.m.

What lasts: branches, review, a free choice per task

The durable layer is small and boring, and it is all yours.

One branch and one worktree per task, made with git, not with a vendor flag. This shell function starts any agent CLI on its own branch:

# start any agent CLI on its own branch and worktree task() { local name="$1"; shift git worktree add -b "task/$name" "../$name" && (cd "../$name" && "$@") } task fix-login claude task tidy-auth codex 

Review with git too. Three dots show only what the branch changed since it split off:

git diff main...task/fix-login 

Then the parts that are plain text: your test command as the definition of done, and your project instructions committed to the repo. Those move with you when you switch agents.

You can set all of this up in ten minutes with the git you already have.

Where Hermes fits (I build it, so weigh this accordingly)

I build Hermes IDE, and it is built on this bet. It is not affiliated with OpenAI, Anthropic or any agent vendor.

Hermes doesn't reimplement any agent. Each one runs its own interface in a real terminal, exactly as it would anywhere else, so "a vendor's new commands and modes work in Hermes the day they ship" (README). When Codex added /presets, there was nothing for Hermes to catch up on: you type it in Codex's own terminal. Around those terminals Hermes adds the workflow layer from the last section: ⌘N starts each task on its own hermes/<name> branch in its own worktree, every agent gets one status, and the Review Desk shows changes by turn or by file.

Codex and Claude Code sessions side by side in Hermes IDE, each in its own hermes/ worktree, with the sessions sidebar on the left
Codex on orders-types and Claude Code on orders-api side by side, each in its own hermes/ worktree, with status, context use, cost and branch in the sidebar.

The choice per task is built in. You pick the agent, model, effort and account per task, and save combinations you use often as presets. When one agent hits its usage limit, you can continue the task in another (README).

Hermes 2.3.4 also rebuilt the bar above each session so it "works the same way for every agent", with Model, Plan and Review in the same place, a context meter that offers Compact when the conversation gets close to full, and command lists that match each agent's current version (release notes).

The action bar above a Claude Code session in Hermes IDE with the Commands list open, showing pinned and built-in commands
The action bar above a Claude Code session (Prompts, Context, Model, Plan, Review, / Commands) with the Commands list open: pinned Context, Model, Plan and Review, then built-in commands such as Compact, Usage and Diff.

The branches are plain git, so if you stop using Hermes, git worktree list still shows them. It is source-available under BSL 1.1 and runs on macOS, Windows and Linux. Download it or read the source on GitHub.

If this was useful

Once the CLI is the replaceable part, the thing you carry between agents is text: your instructions, your saved prompts, the way you phrase a task so any model can pick it up. My Prompt Engineering Pocket Guide is a short read on writing those so they hold up across models.

Prompt Engineering Pocket Guide: Techniques for Getting the Most from LLMs

原文:https://www.a8q9.cn/en/article/codex-0-164-shipped-presets-agent-clis-are-converging-so-bet-on-your-workflow-a9c912.html

相关文章