Get started

Recurz CLI

One command line.
Every product.

recurz reads and runs everything you can do on the site, from the terminal or a script. Every command prints plain lines when piped and the API's own JSON with --json.

# Install
npm install -g @recurz/cli

# First run: sign in, register this machine and start the collector
recurz

macOS and Linux. One binary for every product; no product ships a CLI of its own.

318 commands across the five products: Works today 197 · Next 7 · Planned 114

Learn it once

Every command has the same shape, and a verb means the same thing on every noun.

recurz <noun> [<sub-noun>] <verb> [TARGET] [flags]

recurz session                 # a bare noun lists
recurz session 91dd            # a noun and a target shows
recurz finding list --kind loop
recurz eval plan create checkout@v3 --bar 1pp

Read

list show open trace watch diff compare

Change

create edit delete add remove release import export check apply dismiss pin merge detect ack resolve rate

Spend, quoted first

run replay train

Live agents

nudge pause resume stop cancel attach

Everyday words

Short words for what you do most. Each shortcut does exactly what its long form does.

CommandWhat it doesStatus
recurz feed [--since 24h] [-f]What changed across your agents, newest first same as recurz story listWorks today
recurz inboxWhat needs you, one key to act same as recurz story list --needs-youWorks today
recurz top [--window 15m]Live agents on every machine, full screen same as recurz agent list --liveWorks today
recurz ask QUESTIONAnswers about your agents, sessions and spend, with sourcesPlanned
recurz search QUERY [--brief] [--repo .]Text across sessions, notes, memories and artifactsPlanned
recurz show IDAnything by id; today sessions by id or title wordsWorks today
recurz open IDAnything by id in its web page; today sessionsWorks today
recurz trace ID [--from N]Every step of a session (later also a task attempt)Works today
recurz statusIs everything working: ingestion today; sign-in, collector, Steerz and inbox nextWorks today
recurz doctorCheck this machine and the org, with a fix for each failurePlanned
recurz install [--no-modify-path] [--no-collector]Put recurz on this machine (~/.local/bin, on PATH) and start collecting; npx @recurz/cli install runs itWorks today
recurz initSet up this machine: sign in, harnesses, collector, backfill, Steerz, statuslinePlanned
recurz wrap -- CMDCollect one agent run with an ingest key and nothing installed same as recurz collector wrapPlanned
recurz login [--device] [--org ORG]Sign in to Recurz in your browser, or with a code on a machine without one, in your personal org or the one namedWorks today
recurz bootstrap [--org NAME] [--invite EMAILS] [--role member|admin] [--check]Set up your org from nothing, or check one: sign in, pick or make the team's org, register this machine, invite people, add starter lessons, link the restWorks today
recurz logoutSign out on this machine and revoke the sign-inWorks today
recurz whoamiWho you are signed in as, and the orgWorks today
recurz context [PATH…] [--command CMD] [--error TEXT] [--repo REPO]What your org already knows about these files, this command or this error: lessons, fixes, earlier sessions and memoryWorks today
recurz resume [--branch NAME] [--pr N] [--repo REPO]Pick up a branch or PR where the last agent stopped: its newest handoff note, then the earlier sessions on it, how each ended and its last errorWorks today
recurz handoff TEXT… [--branch NAME] [--pr N]Leave a note for whoever picks up this branch or PR next; recurz resume shows it firstWorks today
recurz cost [--budget USD]What this session has cost so far, the org's spend today and the credits leftWorks today
recurz report helped|wrong|confusing|broken|idea lesson|fix|tool|session|answer [ID] TEXTTell Recurz a lesson, fix, tool or answer helped or was wrong; lessons show these beside their verdictsWorks today
recurz analyze [--deep] [--json] [--plain] [--own-key [--cap DOLLARS] [--yes]]What Recurz could fix in the agent work already on this machine: the loops your agents keep doing, the spend that bought nothing and what could be evaluated on your own sessions, each with how many sessions it showed up in; read locally, no account. Nothing is uploaded unless you ask `--own-key` (or `y`) to have a model read the failing rows with your own API key, scrubbed, under a spend cap shown first. `recurz receipt` is its old nameWorks today
recurz transcripts [--since WHEN] [--show] [--json] [--plain]Everything the agent transcripts on this machine say, all time, and which ones Claude Code is about to delete; read in place, nothing written or uploaded, no accountWorks today
recurz recall search TEXT [--since WHEN] [--until WHEN] [--harness claude|codex] [--cwd TEXT] [--branch TEXT] [--limit N] [--paths] [--json]The earlier sessions on this machine that did something, each with why it matched and the turn to open; exact ids, file names and error strings match anywhere, tool output included; read locally, nothing uploaded, no accountWorks today
recurz recall show SESSION [--prompts | --tail N | --around TURN [--window N]] [--full] [--json]Read one session from this machine: its prompts word for word, where it ended, or the turns around one moment; secrets scrubbedWorks today
recurz recall related [--here PATH] [--since 90d] [--harness claude|codex] [--json]The sessions on this machine that worked in this folder, on this branch or on the files changed here, with no queryWorks today
recurz question ask QUESTION [--option TEXT]… [--recommend N] [--context TEXT]Ask a person in your org a call you shouldn't make alone; it waits in their Home inbox while you keep workingWorks today
recurz question show QUESTION [--wait SECONDS]A question you asked and its answer, waiting for it if asked toWorks today
recurz question list [--session ID] [-q] [--json]Your questions to people, answered or still openWorks today
recurz question cancel QUESTIONTake back a question you no longer need answeredWorks today

