DAMM v2 token launch with Alpha Vault FCFS: mint → pool → alpha vault → distribute → deposit → fill → claim.
npm install
cp .env.example .env
# Fill .env (WALLET_SECRET_KEY, DISTRIBUTION_*, etc.)npm run run:fullRuns all steps and waits automatically for deposit/fill windows. Leave it running; total ~2–3h depending on POOL_ACTIVATION_POINT_TS.
| Step | Command | Description |
|---|---|---|
| 1 | npm run mint:token |
Create token mint + metadata |
| 2 | npm run launch:with-alpha-vault |
Pool + Alpha Vault in one |
| 3 | npm run distribute:and:deposit |
Distribute → wait for deposit window → deposit |
| 4 | npm run fill:vault |
Wait for fill window → fill (retries on blockhash expiry) |
| 5 | (automatic) | Pool activates at POOL_ACTIVATION_POINT_TS |
| 6 | npm run claim:tokens |
After lock-up: each wallet claims |
npm run wait:deposit:then:fill– When funds already distributed, wait for deposit window → deposit → fillnpm run distribute:funds– Distribute only (no deposit)npm run deposit:to-vault– Deposit only (run when deposit window is open)npm run listen:pool– Stream pool events via Helius LaserStream gRPC (transactions + account updates)
POOL_ACTIVATION_POINT_TS– seconds until pool activation (10800 = 3h, mainnet-safe; 4200 = 70 min if usinglaunch:with-alpha-vault)CONNECT_ALPHA_VAULT_POOL– set true to create Alpha Vault–connected pool
ALPHA_FCFS_DEPOSIT_PERIOD_SEC– deposit window (default 300)ALPHA_FCFS_LOCK_UP_PERIOD_SEC– minimum lock-up (default 86400 = 1 day)ALPHA_FCFS_VESTING_PERIOD_SEC– optional vesting; if unset, claim all at onceALPHA_FCFS_MAX_DEPOSITING_CAP_RAW– total cap (lamports/SOL or 6 decimals/USDC)
LASERSTREAM_API_KEY– Helius API key (Developer/Business plan for devnet; Professional for mainnet)- Pool from
TARGET_POOL_ADDRESS(preferred),POOL_ADDRESS, orLAUNCH_STATE_PATH POOL_EVENTS_OUTPUT_PATH– JSONL file (one event per line) with swap/add/remove classification
DISTRIBUTION_WALLET_COUNT– number of wallets to createDISTRIBUTION_TOTAL_DEPOSIT_RAW– total amount to distributeDISTRIBUTION_RANDOMIZE_AMOUNTS– randomize per-wallet amountsDISTRIBUTION_WALLET_SOL_FEE_BUFFER_LAMPORTS– SOL buffer per wallet for feesMAIN_WALLET_FEE_RESERVE_LAMPORTS– SOL to keep in main wallet
data/latest-token-mint.json– token mint infodata/latest-pool.json– pool address,poolActivationPointTsdata/latest-alpha-vault.json– vault address,depositingPoint,startVestingPoint, etc.data/latest-launch-state.json– combined state for all stepsdata/distribution-wallets.keystore.json– generated wallets (private keys; store securely)