debugging-hermes-tui-commands

Diagnose and fix slash command issues across Hermes TUI Python, gateway, and Ink layers.

Updated Jun 5, 2026
One-click install
npx skills add https://github.com/xu1713/openhorse --skill debugging-hermes-tui-commands-xu1713
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: debugging-hermes-tui-commands
Source: https://github.com/xu1713/openhorse/tree/main/openhorse/openhorse/skills/software-development/debugging-hermes-tui-commands
Command: npx skills add https://github.com/xu1713/openhorse --skill debugging-hermes-tui-commands-xu1713

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Slash commands in the Hermes TUI span three layers — the Python command registry, the tui_gateway JSON-RPC bridge, and the Ink/TypeScript frontend — so bugs like missing autocomplete entries, commands working in CLI but not TUI, or config changes not applying live are hard to trace. This Skill provides a systematic investigation and fix workflow for these cross-layer mismatches. ## Core Features & Use Cases - Cross-Layer Investigation: Step-by-step search commands to locate command definitions in the Python COMMAND_REGISTRY, gateway handlers, and Ink frontend handlers. - Autocomplete Fixes: Instructions for registering CommandDef entries with correct cli_only, gateway_only, aliases, and subcommands settings. - Live State Sync Guidance: Explains how to patch nanostore UI state so config changes apply immediately, not just after restart. - Use Case: A developer adds a new /details command that persists config but the TUI display doesn't update. This Skill walks them through patching the UI state, threading it through both streaming and transcript render paths, and verifying with a rebuild. ## Quick Start Ask the AI to debug why a specific Hermes TUI slash command is missing from autocomplete or behaves differently between the CLI and the TUI.

Frequently Asked Questions about debugging-hermes-tui-commands

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix a slash command missing from TUI autocomplete?

Add a CommandDef entry to COMMAND_REGISTRY in hermes_cli/commands.py with the correct name, description, category, and subcommands. Autocomplete data ships from the Python registry, so the TUI cannot suggest commands that are only defined in TypeScript.

Why does a slash command work in CLI but not in the TUI?

The command likely has a handler in cli.py but no corresponding path in the TUI. Check the local handler in ui-tui/src/app/createSlashHandler.ts and the gateway slash.exec dispatch in tui_gateway/server.py to find the missing layer.

How do I make a TUI command apply config changes live?

Updating config.set alone is not enough for TUI-local commands. Also patch the relevant nanostore state with patchUiState and thread the new state through all render paths, including both streaming and transcript message rows.

What is the difference between cli_only and gateway_only commands?

cli_only commands run only in the interactive CLI/TUI, while gateway_only commands run only on messaging platforms like Telegram or Slack. Setting neither flag makes a command available everywhere, and gateway_config_gate can conditionally enable gateway availability.

Why does the gateway silently ignore my slash command?

The gateway only dispatches commands present in GATEWAY_KNOWN_COMMANDS, which derives from COMMAND_REGISTRY. Verify the canonical name is registered, and if the command uses a gateway_config_gate, confirm the gated config value is truthy.