Collectorz

Collect from every harness on this machine. About Collectorz →

CommandWhat it doesStatus
recurz collector ARGS…Runs recurz-collector with these arguments (status, pause, resume, logs, install…)Works today
recurz collector wrap -- CMDCollect one run with nothing installed; the agent's exit code passes throughPlanned
recurz device listYour machines signed in to the orgWorks today
recurz device show DEVICEOne of your machines and when it was last seenWorks today
recurz device edit DEVICE --nameRename a machinePlanned
recurz device revoke DEVICE [--yes]Sign one of your machines out (asks first)Works today
recurz harness listEach harness and whether it is wired to Recurz (MCP server and rules), for you and in this repoWorks today
recurz harness connect NAME [--project] [--dry-run]Wire a harness to Recurz: recurz mcp in its MCP config and rules that call recurz_context (Cursor, Gemini CLI, OpenCode, VS Code, Windsurf, Amp, Kiro, Qwen Code, Antigravity, Oh My Pi, and Pi with an events extension), or the steps for one whose config it doesn't editWorks today
recurz harness rulesThe rules connect writes, to paste into any other harness's instructions fileWorks today
recurz harness disconnect NAME [--project] [--dry-run]Take out what connect added, leaving the rest of each file as it wasWorks today

Tracez

Every session, its memories, artifacts, retros and spend. About Tracez →

