@clearmud/hermes-chat-bubble
AInstall, verify, and troubleshoot the Hermes Chat Bubble dashboard plugin.
Install
agr install @clearmud/hermes-chat-bubble --target claudeWrites 7 files into .claude/skills/, pinned to git-8f693eee.
- .claude/skills/hermes-chat-bubble/.gitignore
- .claude/skills/hermes-chat-bubble/AGENT_INSTALL.md
- .claude/skills/hermes-chat-bubble/LICENSE
- .claude/skills/hermes-chat-bubble/README.md
- .claude/skills/hermes-chat-bubble/SKILL.md
- .claude/skills/hermes-chat-bubble/install.sh
- .claude/skills/hermes-chat-bubble/update.sh
Document
name: hermes-chat-bubble description: Install, verify, and troubleshoot the Hermes Chat Bubble dashboard plugin. version: 0.1.0-beta author: Clearmud / Hermes Agent license: MIT metadata: hermes: tags: [hermes, dashboard, plugins, floating-chat, tui] created_by: agent
Hermes Chat Bubble
Use this skill when a user asks to install, test, package, beta-test, or troubleshoot the Hermes Chat Bubble dashboard plugin.
The plugin adds a floating Hermes TUI launcher/bubble to the Hermes Dashboard. It should reuse the dashboard's persistent embedded chat host instead of spawning a second PTY/WebSocket session.
Install target
Install the dashboard payload into the active Hermes home:
$HERMES_HOME/plugins/hermes-chat-bubble/dashboard/
├── manifest.json
└── dist/
├── index.js
└── style.css
For named profiles, $HERMES_HOME is usually:
~/.hermes/profiles/<profile>
Do not assume root ~/.hermes if the dashboard is running under a profile.
Preferred install
From the plugin repo/package:
bash install.sh
Optional profile-specific install:
bash install.sh --profile <profile>
Explicit home:
bash install.sh --hermes-home /path/to/hermes/home
Manual install
PLUGIN_SRC="/path/to/hermes-chat-bubble/dashboard"
HERMES_HOME="/resolved/hermes/home"
PLUGIN_DEST="$HERMES_HOME/plugins/hermes-chat-bubble/dashboard"
mkdir -p "$PLUGIN_DEST"
rm -rf "$PLUGIN_DEST/dist"
cp "$PLUGIN_SRC/manifest.json" "$PLUGIN_DEST/manifest.json"
cp -R "$PLUGIN_SRC/dist" "$PLUGIN_DEST/dist"
Verification
Filesystem:
test -f "$PLUGIN_DEST/manifest.json"
test -f "$PLUGIN_DEST/dist/index.js"
test -f "$PLUGIN_DEST/dist/style.css"
python -m json.tool "$PLUGIN_DEST/manifest.json" >/dev/null
grep -q "HCB_VERSION" "$PLUGIN_DEST/dist/index.js"
Dashboard API, if running at the default URL:
curl -fsS http://127.0.0.1:9119/api/dashboard/plugins/rescan || true
curl -fsS http://127.0.0.1:9119/api/dashboard/plugins | grep hermes-chat-bubble
curl -fsS http://127.0.0.1:9119/dashboard-plugins/hermes-chat-bubble/dist/index.js | grep HCB_VERSION
curl -fsS http://127.0.0.1:9119/dashboard-plugins/hermes-chat-bubble/dist/style.css | grep hermes-chat-bubble
Browser QA:
- Refresh Hermes Dashboard.
- Confirm the floating
Hermes TUIlauncher appears. - Open it on a non-
/chattab. - Navigate tabs while open.
- Click
Open full chat. - Confirm
/chatreturns to normal full-page layout with no stale fixed bubble styles. - Leave
/chat, reopen the bubble, and confirm it still uses the same chat surface.
Pitfalls
- Wrong Hermes home/profile is the most common install failure.
hermes plugins listis not enough; verify/api/dashboard/pluginsand served/dashboard-plugins/...assets when possible.- Do not restart the messaging gateway for dashboard JS/CSS changes.
- If the bubble falls back to
/chat, the dashboard probably lacks the persistent chat host (data-chat-active). - If the full
/chatroute is stuck as a small bubble, floating inline styles leaked; close/reopen, refresh, and report the exact route sequence.
Agent reporting format
When installing for a user, report:
- Install destination.
- Filesystem verification result.
- Dashboard discovery result.
- Served asset verification result.
- Browser QA status or what remains for the user to check manually.
Trustgrade A
- passBody integrity
Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.
- passType matchnot applicable to this artifact type
Whether the artifact is really the kind of thing its metadata claims it is.
- passFreshness
How long since the source repository was last pushed to.
- passPrompt injection
Scans the artifact's own text for instructions aimed at your agent rather than at you.
- passLicense
Whether the source repository declares an SPDX license permissive enough to redistribute.
How the grade is calculated
Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:
- Aevery check passed
- Bone warning
- Ctwo warnings
- Dprompt injection or body integrity failed, or three warnings
- Fone of those failed, and something else is wrong
These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.
Versions
git-8f693eeedc572026-07-31