← all repositories
koloai/kolo

A debugger that writes you a novel, not a stack trace

Kolo records every function call, return value, and HTTP request as plain text so both humans and AI agents can grep through execution history.

kolo
Velocity · 7d
+0.3
★ / day
Trend
steady
star history

What it does

Kolo is a Python debugger that wraps around your code—Django middleware is the quickstart path—and dumps every executed function call, local variable, return value, and HTTP request into trace files. You browse the results at /_kolo/ or read the raw text. It’s pitched at AI agents as much as human developers: the traces are “searchable by humans and agents alike.”

The interesting bit

The v3 pivot to plain text traces is the telling detail. Most debuggers give you a UI or a structured log format; Kolo bets that both you and your LLM will prefer greppable, human-readable execution narratives. The web viewer is still there, but the data format is deliberately primitive.

Key highlights

  • One middleware line for Django integration ("kolo.middleware.KoloMiddleware" at the top of MIDDLEWARE)
  • Traces function calls, returns, locals, and SQL queries without code modification
  • Web UI at /_kolo/ for visual exploration of traces
  • Playground at play.kolo.app for trying without installing
  • v3 moved trace data to plain text files as the native format

Caveats

  • README examples are Django-centric; support for other frameworks is unclear
  • No mention of performance overhead or trace file sizes in production
  • 525 stars suggests early traction, not battle-tested scale

Verdict

Worth a look if you’re debugging gnarly Django request flows or building AI agents that need to reason about code execution. Skip it if you need a language-agnostic or production-hardened tracing system.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.