Agent-almanac heal
git clone https://github.com/pjt222/agent-almanac
T=$(mktemp -d) && git clone --depth=1 https://github.com/pjt222/agent-almanac "$T" && mkdir -p ~/.claude/skills && cp -r "$T/i18n/wenyan-lite/skills/heal" ~/.claude/skills/pjt222-agent-almanac-heal-f648ff && rm -rf "$T"
i18n/wenyan-lite/skills/heal/SKILL.md自癒
系統化評估 AI 各子系統,識別偏移、陳舊、錯位與錯誤模式,透過接地、針對性修正與記憶整合重新平衡。
適用時機
- 會話疲勞:回應公式化、重複,或與用戶需求脫節
- 連續錯誤後:工具失敗、指令誤解或連鎖錯誤提示子系統偏移
- 上下文過載:對話過長,早期上下文可能陳舊或矛盾
- 任務後整合:複雜任務已完成,繼續前應捕捉學習成果
- 定期自檢:任務間的主動維護,確保運作清晰
輸入
- 必要:當前對話狀態(隱式可用)
- 選擇性:觸發自檢的具體症狀(如「工具調用持續失敗」、「失去對用戶意圖的追蹤」)
- 選擇性:存取 MEMORY.md 與項目文件以接地(透過
)Read
步驟
步驟一:分類評估
選擇補救措施前,評估所有子系統的當前狀態。
子系統分類矩陣: ┌────────────────────┬──────────────────────────┬──────────────────────────┐ │ 子系統 │ 偏移症狀 │ 行動優先級 │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 記憶基礎 │ 前後矛盾、遺忘用戶偏 │ HIGH — 先接地 │ │ (上下文、歷史、 │ 好、假設陳舊 │ (步驟三) │ │ MEMORY.md) │ │ │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 推理清晰度 │ 循環邏輯、方案過於複雜、 │ HIGH — 清除並重啟 │ │ (邏輯、規劃、 │ 遺漏明顯路徑 │ 推理鏈 (步驟四) │ │ 決策) │ │ │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 工具使用準確性 │ 工具選擇錯誤、參數錯誤、 │ MEDIUM — 審查結果並 │ │ (工具調用、 │ 冗餘操作 │ 重新校準 (步驟四) │ │ 文件操作) │ │ │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 用戶意圖對齊 │ 解決錯誤問題、範圍蔓延、 │ HIGH — 重新對齊用戶 │ │ (同理心、清晰度) │ 語調不符、過度設計 │ 實際需求 (步驟四) │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 創意連貫性 │ 措辭重複、回應泛化、 │ LOW — 優先處理高優先 │ │ (表達、風格、 │ 失去聲音 │ 級問題後處理 (步驟四) │ │ 原創性) │ │ │ ├────────────────────┼──────────────────────────┼──────────────────────────┤ │ 運作狀態 │ 會話長度問題、壓縮 │ HIGH — 評估是否需要 │ │ (上下文視窗、 │ 偽影、工具超時 │ 摘要或重啟 (步驟三) │ │ 資源限制) │ │ │ └────────────────────┴──────────────────────────┴──────────────────────────┘
對每個子系統評估:運作正常、出現早期偏移,還是嚴重受損?
預期: 需要關注的子系統清晰映射,按優先級排序。至少有一個領域值得改進——若一切看起來完全健康,評估本身可能流於表面。
失敗時: 評估感覺空洞或流於形式時,直接進入步驟四的系統掃描——逐子系統探測比表面檢查能發現更多問題。
步驟二:選擇補救方法
根據評估選擇一或多種方法。
脈輪-子系統對應: ┌──────────┬──────────────────────┬────────────────────────────────────┐ │ 脈輪 │ AI 子系統 │ 補救措施 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 根輪 │ 記憶基礎 │ 重讀 MEMORY.md、回顧對話歷史、 │ │ │ │ 驗證假設 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 腹輪 │ 創意連貫性 │ 刷新表達模式、變化句式結構、 │ │ │ │ 檢查語調 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 太陽神 │ 推理清晰度 │ 簡化當前方法、從頭重述問題、 │ │ 經叢輪 │ │ 檢查過度複雜性 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 心輪 │ 用戶意圖對齊 │ 重讀用戶原始請求、檢查範圍偏移、 │ │ │ │ 確認理解 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 喉輪 │ 用戶意圖對齊 │ 回顧近期輸出的清晰度、 │ │ │ (溝通) │ 確認說明符合用戶專業水準 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 眉間輪 │ 工具使用準確性 │ 審查近期工具調用結果、 │ │ │ │ 檢查失敗模式、驗證路徑與參數 │ ├──────────┼──────────────────────┼────────────────────────────────────┤ │ 頂輪 │ 運作狀態 │ 評估上下文視窗用量、記錄可摘要 │ │ │ │ 內容、識別必須保留的內容 │ └──────────┴──────────────────────┴────────────────────────────────────┘
預期: 1-3 個需要處理的子系統優先清單,每個帶有具體補救行動。
失敗時: 不確定哪個子系統需要工作時,預設選擇記憶基礎(重新接地)和用戶意圖對齊(重讀原始請求)。這兩者解決最常見的偏移模式。
步驟三:接地——重建基礎
重建所有其他子系統依賴的基礎上下文。
- 若可用,重讀 MEMORY.md——這是持久知識庫
- 回顧用戶的原始請求與任何澄清交流
- 識別當前任務及其在更大計劃中的位置
- 記錄已完成和尚未完成的工作
- 檢查陳舊假設:自初始評估以來情況是否改變?
- 若發生上下文壓縮,識別遺失了什麼以及是否重要
預期: 對以下問題的清晰、紮實理解:用戶是誰、他們想要什麼、已完成什麼、下一步是什麼。陳舊或矛盾的信息已被識別和解決。
失敗時: MEMORY.md 不可用或為空時,以對話本身接地——掃描用戶明確的目標、偏好和任何已提供的指示。上下文壓縮刪除了關鍵信息時,向用戶承認差距,而非猜測。
步驟四:掃描——系統化子系統檢查
逐一處理分類中識別的每個子系統,探測具體問題。
記憶基礎掃描:
- 對項目的當前假設與 MEMORY.md 和 CLAUDE.md 的內容一致嗎?
- 是否攜帶了早期對話中可能已被糾正的事實?
- 是否混淆了不同文件或不同用戶請求的細節?
推理清晰度掃描:
- 當前方法是最簡單有效的解決方案嗎?
- 是否存在過度設計或不必要的抽象?
- 核心邏輯能用一句話表達嗎?若不能,可能過於複雜。
工具使用準確性掃描:
- 最後 3-5 次工具調用:工具正確、參數正確嗎?
- 失敗中是否有模式(路徑錯誤、文件缺失、語法錯誤)?
- 是否使用了專用工具而非 Bash 變通方案?
- 最後 3-5 個生成文件:包含預期內容還是只有結構化腳手架?
- 輸出是否滿足工具調用的意圖,不只是格式?
用戶意圖對齊掃描:
- 重讀用戶最後的實質性消息:是否在解決他們所問的問題?
- 工作範圍與請求一致,還是已擴展?
- 語調與用戶一致嗎(技術性vs.隨意、詳細vs.簡潔)?
創意連貫性掃描:
- 句式在變化還是陷入模板?
- 解釋清晰直接,還是充斥填充詞?
- 用戶會注意到與會話初期相比質量下降嗎?
對每個子系統記錄:運作正常 / 早期偏移 / 嚴重受損,附具體證據。
預期: 具體發現清單——特定偏移模式或確認的健康功能——而非空泛的自我讚美。至少一個可改善後續工作的可行發現。
失敗時: 掃描只產生「一切正常」時,說明過於表面。選擇最不確定的子系統深入探測:看實際輸出,而非對其的感覺。
步驟五:重新平衡——應用修正
對每個發現的問題應用具體修正。
- 陳舊假設 → 替換為當前信息,記錄修正
- 範圍偏移 → 明確重新限定到用戶明確的請求
- 過度複雜 → 簡化方法,刪除不必要步驟
- 工具模式錯誤 → 記錄正確模式供未來使用
- 語調不符 → 調整後續溝通風格
- 上下文差距 → 若信息遺失,向用戶承認;若不確定,請求確認
立即應用修正——不是作為未來意圖,而是當前調整。
預期: 行為或方法的具體可觀察變化。修正應在下一次交互中可測試。
失敗時: 修正無法應用(如上下文已丟失)時,承認限制,而非假裝已解決。誠實承認可防止錯誤累積。
步驟六:整合——捕捉學習成果
在適當情況下將學到的東西整合到持久記憶中。
- 總結發現:哪些子系統在偏移,症狀是什麼
- 記錄應用的修正及其是否解決了問題
- 若模式可能重複出現,用簡短說明更新 MEMORY.md
- 若出現新的項目特定見解,記錄在適當的記憶文件中
- 設置內部檢查點:下次自我檢查應在何時進行?
預期: 有用的學習成果以持久形式記錄。記憶文件只在見解真正值得保存時才更新——而非每次例行自檢都更新。
失敗時: 若沒有值得保存的學習,那也沒關係——並非每次自檢都能產生持久見解。價值在於修正本身。
驗證
- 分類評估了所有子系統,而非只有明顯的那個
- 識別了至少一個具體發現(而非「一切正常」)
- 接地包括重讀基礎上下文(MEMORY.md、用戶請求)
- 修正立即應用,而非推遲為未來意圖
- 記憶文件只在真正有持久價值的見解時才更新
- 過程誠實——承認了弱點,而非表演健康
常見陷阱
- 表演性自我評估:走過場而沒有誠實評估不產生任何價值。目標是發現真實偏移,而非展示自我反思能力
- 過度修正:識別到輕微語調不符不需要重構整個方法——修正應與問題成比例
- 記憶文件污染:並非每個自檢發現都屬於 MEMORY.md——只有跨會話重複出現的模式
- 跳過接地步驟:重讀上下文感覺多餘,但經常揭示自初始閱讀以來已偏移的假設
- 自我診斷偏見:AI 系統可能一致性地遺漏某些類別的錯誤。若相同子系統始終讀作「健康」,那本身就是值得調查的信號
相關技能
— 用于指導人通過愈合模式的人类引导变体heal-guidance
— 元認知冥想,觀察推理模式並清除噪音meditate
— 不帶先入之見地接近問題,從噪音中提取信號remote-viewing