文档膨胀治理:用everything-claude-code的Hook阻止AI随意创建Markdown文件

文档膨胀治理:用everything-claude-code的Hook阻止AI随意创建Markdown文件 文档膨胀治理用everything-claude-code的Hook阻止AI随意创建Markdown文件【免费下载链接】everything-claude-codeClaude Code toolkit - agents, commands, skills, rules, and hooks for productive AI-assisted development项目地址: https://gitcode.com/GitHub_Trending/eve/everything-claude-code用 Claude Code 这类 AI 编程助手时你是不是也遇到过这种情况让它改个功能它顺手创建了plan.md、notes.txt、IMPLEMENTATION_NOTES.md……一个项目下来仓库里堆满用不上的文档文件。开源工具everything-claude-code提供了一组生产级 Hook 配置其中 hooks/hooks.json 里的doc blocker Hook会在 AI 写文件之前直接拦截无意义的.md/.txt文件创建把文档治理从事后清理变成事前阻止。本文带你理解原理并快速上手。一、AI 文档膨胀一个被低估的麻烦 AI 助手勤快的另一面是手欠。常见的症状包括散落各处的笔记文件TODO.md、debug-notes.md、summary.md随处生成文档与代码脱节这些文档写完即过时反而误导后续开发上下文被污染Claude Code 会自动读取项目里的文档垃圾文档越多上下文窗口浪费越多仓库信噪比下降真正有价值的README.md被淹没手动删除治标不治本——AI 下次还会创建。真正的解法是在 AI 调用写文件工具的那一刻就拦截它这正是 Hook 的作用。二、everything-claude-code 的 Hook 体系是什么 Hook 是 Claude Code 的事件钩子机制在 AI 使用工具的前后以及会话开始、结束、上下文压缩等节点自动触发脚本实现校验、提醒、自动格式化等自动化能力。Hook 类型主要分为三种类型触发时机典型用途PreToolUse工具执行前拦截危险操作、参数校验PostToolUse工具执行后自动格式化、静态检查StopAI 回复结束时最终校验如检查 console.logmore complete 的说明可参考 rules/hooks.md。everything-claude-code 的 hooks/hooks.json 是一份开箱即用的完整配置涵盖 tmux 提醒、git push 审查提醒、Prettier 自动格式化、TypeScript 类型检查、console.log 审计等其中就包括我们今天的重点——doc blocker文档拦截器。三、doc blocker Hook 是如何拦截的 ️这个 Hook 挂在PreToolUse事件上核心逻辑分两步匹配器matcher只针对Write工具且文件路径以.md或.txt结尾的操作白名单豁免README.md、CLAUDE.md、AGENTS.md、CONTRIBUTING.md这些核心文档放行执行拦截不在白名单的文件脚本向 stderr 输出拦截信息并以非零码退出操作被阻止配置原文节选自 hooks/hooks.json{ matcher: tool \Write\ tool_input.file_path matches \\\\\.(md|txt)$\ !(tool_input.file_path matches \README\\\\.md|CLAUDE\\\\.md|AGENTS\\\\.md|CONTRIBUTING\\\\.md\), hooks: [{ type: command, command: node -e \...console.error([Hook] BLOCKED: Unnecessary documentation file creation);process.exit(1)...\ }] }当 AI 试图创建my-notes.md时你会看到类似这样的输出[Hook] BLOCKED: Unnecessary documentation file creation [Hook] File: my-notes.md [Hook] Use README.md for documentation instead设计亮点它不是简单一刀切禁止所有 Markdown而是把文档收敛到少数权威文件中。这与 rules/coding-style.md 中小而聚焦、高内聚的文件组织哲学一脉相承——代码文件如此文档文件亦然。四、三步安装让拦截立即生效 ⚡1. 获取 everything-claude-codegit clone https://gitcode.com/GitHub_Trending/eve/everything-claude-code2. 安装两种方式任选插件方式推荐在 Claude Code 中执行/plugin marketplace add添加仓库再/plugin install即可一次性获得全部 agents、commands、skills 和 hooks手动方式把agents/、rules/、commands/、skills/目录复制到~/.claude/对应位置然后把 hooks/hooks.json 中的 hooks 配置合并进你的~/.claude/settings.json3. 验证拦截效果随便让 AI 创建一个笔记文件试试帮我建一个 debug-notes.md记录刚才的调试过程如果没有拦截仓库里会多出一个文件装上 Hook 后你会看到BLOCKED提示AI 会转而把内容写进README.md或按你的指示处理。五、拦截之后文档去哪儿配套的标准化工具 ✅只堵不疏会适得其反。everything-claude-code 同时提供了疏的完整方案让该写的文档以正确的方式被写进正确的位置agents/doc-updater.md— 文档专员子代理负责从代码生成 codemap、刷新 README 与指南强调文档必须与代码现实一致过时文档比没有文档更糟commands/update-docs.md—/update-docs命令以package.json和.env.example为唯一事实来源同步文档并识别 90 天未更新的陈旧文档commands/update-codemaps.md—/update-codemaps命令扫描代码结构生成架构地图变更超过 30% 时会先请求用户确认examples/CLAUDE.md— 项目级配置示例展示如何在项目规则中声明文件组织与文档约定这套组合拳的逻辑很清晰Hook 事前拦截→ 杜绝随机文档文件doc-updater 代理 update 命令→ 需要文档时走标准流程从代码生成、有据可查白名单保留权威文件→README.md等核心文档始终是唯一出口六、小结把约定变成强制力 Prompt 里写请尽量不要创建多余文档只能靠 AI 自觉而 Hook 是把团队约定固化成不可绕过的执行层。everything-claude-code 的 doc blocker 用几十行配置就实现了✅ 阻止 AI 随意创建.md/.txt文件保持文档收敛✅ 白名单机制保护核心文档的正常维护✅ 与文档代理、更新命令协同形成拦截 标准输出闭环如果你想给自己的 Claude Code 工作流加上类似的自动化护栏不妨从 hooks/hooks.json 开始挑几个 Hook 用起来——文档治理只是起点tmux 提醒、push 审查、格式化等能力同样值得借鉴。【免费下载链接】everything-claude-codeClaude Code toolkit - agents, commands, skills, rules, and hooks for productive AI-assisted development项目地址: https://gitcode.com/GitHub_Trending/eve/everything-claude-code创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考