Chat + streaming tool use
Tokens land as they arrive; tool calls stream inline.
Mira reads your code, edits files, runs commands, and reviews diffs — from a terminal. Bring your own model. Sessions live as plain files on disk. No hosted control plane, no vector DB, no telemetry.
A coding agent should be something you can read the source of, edit, and turn off.
Your key, your model, your machine. Sessions and configuration live as plain files on disk. No hosted control plane. No vector database. No telemetry.
Tools, permissions, history, and subagents are shared infrastructure — not scaffolding you rebuild per agent. New capabilities are additions on top of the loop.
A small DSL — Bash(cargo test:*), Edit(src/**) — decides what the model may do without asking, what needs approval, and what is off-limits.
Each cell is a pixel-approximation of what you actually see when the feature runs — same colors, same characters.
Tokens land as they arrive; tool calls stream inline.
Shift+Tab cycles the permission budget for the loop.
Every write is a proposed patch you accept per hunk.
Spawn a parallel agent on a scratch branch, discard freely.
What Mira remembers is a folder you can grep.
Every apply is journaled. u rewinds the last one.
Any MCP tool shows up as first-class in the loop.
A directory of prompts becomes a slash command.
Same session, TUI or localhost — pick per moment.
One command drops inline comments on a PR.
Close the terminal, pick it back up tomorrow.
The plumbing an editor already assumes.
Swap providers mid-session with /model. Local runtimes are first-class — no proxy required.
Everything after this line is a file on your disk.
Mira picks up the git root, loads your policy, and drops you in with the last session.