Skip to main content

A real-time kanban dashboard for monitoring Claude Code sessions across multiple servers

Project description

Claude Code Agent Kanban

A real-time web dashboard that monitors Claude Code sessions across multiple servers, displaying them as a kanban board with AI-powered task summaries.

If you run Claude Code on multiple machines simultaneously, it's easy to lose track of what each agent is doing. This tool SSHs into your servers, collects all active sessions, and presents them in a single unified view.

Claude Code Agent Kanban Screenshot

Features

  • Multi-server monitoring — SSH into remote servers to collect session data in parallel
  • Live kanban board — Sessions organized into Running / Completed / Errors columns
  • AI-powered summaries — Each session is summarized by Claude (via local claude CLI) with task description, progress status, and estimated completion percentage
  • Auto-refresh — Dashboard updates automatically; fast-polls on first load to pick up AI summaries quickly
  • Session lifecycle tracking — Sessions move from Running to Completed when the Claude Code process exits; resumed sessions move back to Running
  • Web-based configuration — Add/edit/remove SSH servers and test connections from the Settings panel, no config files needed
  • Summary caching — Summaries are cached on disk; unchanged sessions won't be re-summarized, even across restarts

Prerequisites

  • Python 3.11+
  • uv package manager
  • Claude Code CLI installed (used for AI summaries via claude -p)
  • SSH key-based access to remote servers (for multi-server monitoring)

Quick Start

Install with uv (recommended)

uvx claude-kanban

Install with pip

pip install claude-kanban
claude-kanban

Run from source

git clone https://github.com/madsys-dev/claude-kanban.git
cd claude-kanban
uv run claude-kanban

Open http://localhost:5555 in your browser.

By default, it scans the local machine for Claude Code sessions. To add remote servers, click Settings in the top-right corner.

How It Works

  1. Session discovery — Scans ~/.claude/sessions/*.json on each server to find active Claude Code processes
  2. Conversation parsing — Reads the corresponding JSONL conversation logs from ~/.claude/projects/ to extract message history
  3. AI summarization — Sends conversation excerpts (first 3 + last 6 messages) to claude -p --model haiku for summarization
  4. Lifecycle tracking — When a session's PID disappears, it moves to the Completed column. If resumed, it moves back to Running

Configuration

All configuration is done through the web UI (Settings button). Under the hood, settings are persisted to ~/.claude-kanban/config.yaml:

include_local: true
servers:
  - host: gpu-server-1.example.com
    user: ubuntu
    label: GPU Server 1
  - host: 10.0.0.50
    user: root
    port: 2222
    key: ~/.ssh/id_ed25519
    label: Dev Box

Server options

Field Required Default Description
host Yes Hostname or IP
user No Current user SSH username
port No 22 SSH port
key No ~/.ssh/id_rsa Path to SSH private key
label No Same as host Display name on the dashboard

Remote server requirements

  • Python 3 installed
  • Claude Code installed (sessions stored in ~/.claude/)
  • SSH key-based authentication configured

Environment variables

Variable Default Description
KANBAN_CONFIG ~/.claude-kanban/config.yaml Path to configuration file
KANBAN_DATA_DIR ~/.claude-kanban Data directory for config and summary cache

API

Endpoint Method Description
GET /api/sessions GET Returns all sessions (cached 30s)
POST /api/refresh POST Force refresh and return sessions
GET /api/servers GET List configured servers
POST /api/servers POST Add a server
PUT /api/servers/<id> PUT Update a server
DELETE /api/servers/<id> DELETE Remove a server
POST /api/servers/<id>/test POST Test SSH connection
PUT /api/config/local PUT Toggle local machine scanning

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_kanban-0.2.0.tar.gz (493.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_kanban-0.2.0-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

Details for the file claude_kanban-0.2.0.tar.gz.

File metadata

  • Download URL: claude_kanban-0.2.0.tar.gz
  • Upload date:
  • Size: 493.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for claude_kanban-0.2.0.tar.gz
Algorithm Hash digest
SHA256 649af8a40e587ef05a696921bdce0c3cf410c8e19785adb5d91bdded7315eca2
MD5 3cc4fb6ff405c755225bb4a9566582de
BLAKE2b-256 5bf4d69fd6dcdc48661be6e4a674a8dd01e638e559be129ea3a57a1ec38ea60f

See more details on using hashes here.

File details

Details for the file claude_kanban-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for claude_kanban-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9268491ccf2aafbfff6b827ea81685167672c2e1894405317e649b263e0958bf
MD5 3c72565d321ed178f420864cdad1ee6e
BLAKE2b-256 1b5468505772ffd17d1550b083a1b8e4b18f74c0f6448a04f00cd65f317778f8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page