Theme / v4.19.4

Oh My OpenAgent

AI 代理編排系統

Skills

Sisyphus 自愈循環除錯技能

介紹 Sisyphus 代理如何以無人值守方式,在背景反覆進行「修改-編譯-除錯」閉環,直到錯誤徹底清空

技能用途

開發中最浪費時間的往往是瑣碎的編譯排錯:忘記引進 package、漏掉了分號、或是變數名稱大小寫拼錯。手動排查這些細節會頻繁打斷開發者的心流。

Sisyphus 是 OMO 中最著名的 自愈循環除錯技能。當它被觸發時,AI 會在背景接管編譯控制台。如果發生建置失敗,它不會停下來向人類詢問,而是將編譯器回傳的完整 Exception Stack 進行語意切割,自動定位源代碼、自動打上 Patch、自動再次執行建置,如此反覆,直到編譯順利通過。


運作原理

  1. 編譯器捕獲:監聽建置指令的返回值。
  2. 錯誤分塊 (Error Chunking):過濾警告,將報錯依照「檔名 - 行號 - 錯誤碼 - 錯誤內容」進行歸納。
  3. 極簡 Patch 應用:不進行大面積修改,只修改導致編譯中斷的精確行。
  4. 遞歸建置:重複此循環,直至建置成功或觸發最大限制退出。

實戰對話範例

範例:自動修復 ASP.NET 路由衝突

  • You:
    omo /spawn sisyphus "修復專案中因重構導致的所有編譯報錯"
  • AI:

    [OMO] Sisyphus Engaged: Autopilot Bug Healing

    正在背景啟動 dotnet build… 失敗。 Controllers/PlcController.cs(12,24): error CS0103: The name 'PlcService' does not exist in the current context.

    自愈循環 1:偵測到 PlcService 缺失。
    我自動在 PlcController.cs 頂部插入 using ControlSystem.Core.Services;

    重新執行 dotnet build… 成功!

    Sisyphus 循環順利完成。1 個編譯錯誤已修復。