https://github.com/quickcall-dev/blackbox
Analysis engine inside QuickCall — ingests AI coding session traces, runs multi-stage LLM pipeline, surfaces root causes and recurring failure patterns
https://github.com/quickcall-dev/blackbox
ai-coding behavioral-analysis claude-code codex-cli fastapi llm pi-dev python quickcall trace-analysis
Last synced: about 3 hours ago
JSON representation
Analysis engine inside QuickCall — ingests AI coding session traces, runs multi-stage LLM pipeline, surfaces root causes and recurring failure patterns
- Host: GitHub
- URL: https://github.com/quickcall-dev/blackbox
- Owner: quickcall-dev
- License: apache-2.0
- Created: 2026-06-02T13:57:33.000Z (29 days ago)
- Default Branch: main
- Last Pushed: 2026-06-02T21:15:22.000Z (29 days ago)
- Last Synced: 2026-06-02T22:14:43.927Z (29 days ago)
- Topics: ai-coding, behavioral-analysis, claude-code, codex-cli, fastapi, llm, pi-dev, python, quickcall, trace-analysis
- Language: Python
- Size: 164 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Agents: AGENTS.md
Awesome Lists containing this project
README
# Blackbox
Analysis engine for AI coding session traces. Ingests JSONL logs from Claude Code, Codex CLI, or pi.dev, runs a 9-stage LLM pipeline, and surfaces root causes, recurring failures, and anti-patterns.
## Demo
Session browser
Root cause analysis in progress
Aggregation of all findings
## What it does
- **Multi-source ingestion** — accepts traces from Claude Code, Codex CLI, pi.dev, and more
- **9-stage LLM pipeline** — classifies, analyzes root causes, clusters patterns, scores severity
- **Disk persistence + resume** — stage outputs saved to disk; server restart picks up where it left off
- **DeepSeek V4 Pro support** — json_object response format, retry logic, structured logging
## How it works
```mermaid
flowchart TD
subgraph Upload
A["POST /analyze
upload JSONL files"] --> B["Detect source
_detect_source()"]
B --> C["Normalize
_normalize_file()"]
end
C --> D["Return 202 Accepted
run_id → background task"]
subgraph Pipeline
P0["P0 Normalize
count + index messages"]
P1["P1 Classify
LLM label each user turn
batches run concurrently"]
P2["P2 Context
build windows around triggers"]
P3["P3 Root-Cause
LLM per trigger window"]
P4a["P4a Behavior
rule type + confidence"]
P4b["P4b Cluster
group recurring patterns"]
P4c["P4c Convention
dont_do / do_instead"]
P5["P5 Aggregate
deduplicate + score severity"]
P6["P6 Scope
map to repos + devs"]
end
subgraph Client
POLL["GET /runs/:id
poll status"]
OUT["GET /runs/:id/findings
recurring findings JSON"]
end
P0 --> P1
P1 --> P2
P2 --> P3
P3 --> P4a
P3 --> P4b
P3 --> P4c
P4a --> P5
P4b --> P5
P4c --> P5
P5 --> P6
P6 --> POLL
POLL --> OUT
```
## Quick Start
```bash
cp .env.example .env
# edit .env and add your OPENAI_API_KEY
uv run uvicorn src.main:app --host 0.0.0.0 --port 8000
uv run quickcall # Launch TUI (connects to http://localhost:8000)
```
The API binds to `0.0.0.0` (all interfaces). The CLI defaults to `localhost:8000`. If the API is running on a different host or port, set `BLACKBOX_API_URL` before launching the TUI:
```bash
export BLACKBOX_API_URL=http://192.168.1.42:8000
uv run quickcall
```
## Features
- Multi-source session analysis (Claude, Codex, pi, Gemini, Cursor)
- 9-stage LLM pipeline with live progress
- Disk persistence + resume
- DeepSeek V4 Pro support
- 80 tests
## Docs
- [API Reference](docs/api.md)
- [CLI Guide](docs/cli.md)
- [Pipeline](docs/pipeline.md)
- [Configuration](docs/configuration.md)
- [Architecture](docs/architecture.md)
- [Agent Guide](AGENTS.md)
## License
Apache 2.0 — see [LICENSE](LICENSE).