Docs

Point any tool at the srooter gateway in one line β€” then drive it with the first-party srooter-agent CLI: autonomous loops, multi-step workflows, sub-agents, MCP, code-graph grounding, and multi-model review.

What's new

  • Jul 2026 Β· new model

    Kimi K3 (kimi-k3) β€” Moonshot's flagship, now routable

    2.8T params, up to 1M context, native visual understanding. In our agent-build benchmark it hit 8/8 with 5/5 UI polish β€” matching Opus, Fable, and GPT-5.6-sol β€” in the fewest iterations, at ~$3.60/build (half of Opus, a third of Fable). It's the cheapest 5/5 of the nine models tested β€” the new value leader of the top tier. See the benchmark β†’

Getting started

srooter exposes two universal endpoints β€” Anthropic-native at /anthropic/v1/messages and OpenAI-compatible at /v1/chat/completions. Point your existing tool at one of them and you get routing, budgets, policy, and an audit log for free β€” nothing else in your workflow changes.

Claude Code

ANTHROPIC_BASE_URL=https://api.srooter.ai/anthropic
ANTHROPIC_API_KEY=srt_xxx_yyy

Codex / aider / any OpenAI client

OPENAI_BASE_URL=https://api.srooter.ai/v1
OPENAI_API_KEY=srt_xxx_yyy

Get a key from the dashboard (OTP login auto-provisions your org). The in-app Getting started page has one-command srooterctl wiring for every tool.

srooter Studio β€” the desktop app

Prefer a native app to the CLI? srooter> Studio is a macOS app for the whole development loop through srooter β€” no environment changes, TDD + functional + visual validation by default, and a codebase the agent actually understands. Every request still runs through the gateway (routing, budgets, policy, audit). Signed & notarized Β· AppleΒ Silicon + Intel.

↓ Download for Mac
srooter Studio welcome β€” the mental model
The mental model: srooter routes every task; tasks are conversations; isolated worktrees keep parallel work clean; validation means done; knowledge grounds the agent; the Council is a review you can argue with.

Five surfaces, one window:

  • Tasks β€” point at a project, describe what you want; an agent works it as a live chat, streaming its reasoning and asking permission before it acts. Run several in parallel (shared tree or isolated worktree).
  • Knowledge β€” the cortex code graph + Mnemos session memory; auto-indexes on open so the agent starts oriented, not cold. Refresh the Agent Codemap here too.
  • Council β€” five model seats grounded in real SDLC frameworks (SOLID, C4, OWASP, the Test Pyramid…) deliberate, surface where they disagree, and you can push back.
  • Reviews β€” paste a GitHub PR link (or review your local diff) for a grounded council review.
  • Routing β€” see which model each tier routes to and why (read-only; edit on the web dashboard).
srooter Studio β€” Council surface
Council β€” a review you can argue with.
srooter Studio β€” Knowledge surface
Knowledge β€” the cortex code graph + session memory.

New here? The Getting started guide walks through install + your first task.

The srooter-agent CLI

A first-party coding agent that runs through the gateway, so it inherits the same routing, budgets, policy, audit, and cortex. Install it with one command from any directory β€” like claude or codex. Needs Node 20+.

curl -fsSL https://api.srooter.ai/agent.sh | bash

Configure (flags β†’ env β†’ ~/.srooter/config)

export SROOTER_API_KEY=srt_…
export SROOTER_URL=https://api.srooter.ai
export SROOTER_MODEL=claude-opus      # optional
export SROOTER_PROJECT=acme/api       # optional: cortex project to ground in

Use

srooter-agent doctor                 # check gateway + key (no generation)
srooter-agent -- "summarize src/index.ts"   # one-shot, CI-friendly
srooter-agent                        # interactive REPL

Permissions: read-only tools always run; write/shell tools prompt for approval in the REPL ([y] once, [a] always, [n] deny). In non-interactive runs they are denied unless you pass --dangerously-allow-all.

