hermes - 💡(How to fix) Fix [Bug]: Kanban dashboard plugin missing manifest.json + dist/ in 0.14.0 wheel — Kanban tab never appears

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Net effect: a fresh pipx install hermes-agent + hermes dashboard shows Sessions / Skills / Memory / Config but no Kanban tab, even after hermes kanban init succeeds and hermes kanban list works fine at the CLI. curl /api/dashboard/plugins returns []. curl /api/plugins/kanban/board returns the SPA catch-all HTML (no real route registered). No log warnings, no error toast. Wheel ships only plugin_api.py. Loader silently skips the plugin (no manifest, no entry). Kanban tab never appears in the dashboard. No error, no warning.

Fix Action

Workaround

Install a complete plugin to the user-plugin path (~/.hermes/plugins/kanban/), which takes precedence over bundled per _discover_dashboard_plugins() source order and survives hermes update:

  1. plugin_api.py — copy from the bundled site-packages location ($PIPX_VENV/lib/python*/site-packages/plugins/kanban/dashboard/plugin_api.py) so it stays in sync with the installed kanban_db schema. Pulling this file from upstream main instead risks schema drift since main may have moved past 0.14.0.
  2. manifest.json + dist/index.js + dist/style.css — download from https://raw.githubusercontent.com/NousResearch/hermes-agent/main/plugins/kanban/dashboard/.
  3. Restart the dashboard so the plugin scan picks up the new files.
  4. Verify: curl /api/dashboard/plugins should now include the kanban entry with "source":"user"; curl /api/plugins/kanban/board?board=default should return JSON.

Reference workaround script (Bash, idempotent, re-runnable after every hermes update): https://github.com/hyamie/koby-paperclip/blob/main/scripts/install-hermes-kanban-plugin.sh

Code Example

# Fresh install on Linux (Ubuntu 24.04, Python 3.12.3)
pipx install hermes-agent
pipx inject hermes-agent fastapi uvicorn
hermes kanban init                              # succeeds
hermes kanban list                              # works at CLI
hermes dashboard --no-open --tui &              # dashboard starts on :9119
sleep 3

