Use cases

Claude writes, Codex reviews.

The default Auto-code loop: you move a ticket to Todo, Claude writes the diff in a worktree, Codex reviews it, and the ticket lands in Done with the diff waiting on its own branch. You merge it with one click. One ticket, twenty minutes, and you stop pasting diffs into a second chat.

20 minClaude Code · Codex · Auto-codetemplate: Code + code review · Mo-driven

1Connect both agents

Open Settings → Integrations. Under Apps and Agents, Morion lists what it found on your machine. Click Connect on Claude and on OpenAI Codex: Morion writes the MCP config for each and backs up the old file.

Then open Settings → Skills and install the Morion skill into both, so each agent knows the board and its rules before you type a word.

Settings · Integrations · Apps and Agents
Claude connected
Disconnect
OpenAI Codex connected
Disconnect
Cursor · Cline · Gemini Antigravity · Zed · Windsurf
Connect

2Turn on Auto-code for the folder

Create a folder for the repository inside a project and switch it to the kanban view. Open Folder Settings.

On the AI Access tab, turn AI access on: agents can see the folder and Mo indexes it. Auto-code needs Mo: a mo_stage decides between stages, and Mo writes the work packet the implementer starts from.

On the Auto-code tab, turn on Auto-code on this folder, set Linked git repository to the repo, and keep the default workflow, Code + code review · Mo-driven. Claude sits in the implementer slot, Codex in the reviewer slot with Claude as fallback.

No Codex subscription, or want a third opinion? Put an open model in the review: in the project’s settings, open the workflow, then select the reviewer node, set the agent to opencode or pi, the provider to OpenRouter or a local Ollama, and the model to a Kimi, GLM or DeepSeek model. Replace Codex with it, or add it as a second review node after Codex. Mo reads each review and decides whether the ticket goes on to Done or back to Claude.

Folder settings · habit-tracker · Auto-code
Auto-code on this folder
Drag a ticket to todo → Mo runs the default workflow (or the ticket's pinned workflow) on it.
Linked git repositoryLinked ✓
/Users/me/code/habit-trackerBrowse…
Default workflowCode + code review · Mo-drivenDEFAULT
Max concurrent runsDefault (5)
5

3Write a ticket the agent can act on

A ticket is a note with a status. Give it a title an implementer can act on, a body with the acceptance criteria, and move it to Todo. That move is the trigger.

Write it yourself, or ask Claude Code to write it over MCP. The implementer never sees your chat; it sees the ticket, so the ticket has to carry the intent.

you → Claude CodeCreate a ticket in Morion, folder habit-tracker, status Todo: WeeklyAggregate should use a rolling seven-day window ending today instead of the calendar week. Put the acceptance criteria in the body and link the “rolling window” decision.
Weekly aggregation: rolling seven days ## What WeeklyAggregate currently sums check-ins by calendar week (Monday to Sunday). The spec says a rolling seven-day window ending today. ## Acceptance - WeeklyAggregate.count(for: habit, on: date) uses date-6...date - Existing tests updated, two new cases at week boundaries - No change to the Habit list screen layout ## Context Plan: habit tracker · decision "rolling window" · Check-in flow ticket

4Watch the run

The run shows on the card; open its Auto-code drawer to follow each stage. First a mo_stage checks there is enough context to start and hands Claude a work packet: the ticket, the related notes, the project brief. Claude works in a worktree, runs the tests, and reports.

A second mo_stage decides whether the diff is ready for review. Codex reads the ticket, the diff in the worktree and the comments, and writes a review. A third mo_stage reads it and decides: approve, send it back to Claude with the review in context, or reject.

If Claude comes back with a question instead of a finished diff, Mo routes the run to a human_gate: the run stops and asks you in chat, and your reply resumes it.

Auto-code drawer
Mo · auto-code activity
Weekly aggregation: rolling seven days
Auto-code workflowUse folder default
DONEattempts: 1reopens: 0Merge into mainShow filesOpen in editorauto-01m3d2k7qv9x4c8n6b5t3w1rzh
Ready to mergeWhat Mo did
Mo finished the ticket. Click "Merge into main" above to land the worktree branch on your trunk.
Mo changed 3 files.+71 · −15 lines(3 files changed, 71 insertions(+), 15 deletions(-))
Files (3)
Sources/Habits/WeeklyAggregate.swift+18−9
Tests/HabitsTests/WeeklyAggregateTests.swift+41−6
Sources/Habits/RollingWindow.swift+12
Session● review · codex · done
Window math is correct at month and year boundaries; test names are clear. One nit: the doc comment on WeeklyAggregate.count says "week", it should say "window". No blocking issues.

5Merge the result

When Mo accepts the review, it posts a closing comment and moves the ticket to Done. The diff waits on the run’s branch, not on trunk. Open the card’s Auto-code drawer, check the files, and click Merge into main; the AI merge resolver takes any conflict. Once you trust the loop, turn on Auto-merge on done in the folder’s Auto-code tab.

Had Codex asked for changes, Mo would have sent the diff back to Claude in the same run, with the review in context. If a run fails, the card lands in Re-opened with the reason, and the next run starts from that failure.

Trunk guard watches the whole run. Anything an agent changes outside its worktree is reverted and logged.

habit-tracker · Kanban
Review
Re-opened
Habit list screen
!Run failed · reason on the card
Done
Weekly aggregation
MoCodex approved. Merge into main.

6Questions

Do I need a Codex subscription?

No. Put an open model in the review node through OpenRouter or a local Ollama, or let Claude review as the fallback.

Does Auto-code merge without me?

Only if you turn on Auto-merge on done for the folder. Otherwise the diff waits on its branch until you click Merge into main.

7What you have now

Every ticket you move to Todo gets written by Claude and reviewed by Codex without you opening either terminal. You read the review on the card and merge from the drawer. The reviewer’s reasons live on the ticket, so the next implementer run and the next Ask Mo both see them.

Download