Command reference

Slash commands (REPL)

/helpList every command.
/model [id]Show or switch the active model.
/contextToken usage + spend for this session.
/configShow the resolved gateway + key + model.
/doctorCheck the gateway is reachable and your key works.
/clearClear the on-screen transcript.
/cortex <query>Search your org code graph over the gateway.
/review [base]Send the branch diff to the multi-model review council.
/loop <task>Run a task autonomously, heartbeat-bounded.
/monitorLocal sessions, token totals, spend, scheduled count.
/schedule …add / list / rm cron-scheduled prompts.
/workflow <file>Run a multi-step JSON workflow (steps as sub-agents).

Flags

--continueResume the latest session.
--model <id>Pick the model for this run.
--gateway <url>Override the gateway URL.
--pinServe the requested model verbatim (skip routing) β€” for benchmarks.
--max-turns <n>Cap autonomous turns.
--dangerously-allow-allSkip permission prompts (unattended / CI).

Autonomy & orchestration

/loop <task> β€” runs a task autonomously. After each turn the gateway heartbeat decides whether the agent stopped prematurely and should keep going, injecting its nudge as the next turn. It is server-bounded by a per-session budget (not a blind client loop), capped at 25 iterations.

Sub-agents β€” the model can call run_subagent to delegate a focused subtask to a fresh child agent: its own context, the same tools, one level of nesting (no recursion). The child is non-interactive, so side-effecting tools only run when the parent granted allow-all. Great for bounded research or parallelizable work you don't want cluttering the main context.

MCP (on by default) β€” configure servers in ~/.srooter/mcp.json (user) and .mcp.json (project). Their tools load automatically as server__tool, permission-gated like any write tool. A broken server is logged and skipped, never fatal.

Ops, scheduling & workflows

srooter-agent monitor            # sessions, token totals, spend, scheduled count
srooter-agent schedule           # fire any due scheduled tasks once (cron tick)
srooter-agent schedule run       # foreground scheduler: tick every minute
srooter-agent workflow wf.json   # run a multi-step workflow

/schedule β€” add <m h dom mon dow> :: <prompt> Β· list Β· rm <id>. Stored in ~/.srooter/agent/schedule.json; fire them with schedule (one tick β€” wire to system cron) or schedule run (foreground).

/workflow <file> β€” a JSON of steps { name, steps: [{ id, prompt, dependsOn? }] }. Steps run in dependency order (independent steps in a level run concurrently); a step prompt can reference an earlier step's output with {{stepId}}. Each step runs as a sub-agent.

Cortex & review

Cortex β€” the model can call a search_cortex tool that queries your org's code graph over the gateway, so it grounds in real symbols, not just local grep. /cortex <query> runs it directly. Needs an indexed project (SROOTER_PROJECT).

Review β€” /review [base] (default origin/main) sends the branch diff to the gateway's multi-model review council and prints the verdict (conclusion + file:line findings). Your code never leaves the repo beyond the diff; the council reads, it doesn't run your code. See srooter review.

Routing rules

srooter classifies every request into a tier and routes it to the model you've assigned. You never change your tool's model β€” srooter picks the right one per request. Defaults:

trivialCommits, formatting, housekeeping β†’ cerebras (fast/cheap).
substantiveThe main coding tier β†’ glm (the everyday workhorse).
long_contextConversations over the token threshold (default 60k) β†’ glm.
thinkExplicit extended-thinking requests β†’ deepseek-pro.
architecture / securityHigh-stakes intents β†’ the council chief (claude-opus).

Change them in your dashboard at Routing: pick the model per tier, the intent-classifier model, the council members, and the long-context threshold. A live preview scores your config on speed / cost / quality and the blended $/1k tokens, with a baseline comparison against running one frontier model for everything. Changes apply to new requests; reset to srooter defaults anytime. Hard caps β€” model allowlists, max reasoning effort, speed tier β€” live under Policies.

Cortex code graph

