Skip to main content

Lightweight Kanban board for Hermes Agent

Project description

hermes-kanban

Hermes Agent

Dark Theme

A lightweight, self-contained Kanban board built for Hermes Agent. Zero external dependencies — just SQLite, Flask, and a single pip install.

What is this?

Hermes Kanban gives your AI agents a shared task board. Agents create, update, and complete tasks through a REST API. You monitor everything through a clean web UI with drag-and-drop, dark/light themes, and real-time updates.

Agents are auto-detected from your Hermes profiles — no configuration needed. Install it, start it, and your agents appear automatically.

Quick Start

pip install hermes-kanban
hermes-kanban serve

Open http://localhost:9120 — Login: hermes / hermes

That's it. Your agents from ~/.hermes/profiles/ are already on the board.

Features

  • Auto-detect agents — scans ~/.hermes/profiles/ and pulls names + descriptions from SOUL.md
  • Dark & Light themes — toggle with one click, respects your preference
  • Responsive design — works on desktop and mobile
  • Drag & drop — move tasks between columns visually
  • SQLite backend — no database server needed, single file storage
  • REST API — full CRUD for tasks, agents, and comments
  • Telegram notifications — optional, get notified on task changes
  • Basic auth — protect your board (configurable)
  • Export — download your tasks as JSON anytime

Screenshots

Dark Theme

Dark Theme

Light Theme

Light Theme

Mobile

Mobile Dark      Mobile Light

How Agent Detection Works

~/.hermes/profiles/
  kaveh/SOUL.md      → "# Kaveh — Team Lead"
  dariush/SOUL.md    → "# Dariush — Developer"
  emily/SOUL.md      → "# Emily — Friend & Companion"
  yasaman/SOUL.md    → "# Yasaman — QA Engineer"

Hermes Kanban reads each profile folder, extracts the first line of SOUL.md as the display name, and assigns a color. Add a new profile → it appears on the board automatically.

You can also add agents manually via POST /api/agents — these show up with source: "custom".

Configuration

All settings are optional via environment variables:

Variable Default Description
KANBAN_PORT 9120 Server port
KANBAN_HOST 0.0.0.0 Bind address
KANBAN_AUTH_USER hermes Login username
KANBAN_AUTH_PASS hermes Login password
KANBAN_NO_AUTH 0 Set to 1 to disable auth
KANBAN_DB auto Custom database path
TELEGRAM_BOT_TOKEN Telegram bot token (optional)
TELEGRAM_HOME_CHANNEL Telegram chat ID (optional)

REST API

Method Endpoint Description
GET /api/tasks List all tasks
GET /api/tasks/<id> Get task details
POST /api/tasks Create a task
PUT /api/tasks/<id> Update a task
PUT /api/tasks/<id>/status Change task status
DELETE /api/tasks/<id> Delete a task
GET /api/stats Task counts by status
GET /api/agents Agent workload
GET /api/agents/config Auto-detected agents
POST /api/agents Add a custom agent
DELETE /api/agents/<name> Remove a custom agent
POST /api/tasks/<id>/comments Add a comment

Create a task

curl -X POST http://localhost:9120/api/tasks \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Fix login bug",
    "description": "Users cant login with SSO",
    "assignee": "dariush",
    "priority": 1,
    "status": "todo"
  }'

List agents

curl http://localhost:9120/api/agents/config
[
  {
    "name": "dariush",
    "display_name": "Dariush — Developer",
    "color": "#4f8ee8",
    "source": "hermes"
  }
]

Hermes Integration

Hermes Agent discovers the Kanban board via SQLite. Once the server is running, agents can:

  1. Create tasks via POST /api/tasks
  2. Update status via PUT /api/tasks/<id>/status
  3. Add comments via POST /api/tasks/<id>/comments
  4. Check workload via GET /api/agents

Agents see each other's tasks and can pick up work from any column.

Development

git clone https://github.com/2D-Soft/hermes-kanban.git
cd hermes-kanban
pip install -e .
hermes-kanban serve --port 9121

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

hermes_kanban-1.0.0.tar.gz (46.4 kB view details)

Uploaded Source

Built Distribution

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

hermes_kanban-1.0.0-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

Details for the file hermes_kanban-1.0.0.tar.gz.

File metadata

  • Download URL: hermes_kanban-1.0.0.tar.gz
  • Upload date:
  • Size: 46.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for hermes_kanban-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e5cb930565d31260864bb72e55f29b8181261a7dc4e6895534e8e4c77c552cc7
MD5 2c9ab733b9f8ab88ecf6e3c5525bd533
BLAKE2b-256 6b3b96af3a1b39ea7d45e7a38861ac2c35d352f27f3815a182b14acfc3506d95

See more details on using hashes here.

File details

Details for the file hermes_kanban-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: hermes_kanban-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 49.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for hermes_kanban-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7fdde117b3d7b34221967cd3ef2f25dc47930f3a06f1bf938f63fc3a0987ffe
MD5 58fce7c05087f057975888712aeadd2e
BLAKE2b-256 f1a87486c863e1071b597cd4a10bde2ec3382f7499ed9b4e1cdab31962c6d532

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