mu CLI
A coding agent for terminal and desktop: a small judge model takes the routine decisions while the main model writes the code
- 560 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- The agent runs terminal commands and edits files, and in Full access mode it does so without confirmations
- In Judge mode a judge model grants command permissions, and its mistake lets something through
- Judge question fields go to an outside service until a local judge is switched on
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/muDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The agent runs terminal commands and edits files, and in Full access mode it does so without confirmations
- In Judge mode a judge model grants command permissions, and its mistake lets something through
- Judge question fields go to an outside service until a local judge is switched on
This is third-party code. Review the repository files before installing.
What it does
mu is a coding agent built on pi. It installs as the mu command in the terminal and as an app for macOS, Windows and Linux. Its premise is that many decisions in an agent's loop are not about the code: what goes into the context, whether a command is safe, whether the work is done. A judge makes them, a small model that answers one bounded question and gives a probability for each answer. There are 40 such decision points. The judge keeps the context compact. It reviews long tool output in chunks so only what is needed enters the request, and it replaces stale results with a short note. In Judge mode, the default, it lets through what the task clearly requires and asks you about the rest. Rules catch risky commands first, and the judge screens web pages and MCP output for instructions aimed at the AI before the model sees them. Every verdict goes into a local ledger. The default judge is Jev from TypeSafe. It can be replaced by the local models mude 1.0 and Laya, your own server or any LLM. mu also has a swarm of subagents, where the judge decides which findings agents share, and a built-in browser.
Who it is for. For developers who work with an agent in the terminal a lot and want to cut token spend on routine and see a log of access decisions.
Good fit when
- Session context fills quickly with long test and log output, and you want only the important parts to reach the request
- The agent asks permission too often, and you want Judge mode that lets the obvious through and asks about the unclear
- The agent reads web pages and MCP output, and you want a check for instructions aimed at the AI
- You want to compare several judges in shadow mode and read the verdicts in the ledger before trusting one
- You need to bring conversation history over from Claude Code or Codex with mu import
Not a fit when
- You need to sign in with a Claude subscription: /login does not offer it
- You need ready comparisons with pi, Claude Code or Codex on the same tasks: the project does not have them yet
- You want the local Laya judge on Windows or Linux: it runs only on macOS with Apple silicon
- You work with code that must not go to an external judge and you are not ready to switch to a local one or turn the judge off
Example request
Find out why jobs with a 1h30m timeout get killed after about an hour, fix the cause and make the tests passLimitations
- The command line needs Node.js 22.19 or newer. The desktop app ships with mu and its runtime built in.
- The authors took their measurements on their own sessions and synthetic projects. Log repeat folding is checked on Vitest only: the measurement shows what reaches the model and says nothing about whether it then solves the task better.
- Laya and mude 1.0 run locally only on Macs with Apple silicon. Laya is weaker on meta-judgments than on simple questions.
- Free access to Jev through OpenCode Zen is temporary.
- The app offers sign-in with ChatGPT, Grok and Google subscriptions. A Claude subscription is not among them: Anthropic does not allow such sign-in in other apps.
How to disable. Remove the package with npm uninstall -g mu-agent and uninstall the desktop app the usual way for your system. Settings and the decision ledger live in ~/.mu and can be deleted separately. To keep mu but turn the judge off, run mu setup --judge off.
FAQ
How do I install mu?
Run npm i -g mu-agent, then mu setup to connect a model and mu for a session in the current folder. For the desktop, download the macOS, Windows or Linux installer from Releases and paste an API key in the app.
What is the judge in mu and what does it decide?
The judge is a small fast model that answers one bounded question at one of 40 decision points and gives a probability for each answer. It decides what enters the context, whether a command is safe, whether to stop and which findings to pass to other agents.
Where does judge data go if no key is set?
Until a key is set, the free Jev on OpenCode Zen answers the judge's questions. Only the fields a question needs go there, and mu reminds you of this once a day. mu runs fully local with mu setup --judge off, the MU_JUDGE=off variable or the local Laya judge.
How do I audit the judge's decisions?
Every verdict with its probabilities and response time goes into a ledger. mu ledger and /status show it, and so does the Judge tab in the app. Any decision point can run in shadow mode: the judge answers and the verdict is logged, but it does not affect the agent's work.
Can I bring over my Claude Code conversations?
Yes. mu import --list finds Claude Code, Codex and ZCode conversations, and mu import with a file brings the chosen one over with its full history. Importing again adds only what is new.
Discussion
No questions or reviews yet.
Related
CLI toolsA tmux-based TUI that runs Claude Code, Codex and other agents in one list: status, quick prompts, worktrees and diff review
A multi-agent harness that verifies results by artifacts: stop hooks, an independent judge and an event log for Claude Code, Codex, Cursor and more
A local-first AI agent running on your own machine via llama.cpp that drives a browser, edits files, runs approved commands and remembers context across session
Long-term memory for agents: it distills knowledge from session history and brings it back in new tasks, one store shared across Claude Code, Codex, Cursor and
An open coding agent for the terminal, browser and desktop that works with models from OpenAI and Claude to Ollama
A teaching terminal coding agent in Python, built as a "nanoGPT for agents": read it, take it apart and fork it
Comparison with similar tools
Entries that share the main search query, and how they differ.
README in short
The README opens with the judge idea and a quick start, then breaks down the forty decision points in five groups. Judges and measurements, the agent swarm, the desktop app, commands, privacy and limitations follow.