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 nirholas/three.ws --skill swapgit 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/swap)<a href="https://agentmods.dev/skills/nirholas/three.ws/swap"><img src="https://agentmods.dev/badge/skills/nirholas/three.ws/swap/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/nirholas/three.ws/swap"><img src="https://agentmods.dev/badge/skills/nirholas/three.ws/swap.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 89 Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.Fix: Restrict tool access to only the tools required for the skill's stated purpose. Use an explicit allowlist rather than granting blanket access.
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.00055 | $0.05285 |
| Opus 5.5 | $0.00022 | $0.02114 |
| Sonnet 5.5 | $0.00011 | $0.01057 |
| Haiku 4.5 | $0.00006 | $0.00528 |
Grade B, and why
swap 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 1mo 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.
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 (`--slippage`, `--compute-units`, `--priority-micro-lamports`, `--front-runner-protection`, `--tip-sol`, `--pool` vs `--mint` for AMM, 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 — 427 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 / user)
- Framework confirmed (Next.js, Express, CLI scripts only, other)
- Operation type confirmed (buy or sell)
- Coin mint address provided
- Amount confirmed (SOL lamports for buy; token smallest units for sell)
- Front-runner protection desired? If yes, confirm tip amount (default 0.0001 SOL). Transactions will be sent only to Jito block engine endpoints.
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 swap transactions instead of running scripts directly. The API automatically determines coin state (bonding curve vs AMM) and builds the correct transaction.
POST /agents/swap
Builds a buy or sell transaction. Set inputMint to So11111111111111111111111111111111111111112 (NATIVE_MINT) for buys, or set outputMint to NATIVE_MINT for sells.
Request body:
{
"inputMint": "So11111111111111111111111111111111111111112",
"outputMint": "<TOKEN_MINT>",
"amount": "1000000",
"user": "<PUBKEY>",
"slippagePct": 2,
"feePayer": "<PUBKEY>",
"frontRunningProtection": false,
"tipAmount": 0,
"encoding": "base64"
}
Only inputMint, outputMint, amount, and user are required. All other fields have defaults.
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 380 B runs code
- manifest.json 313 B
- package-lock.json 38 KB
- package.json 793 B
- README.md 3.3 KB
- scripts/build-buy-amm-tx.mjs 5.2 KB runs code
- scripts/build-buy-bonding-tx.mjs 5.3 KB runs code
- scripts/build-sell-amm-tx.mjs 5.1 KB runs code
- scripts/build-sell-bonding-tx.mjs 4.8 KB runs code
- scripts/fetch-coin.mjs 1.4 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
- scripts/print-balances.mjs 3.2 KB runs code
- tools.json 1.5 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.
- 1mo ago First seen · 427 lines · 55 tokens per session scan B 590e59177bfc
swap is a skill published in the GitHub repository nirholas/three.ws (250 stars, last pushed yesterday), licensed Apache-2.0. It adds 55 tokens to every session and 5,285 once invoked, about $0.0002 per session on Opus 5.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
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…
swapper-deposit
Deposit and bridge funds into a wallet or protocol using Swapper Finance. Handles fiat on-ramp (card payments via Mastercard, Visa, Apple Pay, Google Pay), crypto transfers, and cross-chain bridging via Chainlink CCIP — directly into lending, staking, and liquidity protocols. Supports Ethereum, Base, Arbitrum…
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…
crypto-report
Analyze cryptocurrency projects with tokenomics, on-chain metrics, and market analysis. Generate comprehensive crypto research reports.
chord-swap
Swap tokens safely at the best route through Chord (getchord.xyz), a DEX aggregator, on Ethereum, Base, Arbitrum, BNB Chain, Avalanche, Monad, Robinhood Chain (tokenized stocks such as NVDA, TSLA) and Arc, plus Solana. Finds the right token, checks it for honeypots and taxes, quotes the best route, waits for the…
coinmarketcap
Expert assistant for CoinMarketCap Pro API — price quotes, listings, historical OHLCV, market metrics, Fear & Greed Index, CMC100/CMC20 indices, exchange data, DEX data, airdrops, trending, community sentiment. Covers 10+ endpoint categories across REST + MCP + x402 pay-per-call modes. Use when the user wants: current…