Skip to main content

Debugging Engine

Debugging Engine (State Machine–Driven Agentic Debugging Workflow) is an investigation kernel, not a chat agent.

Coding agents (Cursor, Claude Code, Copilot, Codex, …) drive it through a CLI or the Python library. The engine owns Case State, the Event Log, validation, projections, and Judge scheduling. It does not embed an LLM.

Why

  • Investigation state is explicit (Case / Unknown / Hypothesis / Experiment / Evidence), not buried in chat
  • A Judge schedules the next role and allowed events — agents advance the case, they don’t “find the answer” alone
  • Experiments carry Verification Specs; evidence beats persuasion
  • Same kernel for every coding agent via project skills

Install

uv tool install debugging-engine

Local checkout:

uv tool install --force .
# or
uv pip install -e ".[dev]"

Quick start

# Scaffold skills into the current project
debugging-engine --agent cursor   # or: claude, copilot, codex, all

# Describe the unknown
# (create issues/my-bug.md with symptoms + success criteria)

debugging-engine open issues/my-bug.md
debugging-engine next <case-id>
# … reason / edit outside the kernel …
debugging-engine submit <case-id> --events events.json
debugging-engine verify <case-id> <experiment-id>

Loop until RootCauseAccepted or escalate.

Scaffold & uninstall

Agent Skill root
claude .claude/skills/
cursor .cursor/skills/
copilot .github/skills/
codex .agents/skills/
debugging-engine --agent claude,cursor
debugging-engine --agent all
debugging-engine --agent cursor --force
debugging-engine --agent cursor --path /other/repo

debugging-engine --agent claude --uninstall
debugging-engine --agent all --uninstall --force
debugging-engine uninstall-cli    # uv tool uninstall debugging-engine

Skills:

  • debugging-engine-investigate — general debugging
  • debugging-engine-incident — production incidents
  • debugging-engine-performance — latency / throughput / memory

CLI

debugging-engine open <issue.md>
debugging-engine next <case-id>
debugging-engine submit <case-id> --events events.json
debugging-engine verify <case-id> <experiment-id>
debugging-engine status|log|replay <case-id>
debugging-engine query <case-id> [slice]

debugging-engine demo       # offline stub investigation (temp fixture)
debugging-engine validate   # Phase 2 architectural scenarios (temp fixture)

Python API

from debugging_engine import Case, Engine

engine = Engine(repo_root=".")
case = Case.open(engine, "issues/my-bug.md")
task = case.next()
# case.submit([...]); case.verify(experiment_id)

Full surface: docs/api.md.

Specification

Debugging Engine v3.1 RFC: docs/rfc/.

Parts Status
I–VI Normative
VII Informative

Roadmap and ADRs: docs/roadmap.md, docs/decisions/.

Repository layout

Path Role
docs/rfc/ Specification
docs/api.md Public framework API
docs/decisions/ ADRs
src/debugging_engine/ Kernel, CLI, skill templates, offline fixtures
.cursor/skills/ Cursor skills (synced from package templates)
.debugging-engine/cases/ Local Event Logs (gitignored)

Development

uv pip install -e ".[dev]"
pytest
uv build
uv publish   # requires UV_PUBLISH_TOKEN / PyPI credentials

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

debugging_engine-0.8.0.tar.gz (38.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

debugging_engine-0.8.0-py3-none-any.whl (44.7 kB view details)

Uploaded Python 3

File details

Details for the file debugging_engine-0.8.0.tar.gz.

File metadata

  • Download URL: debugging_engine-0.8.0.tar.gz
  • Upload date:
  • Size: 38.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for debugging_engine-0.8.0.tar.gz
Algorithm Hash digest
SHA256 629d4ab1cc5b3fe58b98bec3a1357469004b28e11bdc1120a68f29663498b0f9
MD5 1915083d398325abe9e98f290496e435
BLAKE2b-256 7c7caa125e3a6e1636899d0635fcf86d394a92c34fac8f7c101e385e99a99581

See more details on using hashes here.

File details

Details for the file debugging_engine-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: debugging_engine-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 44.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for debugging_engine-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 800e875d851645864a8b05f019e6f9269665fd7b60231d589118225c88ea51ad
MD5 e30c507a313b54beb626dbb9bcdd1511
BLAKE2b-256 71408e3a8800e59821c3d029343516885adfb6b9fb9d2f83e693f1daaecd722d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page