Literature Discovery Pipeline
Yuan1z0825/nature-skills
Runs a daily literature pipeline: multi-source search, six-dimension scoring, fine reading, formatted delivery to a chat channel and archival of the notes.
把飞书/Lark 文档或普通网页抓取并保存到本地,也能编辑用户有权限的飞书文档,并用已登录浏览器执行一次网页搜索。用户要求下载、导出、抓取、写入飞书文档,或联网搜索资料/参考链接时使用本技能,即使没有提到 larksnap。底层通过技能自带 daemon 桥接已登录的 larksnap 浏览器扩展;arXiv 使用独立脚本。
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AmbroseX/larksnap larksnap-fetch --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/larksnap-fetch .claude/skills/larksnap-fetch && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .claude/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AmbroseX/larksnap larksnap-fetch --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/larksnap-fetch .agents/skills/larksnap-fetch && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .agents/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AmbroseX/larksnap larksnap-fetch --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/larksnap-fetch .cursor/skills/larksnap-fetch && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .cursor/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AmbroseX/larksnap.git --path skills/larksnap-fetch--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AmbroseX/larksnap larksnap-fetch --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/larksnap-fetch .gemini/skills/larksnap-fetch && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .gemini/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AmbroseX/larksnap larksnap-fetchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/larksnap-fetch .github/skills/larksnap-fetch && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .github/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AmbroseX/larksnap --skill larksnap-fetch -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AmbroseX/larksnap larksnap-fetch --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AmbroseX/larksnap.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/larksnap-fetch .opencode/skills/larksnap-fetch && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "larksnap-fetch" agent skill from https://github.com/AmbroseX/larksnap/tree/main/skills/larksnap-fetch into .opencode/skills/larksnap-fetch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "larksnap-fetch", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
larksnap-fetch把飞书/Lark 文档或普通网页抓取并保存到本地,也能编辑用户有权限的飞书文档,并用已登录浏览器执行一次网页搜索。用户要求下载、导出、抓取、写入飞书文档,或联网搜索资料/参考链接时使用本技能,即使没有提到 larksnap。底层通过技能自带 daemon 桥接已登录的 larksnap 浏览器扩展;arXiv 使用独立脚本。
Larksnap Fetch is an agent skill from AmbroseX/larksnap. 把飞书/Lark 文档或普通网页抓取并保存到本地,也能编辑用户有权限的飞书文档,并用已登录浏览器执行一次网页搜索。用户要求下载、导出、抓取、写入飞书文档,或联网搜索资料/参考链接时使用本技能,即使没有提到 larksnap。底层通过技能自带 daemon 桥接已登录的 larksnap 浏览器扩展;arXiv 使用独立脚本。
Its SKILL.md is about 920 tokens, which your agent loads only when the skill is triggered. The skill folder holds 21 other files, including scripts and reference files (for example `references/arxiv.md`, `references/edit.md` and `references/errors.md`).
It sits in Research & Science, covering Messaging and chat bots and Academic paper search. It works with arXiv, Bilibili, Feishu (Lark) and YouTube. The repository describes itself as: 飞书 / Lark 文档导出浏览器扩展(MV3)—— 持登录态直导私有化部署与 「官方导出已关闭」的文档,把 Markdown 写回飞书文档;任意网页转 Markdown、整页截图、 AI 总结、解除复制、下载视频,并可桥接 Claude Code / CLI 落到本地目录. The licence is Apache-2.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1441ff6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 10 files in scripts/ (JavaScript, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
nodeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
xxx.feishu.cnFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Larksnap Fetch loads about 923 tokens when it runs, and up to ~5.2k if it reads all its reference files. Until then it costs about 45 tokens; SKILL.md has 207 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from AmbroseX/larksnap at commit 1441ff6, republished under its Apache-2.0 licence (© AmbroseX). 207 words, ~923 tokens.
.claude/skills/larksnap-fetch/SKILL.md (or your agent's skills folder). This skill also uses 17 other files; get the full folder from GitHub.在任意项目的 Claude Code 里「扔一个飞书链接 → 落到本地目录」。本技能不直接请求飞书,而是把任务 交给已登录的 larksnap 浏览器扩展(它持有 cookie 与导出引擎)。
CC ──fetch.mjs(一次性)──HTTP /command──▶ daemon ──WebSocket──▶ Chrome 扩展
▲ 127.0.0.1:19925 └ 后台开标签页跑导出
└ 流式回传进度/产物 ──▶ 解包到 <输出目录>/<文档名>/本技能自包含:daemon 与协议代码已随技能打包在 scripts/bridge/ 里,fetch.mjs 拉起的是
技能内部那份 daemon,不依赖 larksnap 仓库的目录结构,因此可从任何项目调用。唯一的外部依赖是
那个装在 Chrome 里、已登录飞书的扩展(扩展无法塞进技能,只能在浏览器里加载一次,见 references/setup.md)。
每篇文档落到自己的子文件夹(以文档标题命名),不和其它文件平铺混在一起:
<输出目录>/
└── 无监督数据修复/ ← 文档标题命名的文件夹
├── 无监督数据修复.md
└── images/ ← 图片用相对路径内联引用
└── xxx.png127.0.0.1。node ~/.claude/skills/larksnap-fetch/scripts/fetch.mjs <飞书链接> <输出目录> [--format md|pdf|html] [--profile <code>]<输出目录> 是父目录;产物会落到 <输出目录>/<文档名>/ 子文件夹里(每篇文档独立成夹,互不混淆)。--format 缺省 md。md/html 会把图片下载并以相对路径内联到该子文件夹的 images/;pdf 视租户能力而定。✓ 已导出到 后是该文档的子文件夹绝对路径)。--profile <code>:当有多个浏览器 profile 同时连到 daemon 时,指定用哪一个(code 见扩展弹窗的 Profile,可点 Copy 复制)。只有一个时无需指定。退出码:0 成功 | 1 失败 | 2 用法错 | 3 需登录 | 4 需授权域名 | 5 桥接未就绪。
需要搜索资料、找参考链接或从搜索结果继续抓正文时,读取 references/search.md。
搜索与 fetch 共用本技能的 daemon 和 bridge,脚本入口是 scripts/search.mjs。
需要新建、追加、插入、替换、删除或检索飞书文档块时,读取 references/edit.md。
编辑与 fetch 共用本技能的 daemon 和 bridge,脚本入口是 scripts/edit.mjs。
链接不是飞书文档时,fetch.mjs 自动走普通网页管线(整页转 Markdown),命令不变,只支持 md,
图片保留外链。小红书有专属适配器,要求登录 + 带 xsec_token 的完整分享链接,图片会本地化。
抓普通网页失败、或要抓小红书时,读取 references/webpage.md。
arXiv 链接或裸 ID 不走 daemon/扩展,用独立脚本一次下载 PDF + HTML + Markdown:
node ~/.claude/skills/larksnap-fetch/scripts/arxiv.mjs <arXiv链接或ID> <输出目录> [--pdf-only|--html-only]细节(ID 格式兼容、没有 HTML 版属正常不要重试)见 references/arxiv.md。
hint 执行,不要自行猜测:retryable: true → 按 hint 做完(如点扩展图标唤醒)直接重跑同一条命令,同样的错误连续出现 2 次就停下问用户。retryable: false → hint 里需要用户操作的(登录/授权域名),把 hint 转述给用户,等用户确认完成后重跑。<文档名>/<文档名>.md)。
产物在 <输出目录>/<文档名>/ 子文件夹里(md 含 images/ 子目录用相对路径引用),每篇文档独立成夹。第 1 步 node .../fetch.mjs https://xxx.feishu.cn/docx/AbCd... ./notes
→ 退出码 3,JSON: {"subtype":"need_login","hint":"让用户在 Chrome 中打开该文档域名并登录飞书…"}
第 2 步 对用户说:「需要先在 Chrome 里登录 xxx.feishu.cn 的飞书,登录好了告诉我。」
第 3 步 用户确认后,原样重跑第 1 步命令
→ 退出码 0,stdout 列出写入文件 → 告诉用户产物路径,结束。任何非 0 退出时,stderr 的最后一行是一行 JSON,前面几行是给人读的散文:
{"ok":false,"error":{"type":"authentication","subtype":"need_login","message":"…","hint":"让用户在 Chrome 中打开该文档域名并登录飞书,登录完成后重跑本命令。","retryable":false}}hint = 下一步做什么(命令式,照着执行),不要自行猜测;retryable: true = 直接重跑本命令就可能成功;false = 先按 hint 行动(通常需要用户操作)再重跑。0 成功 | 1 失败 | 2 用法错 | 3 需登录 | 4 需授权域名 | 5 桥接未就绪。完整的 type/subtype 枚举表与各类错误的真实输出样例,见 references/errors.md。
首次装扩展、daemon 连不上、端口冲突、图片缺失、以及扩展侧边栏发起的网页视频下载(需 yt-dlp), 见 references/setup.md。
© AmbroseX, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 17 other files (scripts, references) in skills/larksnap-fetch of AmbroseX/larksnap.
Open the folder on GitHubat commit 1441ff6
Larksnap Fetch next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Larksnap Fetch this skillAmbroseX/larksnap | 291 | — | ~923 | Automated safety check: Pass | Apache-2.0 | |
| Literature Discovery PipelineYuan1z0825/nature-skills | 47k | 2 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Insane Searchfivetaku/gptaku-plugins-codex | 128 | — | ~5.6k | Automated safety check: Pass | MIT | |
| Chrome Daily Update Checkdragon-hh/ai-boshu-crawler | 106 | — | ~1.3k | Automated safety check: Pass | None | |
| Feishu Literature ManagerLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.2k | Automated safety check: Pass | MIT | |
| Add Creator To Feishudragon-hh/ai-boshu-crawler | 106 | — | ~2.4k | Automated safety check: Pass | None |
Yuan1z0825/nature-skills
Runs a daily literature pipeline: multi-source search, six-dimension scoring, fine reading, formatted delivery to a chat channel and archival of the notes.
fivetaku/gptaku-plugins-codex
Adaptive access for blocked websites — tries every method until one works.
dragon-hh/ai-boshu-crawler
Run the AI blogger crawler daily update check for Bilibili, Douyin, Xiaohongshu, and YouTube with Chrome producers only where required, the merged Xiaohongshu profile-video skill, and the yt-dlp…
LeoYeAI/openclaw-master-skills
Automated literature retrieval and Feishu Bitable management.
dragon-hh/ai-boshu-crawler
Add Bilibili, Douyin, Xiaohongshu, or YouTube creator homepages to this project's Feishu Base 博主 table from only creator homepage URLs.
joeseesun/qiaomu-opencli-skills
A skill your agent uses when running OpenCLI commands to interact with websites (Bilibili, Twitter, Reddit, Xiaohongshu, etc.), desktop apps (Cursor, Notion), or public APIs (HackerNews, arXiv).
Works with
把飞书/Lark 文档或普通网页抓取并保存到本地,也能编辑用户有权限的飞书文档,并用已登录浏览器执行一次网页搜索。用户要求下载、导出、抓取、写入飞书文档,或联网搜索资料/参考链接时使用本技能,即使没有提到 larksnap。底层通过技能自带 daemon 桥接已登录的 larksnap 浏览器扩展;arXiv 使用独立脚本。. Larksnap Fetch is an agent skill from AmbroseX/larksnap.
Larksnap Fetch fits situations like: tasks that involve Messaging and chat bots; tasks that involve Academic paper search.
Run `npx skills add AmbroseX/larksnap --skill larksnap-fetch -a claude-code`. Or copy the skill folder (skills/larksnap-fetch in AmbroseX/larksnap) into .claude/skills/larksnap-fetch in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AmbroseX/larksnap --skill larksnap-fetch -a codex`. Or copy the skill folder (skills/larksnap-fetch in AmbroseX/larksnap) into .agents/skills/larksnap-fetch in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AmbroseX/larksnap --skill larksnap-fetch -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/larksnap-fetch, .gemini/skills/larksnap-fetch, .github/skills/larksnap-fetch and .opencode/skills/larksnap-fetch in your project.
Going by SKILL.md and its folder, Larksnap Fetch needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Node.js.
SKILL.md names 1 domain. In commands or code: xxx.feishu.cn; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Larksnap Fetch is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 923 tokens (SKILL.md is roughly 3.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Larksnap Fetch: Literature Discovery Pipeline (Yuan1z0825/nature-skills, 47k stars), Insane Search (fivetaku/gptaku-plugins-codex, 128 stars), Chrome Daily Update Check (dragon-hh/ai-boshu-crawler, 106 stars) and Feishu Literature Manager (LeoYeAI/openclaw-master-skills, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AmbroseX (a GitHub user) maintains it in AmbroseX/larksnap, which has 291 GitHub stars. The repository was last updated on September 9, 2026.
Source: AmbroseX/larksnap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.