<!-- GENERATED by scripts/gen_gateway_command_parity.py — DO NOT EDIT. --> <!-- tests/hermes_cli/test_gateway_command_parity.py fails when this table is stale. -->
ゲートウェイのコマンド対応表(ローカルセッション)
ローカルのクライアント(従来型 CLI、Ink TUI、Desktop、ACP)はどれも、そのセッションを持つ 1 つのゲートウェイに接続します。 スラッシュコマンドは、クライアント内で正規の操作 (session.mutate、session.create、prompt.receipt など)に対して実行されるか、slash.exec としてオーナーに送られます。 後者の場合、gateway/session_commands.py は下の表で確認済みの読み取り系コマンドだけを実行し、 それ以外は拒否します(unsupported_command)。従来型 CLI(hermes chat)は、main の HermesCLI に ゲートウェイ側のエージェントとセッションストアを組み合わせたものです。その列には、プロセス内で実行される main のハンドラー名を載せています (ターン、ツール、セッションへの書き込みは、hermes_cli/gateway_agent.py / gateway_session_store.py を通じてゲートウェイに送られます)。--stream-json / セーフモード用の転送クライアントは、 より狭い独自の経路を持っています(hermes_cli/gateway_chat_commands.py)。
ゲートウェイ(slash.exec): read = ローカルセッションで本物のハンドラーが動きます( tests/gateway/test_session_read_commands.py で確認済み)。control = 受付で区切った書き込みです(/approve /deny は、このセッションで待っている承認を解決します。tests/gateway/test_session_approval_commands.py)。 refused = 拒否されます。 備考: per-session setting (gateway handler) = メッセージング用のハンドラーが動き、設定を このローカルセッション(次のターンと config.get)に適用します。config.yaml への保存は、 ハンドラー自体が保存する場合だけです。client-local (cli_only) のコマンドは、クライアントのターミナルや UI の機能です。
登録済みコマンドは 103 個で、内訳は control 29、read 18、refused 56 です。
| コマンド | ゲートウェイ(slash.exec) |
従来型 CLI | Ink | Desktop | ACP | 備考 |
|---|---|---|---|---|---|---|
/agents (/tasks) |
refused | HermesCLI._handle_agents_command | delegation.pause | slash.exec: refused | slash.exec: refused | ゲートウェイ全体が対象です。すべてのチャットで動いているエージェントと、プロセスの非同期ジョブを一覧表示します |
/approvals |
control | HermesCLI._handle_approvals_command | slash.exec | slash.exec | slash.exec | per-session setting (gateway handler) |
/approve |
control | messaging-only: unknown command | slash.exec | slash.exec | slash.exec | messaging-only |
/autoprune |
control | HermesCLI._handle_autoprune_command | slash.exec | slash.exec | slash.exec | |
/battery |
refused | HermesCLI._handle_battery_command | sidecar: system.battery (preference not saved) | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/bg |
refused | HermesCLI._handle_background_command | prompt.background | action: background | slash.exec: refused | |
/blueprint (/bp) |
control | HermesCLI._handle_blueprint_command | slash.exec | slash.exec | slash.exec | |
/branch (/fork) |
refused | HermesCLI._handle_branch_command | canonical route | action: branch | ACP fork_session | |
/browser |
refused | HermesCLI._handle_browser_command | sidecar: browser.manage | action: browser | slash.exec: refused | client-local (cli_only) |
/btw |
refused | HermesCLI._handle_btw_command | prompt.btw | action: btw | slash.exec: refused | |
/bundles |
read | HermesCLI._handle_bundles_command | slash.exec | slash.exec | slash.exec | |
/busy |
control | HermesCLI._handle_busy_command | canonical route | unavailable: terminal | slash.exec | per-session setting (gateway handler) |
/clear |
refused | HermesCLI._cmd_clear | local | action: new | session.mutate reset | client-local (cli_only) |
/codex-runtime (/codex_runtime) |
control | HermesCLI._handle_codex_runtime | slash.exec | slash.exec | slash.exec | per-session setting (gateway handler) |
/commands |
read | messaging-only: unknown command | slash.exec | action: help | slash.exec | messaging-only |
/compress (/compact) |
refused | HermesCLI._manual_compress | canonical route | action: compress | session.mutate compress | |
/config |
refused | HermesCLI.show_config | slash.exec: refused | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/context (/ctx) |
read | HermesCLI._show_context_breakdown | slash.exec | slash.exec | slash.exec | TUI セッションでは、main の /context をカテゴリ表付きでその場で表示します |
/copy |
refused | HermesCLI._handle_copy_command | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/cron |
refused | HermesCLI._handle_cron_command | slash.exec | unavailable: terminal | slash.exec: refused | TUI セッションでは、値なしの /cron と /cron list [--all] がプロファイルのジョブを読み取ります。client-local (cli_only) |
/curator |
control | HermesCLI._handle_curator_command | slash.exec | unavailable: advanced | slash.exec | |
/debug |
control | HermesCLI._handle_debug_command | slash.exec | slash.exec | slash.exec | ログを公開のペーストサービスにアップロードします |
/deny |
control | messaging-only: unknown command | slash.exec | slash.exec | slash.exec | messaging-only |
/diff |
read | HermesCLI._handle_diff_command | slash.exec | slash.exec | slash.exec | |
/egress |
control | HermesCLI._cmd_egress | slash.exec | slash.exec | slash.exec | |
/export |
refused | HermesCLI._handle_export_command | slash.exec: refused | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/fast |
control | HermesCLI._handle_fast_command | config.get, config.set | unavailable: advanced | slash.exec | per-session setting (gateway handler) |
/focus |
refused | HermesCLI._handle_focus_command | local (preference not saved) | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/footer |
control | HermesCLI._handle_footer_command | slash.exec | unavailable: terminal | slash.exec | per-session setting (gateway handler) |
/goal |
control | HermesCLI._handle_goal_command | slash.exec | slash.exec | slash.exec | |
/handoff |
refused | HermesCLI._handle_handoff_command | slash.exec: refused | action: handoff | slash.exec: refused | client-local (cli_only) |
/hatch (/generate-pet) |
refused | HermesCLI._handle_hatch_command | slash.exec: refused | action: hatch | slash.exec: refused | client-local (cli_only) |
/heartbeat (/hb) |
control | HermesCLI._handle_heartbeat_command | slash.exec | slash.exec | slash.exec | |
/help |
read | HermesCLI._cmd_help | local | action: help | local | |
/history |
refused | HermesCLI.show_history | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/image |
refused | HermesCLI._handle_image_command | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/import |
refused | HermesCLI._handle_import_command | slash.exec: refused | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/indicator |
refused | HermesCLI._handle_indicator_command | config.get, config.set | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/init |
control | HermesCLI._handle_init_command | slash.exec | slash.exec | slash.exec | |
/insights |
read | HermesCLI._show_insights | slash.exec | unavailable: advanced | slash.exec | |
/journey (/learning, /memory-graph) |
refused | HermesCLI._handle_journey_command | local | action: journey | slash.exec: refused | client-local (cli_only) |
/kanban |
read (list/show/stats/assignees/context/runs/log/diagnostics) | HermesCLI._handle_kanban_command | slash.exec | unavailable: advanced | slash.exec | |
/learn |
control | HermesCLI._handle_learn_command | slash.exec | slash.exec | slash.exec | |
/login |
control | HermesCLI._handle_login_command | slash.exec | unavailable: settings | slash.exec | |
/loop (/proactive) |
control | HermesCLI._handle_loop_command | slash.exec | slash.exec | slash.exec | |
/memory |
read (bare / pending) |
HermesCLI._handle_memory_command | slash.exec | slash.exec | slash.exec | |
/moa |
control | HermesCLI._cmd_moa | slash.exec | slash.exec | slash.exec | |
/model |
refused | HermesCLI._handle_model_switch | canonical route | picker: model | session.mutate model | |
/new (/reset) |
refused | HermesCLI._cmd_new | local | action: new | session.mutate reset | |
/palette |
refused | HermesCLI._open_command_palette | slash.exec: refused | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/paste |
refused | HermesCLI._handle_paste_command | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/pause |
refused | messaging-only: unknown command | slash.exec: refused | slash.exec: refused | slash.exec: refused | messaging-only |
/personality |
control | HermesCLI._handle_personality_command | canonical route | slash.exec | slash.exec | per-session setting (gateway handler) |
/pet |
refused | HermesCLI._handle_pet_command | slash.exec | action: pet | slash.exec: refused | client-local (cli_only) |
/plan |
control | HermesCLI._handle_plan_command | slash.exec | slash.exec | slash.exec | |
/platform |
refused | messaging-only: unknown command | slash.exec: refused | slash.exec: refused | slash.exec: refused | メッセージング用アダプターを扱います。pause/resume はアダプターの状態を変えます |
/platforms (/gateway) |
read | HermesCLI._show_gateway_status | slash.exec | unavailable: terminal | slash.exec | client-local (cli_only) |
/plugins |
refused | HermesCLI._cmd_plugins | slash.exec | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/profile |
read | HermesCLI._handle_profile_command | slash.exec | action: profile | slash.exec | |
/prompt (/compose) |
refused | HermesCLI._handle_prompt_compose_command | local | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/queue (/q) |
refused | HermesCLI._cmd_queue | local | action: queue | prompt.submit | |
/quit (/exit) |
refused | HermesCLI._cmd_exit | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/reasoning |
control | HermesCLI._handle_reasoning_command | canonical route | action: reasoning | slash.exec | per-session setting (gateway handler) |
/redraw |
refused | HermesCLI._cmd_redraw | local | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/refine |
control | HermesCLI._handle_refine_command | slash.exec | slash.exec | slash.exec | |
/reload |
refused | HermesCLI._cmd_reload | canonical route | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/reload-mcp (/reload_mcp) |
refused | HermesCLI._confirm_and_reload_mcp | refused: not available yet | unavailable: advanced | slash.exec: refused | |
/reload-skills (/reload_skills) |
refused | HermesCLI._cmd_reload_skills | commands.catalog, skills.reload | unavailable: advanced | slash.exec: refused | |
/restart |
refused | messaging-only: unknown command | slash.exec: refused | unavailable: terminal | slash.exec: refused | messaging-only |
/resume |
refused | HermesCLI._handle_resume_command | local | picker: session | slash.exec: refused | メッセージングのチャットのセッションを切り替えます。ローカルのクライアントは ID で再開します |
/retry |
refused | HermesCLI._cmd_retry | canonical route | action: retry | session.mutate rewind + resubmit | |
/review |
control | HermesCLI._handle_review_command | slash.exec | slash.exec | slash.exec | |
/rollback |
refused | HermesCLI._handle_rollback_command | rollback.diff, rollback.list, rollback.restore | slash.exec: refused | slash.exec: refused | ファイルシステムのチェックポイントを復元します |
/save |
refused | HermesCLI.save_conversation | session.save | rpc session.save | slash.exec: refused | ゲートウェイのホスト上にエクスポートファイルを書き出します |
/sessions |
refused | HermesCLI._handle_sessions_command | local | picker: session | slash.exec: refused | メッセージングの発信元ごとに絞った一覧です(/sessions all にはメッセージングの管理者が必要です) |
/sethome (/set-home) |
refused | messaging-only: unknown command | slash.exec: refused | unavailable: terminal | slash.exec: refused | messaging-only |
/skills |
read (bare/pending/diff; approve/reject/approval control; hub refused) |
HermesCLI._cmd_skills | slash.exec; sidecar: skills.manage | slash.exec | slash.exec | client-local (cli_only) |
/skin |
refused | HermesCLI._handle_skin_command | config.get, config.set | action: skin | slash.exec: refused | client-local (cli_only) |
/snapshot (/snap) |
refused | HermesCLI._handle_snapshot_command | slash.exec: refused | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/start |
refused | messaging-only: unknown command | slash.exec: refused | slash.exec: refused | slash.exec: refused | messaging-only |
/status |
read | HermesCLI._show_session_status | canonical route | slash.exec (rpc fallback) | slash.exec | TUI セッションでは main の Hermes TUI Status を表示します |
/statusbar (/sb) |
refused | HermesCLI._cmd_statusbar | local (preference not saved) | unavailable: terminal | slash.exec: refused | client-local (cli_only) |
/steer (/s) |
refused | HermesCLI._cmd_steer | canonical route | action: steer | session.steer | |
/stop |
refused | HermesCLI._handle_stop_command | canonical route | action: stop | slash.exec: refused | |
/subgoal |
control | HermesCLI._handle_subgoal_command | slash.exec | slash.exec | slash.exec | |
/subscription (/upgrade) |
refused | HermesCLI._show_subscription | sidecar: subscription.state | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/suggestions (/suggest) |
read (bare only) | HermesCLI._handle_suggestions_command | slash.exec | slash.exec | slash.exec | |
/timestamps (/ts) |
refused | HermesCLI._handle_timestamps_command | slash.exec: refused | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/title |
control | HermesCLI._cmd_title | canonical route | action: title | session.mutate rename (bare: slash.exec) | |
/tools |
refused | HermesCLI._handle_tools_command | refused: not available yet | slash.exec: refused | session.info | client-local (cli_only) |
/toolsets |
read | HermesCLI.show_toolsets | slash.exec | unavailable: terminal | slash.exec | client-local (cli_only) |
/topic |
refused | messaging-only: unknown command | slash.exec: refused | slash.exec: refused | slash.exec: refused | messaging-only |
/topup |
read | HermesCLI._show_billing | sidecar: billing.state | slash.exec | slash.exec | |
/undo |
refused | HermesCLI._cmd_undo | canonical route | action: undo | session.mutate rewind | |
/update |
refused | HermesCLI._cmd_update | local | unavailable: terminal | slash.exec: refused | |
/usage |
read (bare only (reset refused)) |
HermesCLI._handle_usage_command | canonical route | slash.exec | slash.exec | |
/verbose |
control | HermesCLI._toggle_verbose | config.set | unavailable: terminal | slash.exec | per-session setting (gateway handler) |
/version (/v) |
read | HermesCLI._cmd_version | slash.exec | slash.exec | slash.exec | |
/voice |
control | HermesCLI._handle_voice_command | canonical route | unavailable: composer-voice | slash.exec | per-session setting (gateway handler) |
/wake |
refused | HermesCLI._handle_wake_command | local | action: wake | slash.exec: refused | client-local (cli_only) |
/whoami |
read | HermesCLI._handle_whoami_command | slash.exec | slash.exec | slash.exec | |
/worktree |
refused | HermesCLI._handle_worktree_command | slash.exec: refused | slash.exec: refused | slash.exec: refused | client-local (cli_only) |
/yolo |
control | HermesCLI._toggle_yolo | config.set | action: yolo | slash.exec | per-session setting (gateway handler) |