AI-Chain

Claw Code:把 CLI agent harness 做成 Rust 版,還把「先 doctor 再開工」變成流程

Claw Code 不是單純把 CLI agent 重寫成 Rust,而是把 onboarding、doctor 檢查、JSON 輸出、mock parity harness 與權限控制一起納入產品設計。對正在做 coding agent 或開發者工具的人來說,這是一個很值得拆解的 repo。

分享:
Claw Code:把 CLI agent harness 做成 Rust 版,還把「先 doctor 再開工」變成流程

Claw Code:把 CLI agent harness 做成 Rust 版,還把「先 doctor 再開工」變成流程

如果你只看 AI coding tools 的 demo,很容易誤以為重點是「它能不能幫你寫出一段程式碼」。

但真正值得研究的,往往不是輸出檔案,而是它怎麼被啟動、怎麼被驗證、怎麼被控管、怎麼被重跑

Claw Code 就是這類 repo 的代表。它是 Claw Code CLI agent harness 的公開 Rust 實作,核心工作區在 rust/,主要入口是 claw CLI。從 README 和使用文件來看,它不是只把一個舊工具「搬到 Rust」,而是把一整套 agent 工作流一起整理成可重複執行的產品表面。

截至我查看時,這個 repo 已經有 19 萬+ stars,而且最近仍然持續更新。這讓它不只是「又一個 coding agent 專案」,而是很適合拿來觀察:一個 agent 工具要怎麼從 demo 變成真正可用的工程系統

先從第一步開始:doctor

Claw Code 最讓我有感的地方,是它把「先檢查環境」做得很明確。

官方文件直接把 /doctor 放在第一個建議動作:先啟動 claw,再跑 doctor health check。這個設計很務實,因為 agent 類工具最常見的問題,從來不是模型不會回答,而是:

  • API key 沒設好
  • 權限模式不對
  • 工作區沒有初始化
  • session 狀態不一致

與其讓使用者在失敗後自己猜,不如把診斷流程變成產品的一部分。這也是 Claw Code 跟很多「看起來很會」的 AI 工具不一樣的地方:它先承認真實世界很髒,再提供一個乾淨的起跑線。

它不是只有 REPL,還有完整的 CLI 工作流

USAGE.md 看,Claw Code 的重點不是只有互動式 REPL,而是一整套可機器化的操作面:

cargo build --workspace
./target/debug/claw
/doctor

還有:

  • claw init:初始化專案,建立 .claw.claw.json.gitignoreCLAUDE.md
  • claw prompt "...":單次執行 prompt
  • claw --output-format json ...:把核心命令輸出成可腳本化格式
  • claw state:讀取 worker state
  • claw agents / claw mcp / claw skills / claw sandbox:把 agent 生態需要的周邊能力也納進來

這些功能看起來很像「工具列表」,但其實是在傳達一個很重要的訊息:agent 不是一個 prompt,而是一套可運行的系統

如果你在做開發者工具,這種設計比單純追求模型輸出更值得學。

Rust 的價值,不只是「更快」

很多人看到 Rust rewrite,第一反應是效能。

但 Claw Code 更有意思的地方,是它把 Rust 用在一個更現實的目標:讓 agent 的行為可預測、可驗證、可回放

rust/README.md 裡,它把能力列得很完整:

  • provider flows + streaming
  • interactive REPL
  • tool system(bash、read、write、edit、grep、glob)
  • web tools
  • permission system
  • MCP server lifecycle
  • session persistence + resume
  • git integration
  • machine-readable JSON output
  • slash commands

另外,專案還有 deterministic mock Anthropic service、clean-environment CLI harness、mock parity scenarios。這類東西很少出現在對外宣傳頁上,但對真正要把 agent 做成產品的人來說,卻是關鍵。

因為最後決定工具能不能上線的,往往不是「它會不會回答」,而是:

  • 它能不能在乾淨環境中重現?
  • 它能不能被測試?
  • 它能不能安全地跑工具?
  • 它能不能把狀態寫回去?
  • 它能不能把失敗模式變清楚?

Claw Code 的方向很明顯:先把這些問題變成一等公民,再談智能。

我覺得最值得學的是:它把「系統」放在「成果」之前

這個 repo 的哲學文件有一句話很準:如果你只看生成出來的檔案,你就看錯層了。

這句話放在 agent 時代特別有意義。

因為我們現在很容易被「結果」迷惑:

  • 生成了幾個檔案
  • 寫了多少行 code
  • 一次任務完成得多漂亮

但真正拉開差距的,是背後那套協作結構:

  • 人怎麼下指令
  • agent 怎麼拆解任務
  • 如何檢查
  • 如何恢復
  • 如何把通知與追蹤移出上下文視窗

Claw Code 很像是在公開演示:當 agent 工具成熟到一定程度,產品賣點就不只是「幫你做事」,而是「怎麼穩定地做事」

如果你在做 coding agent,這個 repo 值得怎麼看

我會建議從這幾個角度讀 Claw Code:

  1. 先看 onboarding:第一次跑起來要做什麼?
  2. 再看 diagnostics/doctor 解決哪些常見失敗?
  3. 再看 automation surface:它如何支援 JSON、session、state、init?
  4. 再看安全與權限:工具執行如何被管控?
  5. 最後看 parity / harness:它怎麼驗證行為沒有跑掉?

如果一個 agent 專案只展示「會回答」,那通常還不夠。

如果它連如何讓人放心地使用都設計好了,才開始接近一個真正可持續的產品。

結語

Claw Code 讓我最有印象的,不是它把 CLI agent 做成 Rust,也不是它有哪些命令,而是它很清楚地把一件事說明白:

AI 工具的競爭,最後會從「誰會生成內容」走向「誰能把流程定義得更可靠」。

對正在研究 coding agent、開發者工具或 AI 工作流的人來說,這是一個很值得拆解的 repo。

它不是一個單純的 demo。它是在把 agent 產品化這件事,做成可閱讀的系統設計。

參考資料

  • GitHub: https://github.com/ultraworkers/claw-code
  • Usage guide: https://github.com/ultraworkers/claw-code/blob/main/USAGE.md
  • Rust workspace: https://github.com/ultraworkers/claw-code/blob/main/rust/README.md
  • Parity status: https://github.com/ultraworkers/claw-code/blob/main/PARITY.md
  • Philosophy: https://github.com/ultraworkers/claw-code/blob/main/PHILOSOPHY.md