Stelladocs
Commands

stella run

Send a single one-shot prompt to Stella non-interactively.

Send a one-shot prompt and let the agent work to completion without any interactive back-and-forth. This is the command to reach for in scripts, CI jobs, and Git hooks.

Synopsis

stella run <prompt> [--no-pipeline] [--test-command <CMD>] [global flags]

What it does

By default stella run sends the prompt through the staged pipeline — triage, plan, execute, verify, judge — and exits when the task is done. There is no REPL and no prompt for further input; it is the non-interactive counterpart to stella chat.

Pass --no-pipeline to fall back to the raw step loop instead: the model proposes tool calls, the tools execute, results feed back, and the loop repeats until the model stops proposing actions.

Because it is non-interactive, stella run is the natural place to combine --output-format json or --output-format stream-json for headless automation, and --budget for a hard spend cap.

stella run uses the same tools, providers, and credential chain as every other command. All global flags apply.

Flags

stella run adds two command-specific flags on top of the global flags:

FlagMeaning
--no-pipelineUse the raw step loop instead of the staged pipeline (triage, plan, execute, verify, judge).
--test-command <CMD>The test command the pipeline's verify stage runs (e.g. "cargo test -p my-crate"). Arms the fail→pass flip oracle: a change that flips a failing test to passing can submit without a model-judge call. Omitted, verification always escalates to the judge.

The most relevant global flags here:

FlagWhy it matters here
--model <provider/model_id>Pin the worker model instead of relying on auto-detection.
--output-format <text|json|stream-json>Use json or stream-json for machine-readable, headless output. Place it before the subcommand: stella --output-format json run "…".
--budget <usd>Cap total spend for the run; work aborts cleanly once the cap is exceeded.

Examples

Run a simple one-shot task with the default (auto-detected) model:

stella run "Add a docstring to every public function in src/utils.py"

Pin a specific model and emit a single JSON object for a script to parse. Global flags go before the run subcommand:

stella --model anthropic/claude-fable-5 --output-format json \
  run "Summarize the changes on this branch"

Cap spend at two US dollars and stream events as they happen (useful in CI logs):

stella --output-format stream-json --budget 2.00 \
  run "Fix the failing unit tests in the payments module"

Point at a local OpenAI-compatible server:

stella --model local/llama3.3 --base-url http://localhost:11434/v1 \
  run "Explain what main.rs does"

Stella is totally free and open source, dual-licensed MIT or Apache 2.0— your choice: MIT's three-paragraph simplicity, or Apache 2.0's explicit patent grant that enterprises prefer. Use it, fork it, embed it, ship it — no account, no phone-home, no strings. What that means →

On this page