team-lifecycle-v4 について
team-lifecycle-v4は、仕様策定からレビューまでのマルチエージェント開発を調整するスキルです。役割ルーターが専門タスクを割り当て、セッションの成果物とチェックポイントを管理します。
主な機能
- 01専門ロールへのタスク振り分け
- 02仕様策定からレビューまでの調整
- 03セッション状態と成果物の追跡
- 04状態確認、再開、修正、再チェック
活用シーン
- 01複数エージェントによる開発プロジェクトの調整
- 02既存のライフサイクルセッションの再開や修正
MCP 対応
チーム内の通信に `mcp__ccw-tools__team_msg` メッセージバスを使用します。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ catlog22/ claude-code-workflow --skill team-lifecycle-v4インストール後、Claude Code で/team-lifecycle-v4を入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
roles/analyst/role.mdroles/coordinator/role.mdroles/coordinator/commands/analyze.mddispatch.mdmonitor.mdroles/executor/role.mdroles/executor/commands/fix.mdimplement.mdroles/planner/role.mdroles/reviewer/role.mdroles/reviewer/commands/review-code.mdreview-spec.mdroles/supervisor/role.mdroles/tester/role.mdroles/writer/role.mdspecs/knowledge-transfer.mdpipelines.mdquality-gates.mdtemplates/architecture.mdepics.mdproduct-brief.mdrequirements.md詳細
チームライフサイクル v4
マルチエージェントによるソフトウェア開発をオーケストレーションします:仕様策定 → 計画 → 実装 → テスト → レビュー。
アーキテクチャ
Skill(skill="team-lifecycle-v4", args="task description")
|
SKILL.md (this file) = Router
|
+--------------+--------------+
| |
no --role flag --role <name>
| |
Coordinator Worker
roles/coordinator/role.md roles/<name>/role.md
|
+-- analyze → dispatch → spawn → STOP
|
+--------+---+--------+
v v v
[team-worker] ... [team-supervisor]
per-task resident agent
lifecycle message-driven
(woken via SendMessage)
ロールレジストリ
| ロール | パス | プレフィックス | 内部ループ |
|---|---|---|---|
| coordinator | roles/coordinator/role.md | — | — |
| analyst | roles/analyst/role.md | RESEARCH-* | false |
| writer | roles/writer/role.md | DRAFT-* | true |
| planner | roles/planner/role.md | PLAN-* | true |
| executor | roles/executor/role.md | IMPL-* | dynamic |
| tester | roles/tester/role.md | TEST-* | false |
| reviewer | roles/reviewer/role.md | REVIEW-, QUALITY-, IMPROVE-* | false |
| supervisor | roles/supervisor/role.md | CHECKPOINT-* | false |
ロールルーター
$ARGUMENTS を解析します:
--role <name>がある場合 →roles/<name>/role.mdを読み込み、フェーズ 2〜4 を実行--roleがない場合 →@roles/coordinator/role.mdを読み込み、エントリールーターを実行
共通定数
- セッションプレフィックス:
TLV4 - セッションパス:
.workflow/.team/TLV4-<slug>-<date>/ - CLI ツール:
ccw cli --mode analysis(読み取り専用)、ccw cli --mode write(変更) - メッセージバス:
mcp__ccw-tools__team_msg(session_id=<session-id>, ...)
ワーカー起動テンプレート
コーディネーターはこのテンプレートを使用してワーカーを起動します:
Agent({
subagent_type: "team-worker",
description: "Spawn <role> worker",
team_name: <team-name>,
name: "<role>",
run_in_background: true,
prompt: `## Role Assignment
role: <role>
role_spec: <skill_root>/roles/<role>/role.md
session: <session-folder>
session_id: <session-id>
team_name: <team-name>
requirement: <task-description>
inner_loop: <true|false>
## Progress Milestones
session_id: <session-id>
Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
Report blockers immediately via team_msg type="blocker".
Report completion via team_msg type="task_complete" after final SendMessage.
Read role_spec file (@<skill_root>/roles/<role>/role.md) to load Phase 2-4 domain instructions.
Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5 (report).`
})
スーパーバイザー起動テンプレート
スーパーバイザーはチームワーカーから独立した常駐エージェントです。セッション初期化時に一度起動し、CHECKPOINT タスクごとに SendMessage で起動します。
起動(フェーズ 2 — セッションごとに一度)
Agent({
subagent_type: "team-supervisor",
description: "Spawn resident supervisor",
team_name: <team-name>,
name: "supervisor",
run_in_background: true,
prompt: `## Role Assignment
role: supervisor
role_spec: <skill_root>/roles/supervisor/role.md
session: <session-folder>
session_id: <session-id>
team_name: <team-name>
requirement: <task-description>
## Progress Milestones
session_id: <session-id>
Report progress via team_msg at natural phase boundaries (context loaded -> core work done -> verification).
Report blockers immediately via team_msg type="blocker".
Report completion via team_msg type="task_complete" after final SendMessage.
Read role_spec file (@<skill_root>/roles/supervisor/role.md) to load checkpoint definitions.
Init: load baseline context, report ready, go idle.
Wake cycle: coordinator sends checkpoint requests via SendMessage.`
})
起動(handleSpawnNext — CHECKPOINT タスクごと)
SendMessage({
type: "message",
recipient: "supervisor",
content: `## Checkpoint Request
task_id: <CHECKPOINT-NNN>
scope: [<upstream-task-ids>]
pipeline_progress: <done>/<total> tasks completed`,
summary: "Checkpoint request: <CHECKPOINT-NNN>"
})
シャットダウン(handleComplete)
SendMessage({
type: "shutdown_request",
recipient: "supervisor",
content: "Pipeline complete, shutting down supervisor"
})
ユーザーコマンド
| コマンド | アクション |
|---|---|
check / status | 実行ステータスグラフを表示 |
resume / continue | 次のステップに進む |
revise <TASK-ID> [feedback] | 指定したタスクを修正 |
feedback <text> | 修正用のフィードバックを注入 |
recheck | 品質チェックを再実行 |
improve [dimension] | 最も弱い次元を自動改善 |
完了アクション
パイプラインが完了すると、コーディネーターは次を提示します:
AskUserQuestion({
questions: [{
question: "Pipeline complete. What would you like to do?",
header: "Completion",
multiSelect: false,
options: [
{ label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
{ label: "Keep Active", description: "Keep session for follow-up work" },
{ label: "Export Results", description: "Export deliverables to target directory" }
]
}]
})
仕様リファレンス
- specs/pipelines.md — パイプラインの定義とタスクレジストリ
- specs/quality-gates.md — 品質ゲートの基準とスコアリング
- specs/knowledge-transfer.md — 成果物と状態の転送プロトコル
セッションディレクトリ
.workflow/.team/TLV4-<slug>-<date>/
├── team-session.json # Session state + role registry
├── spec/ # Spec phase outputs
├── plan/ # Implementation plan + TASK-*.json
├── artifacts/ # All deliverables
├── wisdom/ # Cross-task knowledge
├── explorations/ # Shared explore cache
├── discussions/ # Discuss round records
└── .msg/ # Team message bus
エラー処理
| シナリオ | 解決方法 |
|---|---|
| 不明なコマンド | 使用可能なコマンド一覧を含むエラーを表示 |
| ロールが見つからない | ロールレジストリを含むエラーを表示 |
| CLI ツールの失敗 | ワーカーは直接実装にフォールバック |
| 先行実行の競合 | コーディネーターが次のコールバック時に調整 |
| スーパーバイザーのクラッシュ | recovery: true で再起動し、既存レポートから自動的に再構築 |
| CHECKPOINT に対してスーパーバイザーの準備ができていない | スーパーバイザーを起動または再起動し、準備完了を待ってから起動 |
| 完了アクションの失敗 | デフォルトで「アクティブのまま」にする |
コメント
Markdown 対応