mcpField
O
ops-projects

ops-projects

github.com/davepoon開発3.7k69 回インストール今日更新
リポジトリ

ops-projects について

ops-projectsは、ローカルレジストリを基にGSDプロジェクト群のフェーズ、状態、ブランチ、健全性を表示するダッシュボードスキルです。複数プロジェクトの追跡に使え、必要に応じてレジストリを更新できます。

主な機能

  1. 01プロジェクトレジストリによる一覧表示
  2. 02プロジェクトのフェーズと状態の概要
  3. 03ブランチ・未コミット変更・ブロッカーの表示
  4. 04個別プロジェクトの詳細確認
  5. 05レジストリのオンデマンド同期

活用シーン

  1. 01複数のGSDプロジェクトの状態確認
  2. 02プロジェクトのフェーズとブロッカーの調査
  3. 03表示前のプロジェクトデータ更新

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/davepoon/buildwithclaude --skill ops-projects

インストール後、Claude Code で/ops-projectsを入力して読み込まれたか確認します。

詳細

実行時コンテキスト

表示する前に、以下を読み込みます:

  1. 設定:cat ${OPS_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json — owner、timezoneを読み取ります
  2. デーモンのヘルス状態:cat ${OPS_DATA_DIR}/daemon-health.json — ダッシュボードのフッターにサービスの状態を表示します
  3. GSD レジストリ:cat ${OPS_DATA_DIR}/registry.json — プライマリプロジェクトインデックスです(デーモンにより1日2回更新され、--syncでオンデマンド更新できます)

OPS ► プロジェクト — GSD ポートフォリオダッシュボード

クイックコマンド

# Refresh registry data on demand
bash ${CLAUDE_PLUGIN_ROOT}/scripts/ops-gsd-registry-sync.sh

# Show registry contents
cat ${OPS_DATA_DIR}/registry.json

# Show health summary
cat ${OPS_DATA_DIR}/cache/projects_health.json

データフロー

~/Projects/              ~/gsd-workspaces/
    │                          │
    ▼                          ▼
 [project]/.planning/    [project]/.planning/
    │                          │
    ├── HANDOFF.json           ├── HANDOFF.json     ← active-phase projects
    ├── STATE.md               ├── MILESTONES.md
    ├── ROADMAP.md             └── STATE.md
    └── MILESTONES.md
              │
              ▼  ops-gsd-registry-sync.sh (daemon: 6am + 6pm)
                    │
                    ▼
              ${OPS_DATA_DIR}/
                  ├── registry.json          ← all projects, sorted by priority
                  └── cache/
                        └── projects_health.json  ← health summary
                              │
                              ▼  ops-projects skill reads this

ダッシュボードの出力

${OPS_DATA_DIR}/cache/projects_health.jsonからダッシュボードを作成します(ファイルがない場合は${OPS_DATA_DIR}/registry.jsonを使用します)。以下を表示します:

╔══════════════════════════════════════════════════════════════╗
║  OPS ► PROJECTS          [owner]    [date]    [daemon status] ║
╠══════════════════════════════════════════════════════════════╣
║  GSD Portfolio — 23 projects                                 ║
║                                                              ║
║  🟢 EXECUTING (3)                                           ║
║    my-webapp            Phase 12  [executing]   branch: main  0 dirty ║
║    my-plugin            Phase 16  [executing]   branch: main  2 dirty ║
║    my-saas-app          Phase 39  [executing]   branch: dev   0 dirty ║
║                                                              ║
║  🟡 PAUSED (4)                                              ║
║    my-project-a         Phase 08  [paused]      branch: feat  1 dirty ║
║    my-project-b         Phase 3   [verifying]   branch: main  0 dirty ║
║    ...                                                          ║
║                                                              ║
║  🔴 BLOCKED (1)                                             ║
║    my-ecommerce         Phase 7   [await-UAT]   branch: prod  0 dirty ║
║                                                              ║
║  ⚪ IDLE / UNTRACKED (15)                                    ║
║    my-side-project      Phase 1   [complete]    branch: main  0 dirty ║
║    my-other-app         —         —              branch: dev  3 dirty ║
║    ...                                                          ║
╠══════════════════════════════════════════════════════════════╣
║  ⚡ Services: message-listener ● | inbox-digest ⏱ 2h | gsd-registry ⏱ 12h ║
╚══════════════════════════════════════════════════════════════╝
ステータスインジケーター(statusフィールドに基づく、大文字と小文字は区別しません)
  • executing → 🟢
  • paused / verifying / phase_complete → 🟡
  • human / uat / blocked / pending → 🔴
  • ステータスが空でフェーズがある → ⚪(アイドル)
  • フェーズもステータスもない → ⚪(未追跡/GSD なし)
プロジェクトごとの列:エイリアス | フェーズ | ステータス | ブランチ | 変更あり | 次のアクション

プロジェクトの詳細

$ARGUMENTSにプロジェクトのエイリアスが含まれている場合は、レジストリで検索して以下を表示します:

╔══════════════════════════════════════════════════════════════╗
║  PROJECT — [alias]                                           ║
╠══════════════════════════════════════════════════════════════╣
║  Path:      ~/Projects/[alias]/                              ║
║  Phase:     [phase]  Status: [status]                       ║
║  Milestone: [milestone name]                                ║
║  Branch:    [branch]   Dirty: [N]  Unpushed: [N]            ║
║  Blockers:  [N]                                            ║
║  Next:      [next_action text]                              ║
║                                                              ║
║  GSD files: ✓ ROADMAP  ✓ MILESTONES  [HAS_HANDOFF] STATE   ║
╚══════════════════════════════════════════════════════════════╝

Actions:
  [1] Open project directory
  [2] Continue GSD (/gsd-next [alias])
  [3] Git: branch / status / log
  [4] Run /ops projects (back to portfolio)

番号付きのアクションを提示し、番号またはアクション名を入力して選択してもらいます。


--sync フラグ

--syncまたは--refreshが渡された場合は、最初にレジストリ同期スクリプトを実行してから、更新されたダッシュボードを表示します:

bash ${CLAUDE_PLUGIN_ROOT}/scripts/ops-gsd-registry-sync.sh 2>&1

実行中は「更新中...」と表示し、その後、更新されたダッシュボード全体を提示します。


エラー状態

  • registry.jsonがない、または空の場合:1回限りの同期プロンプトを表示します
    No project registry found. Run /ops projects --sync to build it.
    
  • デーモンのヘルス状態にaction_neededが示されている場合は、警告バナーに表示します

CLI リファレンス(手動操作用)

コマンド説明
/ops projectsポートフォリオ全体を表示
/ops projects [alias]1つのプロジェクトの詳細を表示
/ops projects --syncレジストリを強制更新してダッシュボードを表示
/ops:setup registryレジストリ設定を開く(今後対応予定)

コメント