ops-dash について
ops-dash は Claude Code 向けの対話型コマンドセンタースキルです。ASCII ダッシュボードを表示して選択を ops スキルに振り分け、デーモンの警告や設定・共有・FAQ メニューも提示します。
主な機能
- 01ASCII ダッシュボードの表示
- 02選択内容を ops スキルに振り分け
- 03デーモン状態の警告表示
- 04設定・共有・FAQ メニュー
活用シーン
- 01ダッシュボードで運用状況を確認
- 02受信箱・インシデント・プロジェクト画面へ移動
- 03設定や連携情報を編集
- 04ヘルプの確認や共有用設定概要の作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill ops-dashインストール後、Claude Code で/ops-dashを入力して読み込まれたか確認します。
詳細
OPS > DASH — インタラクティブコマンドセンター
実行コンテキスト
描画する前に、利用可能なコンテキストを読み込みます。
-
設定:
${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.jsonを読み込みます。owner— ダッシュボードのヘッダー挨拶をパーソナライズしますtimezone— ステータスインジケーターのタイムスタンプを正しく表示します
-
デーモンの健全性:
${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.jsonを読み込みます。action_neededが null でない場合 → メニューの前に、ダッシュボードの最上部に警告バナーを表示します
CLI/API リファレンス
bin/ops-dash
| コマンド | 使用方法 | 出力 |
|---|---|---|
${CLAUDE_PLUGIN_ROOT}/bin/ops-dash | ピクセルアートのダッシュボード全体を描画 | 整形済み ASCII ダッシュボード |
${CLAUDE_PLUGIN_ROOT}/bin/ops-dash 2>/dev/null || echo "DASH_RENDER_FAILED" | 失敗を検出しながら描画 | ダッシュボード、または DASH_RENDER_FAILED センチネル |
bin スクリプトは内部で preferences.json と daemon-health.json を読み込みます。このスキルでは、警告を確認してからスクリプトを実行するために、これらのファイルを個別に読み込みます。
Agent Teams のサポート
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 が設定されている場合は、ダッシュボードデータを並列で読み込むときに Agent Teams を使用します。これにより、次のことが可能になります。
- エージェント同士がコンテキストを共有し、実行中に連携できます
- 優先順位をリアルタイムで調整できます
- エージェントは完了時に進捗を報告します
チームのセットアップ(フラグが有効な場合のみ):
TeamCreate("dash-team")
Agent(team_name="dash-team", name="infra-loader", prompt="Gather ECS health, Vercel status, and CI pipeline state")
Agent(team_name="dash-team", name="comms-loader", prompt="Gather unread counts across all configured channels")
Agent(team_name="dash-team", name="projects-loader", prompt="Gather GSD phase, git status, and PRs for all projects")
Agent(team_name="dash-team", name="business-loader", prompt="Gather revenue, Linear sprint, and fire alerts")
フラグが設定されていない場合は、標準の fire-and-forget サブエージェントを使用します。
ダッシュボードを即座に描画
${CLAUDE_PLUGIN_ROOT}/bin/ops-dash 2>/dev/null || echo "DASH_RENDER_FAILED"
タスク
ダッシュボードは、シェルスクリプトによってすでに上部に描画されています。あなたの役割は、ユーザーの入力を適切なスキルにルーティングすることです。
ダッシュボードの出力はそのまま表示し(すでに整形されています)、直後に AskUserQuestion を使用します。
Type a number (1-9, 0), letter (a-j), or describe what you need
ルーティングテーブル
| 入力 | ルート | 説明 |
|---|---|---|
1, go, morning, briefing | /ops:ops-go | 朝のブリーフィング |
2, inbox, unread, messages | /ops:ops-inbox | 受信トレイをゼロにする |
3, fires, incidents, down | /ops:ops-fires | 障害の確認 |
4, projects, portfolio | /ops:ops-projects | プロジェクトダッシュボード |
5, next, priority, what | /ops:ops-next | 次にすること |
6, revenue, costs, money | /ops:ops-revenue | 収益とコスト |
7, linear, sprint, board | /ops:ops-linear | Linear のスプリント |
8, deploy, ship | /ops:ops-deploy | デプロイ状況 |
9, triage, issues | /ops:ops-triage | 問題をトリアージ |
0, speedup, clean, optimize | /ops:ops-speedup | システムの高速化 |
a, yolo | /ops:ops-yolo | YOLO モード |
b, merge, prs | /ops:ops-merge | PR を自動マージ |
c, setup, configure | /ops:setup | セットアップウィザード |
d, send, comms | /ops:ops-comms | メッセージを送信 |
e, report, csuite | 最新の YOLO レポートを読む | C-suite レポート |
f, settings, prefs, config | 設定サブメニュー | インタラクティブ設定 |
g, share | 共有サブメニュー | セットアップを共有 |
h, faq, help, wiki, ? | FAQ サブメニュー | ヘルプと FAQ |
back, dash, home | ダッシュボードを再描画 | ダッシュボードに戻る |
C-suite レポートへのアクセス(選択肢 e)
ユーザーが e を選択した場合:
- 最新の YOLO セッションを探します:
ls -td /tmp/yolo-*/ 2>/dev/null | head -1 - 見つかった場合は、サブメニューを表示します。
C-suite のヘッダーを表示してから、AskUserQuestion をまとめて実行します(1 回につき最大 4 つの選択肢)。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > C-SUITE REPORTS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
AskUserQuestion の呼び出し 1:
[CEO — Strategic analysis]
[CTO — Technical health]
[CFO — Financial analysis]
[More...]
AskUserQuestion の呼び出し 2(「More...」の場合のみ):
[COO — Operations review]
[All — Full Hard Truths report]
[Back to dashboard]
選択されたファイルを読み込み、表示します。表示後に [Back to dashboard] を選択肢として提示します。
- YOLO レポートが見つからない場合:
No C-suite reports yet. Run /ops:ops-yolo to generate one.
b) Back to dashboard
設定サブメニュー(オプション f)
ユーザーが f を選択したら、現在の設定を読み込み、対話形式の設定エディターを表示します。
PREFS="${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json"
cat "$PREFS" 2>/dev/null || echo '{}'
cat "${CLAUDE_PLUGIN_ROOT}/scripts/registry.json" 2>/dev/null || echo '{}'
設定メニュー全体をテキストで表示して参照できるようにした後、AskUserQuestion をバッチで呼び出し(各回の選択肢は最大 4 件)、ユーザーがカテゴリを選べるようにします。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > SETTINGS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PROFILE: Owner=[value] | TZ=[value] | Style=[value]
CHANNELS: Email=[✓/✗] | WA=[✓/✗] | Slack=[✓/✗] | Telegram=[✓/✗]
INTEGRATIONS: AWS=[value] | Sentry=[value] | Linear=[value]
PROJECTS: [N] registered
PLUGIN: v[version]
──────────────────────────────────────────────────────
AskUserQuestion を使用します(最大 4 件の選択肢)。
What would you like to configure?
[Profile (name/timezone/style)]
[Channels (email/WA/slack/telegram)]
[Integrations & Projects]
[Back to dashboard]
「Profile」の場合:[Owner name]、[Timezone]、[Briefing style]、[Back] を指定して AskUserQuestion を使用します。
「Channels」の場合:4 つのチャンネル名を指定して AskUserQuestion を使用します(1 回の呼び出しに収まります)。
「Integrations & Projects」の場合:[AWS/Sentry/Linear]、[View registry]、[Add/remove project]、[Update plugin / Re-run setup] を指定して AskUserQuestion を使用します。
各オプションについて、AskUserQuestion を使用して新しい値を取得し、preferences.json または registry.json に書き込みます。
設定の書き込み:
PREFS="${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json"
# Read existing, merge update, write back
jq --arg key "owner" --arg val "$NEW_VALUE" '.[$key] = $val' "$PREFS" > "${PREFS}.tmp" && mv "${PREFS}.tmp" "$PREFS"
変更のたびに成功を確認し、設定メニューに戻ります。ユーザーは変更を続けるか、b を押して戻ることができます。
共有サブメニュー(オプション g)
ユーザーが g を選択したら、共有可能な ops 設定の概要を生成します。
共有用ヘッダーを表示した後、AskUserQuestion をバッチで呼び出します(各回の選択肢は最大 4 件)。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > SHARE YOUR SETUP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
AskUserQuestion の呼び出し 1:
[Share on X (Twitter)]
[Share via Slack]
[Share via Email]
[More...]
AskUserQuestion の呼び出し 2(「More...」の場合のみ):
[Copy to clipboard]
[Export setup guide (markdown)]
[Back to dashboard]
共有コンテンツの生成
共有できる形式のメッセージを生成します。**シークレット、トークン、非公開のプロジェクト名は絶対に含めないでください。**共有できる内容は次のとおりです。
- プラグインのバージョン
- 設定済みインテグレーションの数
- 管理対象プロジェクトの数
- OS とシステム情報
- 使用した機能のハイライト
テンプレート:
I'm running my business from Claude Code with claude-ops v0.3.1
Setup: [N] projects | [N] channels | [OS]
Features: Morning briefing, inbox zero, fire alerts, C-suite AI analysis, system optimizer
Try it: /plugin marketplace add ops-marketplace
#ClaudeCode #DevOps #AI
共有アクション
| オプション | アクション |
|---|---|
| X/Twitter | テキストをクリップボードにコピーし、open(macOS)または xdg-open(Linux)で https://twitter.com/intent/tweet?text=... を開きます |
| Slack | 生成したメッセージを /ops:ops-comms slack で送信します |
| メール | gog gmail send で下書きを作成するか、クリップボードにコピーします |
| クリップボード | pbcopy(macOS)/xclip -selection clipboard(Linux)/clip.exe(WSL) |
| エクスポート | チームメイトと共有するため、完全な(サニタイズ済み)セットアップガイドを ~/.claude-ops-setup.md ファイルに書き込みます |
FAQ サブメニュー(オプション h)
ユーザーが h を選択したら:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > HELP & FAQ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
QUICK START
1) What is claude-ops?
2) How do I set up channels?
3) How does YOLO mode work?
4) What data does ops collect?
COMMANDS
5) Full command reference
6) Keyboard shortcuts
TROUBLESHOOTING
7) MCP server disconnected
8) WhatsApp not connecting
9) Telegram auth issues
10) Channel not showing unread
LINKS
w) Wiki — github.com/Lifecycle-Innovations-Limited/claude-ops/wiki
r) README — github.com/Lifecycle-Innovations-Limited/claude-ops
i) Issues — github.com/Lifecycle-Innovations-Limited/claude-ops/issues
c) Changelog
──────────────────────────────────────────────────────
b) Back to dashboard
──────────────────────────────────────────────────────
FAQ の回答
| # | 質問 | 回答 |
|---|---|---|
| 1 | claude-ops とは何ですか? | Claude Code 向けのビジネス運用 OS です。受信トレイ、障害、デプロイ、PR、収益を管理し、YOLO モードではビジネスを自律的に運営できます。 |
| 2 | チャンネルのセットアップ | /ops:setup を実行します。対話形式のウィザードがインストール済みの CLI を検出し、各チャンネルの設定手順を案内します。 |
| 3 | YOLO モード | 4 つの AI エージェント(CEO、CTO、CFO、COO)を起動してビジネスを分析します。YOLO と入力して制御を引き渡すと、受信トレイを処理し、障害を修正し、PR をマージし、GSD フェーズを進めます。 |
| 4 | データ収集 | すべてのデータはローカルに保存されます。テレメトリはありません。レジストリと設定は gitignore の対象です。トークンは macOS キーチェーンまたは環境変数に保存されます。 |
| 5 | コマンドリファレンス | /ops:* コマンドを説明とともにすべて一覧表示します |
| 6 | ショートカット | 操作には 1-9, 0、パワー/コミュニケーション/設定には a-h、戻るには常に b、終了には q を使います |
| 7 | MCP の接続が切れた場合 | 5 秒待ってから再試行します(自動再接続フック)。3 回失敗すると、CLI ツールにフォールバックします。 |
| 8 | まず ~/.wacli/.health を確認します。status が connected でない場合は、wacli doctor を実行する前に認証の警告を表示します。wacli doctor を確認します。405 エラーの場合は、ソースから再ビルドします。ストアがロックされている場合は、kill $(pgrep wacli) を実行します。 | |
| 9 | Telegram | ユーザー認証(ボットではありません)が必要です。/ops:setup を実行して Telegram セクションに進みます。API ID とハッシュは my.telegram.org から取得します。 |
| 10 | 未読 | チャンネルを /ops:setup で設定する必要があります。ops-unread スクリプトの出力でエラーを確認します。 |
リンク(w、r、i)を開くには、open(macOS)または xdg-open(Linux)を使ってブラウザーで開きます。
変更履歴(c)の場合は、${CLAUDE_PLUGIN_ROOT}/CHANGELOG.md を読み込んで表示します。
各 FAQ の回答後に、b) ダッシュボードに戻る または h) FAQ に戻る を提示します。
ダッシュボードに戻るループ
いずれかのスキルが完了して制御が戻ったら、bin スクリプトを再度実行してダッシュボードを再描画し、ルーティングループに戻ります。これにより、「アプリの中のアプリ」のような操作感が生まれ、ユーザーは常にコマンドセンターに戻ります。
再描画するには:
${CLAUDE_PLUGIN_ROOT}/bin/ops-dash 2>/dev/null
次のアクションを選ぶために、もう一度 AskUserQuestion を実行します。
例外:ユーザーが q、quit、または exit と入力した場合は、セッションを正常に終了します。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > SESSION ENDED
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
$ARGUMENTS が back の場合
ダッシュボードを再描画し、ルーティングループに入ります。
$ARGUMENTS が settings の場合
設定サブメニューに直接移動します(ダッシュボードの再描画はスキップします)。
$ARGUMENTS が share の場合
共有サブメニューに直接移動します。
$ARGUMENTS が faq の場合
FAQ サブメニューに直接移動します。
セットアップゲート
ダッシュボードスクリプトが DASH_RENDER_FAILED を出力する場合、または設定ファイルが存在しない場合は、次を表示します。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS > SETUP REQUIRED
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Run /ops:setup to configure your integrations first.
その後、/ops:setup を直接呼び出します。