● Start · Before you install
Requirements
what you need.
OUTRIDER needs one thing to run: Node.js 22 or newer. Everything else is optional and makes the desk better: a private Solana RPC, and keys for Claude and Telegram (and TypeSafe for the optional Jev module).
01Software
| What | Version | Why | |
|---|---|---|---|
| Node.js | 22 or newer | Required | The pump.fun stream and record use Node's built-in WebSocket, and the console database (better-sqlite3) needs Node 22. package.json requires >=22. |
| npm | comes with Node.js | Required | Installs the dependencies, compiles the operator console (npm run build, TypeScript to dist/) and runs the scripts. The compiler is installed by npm ci; nothing else to install. |
| A terminal | macOS, Linux or Windows | Required | Every command in these docs is typed into a terminal in the unzipped folder. They are written for macOS and Linux shells (bash, zsh); on Windows use WSL (Ubuntu) or Git Bash. |
| C/C++ build tools | only if needed | Optional | better-sqlite3 is a native module. npm normally downloads a ready-made binary for your platform. If none exists for your system, npm compiles it and needs Python and a C++ compiler (Xcode Command Line Tools on macOS, build-essential on Debian/Ubuntu). |
node --version # must print v22 or higher
Check your machine
npm test builds the console and runs the 482 automated tests. They need no network, so they show whether your Node.js version and the native module better-sqlite3 work on your system. The steps are the same on macOS, Linux and Windows (WSL).
02Machine and network
- Always on. The desk is a long-running process. It loops every 20 seconds and keeps live WebSocket connections. On a laptop that sleeps, the stream reconnects after wake, but nothing is watched while it sleeps. For a real paper track record, use a small server (Deployment).
- Disk. With recording on (the default), the first 30 minutes of every pump.fun coin are kept in
data/pump-events/. The code comment estimates a few hundred MB per day. Plan for several GB if you record for weeks. - Outbound internet. The desk calls public APIs: Solana RPC, DexScreener, RugCheck, GoPlus, Hyperliquid, GeckoTerminal, Binance announcements and RSS feeds; Polymarket with the polymarket module, and Telegram channel previews only if you switch channel reading on (Telegram channel mentions). Some services block some countries or hosting providers;
node src/cli.mjs doctorshows which ones answer from your machine. - Memory. Check memory use on your own server after a few days of running. The wallet book keeps up to 400,000 wallets in memory by default (
wallets.maxWallets), and the background research refresh runs in a separate process because loading every recorded trade takes more memory than the desk itself. The included PM2 file restarts the desk above 2 GB (max_memory_restart).
03Optional keys and accounts
The desk runs without any key. Each one below switches on one more thing. Set them as environment variables, or (for the ones marked) in the console under Integrations.
| Key | What it adds | Where to get it | In the console |
|---|---|---|---|
| Private Solana RPC (WebSocket URL) | A stable pump.fun stream. The public endpoint drops heavy logsSubscribe streams. | A free plan at Helius, QuickNode or Chainstack. You need the wss:// URL. | Yes (Integrations → Solana RPC / WebSocket URL), or solanaRpc and pump.wsUrl in config.json (how) |
ANTHROPIC_API_KEY | Claude classifies news events. Without it, keyword scoring is used. | console.anthropic.com | Yes |
TELEGRAM_BOT_TOKEN | Alerts and commands in Telegram. | @BotFather in Telegram (steps) | Yes |
TELEGRAM_CHAT_ID | The chat that receives alerts and may send commands. | See Telegram bot | No, environment only |
TELEGRAM_OWNER_ID | Your Telegram user id. Needed if the bot lives in a group chat. | See Telegram bot | No, environment only |
TYPESAFE_API_KEY | The Jev forecaster, measured against control arms. Only with the jev module. | TypeSafe (early access, how) | Yes, while the jev module is on |
SOLANA_PRIVATE_KEY, HL_API_WALLET_KEY, HL_ACCOUNT_ADDRESS | Live trading only: your pump.fun trading wallet, and (with the perps module) a Hyperliquid API wallet with the account it trades for. | Your Solana wallet; Hyperliquid's API page (how) | Yes (LIVE fields; the Hyperliquid ones while the perps module is on) |
04Not included
- Hosting, a domain and TLS certificates.
- Third-party API plans and keys: who pays for what is on Services and costs.
- Trading capital, network fees and trading fees. Live trading (pump.fun, and Hyperliquid with the perps module; off by default, with hard caps and a dry run) is included in the code, but it uses your own funds and keys and can lose money (Live trading).
- Legal review for your country. Some data sources and markets (for example Polymarket, an optional module) are restricted in some jurisdictions; check before you switch those books on.