v0.3.0 — agent-friendly CLI: resource verbs, JSON, exit codes

Anon-callengineerthatneversleeps.

Quell watches your logs, investigates the incident in a Docker sandbox, and ships a root-cause report with a proposed fix to your inbox — before your phone buzzes.

546 tests passingPython 3.12+Apache 2.0Sandboxed by default
Watch it work

A real quell watch session, in your terminal.

Tail your logs locally, detect a new error signature, spawn the IncidentCommander, run sandboxed tools, finish in seconds. No cloud, no telemetry.

~/src/my-app — quell watch
~/src/my-app
How it works

One watch loop. Four deliberate stages.

From raw log line to draft report — and a Slack / Discord / Telegram ping — is usually under 30 seconds.

01
quell/monitors

Monitor

Tail a log file, poll an HTTP endpoint, or stream Vercel / Sentry events.

02
quell/detector

Detect

Signature + 24h rolling baseline — flag what's new, spiking, or critical.

03
quell/agents

Investigate

IncidentCommander reads logs, greps code, traces git history, and reasons.

04
quell/notifiers

Report + Notify

Structured root-cause + draft PR; fanned to Slack / Discord / Telegram in parallel.

Built for real on-call

The boring, critical details.

Draft-PR-only, sandboxed by default, model-agnostic. Opinionated where it matters, flexible where it doesn't.

Draft PRs, never auto-merge

Quell produces a structured report and draft PR. Humans always ship the fix. No silent changes, no 3am surprises.

Docker-sandboxed tools

Every tool that touches code runs inside a Docker container with your workspace mounted read-only. Bearer-token auth per sandbox.

Bring your own model

LiteLLM under the hood — OpenAI, Anthropic, Google, Ollama, anything. Swap models with one line of TOML.

Multi-agent coordination

The IncidentCommander spawns specialist subagents (log analyst, code detective, git historian) that work in parallel.

19 skill runbooks built in

Markdown + YAML runbooks for Stripe, OpenAI, DNS, SSL, memory, disk, deadlocks, Django/Flask/Rails/Spring/Express, Postgres, Redis, Docker, Kubernetes — auto-injected when triggers match.

No telemetry by default

Your code, your logs, your infrastructure — nothing leaves your machine unless you explicitly configure a remote endpoint.

Slack, Discord, Telegram

Fan an investigation summary out to every channel in parallel the moment the agent finishes. Verify webhooks with quell notifier test.

Web dashboard + replay

quell dashboard boots a local Next.js + FastAPI UI; quell incident replay <id> prints the same event timeline in your terminal. Read-only.

Cost tracking + budgets

Per-model rate card across Anthropic / OpenAI / Google / Ollama. Every run records tokens + USD; max_cost_usd halts a runaway investigation before it lights money on fire.

Skills

Built-in runbooks. Auto-injected when triggers match.

Each skill is a markdown + YAML runbook. The detector matches an incident's signature against trigger globs; matched skills are appended to the agent's system prompt for that investigation.

TTY
$psql -c 'SELECT * FROM pg_locks'
ERROR deadlock detected (txn 4218 ↔ 4219)
detector: skill=postgres_deadlock matched
tool: pg_stat_activity (42ms)

Postgres deadlock

2026

Detects two transactions blocking each other; pulls the deadlock graph + offending statements; drafts a retry-with-backoff patch.

pg_lockspsqlPgBouncer
TTY
$stripe events list --type=payment_intent
ERROR POST /api/stripe → 400 (50 last hour)
detector: skill=stripe_webhook matched
47/50 share signature mismatch

Stripe webhook failure

2026

Replays the last 50 failed webhook deliveries, classifies signature vs handler errors, and proposes the missing endpoint or signing-secret rotation.

webhooksStripe APIsignature
TTY
$dmesg | grep -i oom
Out of memory: Killed process 8421 (node)
cgroup: limit=512MiB rss=518MiB
tool: rss_history --pid=8421

OOM kill (Linux + container)

2026

Correlates dmesg OOM lines with cgroup limits and process RSS history; identifies the leaking allocator and suggests a memory-limit bump or fix.

dmesgcgroupsmetrics
TTY
$openssl s_client -connect api.example.com:443
WARN cert expires in 4 days (api.*)
detector: skill=ssl_expiry matched
renewal cron last run: 31 days ago

SSL certificate expiry

2026

Probes every public endpoint for cert chain + expiry; spots near-expiry certs, points to the renewal job, and drafts a one-line cron fix.

opensslACMELet's Encrypt
TTY
$kubectl describe pod api-7d49 -n prod
CrashLoopBackOff (restarts: 17)
Readiness probe failed: 503 /healthz
tool: kubectl logs --previous

K8s pod crashloop

2026

Runs kubectl describe/logs/events across the failing pod; isolates the failing container, surfaces the readiness probe diff, and drafts a manifest patch.

kubectleventsprobes
TTY
$tail -f logs/api.log | grep 429
429 Too Many Requests (487 in 60s)
burst correlates w/ deploy 14:02
tool: rate_card --provider=openai

OpenAI rate-limit storm

2026

Spots 429-burst patterns; correlates with deploy windows; suggests a token-bucket + provider-failover patch grounded in your existing client.

LiteLLMretriesqueueing
Install in 10 seconds

Five ways to get Quell on your PATH.

Pick whatever matches your environment. All five channels install the same binary.

$curl -fsSL https://raw.githubusercontent.com/bhartiyaanshul/quell/main/install.sh | bash

Probes for a prebuilt binary, falls back to pipx + source. Today's default.

After install: quell init · quell doctor · quell watch.

Under the hood

Eleven subsystems, one clean contract.

Monitors emit RawEvents. Detector fingerprints. Commander investigates via tools in a Docker sandbox, persists every run, fans the result to Slack / Discord / Telegram, and surfaces it in a local dashboard.

Monitors
local-file, http, vercel, sentry
Detector
signature + baseline
Agents
commander + subagents
Sandbox
FastAPI tool server
Tools
code/git/monitoring/reporting
Skills
19 bundled runbooks
Memory
AgentRun · Event · Finding
CLI
resource · verb · --json · exit codes
Notifiers
Slack · Discord · Telegram
Dashboard
Next.js + FastAPI
Cost + budgets
per-model rate card

Ship fewer 3am pings. Sleep through more nights.

Quell is Apache-2.0, built on LiteLLM, and designed so your code never leaves your machine. Install in under a minute.