fuxicodex/Fuxi

FuXi is a fast, self-contained AI coding agent that lives in your terminal — edit code, run commands, and drive tools, with cost-aware routing across LLM providers.

What it solves

FuXi is a terminal-based AI coding agent that transforms a standard LLM into an active worker capable of reasoning, editing code, and executing commands. It provides a provider-agnostic framework that allows users to bring their own API keys for any OpenAI-compatible model, Gemini, or Bedrock/Vertex, effectively elevating the raw capabilities of the underlying model through an agentic loop.

How it works

FuXi operates on a "Think $\rightarrow$ Act $\rightarrow$ Verify" loop. It is built in Go as a single static binary with no runtime dependencies. The agent can interact with the codebase via over 50 built-in tools (including shell access, ripgrep search, and LSP diagnostics) and can be extended via MCP (Model Context Protocol) clients, hooks, and plugins. It includes a safety classifier to vet shell commands before execution and supports durable sessions with memory consolidation and conversation compacting to save tokens.

Who it’s for

It is designed for developers who want a powerful, terminal-first AI coding assistant that is not locked into a specific LLM provider and prefer a self-contained tool with fine-grained control over permissions and costs.

Highlights

  • Provider Agnostic: Supports any OpenAI-compatible model, Gemini, and Bedrock/Vertex.
  • Rich Toolset: Over 50 built-in tools for file manipulation, shell execution, and web fetching.
  • Safety Guardrails: Uses an AST safety classifier for shell commands and audit logging.
  • Durable Memory: Persistent transcripts, checkpoints for rolling back/forking, and "dreaming" for memory consolidation.
  • TUI-Driven: Comprehensive Terminal User Interface with slash commands for model switching, cost tracking, and context management.
  • MCP Support: Acts as an MCP client and can run as an MCP stdio server.

Related

  • Project
  • Project
  • Project
  • Project
  • Project