Two things here come from real annoyance rather than a feature list. The UI prints what each tool actually returned to the model, which is the only way to diagnose an agent that has quietly drifted. And the format-on-save reconciliation fixes a failure mode almost nobody handles: your formatter rewrites the file, the model's search block no longer matches, and every subsequent edit fails for a reason that looks like nothing.
An autonomous coding agent that reads, searches, edits and runs commands over your codebase, written in Rust and shipping four ways to use it: a native GUI built on Zed's GPUI, a terminal mode, an ACP agent for editors like Zed, and a headless MCP server for clients like Claude Desktop.
- A UI that shows which tools ran and what each handed back as context, instead of a collapsed "called 5 tools" — when the agent goes wrong you can see where
- File edits reconciled with your formatter: when a project auto-formats on save, the agent's picture of a file goes stale and later edits fail for non-obvious reasons; it runs the formatter and reconciles the model's own edits against the result without re-reading the file — `replace_in_file`, `write_file`
- File reads that preserve encoding, BOM and CRLF/LF, giving the model clean text and writing it back the way it was stored
- Documents as first-class input — Word, Excel, PowerPoint and PDF are consumed as Markdown, so the agent can work from a spec alongside the source
- Command execution and directory listing under permission tiers and a command sandbox — `execute_command`, `list_files`
- Optional web search through `perplexity_ask`, enabled by setting `perplexity_api_key`
- Streaming with filtering that blocks unsafe tool combinations, such as editing a file the model has not read
- Sub-agents, per-project sessions with branching and persistent state, and automatic context compaction when the window fills
- MCP client mode as well as server mode — it can consume other MCP servers' tools while exposing its own
- Adaptive tool syntax chosen per session — native function calling, XML tags or triple-caret blocks — to fit the model in use
A prebuilt binary from the Releases page for macOS (Apple Silicon or Intel), Linux or Windows — no toolchain needed. On first launch it opens a Settings screen where you pick a provider, paste an API key and choose a model. Building from source needs the Rust toolchain, plus the gpui system libraries on Debian/Ubuntu and the Metal toolchain on macOS; the binary lands at `target/release/code-assistant`. For MCP, point your client at the binary with the `server` argument. Providers include Anthropic, OpenAI, Google Vertex AI, Ollama, OpenRouter, SAP AI Core, Groq, Cerebras and Mistral.
One command plus a key — code-assistant server, then supply credentials
