team-testing について
team-testing は、テスト戦略から結果分析までを複数のエージェントで調整するスキルです。L1、L2、L3 の段階的なカバレッジと Generator-Critic ループでテスト工程を進めます。
主な機能
- 01複数エージェントによるテスト工程の調整
- 02戦略、生成、実行、分析の各段階
- 03L1、L2、L3 の段階的なカバレッジ
- 04Generator-Critic によるカバレッジ調整
- 05タスクの修正とフィードバック
活用シーン
- 01段階別テストの計画と生成
- 02テストの実行と結果分析
- 03フィードバックに基づくテストタスクの修正
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ catlog22/ claude-code-workflow --skill team-testingインストール後、Claude Code で/team-testingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
roles/analyst/role.mdroles/coordinator/role.mdroles/coordinator/commands/analyze.mddispatch.mdmonitor.mdroles/executor/role.mdroles/generator/role.mdroles/strategist/role.mdspecs/pipelines.mdteam-config.json詳細
チームテスト
マルチエージェントのテストパイプラインをオーケストレーションします:strategist → generator → executor → analyst。Generator-Critic ループによるカバレッジ収束を通じて、段階的なレイヤーカバレッジ(L1/L2/L3)を実現します。
アーキテクチャ
Skill(skill="team-testing", 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 workers -> STOP
|
+-------+-------+-------+-------+
v v v v
[strat] [gen] [exec] [analyst]
team-worker agents, each loads roles/<role>/role.md
ロールレジストリ
| ロール | パス | プレフィックス | 内部ループ |
|---|---|---|---|
| coordinator | roles/coordinator/role.md | — | — |
| strategist | roles/strategist/role.md | STRATEGY-* | false |
| generator | roles/generator/role.md | TESTGEN-* | true |
| executor | roles/executor/role.md | TESTRUN-* | dynamic |
| analyst | roles/analyst/role.md | TESTANA-* | false |
ロールルーター
$ARGUMENTS を解析します:
--role <name>がある場合 →roles/<name>/role.mdを読み込み、フェーズ 2~4 を実行します--roleがない場合 →@roles/coordinator/role.mdを使用し、エントリルーターを実行します
共通定数
- セッションプレフィックス:
TST - セッションパス:
.workflow/.team/TST-<slug>-<date>/ - チーム名:
testing - 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: "testing",
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: testing
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).`
})
ユーザーコマンド
| コマンド | アクション |
|---|---|
check / status | パイプラインのステータスグラフを表示します |
resume / continue | 次のステップに進みます |
revise <TASK-ID> | 指定したタスクを修正します |
feedback <text> | 修正用のフィードバックを入力します |
完了アクション
パイプラインが完了すると、コーディネーターは次を提示します:
AskUserQuestion({
questions: [{
question: "Testing 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: "Deepen Coverage", description: "Add more test layers or increase coverage targets" }
]
}]
})
セッションディレクトリ
.workflow/.team/TST-<slug>-<date>/
├── .msg/messages.jsonl # Team message bus
├── .msg/meta.json # Session metadata
├── wisdom/ # Cross-task knowledge
├── strategy/ # Strategist output
├── tests/ # Generator output (L1-unit/, L2-integration/, L3-e2e/)
├── results/ # Executor output
└── analysis/ # Analyst output
仕様リファレンス
- specs/pipelines.md — パイプラインの定義とタスクレジストリ
- specs/team-config.json — チーム設定
エラー処理
| シナリオ | 解決方法 |
|---|---|
| 不明な --role の値 | 利用可能なロールの一覧とともにエラーを表示します |
| ロールが見つからない | 想定されるパス(roles//role.md)を示すエラーを表示します |
| CLI ツールが失敗 | ワーカーは直接実装にフォールバックします |
| GC ループの上限超過 | 警告を付けて現在のカバレッジを受け入れます |
| 早期進行の競合 | コーディネーターは次のコールバック時に調整します |
| 完了アクションが失敗 | デフォルトで Keep Active にします |
コメント
Markdown 対応