CommandWhat it doesStatus
recurz session list [QUERY] [--since WHEN] [--until WHEN] [-q]Sessions, or the ones whose title or transcript contains QUERY, last active between --since and --untilWorks today
recurz session table [--outcome merged|open|closed|none] [--finding KIND] [--agent A] [--model M] [--repo R] [--person P] [--cost BAND] [--since 7d|30d|90d|all] [--json]Sessions filtered and counted by PR outcome, findings, agent, model, repo, person and cost, with cost per merged PRWorks today
recurz session ask QUESTION [--time-zone TZ] [--json]Evidence for a question about your sessions, each row citing the session and turn; no model callWorks today
recurz session prs [--since WHEN] [--until WHEN] [--state merged|open|closed|all] [--q TEXT] [--limit N] [--json]Pull requests with their state, times and the sessions that opened, pushed or committed to themWorks today
recurz session show SESSIONWhat happened: passages, loops, money, filesWorks today
recurz session trace SESSION [--from N]Every step at full terminal widthWorks today
recurz session open SESSIONThe session in TracezWorks today
recurz session sources SESSIONWhich machines and files a session was read from, and when each last arrivedWorks today
recurz session export SESSION --format claude|codex [--version V] [-o FILE]The session as a file Claude Code or Codex can resume, under a new id so resuming forks itWorks today
recurz session import PATH [--harness claude|codex|pi|oh-my-pi|prime]Send transcript files, or every .jsonl under a folder; sending one again changes nothingWorks today
recurz session edit SESSION [--title TEXT] [--project P | --new-project NAME | --unfiled]Retitle a session, or file it to a diary projectWorks today
recurz session verify SESSIONCheck a session's turns against the org's hash chain: verified, redacted or changedWorks today
recurz session redact SESSION [--yes]Remove a whole session's text for good; asks firstWorks today
recurz session delete SESSION [--yes]Delete a session for good and keep it from coming back; asks firstWorks today
recurz session hold SESSIONExempt from retention and deletionPlanned
recurz session unhold SESSIONLift a legal holdPlanned
recurz project listSessions filed by repo and projectPlanned
recurz project show PROJECTOne project: goal, live agents, sessions, spendPlanned
recurz project edit PROJECTRename or merge a projectPlanned
recurz memory list [--harness --scope --kind --repo]The CLAUDE.md, AGENTS.md, skills and memories agents loadWorks today
recurz memory show IDOne memory file's current textWorks today
recurz memory diff ID@a ID@bHow a memory file changedPlanned
recurz memory search [QUERY] [--category --project]Memory files by what they say, newest change first, with what changed lastWorks today
recurz memory overviewWhat your agents know and made, at a glanceWorks today
recurz memory checkDrifted, stranded, duplicated and out-of-date instructions across agentsWorks today
recurz memory coverageHow many of your global rules each agent loads, per machine and harnessWorks today
recurz memory propose KIND --instruction TEXT [--why --title --scope]Propose a rule, skill or fact; nothing changes until a person accepts itWorks today
recurz memory history MEMORYEvery version of one memory file, and its copies on other machinesWorks today
recurz proposal list [--status --source --scope]Proposed memory edits waiting on a person, and where each came fromWorks today
recurz proposal show PROPOSALOne proposed edit and the diff of every file it would changeWorks today
recurz proposal accept PROPOSAL [--text] [--note]Accept a proposed edit and write it to the machines that opted in; only whose memory it is, or an org owner or adminWorks today
recurz proposal reject PROPOSAL [--note]Reject a proposed edit; proposing it again keeps it rejectedWorks today
recurz rollout list [--state]Accepted memory edits and where each stands on every machineWorks today
recurz fact list [QUERY] [--project]Dated facts your agents recorded about code and systemsWorks today
recurz wiki listWhat your agents know about each project, one page each, with what each page citesWorks today
recurz wiki show PAGEOne project's page: what bit agents before, how it works, its decisions and plans, every line with its sourceWorks today
recurz note list [QUERY] [--area --path]Your repo's shared agent memory: its areas, the notes that match words, or the notes about filesWorks today
recurz note show NAMEOne repo memory note in full, with a link to it at the snapshot's commitWorks today
recurz artifact list [SESSION] [--all]Files agents published, showed or sent, and uploadsWorks today
recurz artifact show IDOne artifactWorks today
recurz artifact import FILE --session ID [--name NAME] [--json]Import a file into an existing session as an account uploadWorks today
recurz artifact recover ID SESSION SEQ [--capture-sha256 SHA256] [--json]Recover a catalog entry or old captured source from publication evidenceWorks today
recurz artifact catalog ID FILE [--json]Apply a version-pinned repository-document catalog correction without deleting sourceWorks today
recurz artifact restore ID FILE [--replace-sha256 SHA256] [--json]Restore an exported source on its existing artifact recordWorks today
recurz artifact export ID [-o DIR] [--capture SEQ.SHA256]Download an artifact under its own name; never overwritesWorks today
recurz artifact bind-resources ID --capture SEQ.SHA256 ARCHIVE --archive-capture SEQ.SHA256 [--json]Attach an owner recovery archive containing byte-identical original HTMLWorks today
recurz artifact resources ID [--capture SEQ.SHA256] [--json]List original companion files from an artifact’s captured archiveWorks today
recurz artifact search [QUERY] [--category --asked --project --limit]What agents made, one line per document at its newest versionWorks today
recurz artifact lineage ARTIFACTEvery version of one document, and how each is filedWorks today
recurz retro list [--limit]What retros say to change, across sessionsWorks today
recurz retro show SESSIONOne session's retroWorks today
recurz retro run SESSIONRetro a session now; fixes land in retro showWorks today
recurz usage [--by model|harness] [--per day|week|month] [--since]Tokens and estimated cost over time; --by project|person|hour and --storage plannedWorks today
recurz org verify [--json]Check the whole org for tampering: every seal of its hash chain, its signed head and every sessionWorks today

Observerz

Live agents, findings, guardrails and alerts. About Observerz →

