The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Snapback listing page.
Make Snapback automatic. Instead of remembering to call the diagnosis tool, wrap your agent's tool calls once — and every error is auto-diagnosed, and gated-safe fixes are applied and retried without a human.
"Power tools are optional. Infrastructure is not." This turns Snapback from a tool you reach for into infrastructure that runs on every failure.
On any tool-call error, the interceptor:
diagnose_infra_error (free, no token, no LLM, <150ms).confidence >= 0.85source == "library" (a curated verified fix, not an LLM guess)auto_safe == true (the fix is retry / refetch / config — reversible, side-effect-free)mutate or destructive fix (create/change state, money, auth grants).It fails closed: when unsure, it escalates rather than acting.
diagnose_infra_error returns {matched, family, fix, confidence, source, action_class, auto_safe, gate}.
action_class is one of:
| class | meaning | auto-safe? |
|---|---|---|
retry | re-run with backoff (idempotent) | ✅ |
refetch | re-fetch/re-price/re-sync then re-apply | ✅ |
config | client-side param change (raise max_tokens, serve intermediate cert) | ✅ (to suggest) |
mutate | creates/changes external state, money, auth | ❌ escalate |
destructive | deletes/reverts/irreversible | ❌ never |
gate.auto_apply_ok is the ready-made verdict; the interceptor also re-derives it locally so a stale client
can't over-trust.
diagnose_infra_error endpoint.bridge.py (post-mortem forwarding) — this is the live auto-heal layer.submit_feedback on the retry outcome (did the fix work?) → feeds the shared library (the network effect).