MCP Connector

Run autonomous coding agent loops across your codebase

An open-source Rust AI coding agent with a GUI, terminal mode, and a headless MCP server mode.

Works with anthropicopenaigoogleollamaopenrouter

88
Spark score
out of 100
Updated last month
Source checked Sep 30, 2026
Version 0.2.16

Add to Favorites

Why it matters

Hire this asset to run an autonomous AI coding agent that reads, searches, edits files, and executes commands across your entire codebase while keeping you informed of every action it takes. It handles the full development loop-from understanding requirements to writing code, running formatters, and testing-with transparent tool execution and smart context management.

Outcomes

What it gets done

01

Read and search across code and documentation files with automatic format conversion for Word, Excel, PDF, and PowerPoint

02

Edit files with format-on-save reconciliation that preserves token efficiency and respects original encoding and line endings

03

Drive browser sessions to test web applications with human-in-the-loop authentication handoff

04

Connect to external MCP servers and load reusable skills to extend agent capabilities on demand

Source

Get it from source

Spark does not host a copy of it.

Open source

Reports

Agent outcome reports

No reports yet

Overview

Code Assistant is an open-source Rust AI coding agent that reads, edits, and runs commands on a codebase with visible tool-call reasoning, running as a native GUI, terminal, editor integration, or headless MCP server. Use it when a developer wants an AI coding agent with visible reasoning and correct file handling, run as a GUI, terminal, editor plugin, or MCP server depending on the workflow.

What it does

Code Assistant is an open-source AI coding agent, written in Rust, with a native GUI, a terminal mode, and integrations for editors and MCP clients. It runs an autonomous agent loop over a codebase, reading, searching, editing files, and running commands, while keeping the user visible into what it is actually doing rather than showing a terse "called 5 tools" summary.

When to use - and when NOT to

Use it as a coding agent that needs to read and edit real files with visibility into each tool call, run in whichever mode fits a workflow: native GUI, terminal, ACP agent for editors like Zed, or headless MCP server for Claude Desktop. It reconciles the model's edits with formatter output without wasting tokens re-reading files, preserves a file's original encoding, BOM, and line endings when writing back, and can read Word, Excel, PowerPoint, and PDF documents as Markdown alongside source code. Real-time streaming includes smart filtering that blocks unsafe tool combinations, such as editing a file before reading it.

Capabilities

  • Supports multiple LLM providers: Anthropic, OpenAI, Google Vertex AI, Ollama, OpenRouter, SAP AI Core, Groq, Cerebras, Mistral, and more
  • Adaptive tool syntax (native function calling, XML tags, or triple-caret blocks) chosen per session to fit the model
  • Sessions per project with branching, persistent state, and draft messages with attachments
  • Sub-agents, permission tiers, a command sandbox, and automatic context compaction when the window fills up
  • MCP client mode to plug in external MCP servers and use their tools
  • Browser sessions where the agent navigates, reads, clicks, and types to test web apps, with a human-in-the-loop login handoff so it acts as the user without seeing credentials
  • Skills: reusable, task-specific playbooks the agent can load on demand
  • Auto-loads AGENTS.md or CLAUDE.md from the project root to follow repo-specific instructions

How to install

code-assistant server

