Kagan — Summary
Slug: kagan
GitHub: https://github.com/kagan-sh/kagan
Stars: 88
License: MIT
Language: Python 3.12+ (Textual TUI), TypeScript (VS Code extension, React web)
Version: 0.11.4-beta.1
Status: Active (last commit 2026-05-25); Discord community
What It Is
Kagan is a Kanban TUI for AI coding agents with a mandatory structural human review gate. It enforces a state machine (BACKLOG → IN_PROGRESS → REVIEW → DONE) where the REVIEW → DONE transition is not automatable. No agent-authored task reaches main branch without explicit human approval.
Core differentiator: "That transition — REVIEW to DONE — cannot be automated away. It is not a setting."
Key Features
- Textual TUI (primary interface) + React 19 web dashboard + VS Code extension
- State machine with enforced human merge gate (hardcoded, not configurable)
- Git worktree isolation per task
- 14 supported agent backends (Claude Code, Codex, Gemini CLI, OpenCode, Kimi CLI, GitHub Copilot, Goose, OpenHands, Auggie, Amp, Docker cagent, Stakpak, Mistral Vibe, VT Code)
- MCP server with WORKER/REVIEWER/ORCHESTRATOR role modes
- SQLite + Alembic migrations for state persistence
- Interactive launchers: tmux, nvim, vscode, cursor, windsurf, kiro, antigravity
kagan attach— interrupt a managed run for interactive session
Architecture Stack
TUI (Textual, Python)
+ MCP server (FastMCP, stdio)
+ API server (Starlette + FastMCP, SSE)
+ SQLite (kagan.db, Alembic migrations)
+ Git worktrees (one per task)
+ Web dashboard (React 19 + jotai + Tailwind CSS 4)
+ VS Code extension (kagan.kagan-vscode)
State Storage
All state stored outside the project repo at ~/.local/share/kagan/ (worktrees, config.toml, kagan.db).