:用 rmslop 命令從分支 diff 中系統(tǒng)移除 AI 生成垃圾代碼)
Kilo 代碼清理實戰(zhàn)用 rmslop 命令從分支 diff 中系統(tǒng)移除 AI 生成垃圾代碼【免費下載鏈接】kilocodeKilo is the all-in-one agentic engineering platform. Build, ship, and iterate faster with the most popular open source coding agent.項目地址: https://gitcode.com/GitHub_Trending/ki/kilocode導(dǎo)讀rmslop是 Kilo本倉庫GitHub_Trending/ki/kilocode內(nèi)置的一個自定義 Agent 命令Custom Command用于在合并分支之前自動審查當(dāng)前分支與dev分支的差異并清除由 AI 輔助編碼產(chǎn)生的slop多余注釋、過度防御式檢查、為繞過類型問題強轉(zhuǎn)any、與文件風(fēng)格不符的寫法、無意義的 emoji 等。讀完本文你將掌握該命令的完整執(zhí)行規(guī)范、判斷標準與報告約束并能基于倉庫內(nèi)的實際實現(xiàn)路徑理解這類命令在 Kilo/OpenCode 體系中的加載機制與配套最佳實踐。命令總覽rmslop命令定義在倉庫根目錄下的 .opencode/command/rmslop.md 中屬于.opencode/command/目錄下的自定義命令。這類命令文件采用 Markdown 格式文件頂部使用 YAML frontmatter 聲明元信息正文則是給 Agent 的指令。該命令的 frontmatter 只有一項元信息--- description: Remove AI code slop ---description字段會在命令列表中展示也是 Agent 理解該命令用途的入口。命令的核心指令正文如下Check the diff against dev, and remove all AI generated slop introduced in this branch.即將當(dāng)前分支與dev分支做 diff然后移除本分支引入的所有 AI 生成的 slop。這是一條面向合并前代碼審查與清理的工作流命令適合在功能分支合入dev之前執(zhí)行。什么是 AI slop五類清理對象命令正文明確給出了需要清理的 slop 清單共五類每一類都需要 Agent 結(jié)合文件上下文與代碼庫既有風(fēng)格進行判斷多余注釋人類開發(fā)者不會添加、或與文件其余部分風(fēng)格不一致的注釋。這類注釋通常由模型為了解釋代碼而生成但實際價值低且破壞文件一致性。異常防御式檢查 / try-catch 塊對該區(qū)域代碼而言不正常的防御性檢查或try/catch尤其是當(dāng)調(diào)用方是受信任/已驗證的調(diào)用路徑trusted / validated codepaths時。Kilo 這類項目大量使用 Effect、Schema 等在編譯期或邊界層做校驗的框架內(nèi)部路徑往往無需重復(fù)防御。繞過類型問題的as any強轉(zhuǎn)為了繞過 TypeScript 類型檢查而進行的cast to any。這類寫法在合并前必須清除改用正確的類型收窄或顯式類型聲明。與文件風(fēng)格不一致的任何寫法包括縮進、命名、語句組織方式等與所在文件其余部分不一致的風(fēng)格。無意義的 emoji 使用代碼、注釋或提交信息中不承載信息的 emoji。值得注意的是命令本身不要求 Agent 重寫功能邏輯只要求移除上述 slop屬于減法式清理避免在清理過程中引入新的行為變化。執(zhí)行流程rmslop的執(zhí)行流程非常精簡只有兩步對比差異對dev分支執(zhí)行g(shù)it diff定位本分支引入的變更。清理并匯報移除識別出的 slop最后用13 句話概括本次改動內(nèi)容。命令對匯報格式有硬性約束Report at the end with only a 1-3 sentence summary of what you changed。這意味著 Agent 在完成清理后必須輸出極簡摘要說明改了什么what you changed而不是復(fù)述清理過程或羅列文件清單。這條約束與倉庫中其他命令的設(shè)計理念一致。例如 .opencode/command/commit.md 要求提交信息從最終用戶視角解釋 WHY 而非 WHAT并禁止improved agent experience這類泛泛之詞.opencode/command/changelog.md 則反復(fù)強調(diào)Focus on writing the least words to get your point across??梢娫搨}庫的 Agent 命令體系整體推崇少而準的輸出紀律rmslop的 13 句摘要約束正是這一紀律在清理場景下的落地。命令體系的配套機制rmslop并非孤立存在它與其他命令共享同一套command目錄與加載約定理解這套約定有助于你在自己的倉庫中復(fù)用或擴展命令文件位置全部位于 .opencode/command/ 目錄下每個 Markdown 文件對應(yīng)一個命令。Frontmatter 元信息description是通用字段部分命令還聲明model指定執(zhí)行該命令的模型與subtask標記為子任務(wù)如 commit 命令。rmslop未指定model即使用當(dāng)前會話默認模型執(zhí)行。模板變量與子命令命令正文可引用$ARGUMENTS接收用戶輸入?yún)?shù)見 .opencode/command/issues.md可借助!前綴執(zhí)行子命令并把輸出注入上下文見 .opencode/command/changelog.md 中的!bun script/raw-changelog.ts $ARGUMENTS。rmslop走的是純指令 Agent 自主執(zhí)行 git 操作的輕量路線。命令目錄的加載與配置還受到 .opencode/opencode.jsonc 這類配置文件的管轄其中可配置 provider、permission如對特定路徑deny編輯權(quán)限、references為 Agent 提供外部倉庫語義參考、MCP 與工具開關(guān)等。這說明該命令體系是配置 指令雙層驅(qū)動的命令文件負責(zé)告訴 Agent做什么配置文件負責(zé)約束在哪做、用什么做。清理質(zhì)量保障配套檢查腳本清理工作本身屬于代碼修改倉庫還提供了若干配套腳本用于保障修改質(zhì)量建議在運行rmslop之后結(jié)合使用script/check-forbidden-strings.ts檢查代碼中是否出現(xiàn)被禁止的字符串可用于兜底攔截 AI 常生成的模板化文案。script/check-kilocode-duplication.ts 與 script/check-architecture.ts分別檢查重復(fù)代碼與架構(gòu)邊界違規(guī)幫助驗證清理過程沒有破壞分層約束。這些腳本與rmslop的定位互補rmslop依靠 Agent 的語言理解做語義級清理而腳本提供可重復(fù)執(zhí)行的結(jié)構(gòu)級校驗。適用場景與使用方式rmslop的典型適用場景合并前清理功能分支準備合入dev前執(zhí)行本命令確保合并 diff 干凈、可讀、符合既有代碼風(fēng)格。AI 協(xié)作代碼復(fù)盤在使用 AI 編碼助手生成大量代碼后批量剔除注釋噪聲、冗余防御與any強轉(zhuǎn)。代碼評審預(yù)處理在提交 PR 或發(fā)起評審前先由 Agent 自動清理減少評審者的認知負擔(dān)。使用方式即調(diào)用該命令并讓它基于當(dāng)前分支與dev的 diff 執(zhí)行rmslop命令會自行執(zhí)行g(shù)it diff對比dev完成清理后輸出 13 句改動摘要。若需限定范圍可參考其他命令的模式擴展參數(shù)例如借助$ARGUMENTS但原命令保持零參數(shù)、開箱即用的簡潔形態(tài)。與代碼庫風(fēng)格的一致性印證從源碼結(jié)構(gòu)看該倉庫對AI 生成代碼質(zhì)量有系統(tǒng)性的關(guān)注rmslop是其中面向 diff 場景的一環(huán)。倉庫中的 docs/jetbrains-vscode-settings-parity.md、plans/ 目錄下的多份方案文檔以及遍布各 package 的AGENTS.md例如 .opencode/glossary/README.md 中描述的按目錄層級組織 Agent 知識的約定共同體現(xiàn)了以一致性約束 AI 產(chǎn)出的工程文化。rmslop的五類清理標準注釋、防御檢查、any強轉(zhuǎn)、風(fēng)格、emoji正是這種文化在代碼提交層面的具體執(zhí)行規(guī)范。小結(jié)rmslop是一個聚焦、克制、開箱即用的代碼清理命令對比devdiff按五類標準移除 AI slop并以 13 句摘要收尾。它位于 .opencode/command/rmslop.md可與倉庫內(nèi)的架構(gòu)/字符串檢查腳本配合形成語義清理 結(jié)構(gòu)校驗的合并前質(zhì)量保障閉環(huán)。【免費下載鏈接】kilocodeKilo is the all-in-one agentic engineering platform. Build, ship, and iterate faster with the most popular open source coding agent.項目地址: https://gitcode.com/GitHub_Trending/ki/kilocode創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考