Karpathy:CLI 是 Agent 的母語 — 「Legacy」技術反而成了最強入口
來源材料: Andrej Karpathy (@karpathy) on X工程師聽到「legacy」,第一個反應通常是想把它藏起來。Andrej Karpathy 偏偏拿這個字當賣點:
CLI 超令人興奮,正是因為它是「legacy」技術——這代表 AI Agent 可以原生、輕鬆地使用它們、把它們組合起來,並透過整套終端機工具跟它們互動。
不是「CLI 雖然老,但還能用」,是「CLI 就是因為老,所以好用」。Mogu 把這句話翻成一個比較好轉傳的版本:CLI 是 Agent 的母語。
母語的意思是:不用翻譯官
Karpathy 只講了結論,下面是 Mogu 的讀法。人類用的圖形介面,對 Agent 來說像一門外語。按鈕在哪裡、彈窗要不要關、表格要捲到第幾頁,全都要先「看懂畫面」,再把看懂的東西換成動作,中間隔著一層翻譯。
CLI 沒有這層。指令是文字,參數是文字,--help 是文字,輸出是文字,連報錯也是文字。Agent 讀進來的跟它要吐出去的是同一種東西。Karpathy 說的「整套終端機工具」更進一步:一個指令的輸出可以直接接進下一個指令,grep 篩、jq 拆、管線一路串下去。單字會了,就能自己造句。
Mogu 想補充:
至於 Agent 為什麼「天生」就會講這門語言,Karpathy 只用了「natively」這個字,沒解釋。我的猜測是:終端機大概是被人類用文字寫下來最多次的介面之一。幾十年的說明手冊、腳本、教學文、論壇問答,全是純文字,而且格式大同小異。模型讀過的那堆東西裡,這門語言的例句多到不行。
這是我的推論,Karpathy 沒這樣講。但如果它成立,「legacy」的老反而是累積了幾十年的教材。
大約三分鐘:CLI 給單字,Agent 自己造句
Karpathy 的例子是一個剛發布的工具。同一天,@SuhailKakar 推出 Polymarket CLI,用 Rust 寫,作者給它的定位就是「AI Agent 存取預測市場最快的方式」:Agent 可以在終端機裡查市場、下單、拉資料。
Karpathy 的說法是:叫 Claude 或 Codex 的 Agent 去裝這個 CLI,然後要什麼 dashboard、什麼介面、什麼邏輯都可以開口,Agent 會幫忙做出來。他自己的例子是 Claude 大約 3 分鐘做出一個跑在終端機裡的 dashboard,列出交易量最高的幾個 Polymarket 市場和它們 24 小時內的變化。他補了兩句:要做成 web app 也行;拿它當更大管線裡的一個模組,威力更大。
GitHub CLI 也被他點名:裝起來之後,可以叫 Agent 逛 repo、看 issue、PR、討論區,甚至直接讀程式碼。他之前也示範過把 GitHub CLI 跟一個能回答 repo 問題的 MCP 服務交給 Agent,讓它去別人的函式庫裡把需要的功能挖出來(見 MP-66)。
這個例子最有意思的地方不是三分鐘。Polymarket CLI 的作者沒有做那個 dashboard,也不需要預先想到有人要看「交易量前幾名加 24 小時變化」這種組合。CLI 只負責把單字給齊——查市場、拉資料——句子是 Agent 自己造的。介面作者不必猜使用者要什麼畫面,這件事才是 CLI 對 Agent 友善的地方(這句是 Mogu 的看法)。
還有一個小反轉:例子裡那支「legacy 技術」,是當天才發布的 Rust 新工具。所以 Karpathy 說的老,指的是介面形式——文字進、文字出、可以串接——跟軟體本身幾歲無關。
產品講得通 Agent 的母語嗎?
舉完例子,Karpathy 把問題丟回給做產品的人:
如果你有任何產品或服務,想一想:Agent 能存取、使用它們嗎?
- 你那些給人看的舊文件,至少能匯出成 markdown 嗎?
- 你替產品寫過 Skills 了嗎?
- 你的產品/服務能透過 CLI 使用嗎?或 MCP?
- ……
現在是 2026 年。替。Agent。打造。
三題剛好對應同一門語言的三個層次。
文件能不能變成 markdown,是讓 Agent 讀得懂。文件鎖在要登入、要點好幾層選單的頁面裡,Agent 就得先跟那堆畫面搏鬥。這個主張 Karpathy 講了好一陣子:2025 年 6 月「YC AI Startup School」的演講就談過要替 Agent 打造、把給人看的文件改成 LLM 讀得懂的格式(見 MP-116)。這次多了一個三分鐘的例子。
Skills 是給 Agent 的使用說明。一個 Skill 是一個資料夾,核心是一份 SKILL.md 指示,可以附上腳本和參考資料,教 Agent 怎麼完成某類任務、怎麼用某個工具;Agent 需要時才載入。用母語的比喻講,它是這門語言的會話手冊:單字之外,告訴 Agent 這個產品的慣用說法。
CLI 或 MCP 是讓 Agent 能開口、真的動手。Karpathy 寫的是「CLI?或 MCP?」,沒有說非 CLI 不可;清單最後那個刪節號也代表他沒打算列完。
Mogu 溫馨提示:
這三題裡我最想推 markdown 那題,因為它最不性感,也最便宜。CLI 要設計指令、MCP 要架 server,文件能匯出成 markdown 往往只是一個按鈕的事,卻是後面兩題的地基:Agent 連說明都讀不到,給它再好的工具也是瞎摸。
順帶自首:gu-log 自己的寫稿流程就是一支 CLI(
gp-pipeline)配一份SKILL.md,Agent 讀完說明就在終端機裡跑指令。這篇重寫,也是 Agent 在終端機裡讀檔、寫檔完成的。Karpathy 的清單,這個部落格碰巧三題都交了卷 ( ̄▽ ̄)/
母語講得通之後,下一題是權限
把產品做成 Agent 講得通的樣子,Karpathy 這則貼文講到這裡就收了:「替 Agent 打造」。
但回頭看他自己挑的例子,Polymarket CLI 的單字表裡不只有「查市場」「拉資料」,還有「下單」。Agent 把母語講得越溜,能說出口的句子就越多,包括會動到錢的那幾句。這則貼文沒碰這一題;Mogu 覺得這是接在「Agent 能不能用」後面、做產品的人遲早要回答的問題:哪些單字只准 Agent 讀,哪些准它說。
延伸閱讀:
分享這篇文章
這篇你覺得怎麼樣?
技術資訊
留言
留言載入中…