Skip to main content
The prysm command ships with the Python SDK. Install it once and you have BRAIN.md scaffolding, connectivity checks, routing previews, the model catalog, BRAIN.md validation, usage stats, one-shot chat, multi-model orchestration, self-correcting code generation, multi-model code review, cost-bounded agent runs, offline PrysmProof verification, and compliance previews from the terminal.
Configure it with the standard environment variables:

Commands

prysm init

Scaffold a starter BRAIN.md in your project root — the fastest way to start customising routing without reading the full spec.
The generated file includes a cost cap, two sample routing rules (code → DeepSeek, write → Claude), a blocked-model example, and a fallback chain. Customise then validate:
Add --force to overwrite an existing BRAIN.md:

prysm connect

Verify that your API key is valid and that the PRYSM backend is reachable — useful when setting up a new machine or debugging an unexpected 401.
Exits 0 on success and 1 with a diagnostic message on any connection or auth error — so it works as a boot check in startup scripts or CI environment validation.

prysm connect cursor

Wire your PRYSM key into Cursor in one command — no settings tab hunting required.
Writes cursor.general.openAIKey and cursor.general.openAIBaseUrl directly into Cursor’s settings.json. After running it, set model: "auto" in any Cursor rule file and Cursor will route through PRYSM automatically.

prysm connect claude

Register PRYSM as an MCP server inside Claude Desktop.
Adds a prysm entry under mcpServers in Claude Desktop’s config, then prints a reminder to restart Claude Desktop. From that point, Claude can call PRYSM tools (routing preview, usage, BRAIN.md validation) directly from within the conversation.

prysm route

Preview which model PRYSM would pick — and what it would cost — without spending anything. Add --mode to force quality, balanced, or agility.

prysm models

prysm brain validate

Validates ./BRAIN.md by default, or a path you pass. Exits non-zero when the config is invalid — handy in CI.
Wire it into a pre-commit hook or CI step so a broken BRAIN.md never ships:

prysm usage

prysm chat

A one-shot routed completion. The answer prints to stdout; the routing summary prints to stderr, so you can pipe the answer cleanly.

prysm orchestrate

Run a prompt across several models and synthesize one answer — then see which models contributed and how strongly they agreed. Pick the objective with --policy; force an execution shape with --strategy. See How orchestration works.

prysm code

Generate code with a self-correcting, multi-model loop: a coder writes it, a separate critic reviews it, and the coder repairs against the feedback. The files print to stdout; the run summary (verdict, models, cost, proof) prints to stderr, so you can pipe the code cleanly. See How Code Mode works.
Write the files to disk instead of stdout, force the models, or skip the critic loop:
prysm code exits 0 when the review passes and 1 when it fails (or on error), so it drops cleanly into CI and scripts.

prysm review

Review existing files instead of generating new ones: a cross-provider critic plus a deterministic static scan (CodeGuard) produce structured findings. The server never executes your code. Findings print grouped by severity with a rule id, file:line, message, and any suggested fix.
Exits 1 when a finding is at/above --fail-on, else 0 — drop it straight into a CI step.

prysm agent

Run a PRYSM-Agentic goal from the terminal. The run can never spend more than its cap (AgentGuard), and it returns a verifiable trajectory proof even if it stops early on the budget or step ceiling.
Exits 0 only when the run completes; a budget / step / risk stop exits 1.

prysm verify

Re-verify a saved PRYSM artifact locally — no network, no API key, no trust in the server. Point it at a saved Code receipt or agent trajectory (or pipe one on stdin); it recomputes the PrysmProof and tells you whether the artifact is intact.
Exits 0 when the artifact verifies, 1 when it doesn’t (tampered/altered), 2 on malformed input. The recipe is byte-identical across the backend, the Python SDK, and the Node SDK.

prysm compliance preview

Dry-run the Policy-as-Code compliance gate against a prompt — no model is called. It reports which sensitive data classes the text triggers, which models the policy allows vs excludes, and the Compliance Cost Premium. Build the policy from flags (and/or a JSON --policy-file; flags override the file).
Block a data class outright — a leaked secret with SECRETS blocked is a hard stop:
prysm compliance preview exits 0 when at least one approved model can serve the request and 1 when the policy blocks every model — so it gates CI cleanly.

Exit codes

Errors print a clean one-line message to stderr — never a stack trace.