跳到主要内容

Install

Standalone binaries are published to Tealstreet/cli. Pick a channel below; both install the same artifact.

macOS & Linux​

# One-liner — detects platform/arch, drops into /usr/local/bin
curl -fsSL https://get.tealstreet.io/cli | bash

# Homebrew tap
brew install tealstreet/tap/tealstreet

Verify:

tealstreet --version

If you see command not found, /usr/local/bin isn't on your PATH — add it, or symlink the binary somewhere that is.

The Homebrew formula lives in Tealstreet/homebrew-tap.

Windows​

npm install -g @tealstreet/cli

That fetches tealstreet-windows-x64.exe and puts a tealstreet command on your PATH. For a direct download, grab the .exe from the releases page and put it somewhere on your PATH yourself.

Two things to know:

  • Run it from Windows Terminal or PowerShell 7. The REPL draws a pinned top bar and bottom footer using ANSI escape sequences. Legacy cmd.exe does not render those correctly.
  • tealstreet update works either way. An npm install upgrades through npm update -g. A directly-downloaded .exe is replaced by renaming the running binary aside and moving the new one into place — Windows will not let a running .exe be overwritten, only renamed. Restart the CLI afterwards; the leftover .old file is removed on the next launch.

WSL remains a fine alternative — the linux-x64 binary runs there with the macOS/Linux one-liner above.

Available builds​

AssetPlatform
tealstreet-darwin-arm64Apple Silicon Macs
tealstreet-darwin-x64Intel Macs
tealstreet-linux-x64Linux x86_64
tealstreet-linux-arm64Linux arm64
tealstreet-windows-x64.exeWindows x64

First run​

tealstreet

No args = start the REPL. The prompt looks like:

:<account> [<symbol> $<last-price>] >

If you have no accounts yet, add one:

tealstreet account add -n mybybit -e bybit -k <KEY> -s <SECRET> --default

Then re-launch and it'll auto-focus that account. To see every supported exchange and the credential fields each one needs:

tealstreet account exchanges

HyroTrader trial accounts​

HyroTrader trial accounts use Tealstreet's hyrotrader exchange adapter, but the standalone CLI needs the Hyro simulator REST origin in your shell environment before it can connect. Without it, connection fails with:

HyroTrader simulator REST URL is not configured

Set the simulator origin, then add the account:

export NEXT_PUBLIC_HYROTRADER_SIMULATOR_REST_URL="https://<hyro-simulator-origin>"

tealstreet account add -n hyro-trial -e hyrotrader -k <KEY> -s <SECRET> --default
tealstreet interactive --account hyro-trial

Use the origin only, not a /v5/... path. Public and private WebSocket URLs are normally derived from that REST origin. See Config files → Exchange endpoint overrides for the optional WebSocket overrides.

Restricted regions and Bybit 403s​

If a direct Bybit connection returns a 403 geo-restriction error, the CLI needs a different route before exchange requests can succeed. Use a VPN, or add the account from inside the REPL with Tealstreet proxy routing:

> accounts add -n mybybit -e bybit -k <KEY> -s <SECRET> --tealstreet-proxy --proxy-region SG

This only changes how the CLI reaches the exchange. It does not make TradingView webhooks reach the CLI; the hosted TradingView-to-CLI relay is not live yet.


Logging in​

The CLI uses Auth0 for update checks and identity — separate from any exchange API keys, which live only on your machine.

From your shell, or as login inside the REPL:

tealstreet login

Your browser opens, you sign in, the CLI prints Logged in as <email>, and writes the token to ~/.tealstreet/config.json. tealstreet logout clears it, and tealstreet whoami (alias auth) shows the current user.

The OAuth callback listens on localhost:9876 during the flow.


Updating​

tealstreet update # download and replace the running binary
tealstreet update -c # version-check only

update --check (or -c) checks the latest release on GitHub without downloading. The REPL also runs a background check at startup and prints a banner when a newer version is published.


Top-level flags​

FlagEffect
-v / --versionPrint version and exit
--updateTrigger updater
--check-updateVersion-check only
--disable-allStart REPL with all exchanges disabled

--disable-all is useful when you want to launch the CLI without auto-connecting every account — for cold-starts on flaky networks, or for running purely-local commands like sim on / set.


File locations​

The CLI keeps state under ~/.tealstreet/. All of it is text or SQLite — inspectable with cat, jq, or sqlite3. See Config files for the full layout.

OverrideEffect
TEALSTREET_CONFIG_DIRMove the entire state directory
TEALSTREET_CONFIG_FILEOverride just the main config file path

Where to next​