Kata

Getting Started

Get Kata running on your codebase

A one-sitting walkthrough from a fresh install to a first refactor driven by your AI CLI. Everything below runs on the free Community edition — no Pro license needed to complete the tour.

What you'll be able to do

  • Install Kata Community (installer or portable ZIP) on Windows.
  • Open a real project — .sln, .slnx, Maven / Gradle, tsconfig.json, or go.mod — and see it rendered as an interactive class diagram.
  • Navigate the diagram — pan, zoom, and Ctrl+Click a member to jump to its source across language boundaries.
  • Run your first Fowler refactoring (Rename) from the diagram, preview the diff, and apply it back to the code.
  • Hand a 💩 code-smell badge to your own AI CLI, review the returned diff, and apply it — all without leaving the diagram.

1. Install Kata

Kata Community is a Windows desktop app distributed through GitHub Releases. Two download shapes are available and both are free.

Setup installer (recommended)

  • Grab Kata-win-Setup.exe from the latest release.
  • Run it. The installer places Kata under your local app data and registers it in the Start menu.
  • Updates are handled by Velopack — when a new release lands, Kata offers to update itself in place.

Portable ZIP

  • Grab Kata-win-Portable.zip from the same release and extract it anywhere.
  • Run Kata.App.exe from the extracted folder. Nothing is written outside that folder — good for USB / restricted machines.
  • Updates require re-downloading the newer ZIP.
System requirements: Windows 10 or Windows 11. The .NET 10 runtime is bundled — you do not need to install anything else.

2. Open your first project

Launch Kata and choose File → Open Solution. Kata's project loader will pick the right adapter based on the file you point it at:

  • C# / C++/CLI — .sln or .slnx
  • Java — Maven pom.xml or Gradle build.gradle / settings.gradle
  • Kotlin — Gradle Kotlin DSL (build.gradle.kts / settings.gradle.kts)
  • TypeScript — tsconfig.json
  • Go — go.mod

Once loaded, Kata builds a symbol index, groups types by namespace / package, and renders the diagram. On large solutions (thousands of types) the scale gate picks the largest namespace that fits under the layout budget as the entry view — swap namespaces from the ComboBox above the canvas to explore the rest.

First load of a large solution runs the full indexer, so it takes a moment. Subsequent reloads are incremental and typically complete in under a second.

3. Navigate the diagram

  • Pan — right-drag or middle-drag the empty canvas.
  • Zoom — mouse wheel over the canvas.
  • Select a class — click its header. The Code Viewer pane docks on the right and follows your selection.
  • Ctrl+Click a member — jumps to the definition. This works across language boundaries: C# ↔ C++/CLI, TypeScript type ↔ implementation, Kotlin ↔ Java.
  • Namespace ComboBox (top of the canvas) — switch the visible namespace when the solution is too big to lay out whole.

4. Do your first refactor

The simplest Fowler intent to try first is Rename.

  1. Right-click any class or member in the diagram and choose Rename.
  2. Type the new name in the Rename dialog. Kata resolves every reference across the solution — including cross-language ones where applicable.
  3. Click Preview. Kata builds a unified diff and opens the diff preview dialog.
  4. In the diff preview, review each hunk and click Apply. Kata writes the changes to disk and updates the diagram incrementally — no full reload.

The same pattern works for every Fowler intent Kata ships — Extract Method / Interface / Superclass, Move Method, Convert Procedural to Objects, and 25+ more. See the Refactoring catalog for the full list.

5. Do your first AI diff apply

This is where Kata's AI-native workflow shines: instead of copy-pasting classes into a chat, you hand the AI a scoped intent from the diagram surface.

  1. Point Kata at your own AI CLI once — Preferences → AI. Kata drives Claude Code or Codex CLI on your behalf; external MCP-compatible tools (Cursor and friends) attach to Kata's MCP server instead. Full setup details are on the AI CLI setup page.
  2. Find a 💩 smell badge on any node in the diagram. Right-click it and choose Ask AI.
  3. Kata builds a scoped prompt containing the class, the smell, and just enough surrounding context, then invokes your local CLI. No API charge — you're using your own subscription.
  4. Review the returned unified diff. Two banners above the diff show the policy check (nothing dangerous slipped in?) and the quality delta (does this actually reduce the smell?).
  5. Click Apply. The diagram updates incrementally, the 💩 recomputes, and you see whether the fix took.
Community edition includes 10 AI consultations per month. Pro removes the cap — see Kata Pro.

Next steps