词元之母TOK.MOM - 平台充值汇率 1:1 即 1 人民币充值到账 1 美元,支持一个 Key 调用近 600+ 海内外模型,限时特价模型低至 1 折,欢迎上岸!
| 来源 | 内置(默认安装) |
| 路径 | skills/software-development/debugging-hermes-tui-commands |
| 版本 | 1.0.0 |
| 作者 | Hermes Agent |
| 许可证 | MIT |
| 平台 | linux, macos, windows |
| 标签 | debugging, hermes-agent, tui, slash-commands, typescript, python |
| 相关 skill | python-debugpy、node-inspect-debugger、systematic-debugging |
Python backend (hermes_cli/commands.py) <- 规范的 COMMAND_REGISTRY
│
▼
TUI gateway (tui_gateway/server.py) <- slash.exec / command.dispatch
│
▼
TUI frontend (ui-tui/src/app/slash/) <- 本地处理器 + fallthroughCOMMAND_REGISTRY 是以下内容的唯一真实来源:CLI 分发、gateway 帮助、Telegram BotCommand 菜单、Slack 子命令映射,以及发送给 Ink 的自动补全数据。hermes_cli/commands.py 的 COMMAND_REGISTRY 中添加 CommandDef 条目:cli_only 与 gateway 可用性:cli_only=True — 仅在交互式 CLI/TUI 中可用gateway_only=True — 仅在消息平台中可用gateway_config_gate="display.foo" — 在 gateway 中受配置项控制的可用性subcommands 与 TUI 显示的预期 tab 补全选项一致。cli.py 的 HermesCLI.process_command() 中添加处理器:gateway/run.py 中添加处理器:hermes_cli/commands.py 的 COMMAND_REGISTRY 中缺失。自 动补全数据由 Python 端提供。tui_gateway/server.py 中的命令处理器,以及 ui-tui/src/app/createSlashHandler.ts 中的前端处理器。如果命令在 Ink 中是纯本地命令,必须在 app.tsx 的内置分支中处理;否则会 fallthrough 到 slash.exec,必须有对应的 Python 处理器。cli.py::process_command 和 TUI 的本地处理器。TUI 本地处理器优先于 gateway 分发。config.set 是不够的。还需立即修改相关的 nanostore 状态(通常是 patchUiState(...)),并将新状态传递给所有渲染组件。示例:/details collapsed 必须实时更新详情可见性,而不仅仅是保存 details_mode;会话内全局 /details <mode> 可能需要单独的命令覆盖标志,以便实时命令能覆盖内置分区默认值,同时启动/配置同步保留默认展开的 thinking/tools 行为。GATEWAY_KNOWN_COMMANDS(自动从 COMMAND_REGISTRY 派生)是否包含规范名称。如果命令是带有 gateway_config_gate 的 cli_only,验证被门控的配置值是否为真值。python-debugpy skill 在 _SlashWorker.exec 或命令处理器内设置断点。在处理器入口处设置 remote-pdb 是最快的方式。node-inspect-debugger skill 在 app.tsx 的 slash 分发或本地命令分支处设置断点。npm run build 后执行 sb('dist/app.js', <line>)。COMMAND_REGISTRY 条目与 TUI 的本地命令列表并排比较。CommandDef 中为命令设置适当的分类(例如 "Session"、"Configuration"、"Tools & Skills"、"Info"、"Exit")aliases 元组中——无需修改其他文件,下游所有内容(Telegram 菜单、Slack 映射、自动补全、帮助)均从此派生CommandDef 中的 subcommands 元组与 TUI 代码中的内容一致cli_only=True 的命令在 gateway/消息平台中不可用——除非添加 gateway_config_gate 且该门控值为真StreamingAssistant/ToolTrail 和转录/待处理的 MessageLine 行。/clean 操作应明确检查两者。npm --prefix ui-tui run build)——tsx watch 模式在首次启动时可能有延迟/ 并验证命令出现在自动补全建议中,且显示预期的描述和参数提示。read_file ~/.hermes/config.yaml)scripts/run_tests.sh tests/gateway/)。