webcrawl

webcrawl is a skill for Claude Code, Codex from woodfishhhh/EZ_math_model. It costs 62 tokens per session (762 once invoked), scanned B, original, MIT.

A skill for fetching web pages and searching the open internet. It uses several web-reading and search services, including Jina Reader, Firecrawl, Tavily, Exa, and SerpAPI.

In plain words
What is it for?
Reading a supplied URL, searching for sources, and saving retrieved web pages with their source and retrieval details.
Why use it?
It provides a defined fallback path when research needs current information, a specific webpage, or industry, policy, geographic, or economic background.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Install

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.

agentmods
npx agentmods add skills/woodfishhhh/ez_math_model/webcrawl
Any agent
npx skills add woodfishhhh/EZ_math_model --skill webcrawl
Clone the repo
git clone --depth 1 https://github.com/woodfishhhh/EZ_math_model

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for webcrawl

README.md
[![agentmods](https://agentmods.dev/badge/skills/woodfishhhh/ez_math_model/webcrawl.svg)](https://agentmods.dev/skills/woodfishhhh/ez_math_model/webcrawl)
Your own site
<a href="https://agentmods.dev/skills/woodfishhhh/ez_math_model/webcrawl"><img src="https://agentmods.dev/badge/skills/woodfishhhh/ez_math_model/webcrawl.svg" alt="Measured on agentmods" height="20"></a>
Per session 62 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 762 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 2 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00062 $0.00762
Opus 5 $0.00031 $0.00381
Sonnet 5 $0.00012 $0.00152
Haiku 4.5 $0.00006 $0.00076

Measured 6d ago against content hash 24b66493e333, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade B, and why

webcrawl scanned grade B with 2 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 6d 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.

Sends data to an external URLmediumData exfiltration

A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.

r = requests.post( "https://api.firecrawl.dev/v1/scrape",

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

r = requests.post(
skills/ez-math-model/tools/webcrawl/SKILL.md · 91 lines

What it actually says

webcrawl — 网页抓取与开放检索

何时使用

  • 题目纯数学 / 物理机理 → 不要启用
  • 题目涉及行业 / 政策 / 地理 / 经济 → 启用。
  • 评价类题目需要业界基准 / 标准 → 启用。

入口决策树

有具体 URL 要读 → Jina Reader(免费,零配置)
  失败 → Firecrawl scrape(要 EZMM_FIRECRAWL_KEY)
  失败 → 让 LLM 用 WebFetch(最后兜底)

要先搜后读 → Tavily(要 EZMM_TAVILY_KEY)
            / Exa(要 EZMM_EXA_KEY)
            / SerpAPI(要 EZMM_SERPAPI_KEY)
全部不可用 → 让用户给具体 URL,再走单页抓取

命令模板

Jina Reader(免费)

# 任意 URL → markdown,零配置
$url = 'https://example.com/article'
Invoke-RestMethod -Uri "https://r.jina.ai/$url" -OutFile workdir/.../web/$(($url | Get-FileHash -Algorithm MD5).Hash.Substring(0,8)).md

Firecrawl

import requests, os
r = requests.post(
    "https://api.firecrawl.dev/v1/scrape",
    headers={"Authorization": f"Bearer {os.environ['EZMM_FIRECRAWL_KEY']}"},
    json={"url": "https://...", "formats": ["markdown"]},
    timeout=60,
).json()
markdown = r["data"]["markdown"]

Tavily / Exa / SerpAPI

参考 tools/webcrawl/SKILL.md 的代码段。

落盘规范

抓回的页面落到:

workdir/{task_id}/attachments/external/web/<sha8>.md

文件头三行写:

<!-- source: tavily | firecrawl | jina | exa | serp -->
<!-- fetched_at: 2026-05-20T10:00:00+08:00 -->
<!-- url: https://... -->

礼貌爬取

  • 单源间隔 ≥ 1s
  • 尊重 robots.txt(除非用户授权)
  • 不绕过登录 / 反爬
  • 大批量爬取走 Firecrawl,不裸 requests

失败诊断

情况 处理
全部 key 缺失 仅 Jina 可用;写诊断说明可用工具集
单页 4xx / 5xx 退避重试 1 次;仍失败记诊断
抓回登录墙 / 验证码 不绕过;写诊断
超时 > 60s 中断,写诊断
Changes

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.

  1. 6d ago First seen · 91 lines · 62 tokens per session scan B 24b66493e333

Subscribe to this mod's changes

webcrawl is a skill published in the GitHub repository woodfishhhh/EZ_math_model (40 stars, last pushed 1mo ago), licensed MIT. It adds 62 tokens to every session and 762 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

math-modeling-solver

数学建模竞赛解题全流程指导。覆盖国赛(CUMCM)和美赛(MCM/ICM)全部题型(A-F),提供12种问题本质分析、95+场景模型决策矩阵、5本算法Cookbook、11本完整例题Playbook、22个Python+7个MATLAB可运行代码模板。与math-modeling-paper形成"解题→写作"配对。当用户提及建模思路、选什么模型、怎么建模、赛题求解、粘贴赛题文本、美赛/国赛题目分析、CVaR/NSGA-II/Monte Carlo/时间序列/ANOVA/灰色关联、网络流/图论/生态建模、模型命名/Memo/Letter/Our Work流程图时,使用此skill。.

Lupynow/math-modeling-skills · 186 tokens

mathmodel-skill

CUMCM 国赛、MCM/ICM 美赛与电工杯数学建模竞赛的端到端协作工作流。Use when a user explicitly works on one of these modeling contests or asks to run/review a modeling-competition paper from problem selection through modeling, solving, robustness, writing, compliance, and final submission review. Provides 10 stages, persistent decision state…

handsomeZR-netizen/mathmodel-skill · 127 tokens

math-modeling-paper

数学建模竞赛论文写作全流程指导。覆盖国赛(CUMCM)和美赛(MCM/ICM),从论文结构规划、各章节撰写、模型检验、参考文献规范到最终格式检查。与math-modeling-solver形成"解题→写作"配对——可接收solver输出的论文草稿片段直接展开写作。当用户提及数学建模论文写作、建模比赛、国赛/美赛/电工杯/亚太杯/深圳杯/华为杯论文、CUMCM、MCM/ICM、数模论文结构、摘要写作、模型检验、灵敏度分析、latex建模模板、word建模排版、Memo/Letter写作、模型命名、Our Work流程图,或需要写/修改/优化/检查建模论文的任何部分时,都必须使用此 skill。.

Lupynow/math-modeling-skills · 202 tokens

interpret-modeling-problems

根据原始赛题和附件,生成可回查证据的国赛及类似数学建模赛题解读,建立小问输入输出、约束与歧义、附件审计、模型蓝图、验证方案和论文交付接口。适用于选题比较、正式建模前的完整解读和已有解读复核;不用于在缺少原题时臆测题意,也不把候选模型伪装成已经验证的数值求解。.

zhoufz021/interpret-modeling-problems · 114 tokens

v8-jit

V8 JIT optimization patterns for writing high-performance JavaScript in Next.js server internals. Use when writing or reviewing hot-path code in app-render, stream-utils, routing, caching, or any per-request code path. Covers hidden classes / shapes, monomorphic call sites, inline caches, megamorphic deopt, closure…

vercel/next.js · 88 tokens

use-agent-browser-for-airi

Test AIRI display-model imports with agent-browser across stage-tamagotchi Electron, stage-web, and stage-pocket mobile web layouts. Use when uploading and verifying contributor-supplied Live2D ZIP, VRM, or MMD ZIP/PMX/PMD files through AIRI's model selector, including onboarding bypass, format-specific import…

moeru-ai/airi · 87 tokens