Every engineering team runs the same painful loop

A bug surfaces, someone screenshots the error, drops it in Slack with "anyone know what this is?", and waits. Hours later, a senior engineer digs through the repo, finds the issue, writes a fix, and opens a PR.

Three things make it hurt:

  1. Context dies between incidents. The team fixed this exact SQL injection three months ago in another service. Nobody remembers. It gets fixed from scratch again.
  2. The loop is slow. From error screenshot to a verified fix is hours, not minutes.
  3. Developers leave their workflow. Constant context-switching between Slack, GitHub, the IDE, and CI dashboards.

We wanted the screenshot itself to be the bug report, and for everything after it to happen autonomously, but never without a human in the loop.

SnapFix is an autonomous multi-agent code review system that lives inside Slack.

Drop a screenshot, code snippet, error text, or voice note into a channel (or let a CI failure trigger it automatically), and SnapFix:

  1. Diagnoses the root cause through a Chain-of-Debate between multiple AI agents. A Finder proposes, a Challenger attacks the claim, and a Reviser confirms.
  2. Remembers. It queries team memory for prior bugs in the same repo and cites them, so the team's knowledge compounds across sessions instead of evaporating.
  3. Generates a security-validated fix with CWE/OWASP citations.
  4. Verifies the fix in a real sandbox. The demo's test suite goes from 7 failures → 0 with live pytest output, not an LLM's opinion.
  5. Delivers a compliance-safe, plain-English security report.

All of it runs behind 3 human approval gates in Slack: after diagnosis, after the fix, and before the report. The agent investigates, cites, and verifies; the human approves every critical step. No context switch, no manual triage.

Built With

  • airbyte
  • bandit
  • clickhouse
  • composio
  • css
  • fastapi
  • guild.ai
  • html
  • langfuse
  • pioneer
  • pytest
  • python
  • react
  • render
  • tailwindcss
  • truefoundry
  • typescript
  • vite
  • vitest
  • zustand
Share this project:

Updates