Overview
The walletguide CLI: every REST route as a command, browser sign-in or an API key, tables in a terminal and JSON in a pipe.
npx walletguide wallets listOr keep it around:
npm install -g walletguideNode 22 or newer.
Signing in
walletguide loginA browser opens, you approve, and the tokens land in ~/.walletguide/config.json with mode 0600. The session refreshes itself, so this is a once-per-machine thing. You can untick write access on the consent screen for a read-only session.
For CI, use a key:
walletguide login --api-key wg_… # store it
echo "$WG_KEY" | walletguide login --api-key - # or from stdin
WALLETGUIDE_API_KEY=wg_… walletguide assets list # or not at allwalletguide whoami says which credential is in play, what it can reach and when it expires.
Wallets
A key belongs to one wallet and the CLI works that out itself. An OAuth session can reach several:
walletguide wallets list
walletguide wallets use # prompts
walletguide wallets use <id> # or name it
walletguide --wallet <id> assets list # or override onceCommands
<resource> <action>, mirroring the routes. walletguide --help lists the resources and walletguide assets --help lists what you can do to them.
walletguide assets list
walletguide transactions list --from 2026-01-01 --limit 50
walletguide categories create --name Travel --type variableExpenses
walletguide data netWorthTimeSeries --period ytdAnything with a request body takes --from-json <file> (or - for stdin), and its top-level fields also have flags. Flags win over the file, so a template plus one override works:
walletguide transactions create --from-json ./template.json --description LunchOutput
A terminal gets a table, a pipe gets JSON. --json and --table override that, and --columns picks the columns.
walletguide assets list # table
walletguide assets list | jq '.[].name' # json
walletguide assets list --columns id,name,valueProfiles
One per environment or account, all in ~/.walletguide/config.json.
walletguide --profile staging login --base-url https://staging-api.walletguide.com
walletguide --profile staging wallets list| Variable | What it does |
|---|---|
WALLETGUIDE_API_KEY | Use this key, ignoring what is stored |
WALLETGUIDE_BASE_URL | Point at another api |
WALLETGUIDE_WALLET_ID | The wallet to act on |