get-popo-doc

SKILL.md

get-popo-doc

获取 POPO 文档内容并转换为 Markdown 格式,以文档标题命名保存到系统下载目录。支持自动登录、Cookie 持久化、iframe 内容提取,以及 Mermaid 图表、代码块、表格等复杂元素的转换。

When to use

  • 用户提供 POPO 文档链接(如 https://docs.popo.netease.com/lingxi/xxx
  • 用户请求获取、读取、抓取 POPO 文档内容
  • 用户需要将 POPO 文档转换为 Markdown
  • 用户提到"灵犀文档"、"POPO 文档"等关键词

Instructions

执行步骤

  1. 先安装依赖(只需首次执行):
cd /path/to/get_popo_doc
npm install
  1. 执行脚本获取文档:
npx tsx src/index.ts <POPO文档链接>

登录说明

⚠️ 重要提示:首次使用或登录失效时,工具会自动打开浏览器窗口,需要用户手动完成 POPO 登录。

  • 首次使用:会弹出浏览器窗口,用户需在页面中完成 POPO 账号登录
  • 登录失效:Cookie 过期后(通常几天到几周),需要重新登录
  • 登录成功后:Cookie 会保存到 ~/.popo-doc-cookies.json,后续请求自动复用登录状态
  • 首次登录后可能失败:首次登录完成后,当次获取可能会失败,需要自动重试一次命令

AI 需提醒用户:执行命令后如果弹出浏览器窗口,请在浏览器中完成登录,登录成功后工具会自动继续获取文档内容。

AI 处理失败:如果首次登录后获取失败,自动重新执行一次命令即可成功。

输出说明

  • 成功时
    • 文件保存到 ~/Downloads/ 目录
    • 文件名格式:{文档标题}_{时间戳}.md(如 API设计文档_20260306_162500.md
    • stdout 输出文件的绝对路径
  • 写入失败时:stdout 直接输出 Markdown 内容
  • 获取失败时:stderr 输出错误信息,exit code 为 1

读取结果

  1. 执行命令后,从 stdout 获取输出
  2. 如果输出是文件路径(以 / 开头且以 .md 结尾),则读取该文件
  3. 如果输出是 Markdown 内容(写入失败的降级方案),直接使用该内容
  4. 将内容展示给用户

示例

cd /Users/zhaoxuhui/Desktop/get_popo_doc
npm install
npx tsx src/index.ts https://docs.popo.netease.com/lingxi/7509c0c0435f47559d265d613ebf915c
# 成功输出: /Users/xxx/Downloads/API设计文档_20260306_162500.md

然后读取输出的文件路径获取 Markdown 内容。

Examples

用户请求示例

AI 响应流程

  1. 识别用户提供的 POPO 文档链接
  2. 提醒用户:"正在获取文档,如果弹出浏览器窗口请完成登录"
  3. 进入 skill 目录,执行 npm install 安装依赖(如未安装)
  4. 执行 npx tsx src/index.ts <URL>
  5. 如果失败(exit code 为 1),自动重试一次命令(仅重试 1 次,首次登录后可能需要重试)
  6. 从 stdout 获取输出:
    • 如果是文件路径,读取该文件获取 Markdown 内容
    • 如果是 Markdown 内容,直接使用
  7. 将 Markdown 内容展示给用户

Dependencies

  • puppeteer: ^24.0.0
  • turndown: ^7.2.0
  • tsx: ^4.19.3

Tags

  • popo
  • document
  • markdown
  • scraper
  • netease
Installs
5
First Seen
Apr 2, 2026