CodeScene為期三週的實驗,替代理驅動的老舊系統現代化標上了一個很難忽視的數字:約4,000美元的token,把30萬行C程式碼的Code Health分數從5.6拉到毫無瑕疵的10.0。數字很好傳播,附帶的前提條件卻很難傳播,而對任何打算做同樣事情的人來說,那個條件才是更有用的發現。
那個條件叫做「oracle」。代理做的每一次修改,都要通過一套重播軌跡框架的檢驗,逐格比對遊戲的回溯狀態雜湊值。被動刀的程式庫,是快打旋風III:三度衝擊的開源反編譯版本。按CodeScene的說明文章,選它的理由之一,是兩名工程師本身就在玩這款遊戲,壞掉會立刻察覺。行為確定的格鬥遊戲,是少數幾類能讓這種驗證成立的軟體。
重點摘要
- 這次分數提升的token花費約4,000美元,CodeScene把它對照成開發者月薪的一半,而代理出現前的估計是專家12到18個月的工作量。
- 安全網來自行為而非測試:一套逐格比對回溯狀態雜湊值的重播框架,外加一個讓代理可以據以最佳化的CodeHealth分數。
- 被當成成果流傳的數字——AI造成的缺陷少70%、token浪費少45%——是沿用CodeScene早先研究的推估,並不是這次測出來的。
4,000美元實際涵蓋了什麼
原始的活動紀錄相當可觀:2,903次提交、動到726個檔案、修改252,055行。讀這些總量時要看清範圍。這是兩名工程師兼職投入,不是一支正規團隊,而且費用只算token,不含薪資與審查時間。
回饋透過一台MCP伺服器送達,把CodeScene的CodeHealth指標開放給代理取用,讓每一次轉換不只是被嘗試,而是能被評分。把一個確定性的品質分數和一個確定性的正確性檢查配成一對,正是這個迴圈能幾乎無人看管地運轉的原因;少掉任何一半,吞吐量的數字就不太有意義了。
真正的發現是手冊,不是分數
滿分的指標讀數,是這場實驗裡最難移植的部分。真正留得下來的成果是一本手冊:代理邊做邊整理出的22則配方與82條補充筆記,替反覆碰到的轉換型態命名,並寫下每一則的前提條件。
有些條目出自標準劇目——提取函式、防衛子句、參數物件。另外三則大概不會出現在任何重構目錄裡,因為它們描述的是這個程式庫自身的狀況。Shared Index Range把只差在起訖點的迴圈摺疊成一個。Action Parameter吸收掉那些主要差別只在呼叫哪個函式的重複控制結構。Uniform Step Table則把散落各處、型態不一的呼叫,換成表格驅動的派發。
失敗的結果也一併留下。不少嘗試完全沒動到指標,有些甚至把分數拉低;這些被寫進手冊,和成功案例並列。那比較接近實驗記錄本的紀律,而不是一次程式碼清理。
模型的層級差異在這次執行中相當明顯。早期試探之後,大部分工作由Anthropic的Claude Opus接手,團隊表示在捕捉並記錄新浮現模式這項特定工作上,搭配Opus的Claude Code表現勝過搭配Sol的Codex。改用較小的Sonnet與Terra模型時則容易卡住——檔案會停在看似局部最佳解的位置,程式碼異味還留在原地。
質疑落在哪裡
據InfoQ記錄,隨後在LinkedIn上的爭論,焦點不在這次執行是否真的發生,而在於它容許別人推論出什麼。支持者指出,軌跡重播的門檻遠高於一套全綠的測試,因為測試通過只證明測試仍然會過。
針對適用範圍的挑戰相當尖銳。一位技術主管想知道產出到底有沒有被合併,以及開源遊戲程式碼能不能代表撐著營收的正式軟體。NeoSee技術長、也是兩名工程師之一的丹尼爾·韋伯(Daniel Webb)說,成果經由54個拉取請求進入了分支版本的main——是真的合併,只是並非進入有外部維護者的上游專案。
其他批評衝著用詞而來。把一個程式庫形容為完美,本身就引來反彈。新配方也是:如果DRY講的是知識的重複而非字元的重複,那麼以迴圈邊界為判準的配方,可能正抹掉一個值得保留的區別。再者,Claude Code與Codex各自針對自家模型調校過,成果該怎麼在模型能力與框架設計之間分帳,其實並不清楚。整個過程中架構始終沒有被評分,這就留下一種可能:健康指標看起來乾淨,結構性債務卻在一年後浮現。
哪些還沒有被測量
創辦CodeScene的亞當·托恩希爾(Adam Tornhill),以三十年大型系統經驗來衡量這次執行,稱這是他頭一回在規模化場景中見到超越人類的AI表現。他同時強調,自動化測試與等價性檢查是絕對不可或缺的防護——這句但書悄悄訂出了入場門檻,因為不健康的程式庫之所以不健康,往往正是缺了這些東西。
流傳最廣的兩個數字其實是預測。AI造成的缺陷約少70%、token浪費約少45%,都來自外推CodeScene更早的Code Red研究;該研究發現健康的程式碼演進速度快10倍,平均缺陷少15倍。這個專案裡真正被觀察到的,只有4,000美元和三週。
驗證其餘部分,正是隆德大學一項規劃中研究的目的:把5.6與10.0兩個版本的程式庫都交給學生,讓他們用前沿模型開發功能,直接比較成本與品質。這是值得跑一次的檢驗,尤其對照著LLM修錯工具弄壞正常程式碼的次數,多過它修好壞掉程式碼的證據來看。
FAQ 常見問題
重構後的程式碼真的被合併了嗎
合併進了main,但是在分支版本上,而非上游專案。丹尼爾·韋伯給出的總數是54個拉取請求。討論中的審查者認為,要讓同等成果被一個有獨立維護者、仍在活躍的上游專案接受,會是難得多的考驗。
4,000美元包含工程人力成本嗎
不包含。這筆錢只算token花費,涵蓋兩名工程師三週的兼職投入。CodeScene把它擺在開發者月薪的一半旁邊,並估計同樣的現代化工作在代理出現之前,會吃掉資深開發者12到18個月的時間。
這套做法能用在典型的老舊程式庫上嗎
評分那一半到哪裡都能用,驗證那一半通常不行。逐格重播要靠確定性的遊戲迴圈,一般的商業系統很少有對等的東西。少了相當的正確性oracle,代理可以一路把品質指標往上推,卻沒有任何東西確認行為仍然完好。






