[x-cmd] 用 lychee 揪出文档中的无效链接,为 AI 写的文档做质检

发布时间:2026/5/26 3:33:49

[x-cmd] 用 lychee 揪出文档中的无效链接,为 AI 写的文档做质检 用 lychee 揪出文档中的无效链接为 AI 写的文档做质检让 AI 帮忙收集资料、撰写文档。花了半小时看起来内容充实、逻辑通顺。但有些链接要么点不开要么点进去显示页面不存在。没办法确认资料的来源无法验证内容是否真实可靠搞了半天反而更花时间。这不是小概率事件。AI 生成内容时不仅会捏造事实也会捏造链接看起来格式正确、域名合理但指向的内容根本不存在。lychee 是什么lychee 是一个用 Rust 编写的异步链接检查器支持 Markdown、HTML、reStructuredText、网站等多种输入源。它能快速发现无效链接和邮件地址。它的定位很清晰不是普通的死链检查工具而是文档质量基础设施的一部分。快速上手用 x-cmd 安装 lychee 非常简单只需在终端中运行以下命令即可xinstalllychee最基本用法检查当前目录所有文件或指定文件lychee.lychee README.md test.html info.txt输出示例发现断链时✗ https://example.com/not-found [404] ✓ https://github.com/lycheeverse/lychee [200]缓存检查结果避免重复请求lychee--cache.检查指定网站链接lychee https://endler.dev实际工作流AI 生成 lychee 验证独立检查流程AI 生成文档后运行 lychee 检查人工只处理报告的断链AI 生成文档 → lychee 检查 → 修复断链 → 发布这个流程把检查断链这件机械的事交给工具人可以聚焦在内容质量本身。核心特性异步并发速度够快AI 批量生成的文档量大链接检查必须跟上效率。lychee 基于 Tokio 异步运行时默认 128 并发能在几秒内检查完一个大型代码库的所有链接。这不是工具快不快的问题而是 AI 工作流能否闭环的问题。缓存机制重复检查时直接读缓存避免不必要的网络请求。缓存默认存储在.lycheecache可以用--max-cache-age控制过期时间。这个设计对 CI 环境很友好——同一个 PR 的两次检查第二次几乎瞬间完成。多种输出格式--format支持 compact、detailed、json、markdown、raw 五种格式。json 格式方便后续脚本处理markdown 格式适合直接嵌入 CI 报告。工具的灵活性往往体现在这些细节上。为什么 AI 会捏造链接大语言模型的核心目标是预测最可能的 token而非正确的 token。当它生成链接时并不是在检索一个真实存在的 URL而是在根据训练数据中的 URL 模式拼凑一个看起来合理的字符串。这两种行为有本质区别知识检索在知识库中找到正确答案概率拼接根据 token 序列的统计规律生成下一个 tokenURL 的特殊性在于正确答案是极其稀疏的。https://api.example.com/v2/users和https://api.example.com/v3/users看起来同样合理但 v2 可能从未发布过。模型学会了 URL 的表面模式却无法验证它指向的内容是否真实存在。更根本的矛盾在于模型的训练目标是流畅性fluency不是事实性factuality。一篇文档即使满是无效链接只要语法正确、读起来通顺在训练时就不会受到惩罚。总结lychee 的价值在 AI 时代被重新定义了它不只是检查断链的工具而是文档质量闭环中的关键一环。对于 AI Agent 批量生成的文档lychee 提供了一个自动化的链接验证层让人肉复核可以聚焦在真正重要的事情上——内容质量本身。来源https://github.com/lycheeverse/lychee

相关新闻