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 agentmods add skills/fuyuxiang/echo-agent/web-extractnpx skills add fuyuxiang/echo-agent --skill web-extractgit clone --depth 1 https://github.com/fuyuxiang/echo-agentWhat 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 | $0.00026 | $0.00503 |
| Opus 5 | $0.00013 | $0.00251 |
| Sonnet 5 | $0.00005 | $0.00101 |
| Haiku 4.5 | $0.00003 | $0.00050 |
Grade A, and why
web-extract 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 3d 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.
What it actually says
Web Extract
Extract readable text/markdown from any URL. Uses trafilatura — the best Python content extraction library (handles news, blogs, docs reliably).
Quick Usage
pip install trafilatura httpx
import trafilatura
# Fetch and extract in one step
text = trafilatura.fetch_and_extract("https://example.com/article")
print(text)
# With more options
downloaded = trafilatura.fetch_url("https://example.com/article")
result = trafilatura.extract(downloaded, output_format="markdown", include_links=True)
Helper script
python3 scripts/extract_url.py "https://example.com/article"
python3 scripts/extract_url.py "https://example.com" --format markdown --links
Options
| Parameter | Effect |
|---|---|
output_format="markdown" |
Markdown with headers |
include_links=True |
Preserve hyperlinks |
include_images=True |
Include image references |
include_tables=True |
Preserve table structure |
favor_recall=True |
Extract more (less precision) |
Fallback: httpx + readability
For pages where trafilatura struggles:
import httpx
from readability import Document
resp = httpx.get(url, follow_redirects=True, timeout=15)
doc = Document(resp.text)
title = doc.title()
content = doc.summary() # HTML, needs html2text for markdown
JavaScript-heavy sites
For SPAs or JS-rendered content, use playwright (optional):
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page()
page.goto(url, wait_until="networkidle")
html = page.content()
browser.close()
# Then pass html to trafilatura.extract()
Rate Limits
Be respectful: add 1-2 second delays between requests to the same domain.
Set a User-Agent: trafilatura.fetch_url(url, config=config) with custom config.
What ships with it
1 file 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.
- 3d ago First seen · 83 lines · 26 tokens per session scan A 917007a4d32d
web-extract is a skill published in the GitHub repository fuyuxiang/echo-agent (988 stars, last pushed 3d ago), licensed MIT. It adds 26 tokens to every session and 503 once invoked, about $0.0001 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
pptx
从论文、大纲或结构化文本生成 PowerPoint (.pptx) 演示文稿。Use when 用户需要把一篇论文/文章/大纲做成幻灯片、slides、演示文稿、PPT、deck。Don't use when 只需纯文本总结、生成 Word/PDF、或修改已有 pptx 的单个像素级样式。.
ai-style
当任务是用中文撰写或改写面向读者的文案(产品发布稿、公众号文章、邮件、README 等), 或用户反馈文字「AI 味太重」「不像人写的」时,加载本 Skill。.
curly-quote-sft
Skill "curly-quote-sft" from bojieli/ai-agent-book, covering 中文技术文档符号与引用规范, 何时加载, 符号定义, 决策优先级 and 正反例约束.
writing
将共享历史中的已验证事实和计算结果整理成符合受众、格式与长度约束的成稿。.
kungfu-agent-onboarding
Discover the exact Kungfu Project, WorkConsole, WorkRef, Skill catalog, and Core Work state admitted to this Amp process.
research
用真实检索工具查找可追溯的事实、数据和来源。.