Ryan Davis

Ryan Davis

Founder at RADLAB. I build dev tools.

About

I'm Ryan — I run RADLAB, a small software studio. I build developer tools, mostly aimed at the boring parts of shipping: QA that runs itself, memory that survives between coding sessions, metrics you shouldn't have to go looking for. Everything I ship gets used on my own products first. If it doesn't survive that, it doesn't launch. Currently shipping: Comber — every-click QA for preview deploys. Point it at a URL and it explores your app like a real user, then hands you the repro for whatever broke. No test scripts. Tell me where my stuff breaks on your app. That's the feedback I actually want.

Badges

Tastemaker
Tastemaker
Gone streaking
Gone streaking
Gone streaking 5
Gone streaking 5

Maker History

  • bourdon
    bourdonOne memory shared by every AI you use. And it stays yours
    Aug 2026
  • Comber
    ComberIt clicks everything. You hear about what broke.
    Jul 2026
  • 🎉
    Joined Product HuntJuly 6th, 2026

Forums

23d ago

bourdon - One memory shared by every AI you use. And it stays yours

Tell Claude Code something today and Codex still knows it tomorrow. Bourdon gives your AI agents one shared memory instead of one per tool - a directory of plain YAML on your own disk, in a published schema, served over MCP. 16 agent integrations (Claude Code, Codex, Cursor, Copilot, Cascade…), recognition-first runtime (answers in milliseconds, not after a 3-second search), peer federation you must explicitly opt into. pip install bourdon.

Pulse 1.0 lands this weekend 🎉

First, the part that matters most: Thank You.

When I launched Pulse here, genuinely didn't know it would make it #10 globally on Product Hunt.

You downloaded it, broke it, told me exactly what felt right and what needed work, and sent me bug reports at 2am. Every single one of those shaped the app.

What FetchSandbox does and doesn't do — in plain words

Hey all ahead of our Aug 2 relaunch, I'd rather be useful than hypey. Here's the honest map: what we test, what we don't (yet), what languages it works with, and where we're going.

The failures we test for (the "it passed, then broke in prod" stuff):

  • Double-processing the same webhook arrives twice; do you charge the customer twice?

  • Out-of-order / late events a "canceled" and a stale "active" land in the wrong order; does a canceled account come back to life? (live for Paddle today)

  • Sad paths card declined, payment failed, thing-not-found; does your code handle it, or quietly mark it "done"?

  • Rate limits the API throttles you (429); do you back off, or silently drop data?

  • Wrong-shape responses the API returns a field you didn't expect or renamed; does your code break downstream?

  • Auth slips bad/expired key, or a read-only key doing writes; caught or not?

  • Fake / replayed webhooks unsigned, tampered, or old signed events; rejected?

  • Slow + flaky delivery delays and dropped webhooks.

Every run hands you a receipt: the failure reproduced, then gone after the fix.

View more