Möbius loop for Claude Code — plan → exec → fight → finalize, the end is a new beginning.
┌─── plan ───┐
│ ↓
finalize exec
↑ │
└── fight ←───┘
Four phases on a continuous strip. When one cycle ends, the findings feed the next. No break point — only a twist.
git clone https://github.com/CtriXin/fight-agent.git ~/.claude/skills/fight-agentgit clone https://github.com/CtriXin/moebius.git ~/.claude/skills/moebius- Claude Code CLI
- fight-agent installed
jqfor JSON processing
/moebius plan [description] — design a plan
/moebius exec — execute existing plan
/moebius review [PACK_ID] — adversarial review (most common)
/moebius run [description] — full loop
/moebius status — show reviewer adapter status
Alias: /mobi works the same way.
| Phase | What happens | Who |
|---|---|---|
| plan | Explore codebase, design approach, write plan | Claude (planner) |
| exec | Execute the plan, produce execution.json | Codex or Claude (executor) |
| fight | Independent adversarial review of the execution | fight-agent → reviewer |
| finalize | Apply verdict, merge or loop back | Human + Claude |
The fight phase is where moebius gets interesting. Instead of self-reviewing, it delegates to fight-agent — an independent adversarial reviewer that produces a structured verdict:
- pass — ship it
- contested — disagreements, planner arbitrates
- reject — issues found, loop back
- blocked — can't judge, need more context
moebius → fight-agent
fight-agent must be installed before using moebius. See fight-agent README for details.
/moebius status reads fight-agent's .ai/cache/preflight/adapters.json, so adapter availability, auth status, and recommended reviewer stay consistent with the actual fight phase.
MIT
∞ the end is a new beginning