The bug is
in the code.

Corvin wraps your services, reads logs and source code in real-time, and traces every failure down to the file and line number.

$npm install -g corvin-cli
corvin — local cluster
orderscheckoutgateway
live logs
debug chat
ask anything...

The 3-terminal setup.

One terminal runs the TUI and server. The rest wrap your services. Logs flow automatically.

Terminal ATUI + server
$corvin

Start this first, leave it open. The TUI launches on :4466 and waits for services to connect. This is where you type questions.

Terminal Bservice 1
$corvin npm run dev

Wrap your first service. Logs stream to Terminal A automatically. The process itself runs normally — Corvin is a thin wrapper.

Terminal Cservice 2
$corvin python app.py

Add more services the same way. All logs land in Terminal A, color-coded by service. Repeat for as many services as you run.

Ctrl+Cexit CorvinCtrl+Eexpand / collapse service list

Not a chatbot.
A debugging agent.

Corvin takes up to 20 autonomous tool steps per query. Read, grep, infer, answer.

01
Live multi-service logs

Every wrapped service streams into one pane. Color-coded by service, paginated, no terminal juggling.

ws://4466
02
Active code search

Ripgrep through your actual source. Reads files at specific line ranges. Follows the call stack depth by depth.

rg pattern src/
03
20-step autonomous agent

Up to 20 tool calls per query: tail logs, grep code, read files, cross-reference, return a fix with line numbers.

maxSteps: 20
04
Wrap any command

Replace any start command with corvin <cmd>. Node, Python, Go, Rust — if the process writes stdout, Corvin reads it.

corvin <cmd>
05
Multi-service grouping

Shared id in corvin.yaml groups services together. The AI correlates logs and code across every connected process.

id: my-app
06
Local by design

Nothing leaves your machine. No cloud ingestion, no log forwarding. Runs entirely on ws://localhost:4466.

~/.corvin/

Ask it anything.
It will find it.

These are questions engineers actually ask. Corvin reads logs and source code across every connected service before answering.

Orders service is returning 500 for /api/checkout — what's causing it?
Payment succeeded but the order shows as cancelled — what happened and in what order?
Why can't we process orders for the DE region? Check both services.
There's a race condition between payment and order timeout — find it
You found the schema mismatch — now tell me exactly what to change to fix it

Multi-service

One project.
Multiple services.

Set the same id in every service's corvin.yaml. When both are running wrapped, the AI sees them as one project. Logs correlate, stack traces link across service boundaries.

commit corvin.yaml to your repoteammates pick up the same grouping automaticallyuse corvin config --message to update descriptions without touching yaml
orders-service/corvin.yaml
id: "ecom-app"
description: "handles order creation, status, and cancellation"
name: "OrdersService"
checkout-service/corvin.yaml
id: "ecom-app"
description: "handles cart, payment processing, and checkout flow"
name: "CheckoutService"
same id — same project group — AI correlates across both

Four commands.
Zero guesswork.

01
npm install -g corvin-cli
Install

One global install. Node 20+ required. Run corvin --version to verify.

02
corvin init
Init

Creates corvin.yaml in the project directory. Set a shared id to group services that should be debugged together.

03
corvin npm run dev
Wrap

Replace any start command with corvin <cmd>. Logs from every wrapped process stream to the TUI automatically.

04
> why did X fail?
Ask

Run corvin (no args) to open the TUI. Ask in plain English. The agent tails logs, greps code, reads files, returns a root-cause fix with line numbers.

Works with your stack.

If the process writes to stdout, Corvin can wrap it. No plugins, no SDKs.

Node.js$ corvin npm run dev
Python$ corvin python app.py
Go$ corvin go run main.go
Rust$ corvin cargo run
Ruby$ corvin bundle exec rails s
Any$ corvin <your-command>

Open source

Ship faster.
Debug smarter.

Free to run locally. Nothing leaves your machine. Wraps any process, reads any codebase.