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 資料夾),用以說明規則所針對的四種問題類型:
- H – 哈希 – 加入沒人閱讀的校驗碼或摘要。
- E – 邊界情況 – 防禦從未在專案中出現的輸入。
- R – 評分標準 – 以 exhaustive 的評分表或審計迴圈取代人類判斷。
- O – 過度建構 – 永遠不會被使用的腳手架、功能旗標、遷移層。
- 其理念是提供開發者一種具體、語言無關的方式,讓基於 LLM 的代理能專注於 請求的任務,而不是圍繞它建造防禦性「要塞」。
如何使用
- 選擇你的代理自動讀取的檔案(例如
CLAUDE.md、AGENTS.md、.github/copilot‑instructions.md)。 - 執行 README 中提供的單行指令;它會從倉儲取得
RULES.md區塊,並附加到你的檔案中,並加以保護以避免重複。 - 當代理後續產生輸出時,這九條規則便成為一份合約:模型應 拒絕 加入不必要的哈希、忽略不相關的邊界情況、避免無止境的清單,也不應產生不需要的腳手架。
- 如果模型仍過度防禦,你可以引用
cases/目錄中的對應條目來指出特定的「形態」(例如 HERO‑R‑006),使回饋更精確。
為什麼重要
- 基於 LLM 的程式碼助理經常試圖「覆蓋所有可能性」——它們隨意加入哈希、添加防禦包裝,或產生冗長的審計紀錄,延遲交付。
- HERO 的規則源自作者自身研究(ARIS 專案)中觀察到的真實事件,以及社群貢獻。
- 透過將反防禦立場以純文字區塊形式編碼,此方法可與任何尊重提示檔的模型搭配使用,無需額外的函式庫或執行時環境。
你從倉儲獲得什麼
RULES.md– 九條規則合約(完整版與簡短版)。cases/– 實際過度防禦範例的 Markdown 目錄,每個範例包含 所要求的內容、模型的行為、為何過度,以及 合適的解決方案。hosts/– 一張表格,明確告訴你各支援的代理讀取的檔案名稱。examples/– 可選的社群貢獻設定片段,展示人們如何在實際專案中整合此區塊。- 一個微小的變更紀錄,記錄規則更新(例如 2026 年 9 月新增的「發布稿原則」)。
適合誰使用
- 依賴 LLM 程式碼助理進行日常開發的團隊,希望防止助理產生不必要的重複程式碼。
- 研究人員或愛好者運行長時間、無人監控的 AI 驅動程式碼生成流程(ARIS 中的「睡眠」研究),需要輕量級的防護機制,以抵禦模型過度防禦的傾向。
限制
- 此區塊是一種 軟性 指示;更強大的模型或更高優先級的系統限制仍可能覆蓋它。
- 它不強制執行安全或遷移工作——這些規則明確地交由更高優先級的要求處理。
- 效果有限:社群反饋表示它「有點幫助」,但無法保證模型會遵守每一條規則。
授權
- MIT – 您可自由複製、修改和重新分發此區塊與文件。
簡而言之,HERO‑反過度防禦是一種極簡、模型無關的提示檔,告訴 AI 程式碼助理停止圍繞功能建造不必要的「要塞」,並專注於交付實際工作。
相關
- 專案
- 專案
- 專案
- 專案
- 專案