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/nirholas/three.ws/coin-feesnpx skills add nirholas/three.ws --skill coin-feesgit clone --depth 1 https://github.com/nirholas/three.wsWrote 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/nirholas/three.ws/coin-fees)<a href="https://agentmods.dev/skills/nirholas/three.ws/coin-fees"><img src="https://agentmods.dev/badge/skills/nirholas/three.ws/coin-fees.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.00072 | $0.05764 |
| Opus 5 | $0.00036 | $0.02882 |
| Sonnet 5 | $0.00014 | $0.01153 |
| Haiku 4.5 | $0.00007 | $0.00576 |
Grade B, and why
coin-fees 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 yesterday.
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.
Unrestricted tool accessmediumExcessive agency
A wildcard tool grant or "run any command" leaves no least-privilege boundary at all.
- Run any script with `--help` for full flags (`--compute-units`, `--priority-micro-lamports`, `--front-runner-protection`, `--tip-sol`, etc.). Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
fetch(url, { How it starts
The opening of the file, as written. The whole thing — 458 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Before Starting Work Critical - Ask these from user
MANDATORY — Do NOT write or modify any code until every item below is answered by the user:
- RPC URL provided or a fallback agreed upon (for any on-chain or tx-building step)
- Signer wallet public key (fee payer / crank caller)
- Framework confirmed (Next.js, Express, CLI scripts only, other)
- Coin mint address provided
- Operation type confirmed: inspect fee destination, collect (crank) fee, distribute shared fees, check distributable amount, or create/update sharing config
You MUST ask the user for ALL unchecked items in your very first response. Do not assume defaults. Do not proceed until the user has explicitly answered each one.
API (preferred) — https://fun-block.pump.fun
Use the API to build fee transactions instead of running scripts directly. The API handles account resolution, sharing config detection, and graduation status automatically.
POST /agents/collect-fees
Builds a transaction to collect or distribute creator fees. Automatically detects whether the coin uses a sharing config and builds the appropriate transaction (collect for direct creator, distribute for sharing config).
Request body:
{
"mint": "<TOKEN_MINT>",
"user": "<PUBKEY>",
"frontRunningProtection": false,
"tipAmount": 0,
"encoding": "base64"
}
Only mint and user are required.
tipAmountis a Jito tip in SOL (e.g.0.0001for 100,000 lamports). Only relevant whenfrontRunningProtectionistrue.
Encoding: The API defaults to
"base58"encoding. Always pass"encoding": "base64"in the request body — scripts already output base64. When sending the signed transaction to an RPC or Jito endpoint, the encoding used to serialize the transaction must match theencodingparameter passed in the send call. Mismatched encodings will cause transaction failures. Always explicitly passencoding: "base64"insendTransaction/simulateTransactionRPC calls — never rely on the RPC's default.
What ships with it
21 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.
- .gitignore 14 B
- handlers.js 765 B runs code
- manifest.json 345 B
- package-lock.json 39 KB
- package.json 763 B
- README.md 3.2 KB
- scripts/build-collect-fee-tx.mjs 5.4 KB runs code
- scripts/build-distribute-fees-tx.mjs 6.2 KB runs code
- scripts/build-sharing-config-tx.mjs 10 KB runs code
- scripts/fetch-coin.mjs 1.4 KB runs code
- scripts/fetch-distributable-info.mjs 7.0 KB runs code
- scripts/fetch-fee-info.mjs 5.9 KB runs code
- scripts/lib/args.mjs 1.8 KB runs code
- scripts/lib/coin-api.mjs 1.1 KB runs code
- scripts/lib/coin-resolve.mjs 1.4 KB runs code
- scripts/lib/compute.mjs 2.3 KB runs code
- scripts/lib/constants.mjs 567 B runs code
- scripts/lib/env.mjs 510 B runs code
- scripts/lib/jito.mjs 2.8 KB runs code
- scripts/lib/tx-build.mjs 2.3 KB runs code
- tools.json 1.9 KB
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.
- yesterday First seen · 458 lines · 72 tokens per session scan B 21e84de74e24
coin-fees is a skill published in the GitHub repository nirholas/three.ws (110 stars, last pushed today), licensed Apache-2.0. It adds 72 tokens to every session and 5,764 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it B with 2 findings (unrestricted tool access, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
rtc-balance
Check RustChain wallet balance, epoch info, and network status via the public RPC.
blockchain-defi
Use this skill when asked about decentralized finance, DeFi protocols, AMM mechanics, lending and borrowing protocols, perpetual futures, yield farming, liquidity mining, liquid staking, restaking, yield optimization, DeFi security, MEV, and protocol composability. Covers AMM design (Uniswap, Curve, Balancer), lending…
apex-copilot
Use this skill when the user is working on a Web3 project and needs Apex Foundation diligence tools: scoring a crypto/Web3 project for investment readiness, matching against the Apex portfolio of 200+ projects, finding relevant Web3 hackathons, matching against Web3 VC funds and investors, smart contract code review…
stablecoin-chain-explorer
Explore stablecoin TVL distribution and yield opportunities by blockchain. Query which chains have the most stablecoins, compare cross-chain yields, and find the best opportunities on Ethereum, BSC, Arbitrum, Base, Polygon, and more. Also for protocols and issuers researching where stablecoin TVL and liquidity…
gstd-sovereign
Full agent autonomy — self-sustaining economic entity that earns GSTD, manages finances, shares intelligence, recruits agents, and promotes financial independence.
crypto-report
Analyze cryptocurrency projects with tokenomics, on-chain metrics, and market analysis. Generate comprehensive crypto research reports.