Install fora-cli
fora-cli is the command-line interface to the Fora protocol. Trade, claim Manifest seats, deposit, query order books, query historical data, and crank lifecycle transitions — all from the terminal.
Install
Requires the Rust toolchain (1.75+). If you don't have it: rustup.rs.
cargo install fora-cli
The binary is named fora-cli (not fora).
fora-cli --version
fora-cli --help
A precompiled curl ... | sh installer is on the roadmap. Until then, cargo install is the only path.
Configure
fora-cli config init
This generates ~/.config/fora-cli/config.toml. Edit it to set your RPC endpoint and signer keypair path. Defaults point at Solana mainnet via the public RPC.
For local development against a localnet validator:
fora-cli config set cluster localnet
fora-cli local airdrop 1000 <YOUR_PUBKEY>
The airdrop amount is in whole USDC, not atoms. 1000 airdrops 1000 USDC. (Earlier docs incorrectly suggested atoms — copying-and-pasting 1000000000 from those docs would have airdropped 1 billion USDC.)
First trade
The full quickstart is on Quickstart. The shortest version:
# Find a market
fora-cli market list
# Inspect its books
fora-cli market orderbook KXMARMAD-26-DUKE
# Claim a seat for the YES side
fora-cli trade seat claim KXMARMAD-26-DUKE
# Buy 5 USDC of YES at market
fora-cli trade buy KXMARMAD-26-DUKE --side yes --amount 5
Top-level commands
| Command | What it does |
|---|---|
fora-cli config |
Manage the local config file |
fora-cli wallet |
Generate / import / inspect signer keypairs |
fora-cli market |
List, create, inspect, and resolve markets |
fora-cli trade |
Buy, sell, place limit orders, claim seats, deposit |
fora-cli global |
Manage Manifest globals (advanced; cross-market liquidity) |
fora-cli fee |
Inspect fee vault state and fee rate |
fora-cli kalshi |
Mirror Kalshi events as Fora markets (operator command) |
fora-cli pipeline |
Sync registry / metadata / backfill (operator command) |
fora-cli local |
Localnet helpers — airdrops, etc. |
Run fora-cli <command> --help for the full subcommand list. Most commands accept --fire-and-forget to skip waiting for transaction confirmation.