wanshuiyin/HERO-Anti-OverDefense

HERO = Hashing · Edge cases · Rubrics · Overbuild — the four shapes coding agents over-defend in. A paste-in contract that stops them. Works with Claude Code, Codex, Antigravity, Cursor, Copilot, Windsurf, Gemini CLI.

HERO – 反過度防禦

它是什麼

  • 一個微小、可複製貼上的設定區塊(加上文件說明),你可加入 AI 程式碼助理的提示/設定檔中(如 Claude Code、GitHub Copilot、Cursor、Gemini CLI 等)。
  • 該區塊包含九條「規則」,告訴模型在撰寫程式碼、文件或其他交付成果時,不要做什麼。
  • 倉儲也附帶一個 真實世界範例目錄cases 資料夾),用以說明規則所針對的四種問題類型:
    1. H – 哈希 – 加入沒人閱讀的校驗碼或摘要。
    2. E – 邊界情況 – 防禦從未在專案中出現的輸入。
    3. R – 評分標準 – 以 exhaustive 的評分表或審計迴圈取代人類判斷。
    4. O – 過度建構 – 永遠不會被使用的腳手架、功能旗標、遷移層。
  • 其理念是提供開發者一種具體、語言無關的方式,讓基於 LLM 的代理能專注於 請求的任務,而不是圍繞它建造防禦性「要塞」。

如何使用

  1. 選擇你的代理自動讀取的檔案(例如 CLAUDE.mdAGENTS.md.github/copilot‑instructions.md)。
  2. 執行 README 中提供的單行指令;它會從倉儲取得 RULES.md 區塊,並附加到你的檔案中,並加以保護以避免重複。
  3. 當代理後續產生輸出時,這九條規則便成為一份合約:模型應 拒絕 加入不必要的哈希、忽略不相關的邊界情況、避免無止境的清單,也不應產生不需要的腳手架。
  4. 如果模型仍過度防禦,你可以引用 cases/ 目錄中的對應條目來指出特定的「形態」(例如 HERO‑R‑006),使回饋更精確。

為什麼重要

  • 基於 LLM 的程式碼助理經常試圖「覆蓋所有可能性」——它們隨意加入哈希、添加防禦包裝,或產生冗長的審計紀錄,延遲交付。
  • HERO 的規則源自作者自身研究(ARIS 專案)中觀察到的真實事件,以及社群貢獻。
  • 透過將反防禦立場以純文字區塊形式編碼,此方法可與任何尊重提示檔的模型搭配使用,無需額外的函式庫或執行時環境。

你從倉儲獲得什麼

  • RULES.md – 九條規則合約(完整版與簡短版)。
  • cases/ – 實際過度防禦範例的 Markdown 目錄,每個範例包含 所要求的內容模型的行為為何過度,以及 合適的解決方案
  • hosts/ – 一張表格,明確告訴你各支援的代理讀取的檔案名稱。
  • examples/ – 可選的社群貢獻設定片段,展示人們如何在實際專案中整合此區塊。
  • 一個微小的變更紀錄,記錄規則更新(例如 2026 年 9 月新增的「發布稿原則」)。

適合誰使用

  • 依賴 LLM 程式碼助理進行日常開發的團隊,希望防止助理產生不必要的重複程式碼。
  • 研究人員或愛好者運行長時間、無人監控的 AI 驅動程式碼生成流程(ARIS 中的「睡眠」研究),需要輕量級的防護機制,以抵禦模型過度防禦的傾向。

限制

  • 此區塊是一種 軟性 指示;更強大的模型或更高優先級的系統限制仍可能覆蓋它。
  • 它不強制執行安全或遷移工作——這些規則明確地交由更高優先級的要求處理。
  • 效果有限:社群反饋表示它「有點幫助」,但無法保證模型會遵守每一條規則。

授權

  • MIT – 您可自由複製、修改和重新分發此區塊與文件。

簡而言之,HERO‑反過度防禦是一種極簡、模型無關的提示檔,告訴 AI 程式碼助理停止圍繞功能建造不必要的「要塞」,並專注於交付實際工作。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案