TL;DR: OpenAI’s Codex CLI v0.128.0 adds /goal (persistent cross-session objectives) and /pet (animated agent status indicator). /goal is the bigger deal – it shifts AI coding from stateless request-response to stateful goal-driven agents. /pet solves agent observability by showing you what Codex is doing without tailing logs.
The Setup
Every AI coding assistant has the same problem: it forgets what it was doing the moment you close the terminal.
You ask it to refactor a module. It gets halfway through. You close the terminal, grab lunch, come back – blank slate. You re-explain. It starts over.
This is not a context window issue. It is an intent persistence gap. The model has no mechanism to track your objective across session boundaries.
The Fix: /goal
Codex v0.128.0 introduces /goal – a persistent objective system with four operations:
| Command | Function |
|---|---|
/goal create |
Define a persistent objective |
/goal pause |
Suspend with progress preserved |
/goal resume |
Restore execution context and continue |
/goal clear |
Mark complete or abandon |
The critical detail: /goal resume does not just remember the goal text. It restores the execution context through app-server APIs and model tools, so Codex can continue making progress from where it stopped.
Greg Brockman described this as a “built-in Ralph loop” – a persistent agent loop that keeps working toward a defined objective until it is achieved.
Why This Matters
This is the first mainstream AI coding tool to ship goal-driven agent behavior as a core feature. The interaction model shifts from:
Old: You ask → it answers → session ends → you re-explain next time
New: You define a goal → it works across sessions → it resumes automatically → it finishes
For multi-day refactors, coverage campaigns, and migration checklists, this is transformative.
The Surprise: /pet
The second feature is /pet – type it and an animated creature appears in your Codex interface.
It is not decorative. The pet reflects Codex’s background state:
-
Active task = animated pet
-
Tests passed = celebration
-
Error/stuck = reaction
-
Idle = sleeping
9to5Mac called them “little Dynamic Island-ish messengers.” Sam Altman said: “This isn’t the most important thing we’ve done, but it’s more useful than it looks.”
/hatch generates custom pets based on your project context. One developer got a pixel-art dog named “Meme” tagged “The Goodest Boy.”
The Real Value
Agent observability. When your AI assistant runs a 30-minute task, knowing whether it is progressing or stuck – without checking logs – is genuinely useful. /pet is a status indicator wearing a costume.
The Market Signal
When Cursor, Claude Code, and Codex generate similar quality code, differentiation moves to:
| Dimension | Old | New |
|---|---|---|
| Task scope | Single-turn | Multi-session goals |
| Visibility | Terminal output | Ambient indicators |
| Session model | Stateless | Stateful |
| UX design | Functional | Personality + delight |
Core functionality parity → experience becomes the differentiator. Same pattern as every tool category before it.
v0.128.0 Full Changelog
| Feature | Detail |
|---|---|
/goal |
Persistent cross-session objectives |
/pet + /hatch |
Agent status companion + custom generation |
codex update |
Self-update from terminal |
/side |
Parallel conversation panel |
| TUI keymaps | Custom keyboard shortcuts |
| Plugin marketplace | One-click community plugins |
| Session import | Import from external agents |
What to Do
-
Already using Codex? Try
/goalfor multi-session tasks. Use/petfor ambient monitoring. -
Evaluating tools? Add task persistence and agent observability to your criteria.
-
Multi-model setup? The fragmentation tax (separate APIs, auth, billing) is real. EvoLink unifies 30+ models behind one gateway with smart routing.