凌晨三点,你终于重构完那个臃肿的认证模块。函数签名改了,环境变量换了,JSDoc也更新了。但三天后,新同事照着旧文档调API,接口报错。他不敢问你,对着屏幕试了两个小时——这种事每天都在发生。
文档腐烂(Documentation rot)的诡异之处在于:代码错了会编译失败,测试挂了会亮红灯,但文档过时了,系统一声不吭。它像暗礁一样沉在水下,直到有人撞上去。
开发者并非不在乎文档,而是维护文档是一种"隐形劳动"——没有CI检查,没有编译报错,没有测试失败。文档在沉默中腐烂。
living-docs 是一个Claude Code插件,试图修复这个反馈闭环。
代码改动后,运行 /living-docs,它会:
• 对比上次提交后的代码变更
• 提取语义标记——函数名、参数、环境变量、CLI标志、配置键、API端点
• 找到所有引用它们的文档文件
• 对比文档描述与代码实际行为
• 精确定位问题所在,并给出修复建议
• 仅对过时行进行精准编辑
以下是将环境变量重命名、为函数添加参数后的输出示例:
正在扫描文档与上次提交后的变更...
过时 docs/api.md 2处问题
过时 docs/configuration.md 1处问题
过时 src/auth.ts (JSDoc) 1处问题
正常 README.md
─────────────────────────────────────────────────────────
docs/api.md · 第112行
─────────────────────────────────────────────────────────
类型:过时签名
变更:authenticate(token) → authenticate(token, options?)
原内容:authenticate(token) - 验证JWT
现内容:authenticate(token, options?)
options.strict — 拒绝缺少exp的令牌。默认值:false。
options.audience — 验证aud声明。默认值:不检查。
─────────────────────────────────────────────────────────
docs/configuration.md · 第58行
─────────────────────────────────────────────────────────
类型:环境变量重命名
变更:AUTH_SECRET → AUTH_SIGNING_KEY
应用全部4处修复? [Y/n/sel
它不生成新文档,只确保现有文档与代码保持一致。在文档谎言造成损失之前,将其拦截。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.