MoltMoon 加密启动器
针对 @moltmoon/sdk V2 的完整、已为 OpenClaw 准备就绪的操作技能。用于当代理需要在 Base 主网对 MoltMoon SDK 或 CLI 进行端到端的安装、配置与运行时,包括上线演练、元数据/图片验证、实时代币上线、报价核查、买入、卖出、奖励领取、迁移、故障排查和安全生产运行手册。
作者:Chillbruhhh · 最新版本:1.0.2
收藏:2 · 下载:1.4k
说明文档
# MoltMoon SDK Skill (OpenClaw) - V2
Use this skill to operate the MoltMoon SDK/CLI as a complete agent workflow on Base mainnet.
## V2 Economics Overview
MoltMoon V2 uses **MoltTokenV2** (SafeMoon-style reflection tokens) with **BondingCurveMarketV2** bonding curves:
| Parameter | Value |
|-----------|-------|
| Total supply | 1B tokens per launch |
| Buy fee | 0% |
| Sell fee | 5% (1% holder reflections + 2% creator + 2% treasury) |
| Curve allocation | 80% on bonding curve, 20% reserved for LP |
| Virtual base | $3,000 USDC |
| Min seed (normal) | $20 USDC |
| Platform cut | 10% of seed to treasury |
| Graduation | At 95% of curve tokens sold (avoids asymptotic pricing) |
| LP lock | 180 days on Aerodrome after graduation |
| Creator upfront | Seed-scaled share from curve bucket (capped 20%) |
**Reflection mechanics**: Every sell triggers 1% redistribution to all token holders (SafeMoon rOwned/tOwned). 4% is auto-swapped to USDC and split 50/50 between creator and treasury. Buys and wallet-to-wallet transfers are tax-free.
**Post-graduation**: After graduating to Aerodrome DEX, the sell tax continues via multi-DEX pair detection. LP is time-locked for 180 days.
## Install
Use one of these paths:
```bash
npm install @moltmoon/sdk
```
or run without install:
```bash
npx -y @moltmoon/sdk moltlaunch --help
```
## Runtime Configuration
Set environment variables before any write action:
```env
MOLTMOON_API_URL=https://api.moltmoon.ai
MOLTMOON_NETWORK=base
MOLTMOON_PRIVATE_KEY=0x... # 32-byte hex key with 0x prefix
```
Notes:
- `MOLTMOON_NETWORK` supports `base` only.
- `MOLTMOON_PRIVATE_KEY` (or `PRIVATE_KEY`) is required for launch/buy/sell/claim.
## Supported CLI Commands
Global options:
- `--api-url <url>`
- `--network base`
- `--private-key <0x...>`
Commands:
- `launch` Launch token (with metadata/image/socials, includes approval + create flow)
- `tokens` List tokens
- `buy` Approve USDC + buy in one flow
- `sell` Approve token + sell in one flow
- `quote-buy` Fetch buy quote only (0% fee)
- `quote-sell` Fetch sell quote only (shows 5% fee deducted)
- `rewards-earned` Check unclaimed USDC rewards for a wallet
- `rewards-claim` Claim unclaimed USDC rewards (requires signer)
- `migration-status` Check V1 to V2 migration status
- `migrate` Migrate V1 tokens to V2 (approve + migrate flow)
## Canonical CLI Runbooks
### 1) Dry-run launch first (no chain tx)
```bash
npx -y @moltmoon/sdk mltl launch \
--name "Agent Token" \
--symbol "AGT" \
--description "Agent launch token on MoltMoon" \
--website "https://example.com" \
--twitter "https://x.com/example" \
--discord "https://discord.gg/example" \
--image "./logo.png" \
--seed 20 \
--dry-run \
--json
```
### 2) Live launch
```bash
npx -y @moltmoon/sdk mltl launch \
--name "Agent Token" \
--symbol "AGT" \
--description "Agent launch token on MoltMoon" \
--seed 20 \
--json
```
### 3) Trade flow
```bash
# Buy (0% fee)
npx -y @moltmoon/sdk mltl quote-buy --market 0xMARKET --usdc 1 --json
npx -y @moltmoon/sdk mltl buy --market 0xMARKET --usdc 1 --slippage 500 --json
# Sell (5% fee: 1% reflection + 2% creator + 2% treasury)
npx -y @moltmoon/sdk mltl quote-sell --market 0xMARKET --tokens 100 --json
npx -y @moltmoon/sdk mltl sell --market 0xMARKET --token 0xTOKEN --amount 100 --slippage 500 --json
```
### 4) Rewards flow ($MOLTM holders)
```bash
# Check earned USDC rewards
npx -y @moltmoon/sdk mltl rewards-earned --pool 0xPOOL --account 0xWALLET --json
# Claim rewards
npx -y @moltmoon/sdk mltl rewards-claim --pool 0xPOOL --json
```
### 5) V1 to V2 migration
```bash
# Check migration status
npx -y @moltmoon/sdk mltl migration-status --json
# Migrate tokens (approve + swap)
npx -y @moltmoon/sdk mltl migrate --amount 1000 --json
```
## SDK API Surface
Initialize:
```ts
import { MoltmoonSDK } from '@moltmoon/sdk';
const sdk = new MoltmoonSDK({
baseUrl: process.env.MOLTMOON_API_URL || 'https://api.moltmoon.ai',
network: 'base',
privateKey: process.env.MOLTMOON_PRIVATE_KEY as `0x${string}`,
});
```
Read methods:
- `getTokens()` - List all launched tokens
- `getMarket(marketAddress)` - Full market details (V2: includes `holderRewardsPool`, `aerodromePool`, `virtualBase`, `liquidityTokens`, `creator`, `usdc`)
- `getQuoteBuy(marketAddress, usdcIn)` - Buy quote (0% fee)
- `getQuoteSell(marketAddress, tokensIn)` - Sell quote (5% fee deducted)
Launch methods:
- `prepareLaunchToken(params)` -> metadata URI + intents only (dry-run)
- `launchToken(params)` -> executes approve + create
Trade methods:
- `buy(marketAddress, usdcIn, slippageBps?)` - Approve USDC + buy
- `sell(marketAddress, tokensIn, tokenAddress, slippageBps?)` - Approve token + sell
Rewards methods:
- `getRewardsEarned(poolAddress, account)` - Check unclaimed USDC
- `claimRewards(poolAddress)` - Claim USDC rewards
Migration methods:
- `getMigrationStatus()` - V1/V2 migration state
- `migrate(v1Amount)` - Approve V1 + migrate to V2
Utility methods:
- `calculateProgress(marketDetails)` - Graduation progress %
- `calculateMarketCap(marketDetails)` - Market cap in USDC
## MarketDetails V2 Fields
The `getMarket()` response now includes:
```ts
interface MarketDetails {
market: string;
token: string;
usdc: string; // USDC contract address
graduated: boolean; // true after 95% sold
curveTokensRemaining: string;
baseReserveReal: string; // real USDC in curve
totalBaseReserve: string; // virtual + real
virtualBase: string; // $3,000 USDC virtual
liquidityTokens: string; // reserved for Aerodrome LP
sellFeeBps: number; // 500 (5%)
creator: string; // token creator address
holderRewardsPool: string; // $MOLTM rewards pool
aerodromePool: string | null; // DEX pool after graduation
progressPercent: number; // 0-95 (graduates at 95)
}
```
## Launch Metadata + Image Rules
Enforce these before launch:
- Image must be PNG or JPEG
- Max size 500KB (`<=100KB` recommended)
- Dimensions must be square, min `512x512`, max `2048x2048`
- Social links must be valid URLs
- Seed for normal launch must be at least `20` USDC
## Failure Diagnosis
- `Missing private key`
- Set `MOLTMOON_PRIVATE_KEY` or pass `--private-key`.
- `Unsupported network`
- Use `base` only.
- `transfer amount exceeds allowance`
- Re-run buy/sell/launch flow so approvals execute.
- `transfer amount exceeds balance`
- Fund signer with Base ETH (gas) and USDC/token balance.
- `graduated`
- Market has graduated to Aerodrome. Trade on DEX directly.
- `slippage`
- Increase `--slippage` bps or reduce trade size.
- `curve`
- Not enough tokens remaining on curve for requested buy.
- `threshold`
- Graduation threshold not yet met (need 95% sold).
- `ERR_NAME_NOT_RESOLVED` or fetch errors
- Check `MOLTMOON_API_URL` DNS and API uptime.
- image validation errors
- Fix file type/size/dimensions to rules above.
## Operator Policy
- Run dry-run before every first live launch for a new token payload.
- Confirm signer address and chain before write calls.
- Keep secrets in `.env`; never commit keys.
- Record tx hashes after launch/buy/sell/claim for audit trail.
- Graduation is automatic at 95% curve sold - no manual trigger needed.
- After graduation, tokens trade on Aerodrome with continued 5% sell tax.
- $MOLTM holders earn passive USDC from ALL platform sell activity via HolderRewardsPool.