Download a prebuilt release for macOS, Linux, or Windows from the Releases page, launch it, pick a provider and model in Settings, and add a project folder to start chatting - no JSON editing required. To build from source: install the Rust toolchain, the Linux system libraries gpui needs (or Xcode's Metal toolchain on macOS), clone the repository, and run cargo build --release; the binary lands at target/release/code-assistant. Run it as code-assistant for the GUI, --tui for terminal mode, acp for Zed integration, or server for a headless MCP server usable from Claude Desktop, any mode optionally taking an initial task via --task.

Who it's for

Developers who want an AI coding agent that shows its work, handles formatter-reconciliation and file-encoding correctly, and can be driven from a GUI, terminal, editor, or as an MCP server depending on the workflow. Contributions are welcome, and open roadmap directions include detecting stale-file edits, compacting failed tool-use history, memory tools, tighter sandboxing, and fuzzy matching for search blocks.

Source README

Code Assistant

CI Trust Score MCP Toplist

An open-source AI coding agent, written in Rust, with a native GUI, a terminal mode, and integrations for editors and MCP clients. It runs an autonomous agent loop over your codebase - reading, searching, editing files, and running commands - while keeping you in the loop about what it is actually doing.

Getting started

The quickest way to try it is a prebuilt download - no toolchain required:

  1. Grab the latest build from the Releases page:
    • macOS: Code-Assistant-macos-aarch64.app.zip (Apple Silicon) or Code-Assistant-macos-x86_64.app.zip (Intel)
    • Linux: code-assistant-linux-x86_64.zip
    • Windows: code-assistant-windows-x86_64.zip
  2. Launch it. On first start, code-assistant opens its Settings screen. Pick a provider (there are one-click suggestions for the common ones), paste an API key, and choose a model - that's it.
  3. Add your project folder from within the app and start a chat.

No hand-editing of JSON files required to get going. (You still can, if you prefer - see the Configuration guide.)

# Install the Rust toolchain (macOS/Linux)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# On Linux (Debian/Ubuntu), install the system libraries gpui needs:
sudo apt-get install -y --no-install-recommends \
    pkg-config build-essential libssl-dev libzstd-dev \
    libfontconfig-dev libwayland-dev libx11-xcb-dev \
    libxkbcommon-x11-dev libasound2-dev libvulkan1

# On macOS, install the metal toolchain:
xcodebuild -downloadComponent MetalToolchain

# Clone and build
git clone https://github.com/stippi/code-assistant
cd code-assistant
cargo build --release

The binary lands at target/release/code-assistant. See the Configuration guide for building a self-contained macOS .app bundle.

What makes it different

A handful of things we care about:

  • A UI you can actually follow. Instead of a terse "Called 5 tools", code-assistant shows which tools ran and what each of them handed back to the model as context. When it goes off the rails, you can see why.
  • Format-on-save that stays token-efficient. When your project auto-formats code, an agent's mental picture of a file goes stale and its follow-up edits start failing for non-obvious reasons. code-assistant runs your formatter and then reconciles the model's own edits with the formatted result - without wasting tokens on re-reading files. See docs/format-on-save-feature.md.
  • Transparent file encoding & line endings. It reads a file however it is stored (encoding, BOM, CRLF/LF), gives the model clean text, and writes it back the way it was - so it never silently rewrites your line endings.
  • Searches and reads documents, not just code. Word, Excel, PowerPoint, PDF and more are consumed automatically as Markdown, so you can point the agent at real-world documents alongside your source.

Features

  • Multiple LLM providers: Anthropic, OpenAI, Google Vertex AI, Ollama, OpenRouter, SAP AI Core, Groq, Cerebras, Mistral, and more.
  • Four ways to work: a native GUI (built on Zed's GPUI), a terminal mode, a headless MCP server, and an ACP agent for editors like Zed.
  • Adaptive tool syntax: native function calling, XML tags, or triple-caret blocks - chosen per session to fit the model.
  • Real-time streaming with smart filtering that blocks unsafe tool combinations (e.g. editing a file before reading it).
  • Sessions per project with branching, persistent state, and draft messages with attachments.
  • Sub-agents, permission tiers, a command sandbox, and automatic context compaction when the window fills up.
  • MCP client mode: plug in external Model Context Protocol servers and use their tools.
  • Browser sessions: the agent drives a real browser (navigate, read, click, type) to test web apps, with a human-in-the-loop login handoff so it acts as you without ever seeing your credentials.
  • Skills: reusable, task-specific playbooks the agent can load on demand.
  • Auto-loaded guidance: picks up AGENTS.md (or CLAUDE.md) from your project root to align with repo-specific instructions.

Interfaces

code-assistant                     # native GUI (default)
code-assistant --tui               # terminal interface
code-assistant acp                 # ACP agent for editors like Zed
code-assistant server              # headless MCP server (e.g. Claude Desktop)

Any mode can take an initial task: code-assistant --task "Explain this codebase".

Add to your Zed settings:

{
  "agent_servers": {
    "Code-Assistant": {
      "command": "/path/to/code-assistant",
      "args": ["acp", "--model", "Claude Sonnet 4.5"],
      "env": { "ANTHROPIC_API_KEY": "sk-ant-..." }
    }
  }
}

See Zed's docs on custom agents.

In Claude Desktop settings (Developer tab → Edit Config):

{
  "mcpServers": {
    "code-assistant": {
      "command": "/path/to/code-assistant",
      "args": ["server"],
      "env": { "SHELL": "/bin/zsh" }
    }
  }
}

Configuration

For most people the in-app Settings screen is enough - it manages providers, models, MCP servers and skills for you. Everything can also be configured via JSON files, and there are more advanced options (project setup, sandbox modes, tool syntax, session recording, CLI flags):

→ See the Configuration guide.

Roadmap

Not really a roadmap - just a few directions, in no particular order:

  • Block replacing in stale files: detect early when the model is about to replace_in_file a file that changed since it last read it, and reject with a helpful message.
  • Compact tool-use failures: strip failed tool calls / mismatched search blocks from the history to save tokens.
  • Memory tools: help the agent build up a knowledge base for a project.
  • Tighter sandboxing: restrict tool access to git-tracked files within the project.
  • Fuzzy matching of search blocks: reduce the re-reads caused by failed exact matches.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.