For people with a server, or who want to run on their own PC. Most newcomers should use Easy setup (Railway).
Same risk rules: paper first, burner only, never commit .env.
| Need | Get it | Check |
|---|---|---|
| Node.js 20+ | nodejs.org | node -v |
| Git | git-scm.com | git --version |
git clone https://github.com/CryptoGnome/dlmmbot.git
cd dlmmbot
npm install
better-sqlite3 compiling is normal. Windows may need VS Build Tools.
.envcp .env.example .env
FARMER_MODE=paper
RPC_URL=https://api.mainnet-beta.solana.com
config.toml[exec]
mode = "paper"
Live needs both this and FARMER_MODE=live.
npm run run
npm run status
npm run halt
npm run scan | vet | run | status | halt | force-close | test
npm run dash:build && npm run dash
DASH_TOKEN=pick-a-long-random-password
DASH_PORT=8787
npm run dash:build
npm run dash
Open http://localhost:8787 with that token.
Phantom burner → WALLET_PRIVATE_KEY, private RPC, Jupiter key.
# .env
FARMER_MODE=live
RPC_URL=https://your-private-rpc
JUPITER_API_KEY=…
WALLET_PRIVATE_KEY=…
# config.toml
[exec]
mode = "live"
Burner only. One farmer process per wallet/DB.
npm install -g pm2
pm2 start deploy/ecosystem.config.cjs --only meteora-farmer
pm2 start deploy/ecosystem.config.cjs --only meteora-dash
pm2 save
pm2 startup
pm2 logs meteora-farmer
meteora-deploy in the same ecosystem is the git pull watcher —
start it only if you want auto-updates from master.
pm2 start deploy/ecosystem.config.cjs --only meteora-deploy
pm2 save
Don’t SCP a dirty tree and expect CURRENT — push + pull (or let the watcher do it).
Don’t expose :8787 raw without a strong DASH_TOKEN (and HTTPS).
| Symptom | Fix |
|---|---|
better-sqlite3 build fail | VS Build Tools / build-essential |
| Already running / lock | Only if sure: npm run release |
| BEHIND on version pill | Start meteora-deploy or git pull |
| Want the simple path | Easy setup (Railway) |