# Check what plugins the dashboard knows about
TOKEN=$(curl -s http://127.0.0.1:9119/ | grep -oE 'SESSION_TOKEN__="[^"]+"' | sed 's/.*"\(.*\)"/\1/')
curl -s http://127.0.0.1:9119/api/dashboard/plugins \
  -H "Authorization: Bearer $TOKEN" -H "Cookie: session_token=$TOKEN"
# → []  (empty)

# Inspect the bundled plugin dir
PIPX_VENV=$(pipx environment --value PIPX_LOCAL_VENVS)/hermes-agent
ls "$PIPX_VENV"/lib/python3.*/site-packages/plugins/kanban/dashboard/
# → plugin_api.py
# → __pycache__/
# (no manifest.json, no dist/)

---

plugins/kanban/dashboard/
├── plugin_api.py
├── manifest.json
└── dist/
    ├── index.js
    └── style.css
RAW_BUFFERClick to expand / collapse

Bug Description

The Hermes 0.14.0 pip wheel ships only the backend stub plugins/kanban/dashboard/plugin_api.py (61 KB). The companion manifest.json (382 B) and dist/ frontend bundle (index.js 153 KB + style.css 43 KB) — present in this repo at plugins/kanban/dashboard/ on main — are not packaged into the wheel. The dashboard's _discover_dashboard_plugins() loader requires manifest.json and skips any plugin folder without it (silent continue, no warning logged).

Net effect: a fresh pipx install hermes-agent + hermes dashboard shows Sessions / Skills / Memory / Config but no Kanban tab, even after hermes kanban init succeeds and hermes kanban list works fine at the CLI. curl /api/dashboard/plugins returns []. curl /api/plugins/kanban/board returns the SPA catch-all HTML (no real route registered). No log warnings, no error toast.

The same packaging gap also applies to plugins/example-dashboard/ (tracked separately in #28609) and plugins/hermes-achievements/ — neither has a manifest.json in the installed wheel either.

The Kanban docs at https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban state Kanban is "a bundled dashboard plugin — not a core feature, not a separate service" and that hermes dashboard should show the tab. So the wheel is incomplete vs the docs' contract.

Steps to Reproduce

# Fresh install on Linux (Ubuntu 24.04, Python 3.12.3)
pipx install hermes-agent
pipx inject hermes-agent fastapi uvicorn
hermes kanban init                              # succeeds
hermes kanban list                              # works at CLI
hermes dashboard --no-open --tui &              # dashboard starts on :9119
sleep 3

# Check what plugins the dashboard knows about
TOKEN=$(curl -s http://127.0.0.1:9119/ | grep -oE 'SESSION_TOKEN__="[^"]+"' | sed 's/.*"\(.*\)"/\1/')
curl -s http://127.0.0.1:9119/api/dashboard/plugins \
  -H "Authorization: Bearer $TOKEN" -H "Cookie: session_token=$TOKEN"
# → []  (empty)

# Inspect the bundled plugin dir
PIPX_VENV=$(pipx environment --value PIPX_LOCAL_VENVS)/hermes-agent
ls "$PIPX_VENV"/lib/python3.*/site-packages/plugins/kanban/dashboard/
# → plugin_api.py
# → __pycache__/
# (no manifest.json, no dist/)

Expected Behavior

A fresh wheel install should ship the full plugins/kanban/dashboard/ tree:

plugins/kanban/dashboard/
├── plugin_api.py
├── manifest.json
└── dist/
    ├── index.js
    └── style.css

/api/dashboard/plugins should include the kanban entry, the Kanban tab should appear in the dashboard sidebar, and /api/plugins/kanban/board?board=default should return JSON.

Actual Behavior

Wheel ships only plugin_api.py. Loader silently skips the plugin (no manifest, no entry). Kanban tab never appears in the dashboard. No error, no warning.

Verified on Hermes Agent 0.14.0 (v2026.5.16) installed via pipx on Ubuntu 24.04 / Python 3.12.3.

Affected Component

  • Setup / Installation
  • Other (packaging / wheel / MANIFEST.in)

Workaround

Install a complete plugin to the user-plugin path (~/.hermes/plugins/kanban/), which takes precedence over bundled per _discover_dashboard_plugins() source order and survives hermes update:

  1. plugin_api.py — copy from the bundled site-packages location ($PIPX_VENV/lib/python*/site-packages/plugins/kanban/dashboard/plugin_api.py) so it stays in sync with the installed kanban_db schema. Pulling this file from upstream main instead risks schema drift since main may have moved past 0.14.0.
  2. manifest.json + dist/index.js + dist/style.css — download from https://raw.githubusercontent.com/NousResearch/hermes-agent/main/plugins/kanban/dashboard/.
  3. Restart the dashboard so the plugin scan picks up the new files.
  4. Verify: curl /api/dashboard/plugins should now include the kanban entry with "source":"user"; curl /api/plugins/kanban/board?board=default should return JSON.

Reference workaround script (Bash, idempotent, re-runnable after every hermes update): https://github.com/hyamie/koby-paperclip/blob/main/scripts/install-hermes-kanban-plugin.sh

Possible Fix

Either:

  • Add plugins/*/dashboard/manifest.json and plugins/*/dashboard/dist/** to MANIFEST.in / [tool.hatch.build.targets.wheel] include so they end up in the wheel; or
  • Document that the bundled-plugin dashboard assets ship separately and must be installed by the user (which would also need a hermes plugins install kanban flow that resolves to a known-good source).

If it's the former, this fix likely also resolves #28609 (example-dashboard) and applies to hermes-achievements for free.

Environment

  • Hermes Agent v0.14.0 (v2026.5.16)
  • Install method: pipx
  • Python 3.12.3
  • Ubuntu 24.04.x (kernel 6.8)
  • Architecture: x86_64

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix [Bug]: Kanban dashboard plugin missing manifest.json + dist/ in 0.14.0 wheel — Kanban tab never appears