用途:将网页 URL 转换为干净的 Markdown,通过驱动本地浏览器(机制为 web2md)完成,适合 JS 渲染的页面。
触发限制:技能强制触发门控,仅当用户明确写出类似“use the skill web-to-markdown ...”或“use a skill web-to-markdown ...”时才可使用;否则应停止并请用户带上该短语重新发起请求。
主要能力:处理 JS 渲染页面(Puppeteer 驱动用户 Chrome);最好配合 Chromium 系浏览器(Chrome/Chromium/Brave/Edge),通过 puppeteer-core 工作;用 Readability 提取主内容;用 Turndown 转 Markdown,清理链接,可选 YAML frontmatter。非目标:不使用 Playwright 或其他浏览器自动化栈,机制固定为 web2md。
需收集的输入:url(或 URL 列表);输出偏好:打印到 stdout(--print)、保存到文件(--out ./file.md)或保存到目录(--out ./some-dir/,按页面标题自动命名)。
可选渲染控制:--chrome-path <path>(自动检测失败时)、--interactive(显示 Chrome 并暂停以便人工检查/登录,然后按 Enter)、--wait-until load|domcontentloaded|networkidle0|networkidle2、--wait-for '<css selector>'、--wait-ms <milliseconds>、--headful(调试)、--no-sandbox(容器/CI 有时需要)、--user-data-dir <dir>(登录/会话,使用专用配置文件目录)。
流程:确认用户显式调用技能;校验 URL 以 http:// 或 https:// 开头;确保 web2md 已安装(运行 command -v web2md,缺失则安装:npm 可用时 npm install -g web2md,或从源码克隆仓库后运行 npm install && npm run build && npm link);转换:单 URL 到文件 web2md '<url>' --out ./page.md,目录自动命名 mkdir -p ./out && web2md '<url>' --out ./out/,人工验证/登录墙 mkdir -p ./out && web2md '<url>' --interactive --user-data-dir ./tmp/web2md-profile --out ./out/,打印 web2md '<url>' --print,多 URL 逐个运行 --out ./out/;校验输出文件存在且非空;返回文件路径或 Markdown。
默认建议:多数页面用 --wait-until networkidle2;重应用从 --wait-until domcontentloaded --wait-ms 2000 开始,必要时加 --wait-for 'main' 等稳定选择器。
限制:与上述触发门控、浏览器类型、非目标相关;其它细节暂未提供。