Communitygithub.com

OfficialSpicrawl/docs2skill

当用户希望从一个文档网站(例如某个库的文档,以便其编码代理能够了解)生成代理技能、llms.txt、llms-full.txt 或 AGENTS.md 时使用。运行 llms-txt.mjs,该脚本读取网站的站点地图并通过 Spicrawl API 批量抓取页面并转换为 Markdown。

docs2skill 是什么?

该技能旨在帮助开发者快速将在线文档网站转化为可供 AI 编码代理(如 Claude Code、Cursor 等)使用的结构化知识文件。其核心工具是一个 Node.js 脚本 `llms-txt.mjs`,它通过网站的 `sitemap.xml` 发现所有页面,并使用 Spicrawl API 将这些页面批量抓取并转换为干净的 Markdown 格式。最终输出包括 `llms.txt`、`llms-full.txt`,如果指定了 `--skill` 参数,还会生成一个包含 `SKILL.md` 和 `references/*.md` 的标准代理技能文件夹以及 `AGENTS.md` 文件。该技能主要由以下平台和工具使用:Claude Code、Cursor、Codex 等。它通过解析站点地图或首页链接、调用远程 API 进行渲染和转换、将结果写入本地文件系统,并计算信用点成本来工作,从而显著简化了为 AI 代理准备文档的过程。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add OfficialSpicrawl/docs2skill

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Spicrawl docs2skill

llms-txt.mjs 通过站点地图(或首页链接)发现网站页面,使用 Spicrawl API 将页面批量抓取为干净的 Markdown,并写入 llms.txt 和 llms-full.txt。使用 --skill <name> 参数时,它还会写入一个代理技能文件夹(SKILL.md + references/*.md)和 AGENTS.md。

设置

  1. 需要 Node >= 18 以及在 SPICRAWL_API_KEY 环境变量中配置的 Spicrawl API 密钥(免费密钥可在 https://app.spicrawl.com 获取,每月 1,000 积分)。如果该变量未设置,请要求用户导出它。不要要求他们将密钥粘贴到聊天中。
  2. 在此目录(包含 llms-txt.mjs 的文件夹)中运行一次 npm install。

运行

在此目录中运行:

node llms-txt.mjs https://docs.example.com                          # 在 ./out 中生成 llms.txt + llms-full.txt
node llms-txt.mjs https://docs.example.com --skill example-docs     # 同时生成 out/example-docs/SKILL.md、references/、out/AGENTS.md
node llms-txt.mjs https://example.com --include /docs --max 100     # 仅抓取 /docs 下的页面,最多 100 页
node llms-txt.mjs https://app.example.com --js                      # 渲染 JavaScript(每页成本更高)
  • --max 限制抓取的页面数量(默认 50)。工具会在开始前打印预估的信用点成本。
  • --skill 接受一个短横线连接的小写名称(小写字母、数字、连字符)。无效的名称会被拒绝,不会发起任何 API 调用。
  • 通过将生成技能文件夹复制到代理的技能目录中来安装该技能,例如 cp -r out/example-docs ~/.claude/skills/(Claude Code)或仓库的 .agents/skills/。

读取输出

  • 最终摘要行会报告已写入的页面数量,以及因失败、被阻止(网站响应 HTTP 4xx/5xx)或内容为空而跳过的页面数量。跳过的页面不消耗信用点。
  • 使用较少的页面重新运行到同一个 --out 目录会留下旧的引用文件;为获得干净的结果,请先删除该文件夹。

成本

普通抓取每页约消耗 1 个信用点;--js 每页消耗更多。在免费套餐上从小的 --max 开始,待输出符合预期后再扩大。

防护栏

  • 切勿打印、记录或提交 API 密钥。
  • 尊重网站的条款和 robots 规则;仅为用户有权以这种方式使用的文档生成技能。
  • 不要循环运行:除非文档发生变化,每个网站运行一次即可。

相关技能