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/blockrunai/clawrouter/surfnpx skills add BlockRunAI/ClawRouter --skill surfgit clone --depth 1 https://github.com/BlockRunAI/ClawRouterWrote 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/blockrunai/clawrouter/surf)<a href="https://agentmods.dev/skills/blockrunai/clawrouter/surf"><img src="https://agentmods.dev/badge/skills/blockrunai/clawrouter/surf.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00130 | $0.03654 |
| Opus 5 | $0.00065 | $0.01827 |
| Sonnet 5 | $0.00026 | $0.00731 |
| Haiku 4.5 | $0.00013 | $0.00365 |
Grade A, and why
surf scanned grade A with 1 finding 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 4d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl 'http://127.0.0.1:8402/v1/surf/wallet/detail?address=vitalik.eth' How it starts
The opening of the file, as written. The whole thing — 248 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Surf — Unified Crypto Data API (via ClawRouter)
Surf bundles 83 endpoints across 12 domains into one paid HTTP API. ClawRouter exposes them at http://127.0.0.1:8402/v1/surf/*, paid through the same x402 USDC wallet that funds LLM calls. No Surf account, no API key — settlement lands directly in Surf's Base treasury. Upstream lives at api.asksurf.ai/gateway/v1 — ClawRouter forwards transparently.
Pricing tiers (per call):
- Tier 1 — $0.001 — prices, rankings, lists, news, simple reads
- Tier 2 — $0.005 — orderbooks, candles, search, wallet details, social
- Tier 3 — $0.020 — on-chain SQL queries, structured queries, schema introspection
The legacy surf-1.5 chat surface is intentionally NOT exposed yet — it's held until per-token settlement is wired. Trying
/v1/surf/chat/completionsreturns 404 ("Unknown Surf endpoint"), no payment is taken.
All requests use GET unless the table below says otherwise. Path parameters that look like ?symbol= are query params on a GET. POST endpoints take a JSON body. ClawRouter forwards the wallet's x402 payment header transparently.
Required-param pre-check. 56 of the 83 endpoints have required query params (e.g. pair, symbol, address, chain, q, interval). The route validates them before settlement — call with missing params and you get 400 { missing_params, all_required, docs } and the wallet is NOT charged. Check each row in the catalog below for the correct param name (e.g. mindshare is q + interval, not project + window).
When to use this skill
- "What is the current BTC price?" →
/surf/market/price?symbol=BTC(cheaper + more reliable than scraping) - "Who holds the most USDC on Ethereum?" →
/surf/token/holders?address=0xA0b8...&chain=ethereum - "How many Ethereum transactions in the last hour?" →
POST /surf/onchain/sql { sql: 'SELECT count() FROM ethereum.transactions WHERE block_timestamp >= now() - INTERVAL 1 HOUR' } - "Label this list of wallets." →
/surf/wallet/labels/batch?addresses=0xabc,0xdef,... - "Is HYPE mindshare peaking?" →
/surf/social/mindshare?q=hyperliquid&interval=30d - "Find the canonical metadata for 'ethena'." →
/surf/search/project?q=ethena
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.
- 4d ago First seen · 248 lines · 130 tokens per session scan A 1a977464e6b8
surf is a skill published in the GitHub repository BlockRunAI/ClawRouter (6,578 stars, last pushed today), licensed MIT. It adds 130 tokens to every session and 3,654 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
db-browser
Install DB Browser for SQLite (if not already installed) and open a .sqlite file in it. macOS only.
dbt-expert
Expert-level dbt (data build tool), models, tests, documentation, incremental models, macros, and Jinja templating.
sql-expert
Expert-level SQL database design, querying, optimization, and administration across PostgreSQL, MySQL, and SQL Server.
postgresql-expert
Expert-level PostgreSQL database administration, advanced queries, performance tuning, and production operations.
redis-expert
Expert-level Redis for caching, pub/sub, data structures, and high-performance applications.
snowflake-expert
Expert-level Snowflake data warehouse platform, virtual warehouses, data sharing, streams, tasks, and SQL optimization.