ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

如何为Kudu贡献清理规则:零代码JSON配置教程,5分钟新增一个应用清理支持

如何为Kudu贡献清理规则:零代码JSON配置教程,5分钟新增一个应用清理支持 如何为Kudu贡献清理规则零代码JSON配置教程5分钟新增一个应用清理支持【免费下载链接】kuduFree Windows, Mac and Linux cleaner, scanner, and more.项目地址: https://gitcode.com/gh_mirrors/kudu1/kuduKudu 是一款免费开源的 Windows、macOS 和 Linux 跨平台系统清理工具支持清理应用缓存、浏览器缓存、游戏启动器数据、GPU 着色器缓存和系统临时文件等。而它最棒的一点是Kudu 清理规则全部由 JSON 文件定义——你不需要会 TypeScript也不需要懂 Electron只要会写 JSON就能为 Kudu 新增一个应用的清理支持整个过程最快 5 分钟就能完成 为什么值得为Kudu贡献清理规则Kudu 目前已有168 个独立应用清理规则覆盖 Windows、macOS 和 Linux 三大平台完整清单可以在 rules/CATALOG.md 中查看。当你发现 Kudu 还不能清理你常用的那款 App 的缓存时就有两个选择等别人提交规则自己动手5 分钟搞定——这是本文教你的方法。好消息是CONTRIBUTING.md 明确写了Adding support for a new apps cache is as simple as editing a JSON file。规则目录结构非常清晰rules/ schema/rules.schema.json # JSON Schema编辑器自动补全 校验 win32/ # Windows 规则8 个 JSON 文件 darwin/ # macOS 规则 linux/ # Linux 规则每个平台下有 8 个文件按清理对象分类文件定义的内容apps.json应用缓存Discord、VS Code、Spotify 等browsers.json浏览器缓存Chrome、Firefox 等gaming.json游戏启动器缓存Steam、Epic 等gpu-cache.jsonGPU 着色器缓存system.json系统临时文件、日志、崩溃转储databases.json可 vacuum 优化的 SQLite 数据库steam.jsonSteam 库路径misc.json受保护事件日志与回收站路径准备工作获取代码并安装依赖克隆仓库到你的本地git clone https://gitcode.com/gh_mirrors/kudu1/kudu cd kudu安装依赖需要 Node 22见 .nvmrcnpm install 只贡献规则的话不需要运行完整应用跑校验和测试命令就够了。方法一用交互式生成器最快5分钟完成推荐新手Kudu 自带一个交互式命令行规则生成器 scripts/new-rule.js运行npm run new-rule它会依次问你应用名称例如Discord目标平台win32 / darwin / linux 可多选每个平台的缓存路径。生成器有个贴心功能自动识别 Chromium/Electron 应用帮你生成标准的Cache/Cache_Data、Code Cache、GPUCache三个缓存子目录直接写入对应的apps.json。对于绝大多数 Electron 写的应用Discord、Slack、Notion、Telegram……这一步基本就是填空题。方法二手动编辑 JSON 规则文件如果你更喜欢直接动手按下面 4 步走。第1步找到应用的缓存路径在应用数据目录里找它。各平台常见位置平台常见位置Windows%LOCALAPPDATA%\AppName\、%APPDATA%\AppName\macOS~/Library/Caches/com.app.name、~/Library/Application Support/AppName/Linux~/.cache/appname、~/.config/appname/⚠️只针对 cache、temp、log 目录。永远不要包含用户数据、设置、登录令牌或存用户内容的数据库。不确定哪些目录还没被覆盖跑一下npm run find-cachescripts/find-cache.js它会扫描你机器上未被规则覆盖的缓存目录。第2步用模板变量写路径添加规则条目路径不能写死用户名要用模板变量运行时由加载器解析。各平台可用变量Windowsrules/win32/apps.json${HOME}、${LOCALAPPDATA}、${APPDATA}、${WINDIR}、${PROGRAMDATA}、${TMPDIR}等macOS${HOME}、${LIBRARY}、${CACHES}、${APP_SUPPORT}、${TMPDIR}Linuxrules/linux/apps.json${HOME}、${CONFIG}~/.config、${CACHE}~/.cache、${LOCAL_SHARE}、${TMPDIR}以假想的 Acme Editor 为例在rules/win32/apps.json中新增{ id: acme-editor, name: Acme Editor, paths: [ ${APPDATA}/AcmeEditor/Cache/Cache_Data, ${APPDATA}/AcmeEditor/logs ] }几个格式约定详见 rules/RULES.md路径一律用正斜杠/Windows 上加载器会自动转换id必须小写 连字符my-app不是MyApp每个应用至少一条路径活动应用的日志/缓存建议加minAgeDays: 7保留窗口缓存在版本化子目录里的如 JetBrains 的JetBrains/version/caches加childSubdir: caches。第3步享受编辑器自动补全每个规则文件开头都引用了 rules/schema/rules.schema.json在 VS Code 等支持 JSON Schema 的编辑器里你会自动获得字段补全和内联校验变量用错会直接标红 ✨第4步验证与测试npm run validate:rules # 校验所有规则文件schema、模板变量、重复 ID npm test # 完整测试套件提交前还可以用干跑工具 scripts/preview-rule.js 预览规则在你机器上会清理什么只读预览不删除任何东西npm run preview-rule -- acme-editor提交前的安全清单RULES.md 的 Safety Guidelines 是贡献者的行为准则提交前逐条对照✅ 只清理缓存、临时文件和日志数据✅ 需要管理员权限的系统路径标记needsAdmin: true✅ 活动服务用minAgeDays设置保留窗口保护近期文件✅ 更新器目录只能精确白名单文件绝不清理整个目录✅ 在真实系统上验证过路径存在且内容可丢弃✅拿不准就不收——漏掉一个缓存目录远比误删重要文件好。提交你的规则PR运行npm run check一次跑完类型检查、lint、格式、规则校验和测试与 CI 一致推送分支并提交 Pull RequestPR 标题使用 Conventional Commits 格式例如feat(rules): add Acme Editor cache rulesquash 合并后它就是提交信息会进入更新日志填写 PR 模板改了什么、为什么、如何测试。CI 会在 Windows、macOS、Linux 三个平台全量运行全部变绿后即可合并。维护者通常几天内完成评审修改意见很正常别灰心 常用贡献者工具速查命令作用npm run new-rule交互式生成新规则推荐npm run find-cache发现本机未被覆盖的缓存目录npm run preview-rule干跑预览规则会清理什么npm run parity-check查看跨平台覆盖缺口npm run catalog重新生成规则目录页npm run validate:rules校验规则文件写在最后从零到一条新规则上线你只需要找缓存路径 → 写 5 行 JSON → 跑校验 → 提 PR。Kudu 的清理能力每多一个应用就有更多用户在三大平台受益。现在就去 rules/CATALOG.md 找一个你想支持的 App开始你的第一个零代码贡献吧【免费下载链接】kuduFree Windows, Mac and Linux cleaner, scanner, and more.项目地址: https://gitcode.com/gh_mirrors/kudu1/kudu创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表