OUTRIDER docs
v1.1.0
Live demo Get help
● Set up · Outside accounts

Provider accounts
what to set up outside OUTRIDER.

Some features need an account or an approval at another company. None is needed for paper mode. This page lists each one, what to do there, what to bring back to OUTRIDER, and how to test the desk while you wait.

All optionalPaper mode needs none

01At a glance

Which terminal

The commands on this page are written for the shell of macOS and Linux (bash or zsh). On Windows, run them in WSL (Windows Subsystem for Linux, Ubuntu) or Git Bash: commands such as cp, openssl, rm -rf and multi-line curl with \ do not work as written in PowerShell or cmd. The node and npm commands work in any of them.

ProviderForYou bring backWhere it goes
Solana RPC provider (Helius, QuickNode, Chainstack…)A stable pump.fun stream; required for live pump.funAn https:// endpoint URL (usually with a key in it)Console → Integrations → Solana RPC URL
AnthropicAI analyst and Claude news scoringAn API keyConsole → Integrations, or ANTHROPIC_API_KEY
Telegram @BotFatherAlerts and commandsA bot token, and your chat idToken: console or TELEGRAM_BOT_TOKEN. Chat id: TELEGRAM_CHAT_ID only
HyperliquidLive trading of the trend and HL copy books (perps module)An API wallet private key and your account addressConsole → Integrations (LIVE fields), or HL_API_WALLET_KEY and HL_ACCOUNT_ADDRESS
TypeSafeThe Jev forecaster (jev module)An API key, after your access request is grantedConsole → Integrations, or TYPESAFE_API_KEY
PumpPortalBuilding live pump.fun transactionsNothing: the code calls its public local-trade API without a key. In live mode PumpPortal charges its own fee per trade, paid from your wallet (see costs)—

Click paths below are the providers' own menu labels as of October 2026. Provider websites rename menus often; if a label differs, the provider guide linked in each step is the reference. Costs: Services and costs.

02Solana RPC provider

Who pays: You open the account with the RPC provider and you pay for your own usage: free tiers exist, and anything above them is a paid plan billed by that provider to you, not part of the item price.

  1. Create an endpointSign up at a Solana RPC provider such as Helius, QuickNode or Chainstack and create a Solana mainnet endpoint. A free tier is enough to start.
  2. Copy the HTTPS URLIt usually contains your API key. Treat it like a password.
  3. Put it in the consoleIntegrations → Solana RPC URL (owner). The desk derives the WebSocket by replacing http with ws. If your provider gives a different WebSocket address, set solanaRpc and pump.wsUrl in config.json instead (how).
  4. Test it
    curl -s -X POST -H 'content-type: application/json' \
      -d '{"jsonrpc":"2.0","id":1,"method":"getHealth"}' '<your https RPC URL>'
    # a healthy endpoint answers {"jsonrpc":"2.0","result":"ok","id":1}
    node src/cli.mjs doctor   # checks "Solana RPC" and "pump.fun stream (WS)"

Where to click (labels as of October 2026):

Meanwhile: the public endpoint works for paper testing; expect the stream to drop sometimes.

03Anthropic API key

Who pays: You open the Anthropic account and you pay for your own usage: every analyst briefing and every news-scoring call is billed by Anthropic to your account, not part of the item price.

  1. Create a keySign in at console.anthropic.com, set up billing for API use, and create an API key. Usage is billed per request to your account.
  2. Put it in the deskConsole → Integrations → Anthropic API key (owner), or ANTHROPIC_API_KEY in .env.
  3. Test it
    curl -s https://api.anthropic.com/v1/models \
      -H "x-api-key: $ANTHROPIC_API_KEY" -H "anthropic-version: 2023-06-01" | head -c 300
    # a list of models means the key works; an "authentication_error" means it does not
    After a few hours of running, the dashboard shows the first AI analyst briefing, and Telegram /brief returns it.

Where to click (labels as of October 2026): console.anthropic.com → Settings → API keys → Create key → give it a name such as "outrider" → copy the key (it starts with sk-ant- and is shown only once). Billing is under Settings → Billing. Anthropic's guide: Anthropic docs → API → Getting started.

Meanwhile: without a key, news uses keyword scoring and there is no briefing. Everything else works.

04Telegram bot (@BotFather)

