ops-next について
ops-nextは、運用状況とプロジェクト作業を確認し、次の行動を提案するClaudeスキルです。インフラやCIの障害、緊急メッセージ、マージ可能なPR、スプリント課題、進行中のフェーズを優先順位付けします。
主な機能
- 01設定、デーモンの状態、運用メモの読み込み
- 02インフラとCIの障害確認
- 03未読メッセージとオープンPRの確認
- 04スプリント課題とGSDフェーズの優先順位付け
- 05選択した行動を別のスキルに引き継ぎ
活用シーン
- 01最優先で対応する運用上の問題の特定
- 02レビュー可能なPRの確認
- 03優先度の高いスプリントまたはプロジェクト課題の選択
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill ops-nextインストール後、Claude Code で/ops-nextを入力して読み込まれたか確認します。
詳細
ランタイムコンテキスト
提案する前に、以下を読み込んでください。
- 設定:
cat ${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json—owner、primary_project、default_channelsを読み取ります - デーモンの健全性:
cat ${CLAUDE_PLUGIN_DATA_DIR}/daemon-health.json—action_neededがあれば優先事項として扱います - Ops のメモリー:進行中の作業コンテキストについて、
${CLAUDE_PLUGIN_DATA_DIR}/memories/topics_active.mdを確認します
OPS ► 次のアクション
CLI/API リファレンス
gh CLI(GitHub)
| コマンド | 用途 | 出力 |
|---|---|---|
gh pr list --state open --json number,title,statusCheckRollup,reviewDecision | CI/レビュー状況を含むオープン PR | JSON 配列 |
Agent Teams のサポート
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 が設定されている場合、優先度の高いデータを並行して収集する際に Agent Teams を使用します。これにより、次のことが可能になります。
- エージェントがコンテキストを共有し、処理中に連携できます
- 優先順位をリアルタイムで調整できます
- エージェントは完了した時点で進捗を報告します
チームのセットアップ(フラグが有効な場合のみ):
TeamCreate("next-team")
Agent(team_name="next-team", name="fires-checker", prompt="Check infra health and CI for production fires")
Agent(team_name="next-team", name="comms-checker", prompt="Check unread messages across all channels")
Agent(team_name="next-team", name="prs-checker", prompt="Find PRs ready to merge — CI green, reviews approved")
Agent(team_name="next-team", name="sprint-checker", prompt="Check Linear sprint for highest-priority in-progress issues")
フラグが設定されていない場合は、通常のファイア・アンド・フォーゲット方式のサブエージェントを使用します。
事前収集データ
インフラストラクチャと緊急事態
${CLAUDE_PLUGIN_ROOT}/bin/ops-infra 2>/dev/null || echo '{"clusters":[]}'
Git と PR
${CLAUDE_PLUGIN_ROOT}/bin/ops-prs 2>/dev/null || echo '[]'
CI の状態
${CLAUDE_PLUGIN_ROOT}/bin/ops-ci 2>/dev/null || echo '[]'
未読メッセージ
${CLAUDE_PLUGIN_ROOT}/bin/ops-unread 2>/dev/null || echo '{}'
GSD のアクティブなフェーズ
for d in $(jq -r '.projects[] | select(.gsd == true) | .paths[]' "${CLAUDE_PLUGIN_ROOT}/scripts/registry.json" 2>/dev/null); do
expanded="${d/#\~/$HOME}"
if [ -f "$expanded/.planning/STATE.md" ]; then
alias=$(basename "$expanded")
cat "$expanded/.planning/STATE.md" 2>/dev/null | head -30
echo "---NEXT---"
fi
done
タスク
優先順位に従って、事前収集したすべてのデータを確認します。
優先度 1 — 緊急事態
インフラデータで、健全でない ECS タスク、停止したサービス、失敗したデプロイを確認します。
CI で、main または dev ブランチの障害を確認します。
緊急事態があれば、直ちに /ops-fires を推奨します。
優先度 2 — 緊急の連絡
未読件数を確認します。WhatsApp またはメールに、自動送信ではない人からの未読メッセージがある場合:
- 送信者やプレビューがあれば、緊急度を推定します
- 緊急の連絡があれば、
/ops-inbox [channel]を推奨します
優先度 3 — マージ可能な PR
PR について、CI が成功していること、未解決のレビューコメントがないこと、ドラフトではないことを確認します。
該当するものがあれば、その PR を今すぐレビューするよう推奨します。
確認:gh pr list --state open --json number,title,statusCheckRollup,reviewDecision 2>/dev/null
優先度 4 — LINEAR のスプリント
現在のスプリントの課題を取得します。現在のサイクルで絞り込んだ mcp__linear__list_issues を使用します(必要に応じて、サイクルのクエリには Linear GraphQL のフォールバックを使用します)。
進行中または未着手の課題のうち、最も優先度の高いものを見つけます。
優先度 5 — GSD の作業
GSD の状態から、すべてのプロジェクトを対象に、収益への影響が最も大きいアクティブなフェーズを見つけます。
収益の重み付け:scripts/registry.json から revenue.stage と priority を読み取ります。優先度の数値が小さく(優先度が高く)、収益ステージが growth または active のプロジェクトは、pre-launch または development よりも優先されます。同じ優先度の区分では、完了に最も近いフェーズを優先します。
出力形式
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS ► NEXT ACTION
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TOP PRIORITY: [fires|comms|PR|sprint|gsd]
▶ [specific action in one sentence]
WHY: [1-2 sentence rationale]
──────────────────────────────────────────────────────
Full priority stack:
1. [action] — [why] → [/skill or command]
2. [action] — [why] → [/skill or command]
3. [action] — [why] → [/skill or command]
4. [action] — [why] → [/skill or command]
5. [action] — [why] → [/skill or command]
──────────────────────────────────────────────────────
a) Do #1 now
b) Do #2 now
c) Show me everything (/ops-go)
d) I'll decide — just show the briefing
→ Pick or describe what you want
──────────────────────────────────────────────────────
AskUserQuestion を使用します。ユーザーが選択肢を選んだら、対応するスキルの説明はせず、直接呼び出して実行します。
$ARGUMENTS にコンテキスト(例:「 に集中」)が含まれている場合は、そのコンテキストに分析対象を限定します。
ネイティブツールの使用
タスク — アクションの追跡
ユーザーがアクションを選択した後、TaskCreate を使用して追跡します。対応するスキルに処理を引き継ぐ際、タスクはユーザーが重点的に取り組むと選択した内容を思い出すためのリマインダーとして保持されます。
WebFetch — 情報補完のフォールバック
事前収集データが古い、または不完全な場合は、WebFetch を使用して API(Linear GraphQL、Sentry、GitHub)から最新データを直接取得します。