mu outsources the boring decisions to a tiny judge model
A coding agent that splits the labor: a small fast model handles the hundreds of routine judgment calls per session so the big model can just code.

What it does
mu is a coding agent (CLI plus an Electron desktop app) built on the pi coding agent, with a twist: a “judgment kernel” called Jev. A session involves hundreds of decisions that aren’t about code — is this tool output worth keeping in context, did the user actually ask for this risky command, is this sub-agent finding worth sharing. mu delegates each of those to a small, fast judge model that answers one bounded question at a time, at 38 named decision points per turn. The big model keeps its attention on the actual work.
The interesting bit
The decision points are unusually concrete and well-named — tool.injection withholds passages from web pages and MCP output that carry instructions aimed at the AI; context.forget turns stale tool results into one-line tombstones; turn.continue sends the model back when it stops on “let me run the tests next.” Each point can be active, shadow (logged but inert, for comparing judges), or off, and each can name its own judge — including Laya, a 322M-parameter local model that never touches the network. Every verdict lands in a ledger you can inspect.
Key highlights
- 38 decision points covering input, context management, tool safety, turn control, and multi-agent teamwork
- Prompt-injection defense: passages with AI-directed instructions never reach the model
- Judge options: hosted Jev (free on OpenCode Zen with no key), local Laya, or any LLM via
classifier:/llm:prefixes, with cascades - Shadow mode lets you evaluate a judge before trusting it
- Desktop app ships the runtime — paste an API key or sign in with an existing ChatGPT/Claude/Grok/Google subscription
- Measured by the authors: one warm judge question in ~0.3s; 16 chunks judged in one request in 0.44s
Caveats
- Early development (0.1.x pre-releases); the authors warn names, settings, and formats may still change
- The free no-key Jev runs through OpenCode Zen, and what it judges goes to OpenCode (which says it doesn’t train on it) — mu discloses this once a day
output.drift(mid-stream constraint checking) is explicitly labeled experimental
Verdict
Worth a look if you’re interested in context engineering and agent architecture — the decision-point taxonomy alone is a good read. If you just want a coding agent that works today, note it’s pre-1.0 and the judge layer is the point, not the polish.
Frequently asked
- What is qybaihe/mu?
- A coding agent that splits the labor: a small fast model handles the hundreds of routine judgment calls per session so the big model can just code.
- Is mu open source?
- Yes — qybaihe/mu is open source, released under the MIT license.
- What language is mu written in?
- qybaihe/mu is primarily written in TypeScript.
- How popular is mu?
- qybaihe/mu has 504 stars on GitHub.
- Where can I find mu?
- qybaihe/mu is on GitHub at https://github.com/qybaihe/mu.