v0.3.7更少的確認詢問、更少浪費的 token、更少做到一半就停的執行 · mu-agent 0.3.7
mu

程式設計代理的決定,大多不是程式碼

這段輸出要不要看?這條指令能不能放行?工作真的做完了嗎?mu 在 40 個判定點上把這些是非題交給一個小模型:白白浪費的 token 少了,不看就按的允許少了,做到一半就停的也少了。大模型把注意力留給程式碼。

Terminal-Bench 2.1,同一個模型、同一批任務:mu 的嘗試通過率 68.2%,pi 58.7%(高 9.5 個百分點,95% 區間 +3.8 到 +15.2)。怎麼測的

$ npm i -g mu-agent

需要 Node.js 22.19 或更新版本。安裝好後在專案目錄裡執行 mu;第一次使用先執行 mu setup 接上一個模型。

修好一個 bug 之後的 mu 桌面版:中間是對話,右側判定頁逐條列出判定器的判定、判定點和耗時,底部是核心狀態列 修好一個 bug 之後的 mu 桌面版:中間是對話,右側判定頁逐條列出判定器的判定、判定點和耗時,底部是核心狀態列
看一輪工作階段

先判斷,再動手

~/code/relay — mu
 再跑一遍测试。


 $ npm test

 ... (19 earlier lines, ctrl+o to expand)
 ℹ fail 0
 ℹ cancelled 0
 ℹ skipped 0
 ℹ todo 0
 ℹ duration_ms 80.56975

 Took 0.3s


 修好了。一分钟被定义成了 1,000 毫秒,所以 1h30m 被读成一小时零 30 秒,worker 到点
 就中止了任务。

 - src/config/duration.js:m 改为 60_000。
 - npm test:13 个测试全部通过。

 以分钟为单位的 backoff 也受了同样的影响:exports 队列(backoff: "2m")原来 2 秒后
 就重试,现在会等 2 分钟。

────────────────────────────────────────────────────────────────────────────────────
 
────────────────────────────────────────────────────────────────────────────────────
~/code/relay (main)
↑27k ↓242 0.6%/1.0M (auto)                                      mimo-v2.6-pro • high
Jev 1.13 (free): multi-step task · full effort · 184 ms 权限:判定模式
錄影裡大模型的回覆是預先寫好的,判定器的回答是現場給出的。
桌面版的蜂群頁:三隻蜂同時調查一個 bug,箭頭是從一隻蜂送到另一隻蜂的發現
人話看板:在做什麼、做到哪了,下面是一行一行的流水

你說話的時候

判定器先讀一遍

這是新任務、追問,還是在糾正它?做事時的插話要不要立刻打斷?要不要把技能和工具載入進來,還是一句話就能回答?

◆ Jev multi-step task · full effort · 184 ms

這一輪裡,「relay.config.json 里 `timeout: "1h30m"` 的任务,跑一个小时左右就被杀掉了。查一下原因,修好它,并确认测试都能通过。」進來,不到一秒判定器就給出判定:多步任務,全力投入。用不到的技能和 MCP 伺服器不進上下文,需要時才開啟。

工具回傳的時候

輸出先過一遍判定器

一次測試、一次搜尋,動輒幾百行。判定器逐塊判斷哪些現在有用:失敗的測試案例留下,一遍遍洗版的日誌去掉。沒進上下文的部分封存,留一個指標,需要時再取回。

網頁和 MCP 回傳的內容裡,衝著模型來的指令會先被攔下。

動手之前

該停的停,不該問的不問

每條指令執行之前,規則先標出有風險的操作,判定器再確認這是你要的、沒有越過你說過的限制。權限有三種模式:完全存取、判定模式、最小權限,隨時切換。在「判定模式」下,任務明顯需要的由判定器直接放行,其餘的才來問你。

一輪結束的時候

說做完了,要有證據

模型說「好了」的時候,mu 會看這一輪有沒有驗證過,中途有沒有跑偏,要不要退回檢查點重來。

用 /goal <條件> 給一個目標,它會一直做到條件成立才停。做沒做完由大模型核對,判定器兜底;同一個錯誤反覆出現時,判定器判斷這是不是一條死路。

蜂群

幾隻蜂一起做事,判定器站在中間

讓幾個代理一起啃一個難題,最難的不是分派工作,是交流。什麼都不說,各自走進同一條死路;什麼都說,每個人的上下文裡全是別人的聊天。

mu 的蜂群裡,每個發現都由判定器先判一次值不值得共享,再對每隻別的蜂判一次和它的工作有沒有關係:除非判定器確定沒關係,發現都會作為上下文送過去,並標明「這是發現,不是指令」。後來的發現推翻了先前的結論,更正會送到每一隻收到過它的蜂。

人話看板

做事和講話,本來就該分開

模型越來越強,回報卻越來越像寫給機器看的。mu 裡做事的模型照舊用它自己的方式做事;每隔幾次工具呼叫,判定器讀一遍現場,挑出真正算新消息的幾條,交給一個專門因為會說人話而選出來的模型,告訴你做到哪了。

執行結束時,你看到的不只是「做完了」,還有它到底做了什麼。

mu 不做什麼

01

少打擾你

在「判定模式」下,任務明顯需要的由判定器直接放行,其餘的才來問你。

02

不把工具全塞進上下文

開口第一句先判斷:閒聊、追問,還是要動手的工作。用不到的技能和 MCP 伺服器不進上下文。

03

不靠寫摘要來壓縮

上下文變長時,過期的結果直接丟掉,不用寫摘要;快取快過期時,判斷值不值得續一次。

04

不鎖死判定器

40 個判定點,每個都能單獨開關、單獨換判定器:免費的 Jev、Mac 上的 mude 1.0,或任意一個大模型。

05

判定器不要求先設定金鑰

沒設定判定器的金鑰時,預設由 OpenCode Zen 上免費的 Jev 回答,每天提醒一次。

06

不另起爐灶

命令列以 pi 為基礎,pi 的模型、擴充功能、技能和工作階段樹都在;桌面版用的也是同一套工作階段。

40 個判定點各自問什麼、改變什麼

命令列和桌面版,共用一套帳號、設定和經驗

匯入對話Claude Code、Codex、ZCode 的對話匯入進來,接著在 mu 裡聊。
訂閱登入用 ChatGPT 在應用程式內登入,不用到處複製金鑰。
經驗庫你的糾正、繞過的坑會記下來;下次召回了有沒有照做,沒人照做的經驗自己退役。
內建瀏覽器判定器一步一步操作:看一眼頁面,判一次,點一下;送出、付款這類動作先停下來問你。
判定帳本每次判定的結論和耗時都記下來:/status、mu ledger,桌面版有判定頁。
13 種介面語言桌面版介面有简体中文、繁體中文、English、日本語、한국어等 13 種語言。

一起把 mu 做好

Image

喜歡 mu,就到 GitHub 給個 Star

在 GitHub 上 Star575