riskmodels-cli
v2.0.0
Published
RiskModels CLI — REST API, SQL query, schema, billing, and agent manifests
Downloads
79
Maintainers
Readme
riskmodels-cli
Command-line interface for RiskModels: call the REST API (metrics, batch, portfolio, returns, rankings, etc.), run billed SQL queries, explore schema in direct (Supabase) mode, check balance, and export agent tool manifests.
Install
npm install -g riskmodels-cliAuthentication
- API key (recommended):
riskmodels config init(billed mode) orriskmodels config set apiKey <rm_agent_...>. - OAuth client credentials:
riskmodels config set clientId …andconfig set clientSecret …, or setRISKMODELS_CLIENT_ID/RISKMODELS_CLIENT_SECRET(optionalRISKMODELS_OAUTH_SCOPE; default matches the Python SDK). - Environment:
RISKMODELS_API_KEYworks without a config file for REST commands. - Direct (Supabase) mode is for
query+schemaonly. REST analytics need an API key or OAuth (config or env).
Base URL: stored as apiBaseUrl (default https://riskmodels.app). The CLI calls paths under …/api/... (same as OPENAPI_SPEC.yaml).
Quick start (billed / recommended)
riskmodels config init
# Choose API Key mode and enter your rm_agent_* key
riskmodels health
riskmodels metrics NVDA
riskmodels query "SELECT ticker, company_name FROM ticker_metadata LIMIT 3"
riskmodels balanceConfig file: ~/.config/riskmodels/config.json
Commands
| Command | Description |
|--------|-------------|
| riskmodels config init \| set \| list | API key, OAuth fields (clientId, clientSecret, oauthScope), apiBaseUrl, or Supabase (direct) |
| riskmodels query "<sql>" | SELECT only (billed → POST /api/cli/query, direct → Supabase exec_sql) |
| riskmodels metrics <ticker> | Latest snapshot (GET /api/metrics/{ticker}) |
| riskmodels batch analyze | POST /api/batch/analyze (--tickers, --metrics, --years) |
| riskmodels portfolio risk-index | POST /api/portfolio/risk-index (--file or --stdin) |
| riskmodels returns ticker\|stock\|etf | GET /api/ticker-returns, /returns, /etf-returns |
| riskmodels l3 <ticker> | GET /api/l3-decomposition |
| riskmodels correlation post\|metrics | POST /api/correlation, GET /api/metrics/{ticker}/correlation |
| riskmodels macro-factors | GET /api/macro-factors (daily macro returns, no ticker) |
| riskmodels rankings snapshot\|badge\|top | Rankings endpoints |
| riskmodels tickers | Universe search (GET /api/tickers, no auth) |
| riskmodels health | GET /api/health (no auth) |
| riskmodels estimate | POST /api/estimate (pre-flight cost) |
| riskmodels schema | PostgREST OpenAPI (direct mode only) |
| riskmodels balance | Account balance (GET /api/balance) |
| riskmodels manifest [--format openai\|anthropic\|zed] | Static tool manifest (no auth) |
| riskmodels agent decompose\|monitor | Shortcuts → batch analyze / metrics |
Global flag: --json for machine-readable output on supported commands.
Develop
cd cli
npm install
npm run build
npm run install:global # npm link for local testingThe repo root npm run typecheck includes cli/src (see AGENTS.md). Maintainer drift check: npm run cli:openapi-check at the repo root.
npm releases (maintainers)
Publishing (npm publish, version bumps, npm login / tokens) is not documented in this public README. It is maintained in the private BWMACRO monorepo at docs/RISKMODELS_CLI_NPM_PUBLISHING.md — open that file from your internal BWMACRO clone.
Rule of thumb: run publish commands only from cli/; the repo root package is the Next.js portal, not this CLI.
