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 ethereum-wallet-toolkit-guidegit 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/ethereum-wallet-toolkit-guide)<a href="https://agentmods.dev/skills/nirholas/three.ws/ethereum-wallet-toolkit-guide"><img src="https://agentmods.dev/badge/skills/nirholas/three.ws/ethereum-wallet-toolkit-guide.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
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.00063 | $0.01267 |
| Opus 5 | $0.00032 | $0.00633 |
| Sonnet 5 | $0.00013 | $0.00253 |
| Haiku 4.5 | $0.00006 | $0.00127 |
Grade A, and why
ethereum-wallet-toolkit-guide scanned grade A with 0 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 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ethereum Wallet Toolkit Guide
Python toolkit for Ethereum wallets: CLI tools + MCP servers for wallet generation, BIP39/BIP44 HD wallets, keystores, and typed data signing. Designed for offline use.
Core Features
| Feature | Description | Offline |
|---|---|---|
| Wallet Generation | Create new Ethereum wallets | ✅ |
| BIP39 Mnemonics | 12/24-word seed phrases | ✅ |
| BIP44 HD Wallets | Derive multiple addresses from one seed | ✅ |
| Keystores | Web3 Secret Storage V3 encryption | ✅ |
| EIP-712 Signing | Typed structured data signing | ✅ |
| Vanity Addresses | Custom-prefix wallet addresses | ✅ |
| MCP Server | AI agent interface for all features | ✅ |
Quick Start
pip install ethereum-wallet-toolkit
Wallet Generation
Create a New Wallet
ethereum-wallet create
# Output:
# Address: 0x742d35Cc6634C0532925a3b844Bc...
# Private Key: 0x4c0883a69102937d62...
# Mnemonic: abandon ability able about above...
From Mnemonic (BIP39)
from ethereum_wallet_toolkit import Wallet
wallet = Wallet.from_mnemonic(
"abandon ability able about above absent absorb abstract absurd abuse access accident"
)
print(wallet.address) # 0x...
print(wallet.private_key) # 0x...
HD Wallet Derivation (BIP44)
from ethereum_wallet_toolkit import HDWallet
hd = HDWallet.from_mnemonic("your 12 words here")
# Derive multiple addresses
for i in range(5):
child = hd.derive(f"m/44'/60'/0'/0/{i}")
print(f"Address {i}: {child.address}")
Standard Ethereum derivation path: m/44'/60'/0'/0/index
Keystores (Web3 Secret Storage V3)
Create Keystore
from ethereum_wallet_toolkit import Keystore
# Encrypt private key with password
keystore = Keystore.encrypt(
private_key="0x4c0883a69102937d...",
password="my-strong-password"
)
# Save to file
keystore.save("./my-keystore.json")
Decrypt Keystore
wallet = Keystore.decrypt("./my-keystore.json", "my-strong-password")
print(wallet.private_key)
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 · 182 lines · 63 tokens per session scan A 2c18710b806f
ethereum-wallet-toolkit-guide is a skill published in the GitHub repository nirholas/three.ws (111 stars, last pushed yesterday), licensed Apache-2.0. It adds 63 tokens to every session and 1,267 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. 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-cross-chain
Cross-chain protocols, IBC, LayerZero, Wormhole, Axelar, CCIP, bridges, atomic composability, shared sequencer, cross-chain message passing. Covers trust models (light clients, external validators, ZK proofs), bridge security, token representation (canonical, wrapped, native), relayer economics, and cross-chain…
blockchain-testing
Use this skill when asked about testing smart contracts, Foundry tests, Hardhat tests, fuzz testing, invariant testing, property-based testing, formal verification, audit preparation, integration testing for dApps, and blockchain testing patterns. Covers Foundry cheatcodes, Echidna fuzzing, Certora verification…
xpr-network-dev
XPR Network (formerly Proton) blockchain development - proton-tsc smart contracts, @proton CLI and web SDK, RPC and Hyperion queries, DeFi (MetalX, Alcor, LOAN), NFTs, the XPR Agents job board, node and Hyperion operations. Use for anything mentioning XPR, Proton, or @proton packages.
blockchain-management
Use this skill when asked about blockchain project management, DAO governance, multi-sig operations, treasury management, tokenomics design, and web3 project methodology. Languages: Solidity, TypeScript, Python. Covers DAO governance frameworks (Compound Governor, Aave, Snapshot, Tally), multi-sig wallet operations…
modernize-move
Detects and modernizes outdated Move V1 syntax, patterns, and APIs to Move V2+. Use when upgrading legacy contracts, migrating to modern syntax, or converting old patterns to current best practices. NOT for writing new contracts (use write-contracts) or fixing bugs.
write-contracts
Generates secure Aptos Move V2 smart contracts with Object model, Digital Asset integration, security patterns, and storage type guidance. Includes comprehensive storage decision framework for optimal data structure selection. Triggers on: 'write contract', 'create NFT collection', 'build marketplace', 'implement…