mcpField
F
fixing-broken-links

fixing-broken-links

github.com/spencerpauly测试与质量868399 次安装13 周前更新
代码仓库

关于 fixing-broken-links

用于查找并修复文件中失效链接的技能,涵盖多种链接格式提取、外部 URL 和本地路径检查、替换或移除失效链接,并以汇总表报告结果。

主要功能

  1. 01提取多种格式的链接
  2. 02检查外部 URL 状态码
  3. 03验证本地相对路径
  4. 04替换、移除或存档失效链接
  5. 05汇总检查结果与处理方式

适用场景

  1. 01审查 Markdown 或 HTML 文件中的链接
  2. 02查找缺失的本地文件引用
  3. 03更新或移除已失效的 URL

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/spencerpauly/awesome-cursor-skills --skill fixing-broken-links

安装后在 Claude Code 中输入/fixing-broken-links确认已加载。

详细介绍

修复失效链接

扫描一个或多个文件中的 URL,测试每个链接,并修复失效链接。

工作流

1. 提取所有链接

读取目标文件并收集其中的所有 URL:

  • Markdown 链接:[text](url)
  • 纯文本 URL:https://...
  • HTML href 和 src 属性
  • 引用式链接定义:[id]: url
  • 本地相对路径:./path/to/file、resources/foo/SKILL.md
2. 测试每个链接

对于外部 URL:

  • 使用 curl -sL -o /dev/null -w "%{http_code}" --max-time 10 "<url>" 获取 HTTP 状态码
  • 并行运行多个 curl 命令,或快速依次执行,以批量检查互不依赖的链接,提高速度
  • 对结果分类:
    • 200–299 → 正常
    • 301/302 → 正常,但需记录重定向目标
    • 403 → 可能有效(有些网站会拦截 curl);尝试添加浏览器 user-agent 请求头
    • 404 → 失效
    • 429 → 请求过于频繁;短暂等待后重试一次
    • 000 或超时 → 重试一次;若仍失败,则标记为无法访问

对于本地文件路径:

  • 使用 [ -f "path" ] 检查文件是否存在
  • 如果是相对路径,则从文件所在目录解析
3. 修复失效链接

对于每个失效链接:

  1. 在网上搜索正确的当前 URL(资源可能已迁移)
  2. 如果找到,则将旧 URL 替换为新 URL
  3. 如果资源已不存在,则注明这一情况,并选择以下一种处理方式:
    • 移除链接并保留文本
    • 添加注释说明
    • 替换为存档版本(web.archive.org)
4. 报告

生成汇总表:

| URL | Status | Action |
|-----|--------|--------|
| https://example.com/page | 200 | OK |
| https://old.example.com/moved | 404 → 301 | Updated to https://new.example.com/page |
| ./docs/missing.md | MISSING | Removed link |

提示

  • 对于包含大量链接的大型文件,批量调用 curl,避免速度变慢
  • 有些网站(GitHub、npm)会严格限制请求频率,应适当间隔请求
  • 修改后务必重新读取文件,确认替换没有破坏格式
  • 对于 Markdown 文件,检查链接语法是否保持原样:[text](url),而非 [text]( url )(不要添加额外空格)

评论

支持 Markdown