Today I'm shipping the first internal release of REI as a coherent product. After months of experimentation with various architectures, I've arrived at something that actually works, and works consistently.
v0.10.0: SPARK Mode
SPARK mode is the core interaction layer, built on top of the Claude Agent SDK. It's not just a chat interface. It's a complete agentic loop that can read your codebase, reason about changes, and execute modifications with precision.
The tool-use architecture underneath separates this from a simple API wrapper. REI maintains a coherent mental model of your project as it works. Read a file, that context persists. Make an edit, REI knows where it fits in the larger picture.
The SDK handles the heavy lifting of managing API calls and streaming responses, but the orchestration logic is all REI. Deciding what to read, what to modify, and when to ask for clarification.
v0.10.1: Stabilization
Within hours of internal testing, I'm already shipping a patch. The readline implementation has edge cases that don't surface in simple testing: multi-byte characters, cursor position calculations, the subtle ways different terminals handle escape sequences. This release fixes the most pressing issues and updates the documentation to reflect actual usage patterns.
The Foundation
Everything before 0.10 was R&D. I tried multiple agent orchestration patterns, experimented with different prompt engineering strategies, and built several complete implementations that I ultimately threw away. The architecture that survived does three things well:
- Context persists across long conversations. REI doesn't lose track of what's been modified.
- Interruptions are handled gracefully. Stop REI mid-generation, state won't corrupt.
- Enough transparency that you understand what it's doing and why.
Everything else builds on this. Now the real work begins.