Sprite Pt.II

After spending a few weeks trying to do real work with Sprite. I ran into the same issue I did with Blink my previous coding agent. I couldn't figure out how to hold the tool. Keeping the feature set small doesn't help if you don't know how to use it in a practical way. The main issue is that Sprite was not easy to type into. For a CLI being able to quickly maneuver your agent means investing in keyboard short cuts and UI indicators. Without that it feels like driving a boat when trying to type a command with even a smidge of complication.
After failing a second time I decided to iterate instead of throwing the library away. I borrowed my R&D process from my first coding agent and did comparisons and research against what was on the market. I reviewed and decided on which features to implement and which to discard. Crucially I also spent time with the tool. I took the time to notice where the gaps were and attempted to fix them. This being less risky then going all in with a list of features and that at the end of the day I would not use.
The changes in this new version are all about making it easy to steer:
Typing into it
- Rebuilt the input line: arrow-key history, readline shortcuts, Esc to clear
- Multi-line pastes collapse to a placeholder instead of spamming the screen
- @ pops a file picker, / pops commands
- ! drops into a local shell without waking the model
- Queued follow-up message
- Custom slash commands
Seeing what it's doing
- Markdown rendering
- Plan mode
- Responses stream in live
- Tool calls render as one block with a status dot — yellow running, green done, red blew up
- Edits come back as real diffs with line numbers and context
- Spinner shows elapsed time and token burn
- Ctrl+O to expand clipped tool output
Letting it loose
- bash gated behind a per-project allowlist with an "always" option
- edit_file can't escape the working directory
- Tool output capped at 50 KB so a runaway command doesn't nuke the context
- --trust to skip it all when you're feeling brave
- fetch_url tool for grabbing urls
- ask_user_question tool for adding more context and decisions before the work starts
Keeping the thread
- Loads AGENTS.md / CLAUDE.md from the project into the system prompt
- Context % in the header, auto-compacts at 85%
- Sessions persist to disk — -c picks up where you left off
- -p for one-shot scripting
- /model picker and --model flag, defaults to Haiku
- Conversation compaction once it gets too long
- System prompt return
Our lil guy is a bit bigger now sitting at ~3k lines of code. But it's still a lil guy that lives in your computer. And now it's a little bit easier to use.
-mello