CommandWhat it doesStatus
recurz agent list [--window 15m] [--live]Agents and their state, one line each (top without the full screen)Works today
recurz agent show AGENTOne agent as a line of words, with its tree and tasksWorks today
recurz agent watch AGENTTail an agent's turns livePlanned
recurz agent nudge AGENT MESSAGESend a message into the running agentPlanned
recurz agent pause AGENTHold it at its next hookPlanned
recurz agent resume AGENTLet it go onPlanned
recurz agent stop AGENTEnd it at its next hookPlanned
recurz agent attach AGENTTake it over in this terminalPlanned
recurz finding list [--since 24h] [--kind loop|stall|…]Loops, stalls, hangs, early stops and risky actions, with evidenceWorks today
recurz finding show FINDINGOne finding and the fixes it suggestsWorks today
recurz finding ack FINDINGMark it seenPlanned
recurz finding dismiss FINDINGTurn it downPlanned
recurz finding resolve FINDINGMark it dealt withPlanned
recurz finding rate FINDING useful|wrong|noiseTune its detectorPlanned
recurz detector listEvery detector and what it caughtPlanned
recurz detector show DETECTOROne detector, its thresholds and hitsPlanned
recurz detector edit DETECTORChange its thresholdsPlanned
recurz guard listGuards, their mode, how often each was right, and whether it is ready to enforceWorks today
recurz guard show GUARD [--receipts N]One guard: its rules and its newest receiptsWorks today
recurz guard create NAME --when … --do nudge|block|stopA new guardrail; it starts in shadowPlanned
recurz guard edit GUARDChange a guardrailPlanned
recurz guard promote GUARDShadow to on, once one of its rules is readyWorks today
recurz guard rollback GUARDBack to shadowWorks today
recurz guard grade RECEIPT right|wrong|clearSay whether a guard was right in one receiptWorks today
recurz guard delete GUARDDelete a guardrailPlanned
recurz lesson list [-q]Scoped lessons the hook shows agents, with each one's verdictWorks today
recurz lesson add TITLE --text … [--path GLOB] [--command RE] [--error RE] [--mode M] [--share S] | --starterA new lesson, or Recurz's starter set; each starts in rollout to half of sessionsWorks today
recurz lesson propose TITLE --text … [--path GLOB] [--command RE] [--error RE] [--why TEXT]Propose a lesson for the next agent; it stays off until an owner or admin turns it onWorks today
recurz lesson edit LESSON [--title …] [--text …] [--path GLOB] [--command RE] [--error RE] [--mode rollout|on|shadow|off] [--share S]Change a lesson; new text or triggers start a new verdictWorks today
recurz lesson delete LESSON [--yes]Delete a lessonWorks today
recurz alert listAlerts raised on loops, stalls and spendPlanned
recurz alert show ALERTOne alertPlanned
recurz alert ack ALERTAcknowledge itPlanned
recurz alert rule listWhen to alertPlanned
recurz alert rule create --on KIND …A new alert rulePlanned
recurz alert rule edit RULEChange an alert rulePlanned
recurz alert rule delete RULEDelete an alert rulePlanned
recurz alert channel listWhere alerts goPlanned
recurz alert channel add pushover|email|slack|webhook …Send alerts somewhere newPlanned
recurz alert channel test CHANNELSend a test alertPlanned
recurz alert channel remove CHANNELStop sending therePlanned
recurz digest [DAY | --period week [WEEK] | --project PROJECT]The work diary: one day, a week, or where a project standsWorks today
recurz storyline list [DAY] [--pokes]The day's Storylines: your agents' work grouped by what you wanted, what is blocked, and what dropped with a drafted pokeWorks today
recurz prompt list [QUERY] [--project --day --limit]Your own prompts to your agents, newest firstWorks today
recurz idea list [-q TEXT] [--kind --status --project --scope --sort --limit]Your idea bank: things worth building, learning or exploring from your sessionsWorks today
recurz idea show IDEAOne idea and every place it came upWorks today
recurz idea add TITLE [--summary --why --kind --status --project --note --promise]Write an idea downWorks today
recurz idea edit IDEA [--title --status --note …]Change an idea's status, note or fieldsWorks today
recurz idea share IDEA [--off]Share an idea with your org, without your noteWorks today
recurz mood list [--days 30]How you sounded in your prompts and why; only you see itWorks today
recurz mood prompts [--mood --cause --directive --limit]Your labeled prompts, newest firstWorks today
recurz mood correct SESSION TURN --mood M [--cause C] | --clearCorrect one prompt's moodWorks today
recurz mood onStart labeling your promptsWorks today
recurz mood off [--yes]Stop, deleting every label; asks firstWorks today
recurz work list [--range today|7d|30d]Your projects ranked: what waits on you, each one's state, two weeks of sessions with PR days, folded countWorks today
recurz work show PROJECTOne project's brief and its open items, with stage and criteriaWorks today
recurz work days [PROJECT] [--since 90d] [--columns C,C] [--json]Projects day by day: sessions, steps, failures, spend, findings, PRs, deploys and asksWorks today
recurz work sessions PROJECT [--item ID] [--since 90d] [--limit N] [--json]A project's sessions with their steps, errors, spend, sub-agents, findings, PRs and the work items each worked onWorks today
recurz work resolve PROJECTMark a project done; it folds awayWorks today
recurz work dismiss PROJECTDrop a project; it folds awayWorks today
recurz work pin PROJECT [--off]Pin a project to the top; --off clears its markWorks today
recurz work merge PROJECT --into PROJECT [--yes]Merge one project into another; can't be undoneWorks today
recurz work rename PROJECT NAMERename a project; the model never renames it againWorks today
recurz work detectScore project detection again and refresh its suggestionsWorks today
recurz fix list [--from retro|observerz|steerz] [--repo] [--since]Every proposed change with evidence and expected savingPlanned
recurz fix show FIXOne fix, its evidence, and later whether it helpedPlanned
recurz fix apply FIX… [--pr]Make the change, as a PR with evidencePlanned
recurz fix dismiss FIXTurn it downPlanned
recurz hook HARNESSThe harness hook guardrails run throughPlanned

Steerz