Who pays: Telegram bots are free at the time of release; the bot is created in your own Telegram account and runs under Telegram's terms.

  1. Create the botIn Telegram, open @BotFather, send /newbot, choose a name and a username. BotFather replies with the bot token.
  2. Start a chat with itOpen your new bot and press Start.
  3. Find your chat idSend the bot any message, then open https://api.telegram.org/bot<token>/getUpdates in a browser while the desk is stopped, and read "chat":{"id":…} (details).
  4. Bring both backToken in the console (Integrations) or TELEGRAM_BOT_TOKEN; chat id in TELEGRAM_CHAT_ID. Restart the desk.

What you see: after /newbot, a name and a username ending in bot, BotFather answers with a message that contains a line like 123456789:AA…: that whole line is the token. Telegram's guide: Telegram → From BotFather to "Hello World" → Obtain your bot token; the getUpdates answer format: Telegram Bot API → getUpdates.

Meanwhile: alerts are printed in the terminal and shown in the dashboard.

05Hyperliquid API wallet

Who pays: The account and the funds are yours: Hyperliquid's trading fees and funding are paid from your own account, and any loss is yours. None of it is part of the item price.

Only for live trading of the trend and HL copy books, which belong to the perps module (off by default). Reading Hyperliquid data, for example for the liquidation map, needs no account.

  1. Generate an API walletOn Hyperliquid, open the API page of your account (the code comment calls it "Hyperliquid → API"), generate an API wallet (also called an agent) and authorise it for your account. An API wallet can place orders for your account but cannot withdraw.
  2. Copy two valuesThe API wallet's private key (0x followed by 64 hex characters), shown when you generate it, and your account address (0x followed by 40 hex characters): the main account the API wallet trades for, not the API wallet's own address.
  3. Bring them backConsole → Integrations → LIVE: Hyperliquid API wallet key and LIVE: Hyperliquid account address (owner), or HL_API_WALLET_KEY and HL_ACCOUNT_ADDRESS.
  4. Check the formatLive mode refuses to start with a clear line if either value has the wrong shape (messages).

Where to click (labels as of October 2026): connect your wallet at app.hyperliquid.xyz/API → enter a name for the API wallet → Generate → copy the private key shown → Authorize API Wallet and confirm in your wallet. Hyperliquid's own description of API (agent) wallets: Hyperliquid docs → Nonces and API wallets. Testnet funds: Hyperliquid docs → Testnet faucet.

Console Integrations page: Anthropic API key, Telegram bot token, Solana RPC URL and the LIVE Solana wallet private key, all Not set
Integrations with the LIVE Solana key field. Each field says only Set or Not set; values are never shown. With the perps module on, two Hyperliquid fields appear here too.

Meanwhile, test without risk:

  • Dry run (on by default): every order is built and checked but not sent. The Live tab of the ledger lists each one.
  • Hyperliquid testnet: switch on Live trading → Hyperliquid testnet (live.hyperliquid.testnet). Orders and the account snapshot then go to Hyperliquid's testnet, which has its own accounts and test funds, so you need an API wallet authorised there. How to get testnet funds is described by Hyperliquid (testnet faucet). Prices and signals still come from mainnet data.

06TypeSafe access (Jev)

Who pays: Access is granted by TypeSafe under its own terms; if TypeSafe charges for the API, you pay it directly. It is not part of the item price.

Jev is TypeSafe's forecasting model and belongs to the jev module, off by default: set "modules": { "jev": true } in config.json to use it. Its API is in early access: you request access from TypeSafe and receive a key if they grant it. OUTRIDER does not control that process or its timing; follow the instructions on typesafe.ai.

What to tell them, in general terms: who you are, that you want to use the Jev API from a self-hosted research desk, what for (hourly yes/no questions on whether BTC, ETH and SOL will be higher in 60 minutes, scored against simple control forecasts), and the volume. The desk limits itself to jev.maxPerSecond (default 8) requests per second and jev.maxCallsDay (default 20,000) per day. Never send them your other keys.

When the key arrives: put it in Console → Integrations → TypeSafe Jev API key, or TYPESAFE_API_KEY, then run node src/cli.mjs doctor: the TypeSafe Jev line turns ✅ and lists the models. The desk keeps Jev in shadow mode (it only logs its answers) until Jev passes the desk's own promotion rule (Jev, measured).

Meanwhile: the desk runs fully without it. doctor shows · TypeSafe Jev … TYPESAFE_API_KEY not set → Jev is optional — the desk runs without it, and that line does not count as a failure.

07Testing while you wait

  1. Paper modeThe default. Live data, simulated fills, no keys. Run it for days and judge the results (report).
  2. Dry runIn live mode, with Dry run on, real keys are checked and orders are signed and simulated, never sent.
  3. Hyperliquid testnetFor the Hyperliquid books of the perps module, real orders against test funds.