[ docs ]
Using Grist
Beta is invite-only. Inference is included. The CLI is the product — this page is how you get from an invite to a running agent.
Install
When the package is on npm:
npm install -g grist-ai grist
Until then, run the CLI from a Grist checkout. You need an invite before any completion will run.
Sign in
grist auth login opens this site. Sign in with Google or
email, then bind the invite you were given. The terminal polls until
the site approves it. After that, the CLI is authenticated — you do
not paste an API key.
grist auth login
Usage, remaining spend, and the current plan live on the dashboard. Same account, same origin.
Start in a repo
Run Grist in the project you want changed. Tools execute on your machine.
cd /path/to/your-repo grist init grist bootstrap grist
grist init scaffolds local state. grist bootstrap
mines history (ownership, map) so the next session is not cold.
Review .grist/bootstrap/ownership.jsonl before anything
is persisted to memory. grist init --bootstrap runs both.
The gate
Each task is scored for difficulty and sensitivity, then routed to
the cheapest capable rung. Underspecified work stays cheap instead of
inventing scope. You do not pick a model. Logs look like
[grist:gate] cheapest|medium|frontier.
Turn the gate off with GRIST_GATE=off (not recommended).
Memory
Grist persists only verified outcomes: tests that passed, a change you approved, or a correction you made. Unreviewed generations are not stored. Recall is retrieval from your own history — not a weight update.
Default backend is a local memory sidecar. File fallback:
GRIST_MEMORY=file. Off: GRIST_MEMORY=off.
SoL-Pi
SoL-Pi is a harness-layer set of token cuts. ObservationPack replaces huge tool output with a handle plus a short excerpt (full text still on disk). Action Fusion edits and verifies in one call. Profiles:
GRIST_MECH=auto # default GRIST_MECH=efficiency # pack + fuse GRIST_MECH=performance # full tool output, fuse still on GRIST_MECH=off # both off GRIST_OBS_PACK=off # pack only
Spend
Completions are metered against your invite cap. At the cap the CLI stops. The dashboard shows remaining USD, rung mix, and expiry. We hold the inference key. You never paste one. We do not train on tester repos.