金絲雀技巧:在 Claude(或任何 AI 代理)開始幻覺之前抓住它

一個一行就能搞定的技巧,讓你知道 AI 程式設計代理何時開始退化:讓它每條回覆都以一個名字開頭。名字消失了,金絲雀就死了,該開新會話了。適用於 Claude、Codex、Antigravity CLI、Mistral Vibe 等所有 LLM。

與 AI 程式設計代理的長會話很少會一下子崩掉。Claude 不會在一輪對話裡就從犀利跌到胡說。它先是悄悄跳過一條小指令。再過一兩輪,就開始編造:不存在的檔案、從未有過的 API、你明確否決過的決定。等你察覺到一個幻覺出來的路徑時,你對最近幾條回覆的信任早已喪失,正在除錯代理而不是你的程式碼。

有一個免費、簡單到近乎令人尷尬的辦法可以拿到提前預警。它叫金絲雀,一行就能裝好。

代理為什麼會跑偏:上下文腐爛(context rot)

每一輪,代理都會從第一條訊息到最後一條重讀整段對話,從零重建它的理解。隨著上下文視窗被填滿,最先鬆動的就是對指令的遵守。模型聽上去依舊自信,卻已經開始丟掉最不重要的約束來勉強跟上。研究者稱之為「context rot」,以及與之相關的「lost in the middle」效應:上下文越長,模型越難可靠地遵守埋在其中的某一條指令。

這就是關鍵洞見。退化不是從幻覺開始的,而是從模型悄悄忽略一條小指令開始的。所以,如果你埋下一條小指令,它唯一的職責就是在消失時被你注意到,你就得到了一根會在真正的破壞出現之前觸發的絆線。

金絲雀技巧是什麼

過去礦工下井時會帶著一隻金絲雀。這種鳥對毒氣比人更敏感:一旦它停止鳴叫,礦工就知道要趁自己還沒有任何感覺時趕緊撤離。

提示詞裡的金絲雀也是同一個思路。你往代理每輪都會讀的檔案里加一條微不足道的指令:每條回覆都以一個選定的名字開頭。這個名字就是你的金絲雀。只要它出現在每條回覆的開頭,模型就還在讀、還在遵守你的指令。第一條忘掉名字的回覆,就是會話開始退化的訊號,通常出現在真正的幻覺之前一兩輪。這一手法在代理程式設計社群裡被 OpenClaw 的作者 Peter Steinberger 這樣的開發者推廣開來,他們依靠細小的金絲雀訊號,及早抓住正在變壞的會話。

一條曲線,展示 AI 代理在長會話中遵守指令的可靠性如何下降:金絲雀指令在幻覺開始之前就消失,留下一個提前預警的視窗。

金絲雀在幻覺開始之前就消失了。那段空隙就是你做出反應的視窗。

一行裝好

把指令放進代理每輪都會載入的檔案裡:

  • Claude Code 讀取 CLAUDE.md
  • Codex、Antigravity CLI、Mistral Vibe 以及大多數其他 CLI 讀取 AGENTS.md
## 金絲雀
每條回覆都以名字 "Felix" 開頭。

挑一個簡短而醒目的名字:你的貓、一種顏色,任何能讓你在回覆開頭一眼認出的東西。務必保持極簡。複雜的指令會適得其反,因為你要的正是模型最容易丟掉的那種東西。如果連這個都掉了,你上下文裡更微妙的部分早就岌岌可危了。

金絲雀死了該怎麼辦

名字本身從來不是重點,重點是時機。金絲雀一消失,就別再硬推當前這條線:

  1. 不要再信任最近兩三條回覆,帶著懷疑重讀一遍。
  2. 執行 /clear,或者開一個新會話。
  3. 只重新注入真正要緊的上下文:你正在編輯的檔案、目標,以及已經做出的決定。

帶著精煉簡報的乾淨視窗,每次都勝過臃腫的視窗。你並沒有丟掉進度,只是甩掉了一直拖累模型的累贅。

決策環:讀代理的回覆,檢查它是否以名字開頭。是,則金絲雀還活著,繼續幹活。否,則金絲雀已死,於是清空上下文或開新會話,並重新注入關鍵上下文。

整個習慣就裝在一個環裡:瞥一眼第一個詞,做決定,繼續或重置。

它適用於每一個模型,不只是 Claude

這個技巧在設計上就與廠商無關。Claude、Codex、Antigravity CLI、Mistral Vibe、Grok 和 Aider 都受同樣的上下文限制,都會讀一個上下文檔案,也都能攜帶金絲雀。我們先聚焦 Claude,因為它是當下最常用的程式設計代理,但這裡沒有任何東西是 Claude 專屬的。任何會把上下文填滿的 LLM 都會先丟掉你最小的那條指令,所以同一只金絲雀能守護它們每一個。如果你維護著一個 AGENTS.md 上下文檔案,金絲雀不過是其中多出的一行。

在整支隊伍上盯住金絲雀

只有一個代理時,逐條回覆去找缺失的名字很容易。同時跑好幾個時就擴充套件不了了,而如今嚴肅的工作恰恰就發生在那裡。

這正是 AgentsRoom 讓它變簡單的地方。它是一個多代理駕駛艙:每個代理都有角色、實時狀態點和自己的顏色,你在一個視窗裡就能監管整支隊伍。把金絲雀往共享的 CLAUDE.mdAGENTS.md 裡放一次,每個代理都會繼承它。一旦某個代理開始漏掉名字,你一眼就能抓住,並且只重置那一條線,而不是整個專案。可選的 git worktree 隔離能在此過程中防止並行的代理彼此踩腳。

AgentsRoom 乾脆把這個技巧直接做進了產品裡,所以你甚至不必自己盯著回覆。它啟動的每個代理本就會在每輪結束時寫一行狀態,AgentsRoom 把那當作 canary:當一個代理連續兩輪停止更新它,那個代理的終端上方就會出現一條警告,附帶在乾淨上下文上的一鍵重啟和一條壓縮提醒。你會自動拿到提前預警,在每個代理上,覆蓋整支隊伍。它如何工作,詳見上下文漂移檢測頁面。

七家廠商,一個駕駛艙,一隻金絲雀守著它們每一個。下載 AgentsRoom,檢視廠商相容性矩陣瞭解每個代理支援什麼,並進一步閱讀多廠商支援,看看會話中途切換如何讓你的上下文保持完好。

繼續閱讀

下載 AgentsRoom

在一個視窗中執行你所有專案的 AI 代理(Claude、Codex、Antigravity CLI、OpenCode、Aider、Grok Build、Mistral Vibe、Kimi Code)。

免費下載 AgentsRoom

配套應用:隨時隨地監控你的 Agent

使用 Claude、Codex、Antigravity CLI 或其他 AI 提供商。

獲取擴充套件
Chrome Web Store

把 Bug 和需求直接傳送到您的公開待辦清單。

AgentsRoom 實際執行一瞥。

多專案管理
多供應商
多代理執行
實時狀態
檔案差異與提交
行動應用
實時預覽
代理團隊
瀏覽器自動化
Backlog 驅動開發
提示詞庫
技能庫
檢視所有功能