c="desktop/icon.png" dotpals See what your coding agent actually did.** A small floating pal that watches Claude Code, Codex or any agent and checks its work: which files changed, which commands ran, and whether the tests really passed, read from their output, not the agent's word.
dotpals
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**See what your coding agent actually did.**
A small floating pal that watches Claude Code, Codex or any agent and checks its work: which files changed, which commands ran, and whether the tests really passed, read from their output, not the agent's word. When Claude breaks the tests, dotpals sends it back to fix them. Any AI tool can ask dotpals what really happened. And now you can talk to it: **Blu** sees your screen, draws on it as it explains, and uses your apps.
One command on Windows, macOS or Linux. Free, open source, and your agents’ work stays on your computer. Or straight from GitHub: npx --allow-git=all github:rikinshah787/dotpals setup
**Install** · **Talk to Blu** · **Features** · **Plug in any agent** · **Docs**
**⭐ Star dotpals** if your agent ever said "Done!" and you weren't sure · **Tell us what's confusing**
New in 0.12: Talk to Blu
Press **Ctrl+Shift+Space** and talk. Blu is the pal in your notch:
- **It explains your screen.** "What's this error?" Blu answers out loud and circles what it means. Ask for it step by step and it writes the working on your screen, line by line, as it talks.
- **It does things.** "Play some jazz", "turn it down a bit", "make this window smaller". Each one shows ✓ or ✗.
- **It uses your apps.** Notion, Linear, Sentry, Google Calendar or any MCP server. A change waits for your yes; nothing is ever sent, deleted or paid for.
- **It hands coding work to Claude and checks it.** "Have Claude fix the failing test": Blu writes down what done means, Claude Code does it, and dotpals checks what really happened.
- **It runs on the AI you already have.** Claude Code or Codex on your subscription, an API key, or Ollama. Hearing and Blu's voice run on your computer.
More in Talk to Blu. 0.11 brought the report card, replay and rewind, the morning brief and "It's stuck"; all of it is in the changelog.
Why
Coding agents do a lot in a single request: they read dozens of files, edit a handful, run tests, retry and search. The chat scrolls by and the diff is spread across files. dotpals keeps a live, plain-language record next to your editor, so you can always answer:
- **What did it change?** Every file edited, created or deleted, with the diff one click away.
- **What did it run, and did it work?** Every command with its output, and **fixed on try 2** or **still failing after 3 tries**.
- **Did it fix what it broke?** Claude Code is sent back when its tests fail, and a test changed just to make it pass is caught.
- **Is the code as it is now tested?** "Changed 2 files after the tests passed: not tested since" is impossible to miss.
- **What did I get done today?** A running tally, copied as Markdown for a standup or PR in one click.
🔊 Watch the launch video with sound (47 s, 1080p) · square cut
Features
- **Make agents fix failing tests** (Claude Code, on by default): finishing, committing or pushing while its tests fail, or before it tested its last change, sends Claude back to fix them, at most twice per request. A test faked to pass (an assertion taken out, a skip added, an expectation changed) is caught too.
- **Was it tested?** Results are read from the test output itself (jest, vitest, pytest, go, cargo, dotnet, Maven, Gradle, RSpec and more), never just the exit code. "0 tests ran" is never a pass.
- **Report card**: your agents side by side: changes tested and passed, changes never tested, tests changed to pass, claims that didn't happen, and what the tokens bought.
- **Replay and rewind**: step through any request, and (with restore points on) put its files back as they were.
- **Morning brief and "It's stuck"**: what your agents did since yesterday, and a ping when one keeps failing at the same thing.
- **The story, not the log**: each request reads as a few chapters (*Changed 5 files · Tests failed twice, then passed · Committed and pushed*), with anything risky flagged: .env changed, a force-push, two agents editing the same file.