Skip to main content

⚙️ 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 or 9.

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%).