CLI Reference

firma is built around Claude, so most people barely touch the CLI after setup. Still, every MCP tool has a matching firma command for scripting, automation, or direct terminal use. Every read command also supports --json.

firma config set finnhub-key <key>Set Finnhub API key (free at finnhub.io)
firma config set fred-key <key>Set FRED API key (free at fred.stlouisfed.org)
firma config set currency <CODE>Set home display currency (KRW, USD, JPY, EUR, …)
firma config get [key]Show config values
firma mcp installRegister the MCP server in Claude Desktop config
firma doctorCheck setup status, including keys, data, and the FX cache. Suggests fixes when something is missing.
firma profileSet up goals interactively (5 fields, all optional)
firma show portfolioHoldings with P&L, avg cost, market value
firma show txns [ticker]Transaction history with running average cost
firma show dividendEstimated annual dividend income + per-ticker yield
firma show concentrationHHI concentration by ticker, currency, sector, country
firma show snapshot [ticker]Portfolio value history. --from/--to for range
firma show benchmarkPortfolio return vs SPY/QQQ. -b for custom benchmarks
firma show riskVolatility, drawdown, Sharpe, Sortino, and beta. Requires snapshots
firma show profileStored goals (birth year, retirement target, target net worth, …)
firma add balance [-p YYYY-MM]Monthly asset & liability snapshot wizard
firma add flow [-p YYYY-MM]Monthly income & expense entry wizard
firma add monthly [-p YYYY-MM]Record balance and cash flow in one session. Best for month-end
firma show balance [-p YYYY-MM]Stored balance entries
firma show flow [-p YYYY-MM]Stored flow entries
firma reportNet worth trend + cash flow charts (combined)
firma report balance / flow / settleTargeted views. -c USD to display in any currency
firma add txnRecord one transaction: buy, sell, deposit, dividend, or tax
firma edit txn [id]Edit a transaction (date, shares, price, reason)
firma delete txn [id]Delete a transaction
firma add snapshotSync prices and record today's portfolio snapshot
firma edit snapshotEdit a snapshot entry (interactive picker)
firma delete snapshot [date]Delete all entries for a date
firma briefMovers, news, earnings, and macro context. Cached daily, and it auto-snaps if today's snapshot is missing. --refresh regenerates it.
firma syncFetch latest prices (Finnhub) + FX rate history (FRED)
firma sync fxRefresh FX history only, with incremental backfill
firma show macroVIX, 10Y yield, yield curve, USD index, HY spread, inflation, fed funds, FX
firma show stressEconomic Stress Index (0–100) from 5 FRED series
firma show regimeMacro regime bias. Risk-on / Mixed / Risk-off
firma show fx [currency]Cached FX history. --from/--to/--limit
firma show news <ticker>Recent company news
firma show insider <ticker>Insider buy/sell transactions
firma show financials <ticker>SEC-reported quarterly financials
firma show earnings [ticker]Earnings calendar + EPS history
json
--json on every read command
Pipe firma output into jq, scripts, or other tools. It is the same data Claude sees, with the same field names.
rm
firma rm aliases firma delete
Shorter form for the destructive verbs.
db
Local SQLite at ~/.firma/firma.db
Everything lives in one file. Back it up, copy it between machines, or open it directly with any SQLite client.
MIT License