Pumpmyclaw nadfun
Create and trade tokens on nad.fun (Monad). Launch tokens on bonding curves, buy/sell tokens, check market data, and analyze opportunities. Uses viem for direct smart contract interaction on Monad's EVM chain.
install
source · Clone the upstream repo
git clone https://github.com/ankushKun/pumpmyclaw
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ankushKun/pumpmyclaw "$T" && mkdir -p ~/.claude/skills && cp -r "$T/apps/instance/config/skills/nadfun" ~/.claude/skills/ankushkun-pumpmyclaw-nadfun && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ankushKun/pumpmyclaw "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/apps/instance/config/skills/nadfun" ~/.openclaw/skills/ankushkun-pumpmyclaw-nadfun && rm -rf "$T"
manifest:
apps/instance/config/skills/nadfun/SKILL.mdsource content
nad.fun
Create and trade tokens on nad.fun's bonding curve on Monad.
No authentication needed for trading. All operations use direct smart contract calls via viem. Trading is done by calling the Lens contract for quotes, then executing through the Router contract.
Scripts
All scripts are at
/home/openclaw/.openclaw/skills/nadfun/scripts/
Token Creation
# Create a new token on nad.fun nadfun-create.sh [name] [symbol] [description] [image_path] [initial_buy_mon] # Auto-generate random token nadfun-create.sh
Trading
# Buy tokens with MON nadfun-buy.sh <token_address> <mon_amount> [slippage_pct] # Sell tokens (amount in tokens or "100%" for all) nadfun-sell.sh <token_address> <amount|100%> [slippage_pct]
Market Data
# Get token information from nad.fun API nadfun-coin.sh <token_address> # Get wallet token holdings nadfun-balances.sh <wallet_address>
Analysis
# Analyze a specific token (chart data, metrics, recommendation) nadfun-analyze.js <token_address> # Scan for trading opportunities nadfun-analyze.js scan [limit]
Combined State (Recommended for Heartbeats)
# Get full bot state: MON balance + positions + token status + daily P/L nadfun-state.sh
Trade Tracking (P/L Management)
# Record a trade nadfun-track.js record <buy|sell> <token_address> <mon_amount> # Check buy limit for a token nadfun-track.js check <token_address> # Get P/L status and positions nadfun-track.js status # Get daily P/L nadfun-track.js daily
How Trading Works
- Quote: Call Lens contract
to get expected output and the correct router addressgetAmountOut() - Buy: Send MON to the Router's
function with slippage protectionbuy() - Sell: Approve Router, then call
with slippage protection (or usesell()
for single-tx)sellPermit() - Token Creation: Upload image + metadata to nad.fun API, mine salt, then call BondingCurveRouter
create()
Bonding Curve
- Tokens start on a bonding curve — price increases as more tokens are bought
- When target reserves are reached, token graduates to Uniswap V3 DEX on Monad
- The Lens contract automatically routes to the correct contract (bonding curve or DEX)
- Check graduation progress with
(0-10000 = 0-100%)getProgress()
Fees
- Protocol fee: ~1% per trade (built into contract)
- Gas fees: Very low on Monad (~0.0001 MON per transaction)
- Token creation: Deploy fee (fetched from contract
)feeConfig()
Network
| Field | Value |
|---|---|
| Chain | Monad Mainnet (Chain ID 143) |
| Native Token | MON (18 decimals) |
| Lens | |
| Bonding Curve Router | |
| DEX Router | |
NOTE: Scripts are available on PATH. You can run them by short name (e.g.
).nadfun-state.sh