⚙️ Woosh Configuration Guide (After Installation)
Once you’ve installed Woosh CLI, the next step is to configure it properly using the woosh.config.json
file.
📁 Where to Put the Config File
- Place
woosh.config.json
in the root directory of your project folder. - You do NOT need to run
npx create-woosh
if you already have the config file. - Woosh will automatically pick it up when you run any CLI command.
🔐 Required Fields
Before you start, you must configure the following fields:
"wallet": {
"launch_wallet_private_key": "your-launch-wallet-private-key",
"funding_wallet_private_key": "your-funding-wallet-private-key",
"profit_wallet_address": "your-profit-wallet-public-address"
}
Wallet Roles:
- Launch Wallet: Used to create token, revoke authority, create pools, and snipe.
- Funding Wallet: Used to fund intermediate/worker wallets for modules like heatup and smart-sell.
- Profit Wallet: Where the SOL from smart-sell gets collected.
🧠 You can use the same wallet for all, but it's recommended to use different wallets for each purpose.
✅ How to Run Woosh
Once the config file is in place and filled out, you can run Woosh using any of the following:
# Install globally
npm i -g woosh-cli
# Run via npx (works even without global install)
npx woosh
# Or if globally installed and environment is set
woosh
🔒 On Windows, even after global install, CLI might not be recognized. Use
npx woosh
in that case.
🧪 Sample woosh.config.json
Here’s a ready-to-use configuration you can test with:
{
"mainnet": false,
"rpc": "https://api.devnet.solana.com",
"wallet": {
"launch_wallet_private_key": "",
"funding_wallet_private_key": "",
"profit_wallet_address": ""
},
"token": {
"tokenName": "token",
"decimals": 6,
"symbol": "ticker",
"supply": "1000000000",
"image": "./logo.png",
"description": "this is a description",
"imgType": "image/png",
"imgName": "logo.png",
"telegram": "",
"twitter": "",
"website": ""
},
"pool_settings": {
"pool_token_percentage": 74,
"pool_sol_amount": 0.15,
"snipe_amount": 0.97,
"pool_lock_percentage": 100
},
"multi_wallet_settings": {
"intermediate_wallet_count": 5,
"intermediate_wallet_sol_balance": 0.5,
"active_wallet_count": 1,
"active_wallet_sol_balance": 0.5,
"enable_active_wallet_stake": false,
"active_wallet_stake_percentage": 50
},
"stake_settings": {
"maximum_stake_wallet": 100,
"unstake_lock_duration_in_hour": 48,
"full_unlock_fee_duration_in_day": 48,
"start_fee_distribution_in_sec": 10
},
"batch_settings": {
"transfer_batch_size": 5,
"transactions_per_second": 5,
"delay_in_sec": 1
},
"heatup_settings": {
"heatup_token_a": "So11111111111111111111111111111111111111112",
"heatup_token_b": "6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN",
"buy_amount_a": 0.001,
"slippage": 50,
"delay_in_sec": 1
},
"smart_sell_settings": {
"solana_tracker_api_key": "",
"token_address": "",
"pool_address": "",
"interval": 0.1,
"buy_volume_threshold": 20
}
}
🔧 Edit the wallet section and token address/pool address before running in mainnet or live DevNet scenarios.
mainnet: boolean
This field determines whether Woosh will operate on Solana’s mainnet or devnet.
true
: Uses real SOL on the mainnet for actual token launches and liquidity pools.false
: Operates on devnet for testing purposes using free SOL from Solana Faucet.
rpc: string
A valid RPC endpoint is required for blockchain interaction.
- Free RPCs are rate-limited.
- Use paid providers like Helius, QuickNode, or Triton One for stable mainnet performance.
wallet.launch_wallet: string (private key)
The wallet that launches the token, revokes authorities, and creates liquidity pools.
- Use a fresh, self-custodied wallet.
- Always test on devnet before mainnet.
wallet.funding_wallet: string (private key)
Funds intermediate and active wallets with SOL.
- Can be the same as
launch_wallet
in testing. - In production, keep separate.
wallet.profit_wallet: string (public address)
The wallet that receives profits or SOL returns.
- Must be a public address.
- Never input a private key here.
token.name: string
The full name of the token, e.g., "WooshCoin"
.
- Required for token minting.
token.symbol: string
Ticker symbol for your token, e.g., "WOOSH"
.
- Shown on explorers and DEXes.
token.decimals: number
Determines how divisible your token is.
- Common values:
6
or9
.
token.supply: number
Total supply of your token (before decimal multiplication).
- Actual token supply =
supply × 10^decimals
.
token.image: string (filename)
Name of the token image or GIF used in metadata.
- Must exist in your project root folder.
- File name must match exactly.
pool_settings.pool_token_percentage: number
The percentage of total supply to deposit into the liquidity pool.
100
= Full supply deposited.
pool_settings.pool_sol_amount: number
Amount of SOL to pair with tokens in the pool.
- Example:
1
,0.5
, etc.
pool_settings.snipe_amount: number
Number of tokens to buy immediately post-launch to prevent bot sniping.
- Helps simulate real market activity.
pool_settings.pool_lock_percentage: number
For Meteora Stake2Earn launches only.
- Locks a portion of LP tokens permanently.
- Cannot be undone.
multi_wallet_settings.intermediate_wallet_count: number
Number of intermediate wallets used for obfuscation.
- Max recommended:
100
. - Used to obscure transaction flow.
multi_wallet_settings.intermediate_wallet_sol_balance: number
Amount of SOL each intermediate wallet gets.
- Must cover account creation fees.
- Minimum ~
0.002 SOL
per new token account.
multi_wallet_settings.active_wallet_count: number
Multiplier for active wallets.
- Total =
intermediate_wallet_count × active_wallet_count
. - Example:
10 × 5 = 50 active wallets
.
multi_wallet_settings.active_wallet_sol_balance: number
How much SOL each active wallet receives.
- Needed for trading, token burning, and heatup fees.
multi_wallet_settings.enable_active_wallet_stake: boolean
Enable if active wallets should stake tokens in Meteora Stake2Earn pools.
- Helps generate trading fee rewards.
multi_wallet_settings.active_wallet_stake_percentage: number
Percentage of each active wallet’s tokens to stake.
- Input a value between
0–100
.
stake_settings.maximum_stake_wallet: number
Limits how many wallets can stake tokens.
- Fewer wallets = higher rewards per wallet.
stake_settings.unstake_lock_duration_in_hour: number
Hours required before users can unstake.
- Acts as a cooldown.
stake_settings.full_unlock_fee_duration_in_day: number
Number of days before full fee rewards unlock.
- Longer durations incentivize long-term staking.
stake_settings.start_fee_distribution_in_sec: number
Interval (in seconds) to update staking reward tracking.
- Default:
60
seconds.
batch_settings.transfer_batch_size: number
How many token transfers to include in one batch.
- Free RPCs: keep ≤
3
. - Higher for paid RPCs.
batch_settings.transactions_per_second: number
Controls how fast transactions are submitted.
- Stay under your RPC’s rate limit.
batch_settings.delay_in_sec: number
Optional delay between transaction batches.
- Helps reduce load on RPC.
heatup_settings.heatup_token_a: string (token address)
Token used to buy from (usually SOL or WSOL).
- Simulates buy activity from worker wallets.
heatup_settings.heatup_token_b: string (token address)
The token being bought (usually your own).
- Helps create early trade history.
heatup_settings.buy_amount_a: number
Amount of token_a
to use per buy.
- Must be less than wallet SOL balance.
heatup_settings.slippage: number
Maximum allowed slippage in basis points.
50
=0.5%
slippage.- Use carefully to avoid high losses.
heatup_settings.delay_in_sec: number
Delay (in seconds) between each heatup trade.
1
second mimics human behavior.
smart_sell_settings.solana_tracker_api_key: string
API key from Solana Tracker for real-time volume data.
- Required for Smart Sell logic.
smart_sell_settings.token_address: string
The address of the token you deployed.
- Used to track volume.
smart_sell_settings.pool_address: string
Liquidity pool address from platforms like DexScreener.
- Required to fetch buy/sell volumes.
smart_sell_settings.interval: number (seconds)
How often to calculate volume deltas.
- Example:
5
= every 5 seconds.
smart_sell_settings.buy_volume_threshold: number
Percentage increase in buy volume that triggers token sells.
0.2
= 20% increase.- Default recommended:
0.15
(15%).