Skip to content

Repository files navigation

Bloodhound 🐕‍🦺

Dual-oracle autonomous QA swarm — finds the silent bugs your tests and your error monitoring miss.

Bloodhound explores a real app through a headless browser like a chaos-user and catches failures with two oracles:

  • Sentry catches what throws — crashes, errors, slow spans.
  • A browser agent catches what's silently wrong — logic/UI bugs where nothing throws (e.g. the cart shows $10 for two $10 items). It declares what it expects before acting, then flags observed ≠ expected.

Everything logs into Sentry, our history DB. When something breaks, a triage agent pulls the correlated Sentry trace (browser = symptom, Sentry = cause), root-causes it, fixes the code, and writes a regression test so it can never recur.

Built for the UC Berkeley AI Hackathon 2026. Shared context lives in the sibling team-brain repo (../team-brain).

This repo

The Bloodhound codebase. Three workstreams build against one set of frozen contracts:

Area Owner Path
Triage & fix engine + frozen contracts Vikash src/contracts/, src/triage/, src/sentry/, src/cache/
Browser explorer + demo app Shashank (incoming)
Dashboard + memory/persistence + wiring Prajit (incoming)

The contracts (src/contracts/)

The two hand-off shapes that keep three people building one project — mirrors team-brain reference/api-contracts.md:

  • Finding — detection → triage. What was expected, what was observed, how to reproduce, and the Sentry traceId to correlate.
  • Resolution — triage → dashboard. Confirmed?, root cause, fix diff, regression-test path, verified?, status.
  • signature(finding) / SeenStore — stable dedup over detection-time fields only (never rootCause — that would be circular), so triage skips duplicates.

Sample fixtures for teammates to build against live in fixtures/.

Develop

npm ci
npm run typecheck
npm test

Anything touching Anthropic or Sentry is dependency-injected behind an interface with a Fake* implementation, so the suite runs fully offline. Live implementations activate only when the relevant API keys are present in the environment.

About

An autonomous agent that catches the silent bugs your tests and Sentry both miss, then fixes them and writes the regression test.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages