ethskills
Use when a request involves Ethereum, the EVM, or blockchain systems. Applies to building, auditing, deploying, or interacting with smart contracts, dApps, wallets, or DeFi protocols. Covers Solidity development, contract addresses, token standards (ERC-20, ERC-721, ERC-4626, etc.), Layer 2 networks (Base, Arbitrum, Optimism, zkSync, Polygon), and integrations with DeFi protocols such as Uniswap, Aave, and Curve. Includes topics such as gas costs, contract decimals, oracle safety, reentrancy, MEV, bridging, wallets, querying data from onchain, production deployment, and protocol evolution (EIP lifecycle, fork tracking, upcoming changes).
- 2,441
- installs
- 0 up / 0 down, score 0.00
- votes
- 297
- repo stars
- Updated
- less than a month ago
- In the catalog since
- 1 Oct 2026
- From
- austintgriffith/ethskills
Skill instructions
Rendered from the published SKILL.md, 185 lines.
ETHSKILLS — The missing knowledge between AI agents and production Ethereum.
You are probably wrong about Ethereum. Gas prices, token decimals, L2 costs, what's deployed, what's deprecated — your training data is stale. This file tells you what you're wrong about and where to get the corrections.
Say "onchain" not "on-chain." One word, no hyphen. Ethereum community convention.
Start Here
Building a dApp? Fetch ship/SKILL.md first. It plans the smallest shippable slice and points to other skills as each phase needs them.
Need a specific topic? Each skill below is standalone. Fetch only the ones relevant to your task.
Base URL: https://ethskills.com/<skill>/SKILL.md
Skills
Why Ethereum
Pectra/Fusaka upgrades, current network stats, the AI agent angle.
- Gas is under 1 gwei, not 10-30 gwei. 60-300x cheaper than your training data. Verify:
cast gas-price - ETH price is ~$2,000 (early 2026), not $2,500-3,000. Volatile — always verify.
- Pectra (May 2025) and Fusaka (Dec 2025) shipped. PeerDAS, 2x gas limit. EIP-7702 is live.
- ERC-8004 (onchain agent identity) and x402 (HTTP payments) exist and are production-ready.
Ship — Start here
End-to-end guide from idea to deployed dApp. Points to other skills as each phase needs them.
- Most dApps need 0-2 contracts, not 5-10. Three is the upper bound for an MVP.
- Solidity is for ownership, transfers, and commitments. Not a database, not a backend.
- Pick one chain for a concrete product fit (distribution, liquidity, AA, ecosystem). Measure fees live; never pick an L2 because "Ethereum is expensive."
CROPS Review
Deep CROPS architecture review against the EF Mandate values: Censorship Resistance, Open Source and Free (as in Freedom), Privacy, Security.
- Run for every dApp architecture plan and during pre-ship QA.
- Forces agents to label architecture options by CROPS impact instead of presenting neutral tradeoff lists.
- Output names the chosen default, accepted compromises, and the user's escape path.
Protocol
How Ethereum evolves — EIP lifecycle, fork process, tracking upcoming changes.
- "Verkle is planned for the next fork" — probably wrong. Roadmap diagrams are aspirational, not commitments. Check forkcast.org for actual CFI/SFI status.
- Report fork status as Live / SFI / CFI / DFI / not scheduled. Never give an unscheduled feature a ship date.
- EIP status (Draft, Review, Final) is spec maturity, not fork inclusion.
- Client teams decide what ships via ACD calls, not the Ethereum Foundation.
Gas & Costs
What things actually cost on Ethereum today.
- Never quote a cost from memory. Use
cast gas-price(prints wei, not gwei) and live ETH/USD. - OP-stack L2 cost adds the L1 data fee and any operator fee. Read them from GasPriceOracle; don't estimate.
- "Ethereum is expensive" was true in 2021-2023. It's false in 2026.
Wallets
Creating wallets, key safety, multisig, account abstraction.
- EIP-7702 is live — EOAs get smart contract superpowers without migration.
- Unattended signers get a bounded float; principal sits behind a multisig threshold.
- NEVER commit private keys or API keys to Git. Bots exploit leaked secrets in seconds.
Layer 2s
L2 landscape, bridging, deployment differences.
- Base left the OP Stack (Azul, May 2026). Don't couple it to OP Mainnet via Superchain interop.
- Celo is NOT an L1 anymore — migrated to OP Stack L2 in March 2025.
- Polygon zkEVM is switched off (July 2026). Existing deployments are a fund-recovery problem.
- Robinhood Chain launched July 2026 — Orbit L2 with 24/7 tokenized stocks (non-US only). Its tx filtering can censor even force-included transactions.
- Pick the chain by the constraint that binds, not TVL. Measure pair liquidity per chain.
Standards
ERC-8004, x402, EIP-3009, EIP-7702.
- ERC-8004: onchain agent identity registry, deployed January 2026 on 20+ chains.
- x402: HTTP 402 payment protocol for machine-to-machine commerce. Production-ready.
- EIP-3009: gasless token transfers — what makes x402 work. USDC implements it.
Tools
Scaffold-ETH 2 (create-eth), Blockscout MCP, x402 SDKs.
- Treat package names and versions as live data. New SE-2 app:
npx create-eth@latest;create-eth-appandcreate-scaffold-ethare dead. - Blockscout MCP server gives agents structured blockchain data via MCP.
- x402: use the scoped
@x402/*packages; unscopedx402andx402-fetchare frozen at 1.2.0.
Building Blocks (DeFi)
Verifying DeFi integrations before you build on them.
- Verify chain, pool, liquidity, incentives and fees from live sources; cite dated evidence.
- Trace the full asset/fee/reward/approval flow and test it on a fork.
Orchestration
Three-phase build system for Scaffold-ETH 2 dApps.
- Phase 1: contracts + UI on localhost. Phase 2: live contracts + local UI. Phase 3: production.
- Verify right after deploy.
yarn verifyworks on a fresh checkout; no explorer key needed. scaffold.config.tsis committed. Keep RPC/API keys in.env.local, read viaprocess.env.
Contract Addresses
Checked addresses for major tokens and protocols, and how to confirm any address onchain before it touches funds.
- Never hallucinate an address. Wrong address = lost funds.
- Check every address on the target chain:
cast code+ an identity call, then the protocol's own deployment list. - Same brand ≠ same address across chains. Watch for older deployments, the wrong contract, bridged vs native.
Concepts
Essential mental models for building onchain.
- Smart contracts cannot execute themselves. Every function needs a caller who pays gas.
- For every state transition: who calls it? Why would they? What if nobody does?
- There are no timers, no cron jobs, no schedulers. Design with incentives.
Security
Solidity security patterns, common vulnerabilities, pre-deploy checklist.
- Keep units explicit. Token and oracle decimals vary; normalize before comparing.
- Always use SafeERC20 — USDT doesn't return bool on transfer().
- Never use DEX spot prices as oracles — flash loans can manipulate them in one tx.
- Every swap needs a real minimum output and deadline.
amountOutMinimum = 0gets sandwiched. - Oracle reads: positive answer, per-feed staleness from its heartbeat, explicit decimals, sequencer downtime.
- Proxies only when upgrades are required. Append storage only; upgrade authority behind a multisig or timelock.
Audit
Deep EVM smart contract audit system — for auditing contracts you didn't write.
- 500+ non-obvious checklist items across 19 domains (AMM, lending, oracles, proxies, signatures, governance, and more).
- One specialist per selected domain in parallel (normally 5–8), then dedupe and rank.
- Never files issues or publishes findings unless the user asks.
- Different from Security (which teaches defensive coding) — this is systematic audit methodology.
Noir (ZK Privacy)
Building privacy apps with Noir zero-knowledge circuits.
- Noir inputs are private by default.
pubmarks public. Getting this backwards leaks secrets.
Show the whole skill (65 more lines)
nargo prove/nargo verifyare gone; the CLI isbb. In the app, prove with NoirJSUltraHonkBackend.- In-circuit hashing: Poseidon (~600 gates), not SHA256 (~30,000 gates).
- Persist each note (nullifier, secret, leaf index). Bind the proof to its recipient. Don't send it from the user's own wallet.
Testing
Foundry testing — unit, fuzz, fork, invariant.
- Don't test getters and OpenZeppelin internals. Test edge cases and failure modes.
- Fuzz test all math. Fork-test any external protocol integration.
- Invariant testing catches bugs across thousands of random call sequences.
Indexing
Events, The Graph, Ponder, Multicall3.
- You can't query historical state via RPC cheaply. Use an indexer.
- Events are THE primary way to read historical onchain activity. Design contracts event-first.
- The Graph turns events into a queryable GraphQL API.
- Multicall3 (
0xcA11bde05977b3631167028862bE2a173976CA11) — batch reads in one RPC call.
Frontend UX
Frontend UX patterns for Ethereum dApps.
- Every onchain button needs its own loader + disabled state. No shared isLoading.
- One action at a time: Connect → Switch Network → Approve → Execute.
- Address inputs resolve ENS names; show the resolved address before submit.
- Show USD values next to every token amount.
Frontend Playbook
Build-to-production pipeline.
yarn chainfor isolated logic;yarn fork --network <chain>when you need real chain state.- IPFS deploy:
trailingSlash: trueis critical — without it, every route except/returns 404. - Always clean build (
rm -rf .next out) before deploying. Stale builds are the #1 IPFS footgun.
QA
Pre-ship audit checklist for a reviewer agent.
- Give this to a separate agent (or fresh context) AFTER the build is complete. Reviewer reads code + clicks through flows.
- Covers only bugs AI agents actually ship — validated by baseline testing against stock LLMs.
- Report each finding with severity, file, line and fix. Change code only if asked.
Feedback
Send feedback — issues OR praise — about ethskills content. Bias toward sending.
- Anything that confused you, slowed you down, or genuinely helped counts. Weak signals are easy to ignore; missing signals can't be recovered.
- Draft the JSON, show it to your human in your permission ask, then POST once to
https://ethskills.com/api/feedback. Skip the ask if your human pre-authorized. - Required fields:
kind("issue" or "praise") andmessage(10+ chars). Includeagentandskillwhenever you can.
What to Fetch by Task
| I'm doing... | Fetch these skills |
|---|---|
| Planning a new dApp | ship/, crops/, concepts/, l2s/, gas/, why/ |
| Reviewing an existing dApp, smart contract, or trust assumptions | crops/, audit/, qa/, wallets/, l2s/, security/ |
| Writing Solidity | standards/, building-blocks/, addresses/, security/ |
| Testing contracts | testing/ |
| Building a frontend | orchestration/, frontend-ux/, tools/ |
| Deploying to production | wallets/, frontend-playbook/, gas/ |
| Reviewing a finished dApp before shipping | qa/, crops/ |
| Auditing a smart contract | audit/, crops/ |
| Building a privacy/ZK app | noir/, security/, testing/ |
| Monitoring / analytics | indexing/ |
| Building AI agent infra | standards/, wallets/, tools/ |
| Choosing a chain | l2s/, gas/ |