Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add zjp1997720/zhijian-skills --skill web-clippergit clone --depth 1 https://github.com/zjp1997720/zhijian-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/zjp1997720/zhijian-skills/web-clipper)<a href="https://agentmods.dev/skills/zjp1997720/zhijian-skills/web-clipper"><img src="https://agentmods.dev/badge/skills/zjp1997720/zhijian-skills/web-clipper/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zjp1997720/zhijian-skills/web-clipper"><img src="https://agentmods.dev/badge/skills/zjp1997720/zhijian-skills/web-clipper.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00134 | $0.03841 |
| Opus 5 | $0.00067 | $0.01920 |
| Sonnet 5 | $0.00027 | $0.00768 |
| Haiku 4.5 | $0.00013 | $0.00384 |
Grade A, and why
web-clipper scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 437 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Web Clipper
目标:把「网页文章收藏」做成稳定工作流,而不是一次性手工操作。
和 Obsidian / 本地知识库的关系
本 Skill 是文章进入本地知识系统的入口。它不把网页直接冒充成已经整理好的知识,而是先保存为带来源信息的 source_candidate,供后续人工筛选、知识编译或写作流程继续处理。
默认分工:
- Obsidian Web Clipper:浏览器里手动剪藏,模板负责生成最小 OKF frontmatter。
- 本 skill:Agent 批量抓取、补抓失败页面、检查文章正文质量。
- 后续知识流程:把高价值候选资料编译成来源卡、概念、方法、案例、练习或写作素材。
新增或抓取的文章默认不是“已整理知识”,而是“待判断资料”。状态字段使用:
unprocessed -> queued -> source_carded -> compiled -> used
ignored / needs_human
保存的 Markdown 应尽量包含以下字段,方便 Obsidian、检测脚本和后续 Agent 读取:
---
type: source_candidate
title: "..."
summary: "..."
source: "https://..."
resource: "https://..."
source_kind: web_article
platform: web
author: "..."
published: "YYYY-MM-DD"
clipped: "ISO时间"
clipper: agent_web_clipper
okf_version: local-okf-v0.2
compile_status: queued
status: unprocessed
training_relevance: medium
topics:
- Agent
candidate_outputs:
- source_card
- writing_fuel
reuse_note: ""
tags:
- clipping
---
字段含义:
type: source_candidate:表示这是候选来源,不是正式 Wiki 页。source_kind:来源类型,例如wechat_article、x_status、web_article。training_relevance:内容复用相关度。Agent 抓取默认medium,可用--training-relevance high|medium|low|unknown覆盖。topics:OKF 主题标签。脚本会从标题、URL、描述和 tags 粗推,也可用--topic Agent --topic AI培训显式指定。candidate_outputs:后续可能拆成的知识资产类型。脚本默认source_card+writing_fuel,可用--candidate-output method等重复追加。compile_status:后续自动检测和编译流程读取的主状态字段。Agent 抓取默认queued,表示进入候选队列但不自动写正式 Wiki。
这个 skill 解决什么问题
它覆盖两类任务:
-
单篇收藏
- 输入一个文章 URL
- 提取标题、摘要、发布日期、正文
- 保存为 Markdown 到用户指定目录
-
批量收藏
- 输入一个索引页、归档页、专题页、作者主页
- 按用户要求抓前 N 篇、热门文章、最新文章,或指定的一组文章
- 批量保存到本地
成功率优先的执行策略
按下面顺序走,不要反过来:
首次使用与依赖自检
这个 skill 在分享 zip 给别人后,统一走 wrapper,不要直接打主脚本。
首次运行时,先执行:
bash <web-clipper-root>/scripts/run_web_clipper.sh --help
注意:这条命令有副作用。
它会先运行 bootstrap,可能创建默认 clipping 目录和当前项目下的 .web-clipper/EXTEND.md。
wrapper 会先调用 scripts/bootstrap.sh,自动做这些事:
- 检查 Python 3 是否可用
- Python 3 缺失时尝试自动安装
- 检查主脚本是否完整
- 自动创建默认 clipping 目录
- 首次运行时写入当前项目下的
.web-clipper/EXTEND.md
What ships with it
8 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 437 lines · 134 tokens per session scan A 9d0821fa583a
web-clipper is a skill published in the GitHub repository zjp1997720/zhijian-skills (595 stars, last pushed 6d ago), licensed MIT. It adds 134 tokens to every session and 3,841 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
debug-optimize-lcp
Guides debugging and optimizing Largest Contentful Paint (LCP) using Chrome DevTools MCP tools. Use this skill whenever the user asks about LCP performance, slow page loads, Core Web Vitals optimization, or wants to understand why their page's main content takes too long to appear. Also use when the user mentions…
opencli-sitemap-author
Use when creating or maintaining OpenCLI site sitemaps: agent-facing navigation, page-state, action, workflow, API-reference, pitfall, and fallback knowledge for a website. Use after browser exploration discovers durable site context, when a sitemap is stale, or when promoting local site knowledge into the repo.
interactive-login
How to complete browser/interactive logins (aws / gh / glab / gcloud). The platform backgrounds the login poller so it survives the human's browser round-trip — and when that does NOT work.
pinchtab-mcp
Use this skill when a task requires browser automation through PinchTab's MCP server connected to a remote browser instance. Covers navigation, element interaction, data extraction, form filling, multi-step flows, and session management via MCP tools.
azure-messaging-webpubsub-java
Build real-time web applications with Azure Web PubSub SDK for Java. Use when implementing WebSocket-based messaging, live updates, chat applications, or server-to-client push notifications.
google-safe-browsing
Prevent and fix Google Safe Browsing "Dangerous site" flags. Use when launching a public web app, buying/picking a domain, building a login or signup page, or when any site shows a red "Dangerous site" / "Deceptive site" warning in Chrome, Brave, Safari, Firefox, or Edge. Triggers on "dangerous site", "deceptive…