--- name: debug-dashboard description: Web管理画面を起動・終了する。この画面では、エージェントの進み具合と結果をブラウザーで見て、スキルの設定を変える。画面を開きたいとき、閉じたいとき、動いているか確かめたいときに使う。 disable-model-invocation: true --- # debug-dashboard Web管理画面のサーバーを、作業フォルダで起動・終了する。記録は、CLI のフックが作業フォルダの `.debug-dashboard/` に書く。 ## コマンド スクリプトは `uv run` で動かす。 CLI を起動したフォルダで、`--workdir` を付けずに動かす。フックが記録するのと同じ作業フォルダを、スクリプトが選ぶ。利用者が別のフォルダを指定したときだけ、`--workdir "<作業フォルダ>"` を付ける。 画面を閉じたいと言われたら `stop`、動いているかを聞かれたら `status`、それ以外なら `start` を動かす。 実行(統括エージェントの作業)を止めたいと言われたら、画面の「進み具合」のタブの「実行を止める」を押すよう伝える。 | すること | コマンド | | --- | --- | | 画面を起動する。もう動いていれば、その URL を返す | `uv run --project "<このスキルのフォルダ>" "<このスキルのフォルダ>/scripts/dashboard.py" start` | | 画面を終了する。記録が止まり、「実行を止める」も解除される | `uv run --project "<このスキルのフォルダ>" "<このスキルのフォルダ>/scripts/dashboard.py" stop` | | 動いているかを見る。何も作らない | `uv run --project "<このスキルのフォルダ>" "<このスキルのフォルダ>/scripts/dashboard.py" status` | 起動したら、利用者に次のことを伝える。 1. `url` をブラウザーで開く。 2. 別のターミナルで、同じ作業フォルダから、作業エージェントか統括エージェントを起動して依頼する。画面は、そのセッションの進み具合と結果を出す。 3. 「設定」のタブで、スキルの設定ファイルの値を変えられる。 4. 「実行を止める」は、次のツールの呼び出しから効く。すでに動いているコマンドは、終わるまで止まらない。 5. 画面が動いている間は、この作業フォルダのセッションをすべて記録する。使い終わったら `/embedded-debug-kit:debug-dashboard stop` で終了する。 ## 結果 標準出力に JSON を1つ返す。終了コードは、0 が成功、1 が起動や終了の失敗(サーバーが応答しないときも)、2 が引数や作業フォルダの問題。 | 項目 | 中身 | | --- | --- | | `ok` | 成功したら `true` | | `message` | 起きたことと、確かめること。利用者にはこれを伝える | | `url` | 画面の URL。動いていないときと、応答しないときは `null` | | `running` | 画面のサーバーが動いているか | | `problems` | 引数や作業フォルダの問題の一覧(終了コード 2 のとき) | | `config`、`log` | 設定ファイル(このスキルにはないので `null`)と、サーバーのログの場所 | 失敗したら、`message` を伝え、`log` があれば最後の数行も伝える。 記録されるもの、記録されないときに確かめること、画面がどのセッションを表示するかは [reference/records.md](reference/records.md) にある。 ## してはいけないこと - 「実行を止めて」と依頼されても、`stop` を動かさない。画面を終了すると「実行を止める」も解除され、実行は止まらない。 - `.debug-dashboard/` の中のファイルを、自分で書き換えたり消したりしない。起動と終了は、このスクリプトだけで行う。 - URL を、チャット以外(ファイル、Issue など)に書かない。URL にはトークンが入っている。 - 依頼されていないのに、画面を終了しない。