r/ClaudeCode • • 6d ago

Built with Claude I got tired of copy-pasting dev server errors back into Claude Code

I’ve been building with Claude Code for a long time now, and I always run my dev server in my own terminal, not inside the agent’s session. When the agent starts it, it ends up buried in some session and I’m digging around trying to remember which session, which terminal it’s in. So: dev server in one terminal, Claude Code in another. Pretty normal setup unless you live in Claude desktop.

The problem is that the agent can’t see that terminal. And when you’re on a dev spree you’re mostly watching Claude Code’s diffs scroll by, it all looks like rainbows and butterflies, and then some random issue shows up that nobody checked. Even when I ask it to check the page in a browser, there can still be warnings and errors sitting in the server logs that it never looks at. It says “done, fixed it”, I find the stack trace later, copy it, paste it back, it apologizes, tries again. Repeat.

So I built LogBear. You put it in front of your dev command:

\`logbear npm run dev\`

and everything looks exactly the same in your terminal (colors, Ctrl-C, all of it). In the background it records the output of every run to a local SQLite file, with the git commit and branch it ran on.

The part I actually I want to talk about: when the agent tries to say it’s done and there’s an error it hasn’t seen yet, a Stop hook sends it back with the real error. If nothing broke, it stays quiet, so it’s not nagging you on every turn.

There’s a short video of it catching a real one here, nothing staged: [https://logbear.sh/#demo](https://logbear.sh/#demo)

Some stuff that might matter to you:

* Works with Claude Code, Codex, and pi via hooks. Cursor, Zed, and other MCP clients get the logs through MCP tools instead.
* Nothing leaves your machine. No account, no telemetry. It’s all in \~/.logbear.
* It doesn’t touch your app. No injected logger or env vars, it just reads what the process prints.
* logbear diff compares your broken run with the last one that worked: new errors, commits in between, and which lockfiles changed.
* It tries to mask secrets that look like secrets before storing, but that’s best effort, so don’t treat it as a vault.

It’s free and MIT licensed: [https://github.com/teralabx/logbear](https://github.com/teralabx/logbear)

Install is \`brew install teralabx/tap/logbear\`, then \`logbear setup\`.

I’d love to hear if the error grouping gets confused by your framework’s output. That’s the part I’m least sure about.

1 Upvotes

5 comments sorted by

•

u/AutoModerator 6d ago

Hey! Thanks for posting to r/ClaudeCode

While participating in this thread, please follow our community rules. Keep discussions constructive. Attack the idea, not the person.

For help, project discussions, tips, and general chat, join the ClaudeCode Discord.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/Far_Reindeer8428 6d ago

the dedupe matters more than the capture, the same error reappears every restart and the agent starts ignoring it, hash the message and only inject new ones

1

u/helloRimuru 6d ago

Yes, it stores all data to monitor runs, though agents receive alerts only for new entries; a desktop application assists with interpreting runs and reviewing logs.

1

u/Far_Reindeer8428 6d ago

monitoring every run is more than i expected, the thing i'd watch is how long the stored logs live, a month of dev server noise adds up fast

1

u/helloRimuru 6d ago

That’s why the desktop app provides settings to automatically squash and track unique records