I Built an AI Coding Agent in Rust A developer released Rexo Code v0.9, a free, open-source, provider-agnostic AI coding agent written in Rust that runs in the terminal and supports Windows, Linux, and macOS. The agent can search and edit project files, run shell commands, use MCP tools, manage sessions, run subagents, and request permission before sensitive actions, letting users pick their own AI provider or model. The developer said Claude and Claude Code were used during development for debugging, implementation, and refactoring across the Rust codebase. I’ve been working on a project called Rexo Code for quite a while now. What started as an experiment to understand how AI coding agents work turned into a full open-source project written in Rust. Rexo Code is a provider-agnostic AI coding agent that runs directly in the terminal. The main idea was simple: I wanted an agent that could actually work through a project, while still letting the user choose which AI provider or model they want to use. What Rexo can do Rexo can: Understand and search through projects Read and edit files Run shell commands Use MCP tools Ask for permission before sensitive actions Inspect command results and continue working Manage sessions Use Skills and custom commands Run hooks and plugins Work with subagents Accept image input Stream responses Run in headless/JSON mode The project currently supports Windows, Linux, and macOS. Building it Building an AI coding agent is quite different from just making an application that sends a prompt to an API. There are a lot of things to think about once the agent starts interacting with a real codebase. It needs to understand context, decide what to inspect, make changes, execute commands, look at the results, and then decide what to do next. Permissions were another important part. I didn't want an agent to blindly execute everything it decided to run, especially when working with a real system. A lot of the development process was basically: Build something → test it → break it → figure out why → rebuild it. There were plenty of bugs and architectural changes along the way. Why provider-agnostic? I didn't want Rexo to be tied to one AI provider. Models change quickly, providers change their APIs, and different developers have different requirements. So the agent is built around a provider-agnostic approach, allowing users to choose the models and providers that fit their workflow. Using AI to build an AI agent I also used Claude and Claude Code quite a lot while developing Rexo. I used them for things like debugging, implementation, refactoring, and working through larger changes across the Rust codebase. But I still tested the changes myself and decided what actually belonged in the project. That process was useful because I wasn't just generating isolated pieces of code. I could work through larger changes, test the result, find problems, and iterate. Rexo Code v0.9 After a lot of testing and iteration, v0.9 is the version I'm comfortable releasing more widely. Rexo Code is free and open source. GitHub: https://github.com/Daksh-Saboo/Rexo-Code https://github.com/Daksh-Saboo/Rexo-Code I'd be interested in hearing from other developers who work with coding agents. What would you change about this kind of workflow? What features do you think are still missing? And if you've built an agent yourself, I'd be interested in hearing how you approached the architecture.