Cortex is an iCPG (intelligent code property graph) β€” your org's knowledge of its own code: symbols, dependency edges, and intent pulled from docstrings. Once indexed, coding sessions can ask "where is X" and get answered from the graph, blast-radius is known, and risk reviews are grounded in real structure instead of guesses.

srooter cortex build .         # index this repo (project auto-detected)
srooterctl cortex .            # same, using your saved key + gateway
srooter cortex build . --force # force a re-index
srooterctl cortex-hook on      # auto-index on every Claude Code session
srooterctl doctor             # verify ("cortex auto-index: OK")

Browse it in your dashboard at Cortex β€” search across code / intent / memory, a clustered graph view, stats, and the intent nodes (goals, invariants, decisions) captured from your code.

Agent Codemap

A CODEMAP.md is a machine-first map an AI agent reads first to orient in a repo β€” what the system is, where things live, how a request flows, and the invariants not to break β€” instead of burning dozens of tool calls crawling the tree. Where AGENTS.md / CLAUDE.md give the agent the rules, the Codemap gives it the map. srooter generates it from your code graph so it stays fresh β€” and any agent (Claude Code, Codex, Cursor, Windsurf, OpenCode) reads the same format.

srooter cortex codemap .           # preview a fresh map (stdout)
srooter cortex codemap . --write   # write / refresh CODEMAP.md
srooter cortex codemap . --check   # validate anchors + freshness (exit 1 on error)
srooterctl codemap .               # same, using your saved key
# also: /codemap in the srooter-agent REPL Β· Studio -> Knowledge -> Refresh CODEMAP.md

The generator owns the deterministic sections (architecture, module map, danger zones) and drafts the rest with confidence markers for you to curate. --check gates writes and runs on session start, so a stale or broken map is caught β€” never silently trusted. See ADR-067.

Skills

Skills inject your engineering practices into the model, per intent. srooter ships four default skills:

tdd-enforcerStrict TDD: RED β†’ GREEN β†’ VALIDATE, β‰₯80% coverage.
security-baselineNo hardcoded secrets, parameterized queries, bcrypt/argon2, input validation.
quality-gates≀20 lines/function, ≀3 params, ≀2 nesting, ≀200 lines/file.
python-conventionsType hints, Pydantic, pytest, ruff + mypy, pathlib.

Skill-aware routing also matches high-craft one-shot asks β€” a slide deck, dashboard, landing page, or polished doc β€” to a capability skill that injects a polished-artifact scaffold and can upgrade the model for that request. Define your own org-wide skills (name, directive, intents, soft / hard enforcement, priority) at Skills, and personal ones β€” layered on top of org policy, never overriding governance β€” at My skills.

Session memory

Mnemos is srooter's working memory per coding session. As you work it captures goals, constraints, errors, decisions, and result checkpoints β€” and consolidates them as the session gets long β€” so the model stays grounded in the session's actual state instead of thrashing on raw message history. It gives a long session a warm cold-start and recall across sessions.

Inspect it in your dashboard at Mnemos β€” sessions with their latest checkpoint (goal, active constraints, a fatigue score) and the typed nodes (Goal Β· Constraint Β· Error Β· Decision Β· Result).

Risk reviews

Risk reviews catch changes that touch sensitive surfaces β€” auth, tenant scoping, secrets. A fast guard model scores each change out-of-band; when the score is high, Opus validates the approach and injects a corrective nudge into the agent's next turn, so the session self-corrects before the code ships. Nothing blocks the developer β€” it steers.

Review events in your dashboard at Risk β€” each shows a severity, the findings (which dimensions fired, with evidence), the Opus nudge, and buttons to mark the outcome (confirmed / incident / dismissed / trivial) so the threshold tunes to your codebase.

Get a key and start routing

OTP login auto-provisions your org β€” point your tool at the gateway and every turn lands in your audit log.

Get started
Docs β€” getting started & CLI guide Β· srooter