Routes, policies, provider keys and models. About Steerz →

CommandWhat it doesStatus
recurz limit listSpend caps per org, product or keyPlanned
recurz limit create --scope … --monthly N --then reject|alertA new spend capPlanned
recurz limit edit LIMITChange a capPlanned
recurz limit delete LIMITDelete a capPlanned
recurz route list [--since --agent --model --cache miss] [--by reason|model|class]Which model took each call and whyPlanned
recurz route show REQUESTOne call: asked, routed, rule, cache, cost against the alternativePlanned
recurz route classify < request.jsonClass and confidence without calling a providerPlanned
recurz policy listRouting policiesPlanned
recurz policy show POLICY [--arms]A policy, its arms, quality and cost per successPlanned
recurz policy diff A BWhat differs between two policiesPlanned
recurz policy create NAMEDraft a policyPlanned
recurz policy edit POLICYEdit a draft, rewrite rules includedPlanned
recurz policy release POLICYFreeze a draftPlanned
recurz policy replay POLICY --since 30dBacktest on last month's real sessionsPlanned
recurz policy promote POLICY [--canary 10%]Put it on traffic in stagesPlanned
recurz policy rollback POLICYUndo the last promotePlanned
recurz policy delete POLICYDelete a draftPlanned
recurz provider listEvery provider Steerz routes to, and which have your own keyWorks today
recurz provider show PROVIDEROne providerPlanned
recurz provider add PROVIDER (key on stdin)Bring your own key, checked then sealedNext
recurz provider verify PROVIDERCheck the key still worksPlanned
recurz provider remove PROVIDERDelete the keyPlanned
recurz provider reset PROVIDERClose an open breakerPlanned
recurz model list [--provider P]Every model you can route to, with list pricesWorks today

Verdictz

Evals, verdicts, loadouts and studies. About Verdictz →

