Kata

UML class diagrams that are the code.

Kata reads your solution directly, renders it as an interactive class diagram, detects code smells, and drives whole refactorings — Fowler catalog plus your own AI-assisted intents — right from the diagram surface. Changes flow back into the source, so the diagram stays a live view of the code, not a static picture.

Kata rendering its own solution — dark-themed class diagram with ViewModel classes wired to ObservableObject.
Kata dogfooding on its own Kata.slnx — 57 types, 57 relationships.

What it does

Live class diagram

Opens a real .sln or .slnx — no hand-drawn boxes. Sugiyama layout, namespace clusters, MSAGL rectilinear edges with proper extends/implements labels.

Cross-language Ctrl+Click

Jumps from a member name to its definition across C# ↔ C++/CLI boundaries. Custom C++/CLI parser + Roslyn hybrid resolver.

Fowler refactoring catalog

Extract Method / Interface / Superclass / Hierarchy, Rename, Move Method, Convert Procedural to Objects — over 30 refactorings, each surfaced on the diagram and callable via MCP so external AI agents can drive them.

Code smell analyzer

24 Fowler smells — Large Class, Long Function, Data Clumps, Feature Envy, Message Chains, and friends — badged as 💩 right on the class node.

AI diff apply

Right-click a smell → ask Claude / Codex → get a unified diff → preview → apply. The diagram adapter updates incrementally, no full sln reload.

Uses your own AI subscription

No API fee on top of the app. Kata invokes your local Claude Code / Codex CLI. You control the model and the cost.

Community and Pro

  Community Pro
License PolyForm Noncommercial (source-available, free for noncommercial use) Commercial (proprietary plugin)
Editor / diagram Full Same base
Fowler refactorings All 30+ All 30+
Code smell badges All 24 smells All 24 smells
AI diff apply 10 uses per month Unlimited
Team Collab features Rolling out in 2026
Commercial use Not permitted Permitted

Getting started

Download

Grab the latest Community binary or clone github.com/dhq-boiler/Kata.

Open a solution

File → Open Solution (.sln / .slnx). Works with C# projects and C++/CLI (.vcxproj referenced from a .sln).

Refactor from the diagram

Right-click a node or member to open a refactoring, or click a 💩 badge and let AI propose a diff you can preview and apply.