CommandMateのCLIから、起動中のエージェントセッションを操作するコマンドのガイドです。 これらのコマンドを使用することで、コーディングエージェント(Claude Code, Codex等)が他のエージェントを並列操作できるようになります。
- CommandMateサーバーが起動中であること(
commandmate start --daemon) - 操作対象のworktreeがサーバーに登録済みであること(ブラウザUIのサイドバーに表示されていること)
CLIはデフォルトで localhost:3000 に接続します。別のポートで起動している場合は CM_PORT 環境変数で指定します。
# デフォルト(ポート3000)
commandmate ls
# 別ポートのサーバーに接続
CM_PORT=3011 commandmate lsサーバーが --auth 付きで起動されている場合、CM_AUTH_TOKEN 環境変数でトークンを指定します。
# 推奨: 環境変数(プロセスリストに表示されない)
CM_AUTH_TOKEN=your-token commandmate ls
# 代替: --token フラグ(プロセスリストに表示されるため注意)
commandmate ls --token your-tokenグローバルインストールなしでも、開発環境から直接実行できます。
# ビルド(初回のみ)
npm run build:cli
# 実行
node bin/commandmate.js ls
CM_PORT=3000 node bin/commandmate.js send abc123 "msg"| コマンド | 用途 |
|---|---|
commandmate ls |
worktree一覧の表示 |
commandmate send |
エージェントへのメッセージ送信 |
commandmate wait |
エージェント完了の待機 |
commandmate respond |
プロンプトへの応答 |
commandmate capture |
ターミナル出力の取得 |
commandmate auto-yes |
Auto-Yesの制御 |
commandmate instances |
エージェントインスタンス(roster)の一覧・追加・削除・alias変更 |
commandmate report |
日次レポートの生成・表示・一覧 |
commandmate skill |
公式Skillのカタログ参照・Install Plan・install・uninstall・status |
commandmate update |
CommandMate本体の更新(停止 → 更新 → 再起動) |
worktree一覧をステータス付きで表示します。
commandmate ls # テーブル形式
commandmate ls --json # JSON形式(エージェント向け)
commandmate ls --quiet # IDのみ(1行1ID、パイプ用)
commandmate ls --branch feature/ # ブランチ名プレフィックスでフィルタ
commandmate ls --id anvil- # worktree IDプレフィックスでフィルタ
--idについて: worktree ID は<リポジトリ名>-<ブランチ名>形式のスラッグ(例anvil-develop)です。--idはこの ID の前方一致でフィルタします。--branchと--idは独立して適用され、同時指定すると両方が適用されます(AND)。同一ブランチ名(例develop)が複数リポジトリに存在する場合、--id anvil-のように ID プレフィックスで特定リポジトリの worktree に絞り込めます。前方一致は case-sensitive で、一意性は保証しません(--id anvil-developはanvil-develop-2にもマッチし得ます)。厳密に1件へ絞るには--quietの出力をgrep -xする等してください。
ID NAME STATUS DEFAULT
----------------------------------------------- -------------------- ------- ------
localllm-test-main main ready claude
mycodebranchdesk-develop develop running claude
mycodebranchdesk-feature-518-worktree feature/518-worktree ready claude
mycodebranchdesk-main main idle claude
| ステータス | 意味 |
|---|---|
idle |
セッション未起動 |
ready |
セッション起動中・入力待ち(タスク完了後の状態) |
running |
エージェントがタスク実行中 |
waiting |
確認プロンプト待ち(Yes/No等) |
指定worktreeのエージェントにメッセージを送信します(非同期)。セッションが未起動の場合は自動的に起動します。
commandmate send <worktree-id> "<message>"
commandmate send <worktree-id> "<message>" --agent codex # エージェント指定
commandmate send <worktree-id> "<message>" --agent codex --instance codex-2 # 追加インスタンス宛て
commandmate send <worktree-id> "<message>" --agent codex --instance codex-2 --register # rosterへ登録
commandmate send <worktree-id> "<message>" --auto-yes # Auto-Yes有効化
commandmate send <worktree-id> "<message>" --auto-yes --duration 3h
commandmate send <worktree-id> "<message>" --auto-yes --stop-pattern "FAILED"| オプション | 説明 | デフォルト |
|---|---|---|
--agent <id> |
エージェント種別(claude, codex, gemini, vibe-local, opencode, copilot, antigravity) | claude |
--instance <id> |
インスタンスID。<agent> または <agent>-<n>(例: claude-2)。未起動なら自動起動 |
エージェントのプライマリインスタンス |
--register |
--instance で指定したセッションをroster(エージェントインスタンス一覧)に登録 |
- |
--auto-yes |
送信前にAuto-Yesを有効化 | - |
--duration <d> |
Auto-Yesの有効期間(1h, 3h, 8h) | 1h |
--stop-pattern <p> |
Auto-Yes停止条件(正規表現) | - |
--instanceの詳細(ID規約・rosterとの関係)は マルチセッション(1エージェント複数セッション) を参照してください。
# 全ID一覧
commandmate ls --quiet
# ブランチ名でフィルタしてID取得
commandmate ls --branch feature/101 --quiet
# → mycodebranchdesk-feature-101
# worktree IDプレフィックスでフィルタ(同一ブランチ×複数リポジトリの絞り込み)
commandmate ls --id anvil- --quiet
# → anvil-develop
# 変数に格納
WT=$(commandmate ls --branch feature/101 --quiet)
commandmate send "$WT" "実装してください"指定worktreeのエージェントが完了するまでブロッキング待機します。
commandmate wait <worktree-id> --timeout 300
commandmate wait <id1> <id2> --timeout 600 # 複数同時待機
commandmate wait <worktree-id> --on-prompt agent # プロンプト検出で返却(デフォルト)
commandmate wait <worktree-id> --on-prompt human # プロンプトは人間がUIで応答
commandmate wait <worktree-id> --stall-timeout 120 # 出力変化なしの検出| オプション | 説明 | デフォルト |
|---|---|---|
--timeout <sec> |
最大待機時間(秒) | 無制限 |
--on-prompt <mode> |
プロンプト検出時の動作(agent / human) | agent |
--stall-timeout <sec> |
出力変化なしのタイムアウト(秒) | - |
--instance <id> |
対象インスタンスID(<agent> または <agent>-<n>) |
エージェントのプライマリインスタンス |
| コード | 意味 | 次のアクション |
|---|---|---|
| 0 | 正常完了(エージェントが入力待ちに戻った) | capture で結果取得 |
| 10 | プロンプト検出(--on-prompt agent 時) |
respond で応答し、再度 wait |
| 124 | タイムアウト | capture で状況確認、再度 wait or 中断 |
| モード | 動作 |
|---|---|
agent(デフォルト) |
プロンプト検出で即座に exit 10 で返却。stdoutにプロンプト情報をJSON出力 |
human |
プロンプト検出してもブロック継続。人間がブラウザUIで応答するまで待機し、最終的に exit 0/124 で返却 |
{
"worktreeId": "localllm-test-main",
"cliToolId": "claude",
"type": "yes_no",
"question": "Do you want to proceed? [Y/n]",
"options": ["yes", "no"],
"status": "pending"
}進捗メッセージはstderrに出力されます。stdoutは最終結果(JSON)のみです。
# stderr:
Waiting: localllm-test-main (status=running, running=true, prompt=false)
Waiting: localllm-test-main (status=running, running=true, prompt=false)
Completed: localllm-test-main
エージェントのプロンプト(確認ダイアログ等)に応答を送信します。
commandmate respond <worktree-id> "yes" # Yes/No
commandmate respond <worktree-id> "2" # 複数選択(番号)
commandmate respond <worktree-id> "text" # テキスト入力
commandmate respond <worktree-id> "yes" --agent claude
commandmate respond <worktree-id> "yes" --agent codex --instance codex-2 # 追加インスタンス宛て| コード | 意味 |
|---|---|
| 0 | 応答成功 |
| 99 | プロンプトが既に消えている(prompt_no_longer_active) |
指定worktreeのターミナル出力を取得します。
commandmate capture <worktree-id> # テキスト出力
commandmate capture <worktree-id> --json # JSON出力(ステータス情報付き)
commandmate capture <worktree-id> --agent codex # エージェント指定
commandmate capture <worktree-id> --agent codex --instance codex-2 # 追加インスタンス指定{
"isRunning": true,
"sessionStatus": "ready",
"cliToolId": "claude",
"lineCount": 42,
"isPromptWaiting": false,
"autoYes": { "enabled": false, "expiresAt": null }
}Auto-Yes(確認プロンプト自動応答)を個別に制御します。
commandmate auto-yes <worktree-id> --enable # 有効化(デフォルト1h)
commandmate auto-yes <worktree-id> --enable --duration 3h # 期間指定
commandmate auto-yes <worktree-id> --enable --stop-pattern "error" # 停止条件
commandmate auto-yes <worktree-id> --disable # 無効化
commandmate auto-yes <worktree-id> --enable --agent codex # エージェント指定
commandmate auto-yes <worktree-id> --enable --agent codex --instance codex-2 # 追加インスタンス個別制御| オプション | 説明 |
|---|---|
--enable |
Auto-Yesを有効化 |
--disable |
Auto-Yesを無効化 |
--duration <d> |
有効期間(1h, 3h, 8h) |
--stop-pattern <p> |
指定パターンがターミナル出力に出現したら自動停止 |
--agent <id> |
対象エージェント |
--instance <id> |
対象インスタンスID。他インスタンスと独立してAuto-Yesを制御 |
worktreeの「エージェントインスタンス」(roster)を一覧・追加・削除・alias変更します(Issue #1000)。
rosterはブラウザUIのAgentパネル(AgentInstancesPane)が管理する正本データで、send --instance が起動するアドホックなセッションとは別管理です。
commandmate instances <worktree-id> # 一覧(デフォルト動作)
commandmate instances <worktree-id> --json # JSON出力
commandmate instances <worktree-id> add --agent codex # 追加(IDは自動採番、例: codex-2)
commandmate instances <worktree-id> add --agent codex --alias "レビュー用"
commandmate instances <worktree-id> add --agent codex --id codex-3 # ID明示指定
commandmate instances <worktree-id> remove <instance-id> # rosterから削除
commandmate instances <worktree-id> remove <instance-id> --kill # 削除+セッション停止
commandmate instances <worktree-id> alias <instance-id> "新しい名前" # alias変更
commandmate instances <worktree-id> kill <instance-id> # 該当インスタンスのセッションのみ停止INSTANCE_ID ALIAS CLI_TOOL RUNNING AUTO_YES
----------- ------ -------- ------- --------
claude Claude claude yes no
codex-2 レビュー用 codex no no
| オプション | 説明 | 対象アクション |
|---|---|---|
--json |
JSON形式で出力 | list, add |
--agent <tool> |
新規インスタンスの実行元CLIツール | add(必須) |
--alias <name> |
表示名(省略時はツール名から自動生成) | add |
--id <instance-id> |
明示的なインスタンスID(省略時は自動採番) | add |
--kill |
roster削除と同時にセッションも停止 | remove |
| コード | 意味 |
|---|---|
| 0 | 成功 |
| 2 | バリデーションエラー(不正な --agent/--id、上限超過、最後の1件を削除しようとした等) |
| 99 | 指定インスタンスがrosterに存在しない |
1つのworktreeで、同じCLIツールのセッションを複数同時に起動できます(Issue #868)。
| 形式 | 意味 |
|---|---|
<agent> |
プライマリインスタンス(例: claude, codex) |
<agent>-<n>(n ≥ 2) |
追加インスタンス(例: claude-2, codex-3) |
--instance は send / wait / respond / capture / auto-yes すべてで受け付けます。
- roster = ブラウザUIのAgentパネルで管理される、正式なインスタンス一覧(表示順・alias付き)。
commandmate instancesで一覧・追加・削除・alias変更ができます。 send --instance <id>は roster に登録されていなくてもセッションを自動起動します(アドホック実行)。ただし roster に無いインスタンスはUIのサイドバー/タブには表示されません。send ... --instance <id> --registerを付けると、送信後にそのインスタンスを roster へ自動登録します。UIと状態を一致させたい場合はこちらを使ってください。- 有効な
--instanceの値を調べるにはcommandmate instances <worktree-id>で roster と稼働中セッションを確認します。
--instance 付きで --auto-yes / auto-yes --enable を実行すると、そのインスタンスのAuto-Yesは他インスタンスと独立して有効化・停止されます。
WT=$(commandmate ls --branch feature/101 --quiet)
# roster確認(有効な --instance 値を調べる)
commandmate instances "$WT"
# 追加インスタンスをrosterに登録してから使う
commandmate instances "$WT" add --agent codex --alias "レビュー用"
commandmate send "$WT" "差分をレビューして" --agent codex --instance codex-2 --auto-yes
commandmate wait "$WT" --instance codex-2 --timeout 600
commandmate capture "$WT" --agent codex --instance codex-2 --json
# アドホックに起動しつつ、その場でrosterに登録
commandmate send "$WT" "軽くチェックして" --agent codex --instance codex-3 --register
# 不要になったら削除(セッションも停止)
commandmate instances "$WT" remove codex-2 --kill日次レポート(その日のエージェント活動サマリー)を生成・表示・一覧します(Issue #636)。 サーバー稼働中に、登録済みのセッション履歴をもとにAIツールがレポートを生成します。
commandmate report generate # 本日分を生成(claude)
commandmate report generate --date 2026-06-21 # 日付指定
commandmate report generate --tool codex # AIツール指定
commandmate report generate --template <id> # テンプレートを指示文として使用
commandmate report generate --instruction "要約して" # カスタム指示文
commandmate report show # 本日分を表示
commandmate report show --date 2026-06-21 --json # 日付指定+JSON出力
commandmate report list # 直近7日を一覧
commandmate report list --days 30 # 直近30日を一覧
commandmate report list --json # JSON出力| サブコマンド | 用途 |
|---|---|
generate |
指定日のレポートを生成し、内容を標準出力に表示 |
show |
既存レポートを表示(未生成なら No report found を表示) |
list |
直近 N 日分のレポート有無・メッセージ件数・生成ツールを一覧 |
| オプション | 説明 | デフォルト |
|---|---|---|
--date <date> |
対象日(YYYY-MM-DD) |
当日 |
--tool <tool> |
使用するAIツール(claude, codex, copilot) | claude |
--model <model> |
モデル名(copilot 向け) | - |
--template <id> |
テンプレートIDを指示文として使用 | - |
--instruction <text> |
カスタム指示文(--template の代替) |
- |
--token <token> |
認証トークン(CM_AUTH_TOKEN 環境変数を推奨) |
- |
| オプション | 説明 | デフォルト |
|---|---|---|
--date <date>(show) |
対象日(YYYY-MM-DD) |
当日 |
--days <days>(list) |
一覧する日数 | 7 |
--json |
JSON形式で出力 | - |
--token <token> |
認証トークン(CM_AUTH_TOKEN 環境変数を推奨) |
- |
注意:
--dateはYYYY-MM-DD形式のみ受け付けます。不正な形式はexit 2(CONFIG_ERROR)になります。--toolは claude / codex / copilot のいずれか、--daysは 1 以上を指定してください。
2026-06-21 [report] tool=claude messages=12
2026-06-20 [no report] messages=3
2026-06-19 [report] tool=codex messages=8
公式 Agent Skill を CLI から管理します。ブラウザ UI と同一の API / domain service を利用する thin client であり、 CLI 側で download / extract / write / delete は一切行いません。
filesystem path・artifact URL・file list・checksum は API 側で明示的に拒否されるため、CLI はそれらを再構成しません。 plan で server が発行した plan token を、そのまま install / uninstall へ渡します。
# カタログ参照
commandmate skill list # 一覧(表形式)
commandmate skill list --json # JSON(API レスポンスそのまま)
commandmate skill list --prerelease # prerelease を含める
commandmate skill info <skill-id> # 能力・提供元・version・互換性
commandmate skill info <skill-id> --version 1.2.0
# Install Plan(書き込みなし)
commandmate skill plan <skill-id> --worktree <worktree-id>
commandmate skill plan <skill-id> --worktree <worktree-id> --version 1.2.0 --json
# install(plan → 確認 → apply)
commandmate skill install <skill-id> --worktree <worktree-id> --version 1.2.0
commandmate skill install <skill-id> --worktree <worktree-id> --version 1.2.0 --dry-run
commandmate skill install <skill-id> --worktree <worktree-id> --version 1.2.0 --yes
commandmate skill install <skill-id> --worktree <worktree-id> --version 1.2.0 \
--yes --ack-risk <skill-id>@1.2.0 # high-risk Skill
# uninstall / status
commandmate skill uninstall <skill-id> --worktree <worktree-id> --dry-run
commandmate skill uninstall <skill-id> --worktree <worktree-id> --yes
commandmate skill status <skill-id> --worktree <worktree-id> --json| 状況 | 挙動 |
|---|---|
| 常に | 先に plan を構築して内容を表示する |
--dry-run |
plan までで停止し、書き込み・削除を行わない |
TTY かつ --yes なし |
plan summary を表示してから確認プロンプト(stderr)を出す |
非TTY かつ --yes なし |
書き込まず exit 12。プロンプトを出せない環境で暗黙実行しない |
| high-risk Skill | --yes に加えて --ack-risk <skill-id>@<version> の完全一致が必要。--yes だけでは通らない(TTY で承諾しても同じ) |
| オプション | 対象サブコマンド | 説明 |
|---|---|---|
--worktree <id> |
plan / install / uninstall / status | 対象worktree ID(commandmate ls で確認) |
--version <version> |
info / plan / install | install では必須(exact version) |
--dry-run |
install / uninstall | plan までで停止 |
-y, --yes |
install / uninstall | 確認プロンプトをスキップ(非対話環境では必須) |
--ack-risk <id>@<version> |
install | high-risk Skill の明示的な承認 |
--prerelease |
list / info / plan / install | prerelease version を対象に含める |
--json |
全サブコマンド | JSON出力(API レスポンスをそのまま出力) |
--token <token> |
全サブコマンド | 認証トークン(CM_AUTH_TOKEN 環境変数を推奨) |
| コード | 意味 | 対処 |
|---|---|---|
| 0 | 成功 | - |
| 1 | サーバー/Catalog へ到達できない | リトライ可 |
| 2 | 引数不正・Skill / version が存在しない | argv を修正 |
| 11 | worktree 側が拒否(local変更・衝突・lock・plan drift) | 該当pathを解消して再 plan |
| 12 | 書き込みが確認されなかった(--yes なし・拒否・--ack-risk 不一致) |
明示的に承認して再実行 |
| 13 | ファイルは変更されたが reconciliation が必要 | 状態を確認(自動収束する) |
stdout / stderr の分離:
--json成功時の stdout は parse 可能な JSON のみになります。 plan summary・確認プロンプト・警告・エラー(typed code と blocker path を含む)はすべて stderr に出るため、--json実行が失敗した場合の stdout は空です。
skill statusについて: 1 worktree × 1 Skill の導入状態を、install receipt(ディスク上の実体)から報告します。 worktree 単位で導入済み Skill を一覧する API は未提供のため、<skill-id>は必須です。
CommandMate本体を最新バージョンに更新します(Issue #1194)。
グローバルインストール環境では、停止 → npm install -g commandmate@latest → 再起動 → 応答確認を1コマンドで実行します。
他のコマンドと異なり、操作対象は worktree ではなくnpm registry とローカルのデーモンです(--token フラグはありません。再起動後の応答確認先 URL は .env / CM_PORT から解決され、CM_AUTH_TOKEN があれば Bearer トークンとして使用されます)。
commandmate update # 確認プロンプトつきで更新
commandmate update --check # 更新の有無を確認するだけ(何も変更しない)
commandmate update --yes # 確認プロンプトをスキップ(非対話環境では必須)| オプション | 説明 |
|---|---|
--check |
バージョンを表示するだけ。インストール・停止・再起動を行わない(registry照会に失敗した場合のみ exit 5) |
-y, --yes |
確認プロンプトをスキップ。TTYのない環境では必須(無い場合は exit 2) |
Current: v0.9.0
Latest: v0.10.0
Update available: yes
いずれも更新を実行せず exit 0 で終了します。
| 条件 | 動作 |
|---|---|
| すでに最新 | Already up to date を表示 |
| ローカルの方が新しい | ダウングレードせずスキップ |
| ローカルまたはlatestがプレリリース | 比較不能としてスキップ |
| 非グローバルインストール(git clone環境) | 手動更新手順(git pull → npm install → npm run build:all → 再起動)を案内 |
| コード | 定数名 | 意味 |
|---|---|---|
| 0 | SUCCESS | 更新完了・スキップ・キャンセル・--check(応答確認が緩和された場合も含む) |
| 2 | CONFIG_ERROR | 非対話環境で --yes が指定されていない |
| 3 | START_FAILED | 更新は成功したが、再起動後のサーバーを確認できない(ロールバック不要) |
| 4 | STOP_FAILED | サーバーを停止できず中止(何も変更していない) |
| 5 | UPDATE_FAILED | npm registry照会・npm install -g・バージョン検証のいずれかに失敗 |
| 99 | UNEXPECTED_ERROR | 予期しないエラー |
- 起動オプションは復元されません: 再起動後は
.envの設定のみで起動します。--auth/--auth-expire/--cert/--key/--allow-http/--allowed-ips/--trust-proxy/--port/--devを使っていた場合は、update 後に手動で起動し直してください(--authは起動のたびに新しいトークンが生成されます)。 - worktree用サーバー(
--issue)は対象外: 停止も再起動もされません。npm install -gがパッケージディレクトリ(dist//.next/)を置換するため、稼働中のworktreeサーバーは異常終了する可能性があります。update 前にcommandmate stop --issue <number>、update 後にcommandmate start --issue <number>を実行してください(稼働中の場合は警告が表示されます)。 - メインサーバーが停止中の場合: 更新のみを行い、サーバーは起動しません。
- 認証・IP制限・自己署名証明書の環境: 再起動後の応答確認が「サーバー応答の確認のみ」に緩和され、警告付きで成功(exit 0)します。厳密に確認するには
CM_AUTH_TOKENを設定して実行してください。 - EACCES(権限エラー):
sudoで再実行しないでください。CLIセットアップガイドの権限エラー(EACCES) の手順で npm のグローバルディレクトリ権限を修正します。 - 失敗時のロールバック: 更新前のバージョンに戻すコマンドが表示されます(
npm install -g commandmate@<更新前のバージョン>)。
# 1. worktree IDを取得
WT=$(commandmate ls --branch feature/101 --quiet)
# 2. メッセージ送信
commandmate send "$WT" "Issue #101 をTDDで実装してください"
# 3. 完了まで待機
commandmate wait "$WT" --timeout 600
# 4. 結果を確認
commandmate capture "$WT"WT=$(commandmate ls --branch feature/101 --quiet)
commandmate send "$WT" "Issue #101 を実装して" --auto-yes --duration 3h
commandmate wait "$WT" --timeout 1800
commandmate auto-yes "$WT" --disable # 安全のため無効化
commandmate capture "$WT" --jsonWT=$(commandmate ls --branch feature/101 --quiet)
commandmate send "$WT" "リファクタリングして"
while true; do
commandmate wait "$WT" --timeout 600 --on-prompt agent
EXIT_CODE=$?
if [ $EXIT_CODE -eq 0 ]; then
echo "完了"
break
elif [ $EXIT_CODE -eq 10 ]; then
# プロンプト検出 → 自動応答
commandmate respond "$WT" "yes"
elif [ $EXIT_CODE -eq 124 ]; then
echo "タイムアウト"
break
fi
done
commandmate capture "$WT"# 2つのworktreeに同時に指示
WT1=$(commandmate ls --branch feature/101 --quiet)
WT2=$(commandmate ls --branch feature/102 --quiet)
commandmate send "$WT1" "Issue #101 を実装して" --auto-yes
commandmate send "$WT2" "Issue #102 を実装して" --auto-yes --agent codex
# 両方の完了を待つ
commandmate wait "$WT1" "$WT2" --timeout 1800
# 結果をそれぞれ確認
commandmate capture "$WT1" --json
commandmate capture "$WT2" --jsonError: Server is not running. Start it with: commandmate start
原因: CommandMateサーバーが起動していない、またはポートが異なる。
対処:
# サーバー起動
commandmate start --daemon
# 別ポートの場合
CM_PORT=3011 commandmate lsError: Resource not found. Check the worktree ID.
原因: 指定したIDがサーバーに登録されていない。
対処:
# 登録済みIDを確認
commandmate ls --quiet
# worktreeを同期(新しく作成した場合)
curl -s -X POST http://localhost:3000/api/repositories/sync原因: エージェントの処理に時間がかかっている、またはエラーで停止している。
対処:
# 現在の状態を確認
commandmate capture <id> --json
# タイムアウトを延長
commandmate wait <id> --timeout 3600
# ブラウザUIで直接確認
# http://localhost:3000 にアクセスし、該当worktreeのターミナルを確認Warning: Response may not have been applied. Reason: prompt_no_longer_active
原因: プロンプトが既に消えている(Auto-Yesが自動応答した、またはタイミングのずれ)。
対処: エージェントの動作に影響はないため、そのまま wait で続行できます。
Error: Invalid duration. Must be one of: 1h, 3h, 8h
対処: --duration には 1h, 3h, 8h のいずれかを指定してください。
Error: Invalid agent. Must be one of: claude, codex, gemini, vibe-local, opencode
対処: --agent には上記のいずれかを指定してください。
サーバーが --auth 付きで起動されている場合、トークンなしで接続するとエラーになります。
対処:
# 環境変数で指定(推奨)
CM_AUTH_TOKEN=your-token commandmate ls
# --token フラグで指定(プロセスリストに表示されるため注意)
commandmate ls --token your-token| コード | 定数名 | 意味 |
|---|---|---|
| 0 | SUCCESS | 正常完了 |
| 1 | DEPENDENCY_ERROR | サーバー未起動等のインフラエラー |
| 2 | CONFIG_ERROR | バリデーションエラー(不正なagent, duration等) |
| 3 | START_FAILED | サーバーの起動・起動後の確認に失敗(start / update) |
| 4 | STOP_FAILED | サーバーの停止に失敗(stop / update) |
| 5 | UPDATE_FAILED | 更新に失敗(update: registry照会 / npm install -g / バージョン検証) |
| 10 | PROMPT_DETECTED | wait中にプロンプトを検出 |
| 99 | UNEXPECTED_ERROR | 予期しないエラー / リソース未検出 |
| 124 | TIMEOUT | waitのタイムアウト |
- クイックスタートガイド - CommandMateの基本的な使い方
- コマンド利用ガイド - スラッシュコマンドの詳細
- ワークフロー例 - 実践的な使用例