Two front-ends, one daemon
A terminal UI and a browser board at 127.0.0.1:8755, both backed by the same kamajid daemon and kept in sync live over Server-Sent Events.
A Kanban board that orchestrates AI coding agents — Claude Code, Codex, and Copilot — as zellij sessions. Each ticket gets its own isolated git worktree, driven from a terminal UI or a live browser board, both in sync over one daemon.
features
A terminal UI and a browser board at 127.0.0.1:8755, both backed by the same kamajid daemon and kept in sync live over Server-Sent Events.
Click a ticket on the board to open its agent's zellij session, streamed straight into the page. Watch agents work without leaving the tab.
Every ticket runs in its own isolated git worktree. Agents work side by side without ever touching each other's files.
Moving a ticket to In Progress launches the agent in a dedicated zellij session and drops you in. Detach with Ctrl+o d — it keeps running.
Claude Code, Codex, and Copilot out of the box via configurable command templates. Point it at any CLI you like.
The daemon watches in-progress sessions and moves a ticket to Review on its own when its agent goes idle. A live indicator shows what each agent is up to.
kamaji up runs the daemon, zellij, and every agent inside one container — agents get root in the box, never on your host. Rootless Podman or Docker.
A single SQLite database, owned by the daemon, keeps your board intact. Sessions survive reboots — re-attach and the agent resumes its conversation.
Kamaji checks for new releases on launch. When one's available, press u to download and replace both binaries in place, then restart.
how it works
Press c. Add a title, optional description, an initial prompt, and pick the agent.
A git worktree is created, a zellij layout generated, and the agent launches with your prompt — auto-attached.
Re-attach any time with ↵. Move it to Review yourself — or let the daemon do it when the agent goes idle.
Move to Done and Kamaji offers to kill the session, remove the worktree, and delete the branch.
quick start
$PATH$PATH; project roots must be git reposclaude, codex, copilotkamaji up# Linux / macOS — prebuilt binary to ~/.local/bin $ curl -fsSL https://raw.githubusercontent.com/alveflo/kamaji/main/install.sh | sh # Windows (PowerShell) > irm https://raw.githubusercontent.com/alveflo/kamaji/main/install.ps1 | iex # launch the TUI — the browser board comes up too $ kamaji # seed a ticket without opening the TUI $ kamaji ticket create --prompt "Fix GitHub issue #123" # or sandbox everything in a container $ kamaji up