Getting Started

Install stella, set a provider key, start your repo, and run your first change. Takes under five minutes.

Quick path

  1. Install stella.
  2. Set a provider key.
  3. Start your repo.
  4. Run a task.

Need a provider besides the big ones? OpenRouter, local servers, Vertex, Bedrock, and custom gateways are covered in Providers & models.

From empty shell to first changeinstallone curl | shauthenticateexport one keyinitlearn the reporunship a changeabout two minutes, end to end — no account, no proxy

Want the whole thing in one block? Paste this:

# 1. Install.
curl -fsSL https://stella.oxagen.sh/install.sh | sh

# 2. Bring your own key — any one provider will do.
export ANTHROPIC_API_KEY="sk-ant-..."

# 3. From inside a git repository: learn the codebase.
stella init

# 4. Ship something.
stella run "explain what this repository does, then list the riskiest files"

1. Set an API key

stella is bring-your-own-key. Export a key for any provider, and stella finds it for you:

export ANTHROPIC_API_KEY=your_key_here   # or OPENAI_API_KEY, GEMINI_API_KEY, ZAI_API_KEY, …

No key handy? Point stella at a local OpenAI-compatible server instead. See Providers & models.

Confirm what stella resolved:

stella config    # provider, model, redacted key, base URL, workspace

From inside a project directory:

stella init

This scans your code, builds a searchable map called the code graph, and guesses your project's domains (like auth, storage, api). See Repo initialization for details. It's optional and works offline, but every session after this one will be smarter for it.

3. Run once

stella run does one task and prints the result. No back-and-forth. By default it uses a single, raw step loop. Add --pipeline <variant> to run it through an installed wrapper plugin instead. It can read files, run commands, and edit code as it works.

stella run "explain what this repository does, then list the riskiest files"

4. Chat

Run stella with no arguments to open the Command Deck, a tabbed terminal window. Want a simpler view? Pass --plain (or set STELLA_PLAIN=1) for a plain, line-by-line chat instead:

stella

Type a message to send it. Type a slash command to open a tab. Here are the ones worth knowing on day one:

/help
Show help.
/models
List providers and models.
/files
Files changed this session.
/diff
Review the working diff.
/graph
The code-graph tab.
/skills
The skills tab.
/mcp
The MCP tab — enable and disable servers.
/clear
Clear the session.

Press Ctrl-C to quit. This is a partial list. See stella chat for the full command set for the deck, and the smaller one for the plain REPL.

5. Give it a goal

Goal mode runs in rounds. After each round, a separate verifier model checks the evidence and confirms whether the goal is actually met. It won't stop just because the worker says it's done:

stella goal "the test suite passes and there are no clippy warnings"

See Goal mode for how the verifier is chosen and how the loop ends.

6. Pin a model (optional)

By default stella auto-detects the provider. Pin one explicitly with --model:

stella --model anthropic/claude-fable-5 run "refactor the database layer"
stella --model zai/glm-5.2 goal "CI is green on the current branch"

Where to go next

The fastest next step is a real task, not another reference page:

When you want more detail:

  • Providers & models — the full provider matrix and the credential chain.
  • Plugins — how work gets verified, not just done.
  • Agent modes — deck, run, goal, monitor, fleet: which to use when.
  • Configuration — settings.json, per-agent models, credentials.
  • Scripting — run stella headlessly in CI with JSON output.