CommandWhat it doesStatus
recurz session rerun [SESSION] [--repo OWNER/NAME --pr N] [--world FILE] [--runs N] [--stub-model] [--minutes M] [--wait [MIN]] [--json]Rerun one of your sessions from scratch in another world: the real harness on Recurz's solve box, told your first message; each rerun is its own Tracez sessionWorks today
recurz session reruns [SESSION] [--limit N] [--json]Your session reruns, newest first: status, world, and what each didWorks today
recurz eval list [--archived] [--json]Every current eval and its task count; --archived lists the Loadoutz-era ones insteadWorks today
recurz eval show NAME [--json]One eval's versions, what changed in each, and its baseline runsWorks today
recurz eval diff NAME@v2 NAME@v3Tasks added, removed and changed between versionsPlanned
recurz eval release NAME@v3Freeze a draft versionPlanned
recurz eval login [--no-browser]Sign in to the Verdictz control plane in your browser; VERDICTZ_TOKEN overrides itWorks today
recurz eval import FILE --format github --into NAME [--new --name TITLE] [--category C] [--disclosure withheld|public] [--watch] [--json] | SOURCE --format harbor --into NAME [--new --name TITLE] [--disclosure withheld|public] [--tasks K,…] [--limit N] [--skip-checks] [--watch] [--json]Bring GitHub pull requests and issues into a draft version, one task each, or a Harbor suite (a folder, a .tar.gz, hf:, harbor:, prime: or github:), checked in Docker and held for reviewWorks today
recurz eval import show ID [--watch] [--json]Where one import stands: each URL's state, reason and taskWorks today
recurz eval export NAME@v2 --format harbor -o DIRWrite a version outPlanned
recurz eval check SOURCE --format harbor [--tasks K,…] [--limit N] [--json]Which Harbor tasks fit, and whether each one's reference solution passes and its untouched workspace fails, in Docker; no import, no model callsWorks today
recurz eval run NAME[@v] --baseline LOADOUT --candidate LOADOUT --question Q [--effect 5pp] [--tasks N] [--trials 1|3] [--live MODEL] [--stop-early [--batch N]] [--visibility org|team|private] [--yes] [--json] | PLAN [--yes] | --proposal ID [--held-out | --round-confirm | --confirm EVAL] [--tasks N] [--trials 1|3] [--stop-early] [--yes]Draft a verdict of one loadout against another (or read a plan file, or test a climb's proposal over its whole pool, by default 3 runs per arm for a selection round or round confirmation and 1 for a held-out check), show the exact quote with tasks and runs per arm, and start it once you say yes; --stop-early looks after each batch of tasks and stops on a clear answer, once the simulator passes the designWorks today
recurz eval live create NAME@v --runs RUN,… [--min-attempts 2] [--full-every 5] [--yes] [--json]Save the tasks a model sometimes solves and sometimes misses in those runs as a live-task set, after showing the tallyWorks today
recurz eval live list NAME [--json]An eval's live-task sets: model, harness, live tasks out of all, and whether a full pass is due or the set is staleWorks today
recurz eval climb create NAME[@v] --from LOADOUT [--live MODEL] [--rounds 6] [--seed N] [--yes] [--json]Freeze a split of an eval version into selection and held-out tasks and start a climb from a loadout, after showing the split; spends nothingWorks today
recurz eval climb list NAME [--json]Your climbs on an eval: rounds spent, adoptions and statusWorks today
recurz eval climb show ID [--json]One climb: the split, the incumbent, proposer spend and the rounds table (proposal, mechanism, hypothesis, leak, status, selection result, verdict)Works today
recurz eval proposal run --climb ID [--proposer model|scripted|random] [--max-cost USD] [--seed N] [--yes] [--json]Ask a proposer for the climb's next change; the model proposer (administrators) quotes its cap and asks first, scripted and random are freeWorks today
recurz eval proposal list --climb ID [--json]A climb's proposals and where each standsWorks today
recurz eval proposal show ID [--diff] [--json]One proposal: its hypothesis, cited evidence and leak scan, and with --diff the change itselfWorks today
recurz eval proposal dismiss ID --why TEXT [--json]Turn a proposal down so it is not proposed againWorks today
recurz eval simulate NAME[@v] [--model M | --runs RUN,… | --bank reference] [--design pool-one | --tasks all|live|fresh:N --control-runs N --treatment-runs N --pool --keep-rule zero|useful] [--effects 0,10,15,20,-10] [--scope all|live] [--studies 500] [--seed N] [--climb 4|8 [--planted 15]] [--proposer scripted|random [--climb-preset climb-proof] [--rounds 4] [--sabotage 3] [--signal 0.6] [--null-library] [--harm-scale 3] [--round-runs 1|3] [--round-stop-early] [--selection-pool live|full] [--bank-copies N] [--climb-fixture rust|python]] [--stop-early [--batch N]] [--dry-run] [--json]Size a study design before paying for it: how often it calls a no-op a win, finds a planted gain, holds the true effect in its interval, and what that costs, simulated on recorded outcomes; --stop-early adds what stopping early saves and loses, and --proposer --climb-preset climb-proof simulates the climb setting that recovers a sabotaged setupWorks today
recurz eval scorecard [NAME@v] [--simulate [--model M]] [--strict] [--json]Whether the engine works: each check (graders, false wins, detection, coverage, judges, leaks), its latest result and evidence, or what is missing; --strict exits 1 on a failWorks today
recurz eval leak-check NAME[@v] --loadout OWNER/NAME[@REV] [--json]Whether a loadout carries the eval's task material (ids, pull requests, prompts, hidden test names, reference fix), as a verdict's preparation checks it; exits 1 on a blockWorks today
recurz eval compare NAME[@v] [--by category] [--view overall|value] [--limit N] [--json]Leaderboard of every public loadout on an eval's current versionWorks today
recurz eval plan create NAME@v --bar 1pp --expect 6ppSize a study before paying for itPlanned
recurz eval plan show HASHA frozen plan and its hashPlanned
recurz eval plan verify RUNCheck a run followed its planPlanned
recurz eval task list NAME@v [--candidates]Tasks, and tasks mined from repo historyPlanned
recurz eval task show TASKOne taskPlanned
recurz eval task create NAME@v --from FINDING | --from-github REPOA task from an Observerz finding or a repoPlanned
recurz eval label create NAME@vBlind hand labelling in the terminalPlanned
recurz eval label list NAME@v | --set SETHand labelsPlanned
recurz eval label export NAME@v -o FILEHand labels as JSONLPlanned
recurz eval label suggest NAME@v [--json]Failure modes a model suggests from your hand labels, for you to accept, merge or renamePlanned
recurz eval grader list NAME@v | --set SETGrader report cardsPlanned
recurz eval scan RUN [--json]Attempts that may not count, by fixed rules: edits to tests or protected paths, time limits, tool or sandbox errors, giving upPlanned
recurz bench quote PLAN.json | --verdict ID | --eval NAME[@v] --a LOADOUT --b LOADOUT [--question Q] [--effect 5pp] [--tasks N] [--trials 1|3] [--label-a A] [--label-b B] [--visibility org|team|private] [--json]Freeze a bench plan (a plan file, a prepared verdict, or two loadouts on an eval) and print its quote: subject, A and B by hash, trials, price (measured by a noise drill or an estimate) and the chance of a clear answer with its give or take; spends nothingWorks today
recurz bench run PLAN.json | --verdict ID | --eval NAME[@v] --a LOADOUT --b LOADOUT [...] | --plan SHA [--approve USD] [--yes] [--json] | --local PLAN.json --cases FILE [--out DIR] [--approve USD]Quote a bench run of B against A, ask, then start it; --plan starts a plan quoted earlier and needs --approve; --local runs a command verdict's plan from New verdict on this machine and seals its record, with nothing spent through RecurzWorks today
recurz bench show ID [--trials] [--record] [--claims] [--json]One bench run: the verdict with its interval, wins, losses and ties, the quote, spend and events; --trials prints the ledger, --record the sealed record, --claims the four claims it supports with their checksWorks today
recurz bench list [--subject S] [--state approved|running|sealed|cancelled|failed] [--limit N] [--json]Bench runs you can read, newest first, with each one's verdictWorks today
recurz bench subjects [--json]The model calls Bench can run on jobz (call:<feature>), each with its arms and what serves them, and the models an arm may nameWorks today
recurz bench register FEATURE --arm LABEL=MODEL... [--grader FILE.json] [--per-call USD] [--json]Register a model call as a bench subject, or add arms to one you registered, with no PR; spends nothingWorks today
recurz bench grader add FILE.js --id ID --metrics M,... --drill DRILL.json [--version V] [--json]Upload a grader script for call subjects with the drill it must pass, and print its sha256; spends nothingWorks today
recurz bench grader show SHA256 [--json]One grader script: its metrics and its drill's state, with any case it missedWorks today
recurz bench import DIR|RECORD.json [--ledger FILE] [--visibility org|team|private] [--json]Hand in a bench record sealed somewhere else (a Squadz study, the kernel's local bench run), after checking it hereWorks today
recurz bench verify DIR|RECORD.json [--ledger FILE] | --run ID [--json]Check a sealed record offline: re-walk its ledger's hash chain, check the plan, approval and record hashes, and recompute the verdict from the trialsWorks today
recurz verdict list [--eval NAME] [--archived] [--mine] [--limit N] [--json]Your verdicts and the ones shared with you, newest first; --archived lists the Loadoutz-era runs insteadWorks today
recurz verdict cap [--set USD [--plan SHA]] [--json]Your org's spend cap per verdict and who set it; owners and admins set it, or raise it for one frozen planWorks today
recurz verdict show ID [--tasks] [--flips] [--failures] [--checks] [--looks] [--require kept|no-worse|to-confirm|smaller-than-asked|not-settled|harmful] [--json]Kept, no worse, to confirm, smaller than asked, not settled or harmful, with the effect's range; --looks shows each look of a verdict that may stop early; --require exits 4 when it isn'tWorks today
recurz verdict compare RUN RUNTwo runs head to headPlanned
recurz verdict trace RUN TASKBoth arms' traces for one taskNext
recurz verdict export ID --format html -o FILEA verdict as one HTML report to read offlinePlanned
recurz verdict live list [--json]Your org's routing verdicts on live traffic, newest first, with each one's rule and stateWorks today
recurz verdict live preview --model MODEL [--kind KIND] [--try MODEL] [--json]What a Steerz routing rule would have caught last week, from Steerz's record; no model is calledWorks today
recurz verdict live plan --model MODEL [--kind KIND] --try MODEL --bar POINTS [--title TEXT] [--base-rate SHARE] [--json]Freeze a routing verdict on live traffic: the rule, the model to try and the bar; nothing is installed or spentWorks today
recurz verdict live start ID [--json]Install a frozen routing verdict's rule in Steerz and start the split (owners and admins)Works today
recurz verdict live show ID [--rule] [--json]A live routing verdict: settled sessions per side, the every-look range and the checksWorks today
recurz verdict live stop ID [--reason TEXT] [--json]Stop a live routing verdict and remove its rule from Steerz (owners and admins)Works today
recurz verdict live propose ID [--json]After a win, propose the route in Steerz; it stays off until an owner or admin turns it on (owners and admins)Works today
recurz experiment list [--json]Random session split experiments in this repo: draft, running or stoppedWorks today
recurz experiment show ID [--json]One experiment's arms and outcomes, and how to read its verdict from TracezWorks today
recurz experiment checkCheck every experiment file the way the session-start hook doesWorks today
recurz experiment run IDStart a draft experiment: new sessions get an arm once the file is mergedWorks today
recurz experiment stop IDEnd a running experimentWorks today
recurz loadout list [--json]Your loadouts, each published version with the id a plan namesWorks today
recurz loadout show OWNER/NAMEOne loadout: skills, instructions, compatibilityPlanned
recurz loadout diff A BWhat differs between two loadoutsPlanned
recurz loadout create --from-agentStart one from what your agent already usesPlanned
recurz loadout edit OWNER/NAMEChange a draft loadoutPlanned
recurz loadout release OWNER/NAMEFreeze it so results can point at itPlanned
recurz loadout export OWNER/NAME -o DIRWrite it to a folderPlanned
recurz study listPublished, frozen study resultsNext
recurz study show STUDYOne studyNext
recurz ladder list [--json]The ladders you can read, each with its championWorks today
recurz ladder show LADDER [--holdback] [--json]A ladder's champion, gain over its start, governor, budget and digest; --holdback reads it against the frozen startWorks today
recurz ladder create SPEC.json [--share-with-org] [--json]Open a hosted ladder from a spec; it runs nothing until recurz ladder run approves a weekly amountWorks today
recurz ladder run LADDER [--per-week USD] [--force] [--yes] [--json]Step a ladder now, first approving it to spend up to --per-week a week when given (asks unless --yes)Works today
recurz ladder pause LADDER --why TEXTStop a ladder starting laps; recurz ladder resume starts them againWorks today
recurz ladder resume LADDERLet a paused ladder start laps againWorks today
recurz ladder mirror DIR|JOURNAL [--last TEXT] [--private] [--json]Show a ladder run on a box on Verdictz: sends its journal as you are signed in, shared with your org unless --privateWorks today
recurz ladder rung list [--ladder LADDER] [--json]Every subject's champion, or one ladder's rungs, with the verdict behind each, what Watch has seen and its claimsWorks today
recurz ladder rung revoke LADDER --why TEXT [--yes]Take back a ladder's top rung; the ladder steps down to the one before itWorks today

Account and org

Machines, members, credits, events, webhooks and settings.

CommandWhat it doesStatus
recurz org listOrgs you belong toWorks today
recurz org use ORGThe default org for later commandsPlanned
recurz org show [ORG]One org: its region, members and your roleWorks today
recurz org edit [--retention 365d --region]Change org settingsPlanned
recurz member listPeople in the orgPlanned
recurz member invite EMAIL --roleInvite someonePlanned
recurz member edit MEMBER --roleChange a rolePlanned
recurz member remove MEMBERRemove someonePlanned
recurz app listInstalled apps and what data each may readNext
recurz app install APP --data sessions:allInstall an app with a data policyNext
recurz app uninstall APPUninstall an appNext
recurz credit listCredit balance and what spent itWorks today
recurz credit buy NTop up (today on recurz.ai/signup/credits/, not through the API)Planned
recurz invoice listOne bill across productsPlanned
recurz invoice show INVOICE [--pdf -o FILE]One invoicePlanned
recurz story list [--needs-you] [--since]News stories from the event fabric (what feed and inbox show)Works today
recurz story show STORYOne storyWorks today
recurz story dismiss STORYTake a story out of the feed for everyoneWorks today
recurz story react STORY EMOJIReact to a storyWorks today
recurz event list [--type tracez.session.*] [--since 24h] [-f]The raw per-org event log; -f keeps printing new events as the API pushes themWorks today
recurz event show EVENTOne eventPlanned
recurz webhook listEndpoints that receive eventsWorks today
recurz webhook show WEBHOOKOne endpoint, and why it is failing or offWorks today
recurz webhook create URL --events [--description]A new webhook; prints its signing secret onceWorks today
recurz webhook edit WEBHOOK [--url] [--events] [--description] [--enable|--disable]Change a webhookWorks today
recurz webhook delete WEBHOOK [--yes]Delete a webhook (asks first)Works today
recurz webhook test WEBHOOKSend a test deliveryWorks today
recurz webhook replay WEBHOOK [--after SEQ] [--limit]Deliver the org's events againWorks today
recurz webhook rotate WEBHOOK [--yes]Replace its signing secret (asks first)Works today
recurz webhook deliveries WEBHOOK [--limit]Its delivery log, newest firstWorks today
recurz audit list [-f]Every admin changePlanned
recurz run list [--running] [--product]Every long job on every productPlanned
recurz run show RUNOne jobPlanned
recurz run watch RUNFollow a job until it endsPlanned
recurz run cancel RUNCancel a jobPlanned
recurz share create ID [--turns 40..45]A read-only, redaction-aware linkPlanned
recurz share listLinks you sharedPlanned
recurz share revoke SHAREEnd a linkPlanned
recurz config listLocal settingsPlanned
recurz config get KEYOne local settingPlanned
recurz config set KEY VALUEChange a local settingPlanned
recurz config unset KEYClear a local settingPlanned
recurz completion bash|zsh|fishShell completionPlanned
recurz updateInstall the newest recurzPlanned
recurz mcp [--all] [--channel [TYPES]]Recurz's MCP tools over stdio with this sign-in, for harnesses that start MCP servers as a command (the agent profile; --all for every product's tools; --channel pushes each new org event into a Claude Code session)Works today
recurz statusline [--shell]A statusline or prompt segment: cost, cache, route, inboxPlanned
recurz api TOOL [JSON]Any Recurz API tool's raw JSONWorks today

Works today In the recurz binary now. Next The service does it today; the command is being wired up. Planned Designed, not built yet. Run recurz help for the commands in your version.