← ClaudeAtlas

dispatch-progress-polllisted

子タスクの稼働状況と承認待ちを定期検出し、idle 時は沈黙、active/承認待ち時のみ通知
ttamakijp/dev-templates · ★ 0 · Data & Documents · score 72
Install: claude install-skill ttamakijp/dev-templates
> Dispatch の scheduled-tasks MCP に登録する際は、上記 `schedule.cronExpression` を > そのまま `cronExpression` パラメータに渡す。導入手順は同ディレクトリ > [`README.md`](../README.md) を参照。 ## 実行手順 ### Step 1: 瞬時遷移吸収のための 2 回サンプリング 1. `mcp__session_info__list_sessions` を 1 回目呼び出し 2. 5 秒待機 3. `mcp__session_info__list_sessions` を 2 回目呼び出し 4. 2 回のいずれかで `running` / `awaiting_approval` だった child セッション(`is_child: true`)を**和集合**で抽出 → active 候補 ### Step 2: active 候補の詳細確認 各 active 候補について `mcp__session_info__read_transcript`(`max_wait_seconds: 10`): - 現在も実行中なら running - 完了済み(`[result]` 含む)の場合、最終 assistant メッセージから: - 承認待ち文言(「承認してください」「Go でよければ」「どれで進めますか」「選択肢」「Phase 2」等)を含む → awaiting_approval - 単純完了 → idle ### Step 3: idle 子セッションの Phase 2 漏れチェック 両サンプリング共に idle だった child のうち、直近 10 分以内に活動があったものについて `read_transcript`(`max_wait_seconds: 3`)で末尾確認: - 承認待ち文言あり → awaiting_approval に昇格 - なし → idle 確定 ### Step 4: 通知判定 - running ≥ 1 または awaiting_approval ≥ 1 → `SendUserMessage`(承認待ちがあれば `status: "proactive"`、なければ `"normal"`) - 両方 0 → **SendUserMessage を呼ばず完全沈黙** ## 運用原則 - 偽陰性(見落とし)回避のため、曖昧な承認待ちは積極的に拾う - 静的状態は沈黙、動的状態は簡潔報告