CodeDissect
02 · Developer Tools
Shipped · Fully Tested
VS Code Extension FastAPI HuggingFace Inference Python TypeScript

CodeDissect

Right-click any file, selection, or git diff — get severity-tiered issues with gutter markers, hover diagnostics on every flagged line, and Ghost's Take: the architectural decision, what it costs, what it buys, and what a senior engineer would actually do.

Status
Shipped · Tested
Domain
Developer Tools
Entry point
Right-click context menu
Review modes
Full file · Selection · Git diff
The Problem

Linters catch style.
CodeDissect catches decisions.

Every developer has had a PR come back with a comment they wish they'd seen before they pushed. Not a typo — a real observation. "This function is doing three things." "This abstraction is leaking." "This test isn't actually testing what it claims to test." That kind of feedback comes from a specific kind of reviewer: experienced, direct, not interested in being polite about it.

CodeDissect is that reviewer, built into the editor. Three modes — full file, selected code, or git diff — so the review is always scoped to what you're actually working on. Results appear in a panel beside the editor with gutter markers on every affected line. Hover the marker, get the full diagnosis. No switching tabs. No copy-pasting into a chat window.

// CodeDissect · auth_service.py · git diff mode · 4 issues · Review Quality: Excellent
 
● CRITICAL Line 58 JWT secret read from os.environ inside request handler — evaluated on every call, not once at startup.
◆ ARCH Lines 91–130 AuthService is now also handling session serialisation. That's two reasons to change. SRP violation.
◆ PERF Line 147 DB lookup inside for loop — N+1 pattern. Batch with get_users_by_ids() before the loop.
✓ OK Lines 1–40 Error handling is consistent. HTTPException usage follows project convention.
 
──────────────────────────────────────────────────
// Ghost's Take · Lines 91–130
// Decision: mixed responsibilities kept in one class for "convenience"
// Cost: every future change to auth logic risks breaking serialisation, and vice versa
// Senior move: extract SessionSerializer, inject it — auth stays testable in isolation
 
Export to markdown · Open in History · Review Quality: Excellent · 2 critical · 2 architectural
Ghost's Take — what makes it different
The decision

What architectural choice produced this issue. Not just what's wrong — why a developer made this call in the first place.

What it costs / buys

The honest tradeoff. Sometimes the decision is defensible. Ghost says so. When it isn't, it says that too.

Senior move

The concrete thing a senior engineer would actually do — not a generic "consider refactoring" but a named pattern, a specific extraction, a real next step.

How it works

Prompt engineering.
LLM inference. Structured output.

The backend builds a language-aware prompt with Python, TypeScript, Go, Rust and more — each with its own focused review criteria. The HuggingFace inference API runs the model and returns structured JSON: issues, severity tiers, Ghost's Take, and a review quality signal. The extension parses that JSON and renders it directly in the editor — gutter markers, hover tooltips, history tab, markdown export.

Review modes

Scoped to exactly what you're working on.

Full file review for a complete audit. Selected code for the 40 lines you're uncertain about. Git diff mode for pre-commit review of only your changes. Right-click the editor, pick a mode, get results. Every review is saved to History — file, timestamp, mode, issue count, review quality level.

Features

What CodeDissect ships with

🎯
Three review modes
Full file, selected code, or git diff. The review is always scoped to what you're actually touching — not the entire repo.
📍
Gutter markers + hover tooltips
Every flagged line gets a coloured gutter badge — C, A, P, S. Hover the code text and the full diagnosis appears inline. Decorations persist when you switch files and come back.
👻
Ghost's Take
The architectural decision map — what was decided, what it costs, what it buys, and what a senior engineer would actually do. Not a generic suggestion. A real call.
📊
Severity tiers
Critical → Architectural → Performance → Style. Not everything matters equally. CodeDissect sorts what you need to fix from what you might want to fix.
📁
Session history
Every review is saved. Open the History tab to see every file ever reviewed — when, in what mode, how many issues, and the review quality level for that run.
📄
Markdown export
One click exports the full review — all issues, Ghost's Take, review quality — to a structured markdown file. Attach it to the PR or keep it for reference.

See it work on
your code

Paste any code into the live demo — Python, JavaScript, TypeScript, Go, and more. No install. No signup. CodeDissect reviews it in seconds and shows you exactly what a senior engineer would flag.

Try the live demo →
Runs against the real CodeDissect backend · No data stored
Stack

How it's built

🤗
HuggingFace
LLM Inference
🔌
VS Code API
Extension + Decorations
🐍
Python
Analysis Backend
📘
TypeScript
Extension Runtime
FastAPI
Review API
🐳
Docker
Containerised Deploy
🚂
Railway
Cloud Hosting
⌨️
Axios
HTTP Client

Fully shipped and tested

All 9 tests passed · Gutter decorations · Hover tooltips · Ghost's Take · Session history · Markdown export · Decorations persist across tab switches

← PaperTrail Next: OnboardingOS →