Skip to content

Instantly share code, notes, and snippets.

@daikw
Last active March 11, 2026 04:52
Show Gist options
  • Select an option

  • Save daikw/518dd807c36ed894da59229023d47114 to your computer and use it in GitHub Desktop.

Select an option

Save daikw/518dd807c36ed894da59229023d47114 to your computer and use it in GitHub Desktop.
swarm-dev
name swarm-dev
description チームを編成して開発する。プロジェクトを探索的に調査し、専門エージェントのチームで修正・テスト・レビューを実施する。
user-invocable true
argument-hint <タスクの概要 or 修正方針>
allowed-tools
Read
Write
Edit
Glob
Grep
Bash
Agent
Skill
AskUserQuestion
TaskCreate
TaskUpdate
TaskList
TaskGet
TeamCreate
TeamDelete
SendMessage

swarm-dev - チーム編成・並列開発スキル

複雑な開発タスクを、専門エージェントのチームで並列実行する。

When to Use

  • 「チームを作って直して」「swarm で修正」「全部洗い出して直して」
  • 複数ファイル・複数レイヤにまたがる大規模タスク
  • CRITICAL/HIGH 問題が複数あり並列対応したい場合

基本概念

問題の優先度

優先度 定義
CRITICAL 動作不能・機能が完全に壊れている
HIGH 主要機能が動くが重大な欠陥がある
MEDIUM 軽微な問題・改善余地

完了の3段階

Implemented → Verified(Local) → Integrated
ステージ 条件
Implemented コードを書いた
Verified(Local) ローカルでテスト通過・動作確認済み
Integrated CI 通過 + (UIタスクのみ)Chrome テスターによる回帰確認済み

CI 未整備リポジトリでは Verified(Local) + 手動回帰確認 を暫定許容する。 Implemented で止まったままフェーズを進めない。

リーダー責務原則

リーダーはコーディネーションのみ。Phase 1 の調査も含め、実作業は全てサブエージェントに委譲する。

リーダーがやること サブエージェントに任せること
要件確認・スコープ判断 コードベースの発見・調査
タスク分割・割り当て プロダクト目線での課題発見
フェーズ進行管理 コードの実装・修正
チーム間の調整 テストの実行・追加
最終報告・PR 作成 CI/Docker の設定・修正
ブラウザ探索的テスト

コンテキストを実作業で消費すると調整能力が落ちる。迷ったらサブエージェントに渡す。


実行フロー

Phase 0:   要件確認
    ↓
Phase 0.5: 実行コントラクト確定(Command Detective)
    ↓
Phase 1:   発見・調査(Discovery エージェント + プロダクトアナリスト 並列)
    ↓
Phase 2:   チーム編成 → Resident Boot Sequence → 即実行開始
    ↓
Phase 3:   CRITICAL修正 → テスト追加 → HIGH修正 → インフラ(各フェーズ自動移行)
    ↓
Phase 4:   統合・PR作成

Phase 0: 要件確認

$ARGUMENTS を確認し、不明点は AskUserQuestion で聞く。

  • タスクの目標: バグ修正?機能追加?品質改善?
  • スコープ: CRITICAL のみ?テストも?CI も?

Phase 0.5: 実行コントラクト確定

全エージェントが参照する「実行の共通基盤」をチーム編成前に確定する。 Command Detective をサブエージェントとして起動し、以下を調査・実行確認させる。

start_cmd:      # ローカル起動コマンド(全サービス)
test_cmd:       # テスト実行コマンド
build_cmd:      # ビルドコマンド
lint_cmd:       # Lint コマンド
typecheck_cmd:  # 型チェックコマンド
app_url:        # Chrome テスター用 URL(フロントエンドあり時)
env_vars:       # 必須環境変数と設定方法
seed_steps:     # テストデータ投入手順(あれば)
evidence:       # 根拠ファイル(README / package.json / Makefile 等)
verified:       # 各コマンドの実行確認結果(成功/失敗)

推測禁止。「根拠ファイル + 実行確認」をセットで報告する。 このコントラクトをチーム全員が共有し、コマンド不統一による無駄作業を防ぐ。


Phase 1: 発見・調査

リーダーは調査しない。以下の2エージェントを並列起動して結果を受け取る。

Discovery エージェント(技術的問題発見)

  • コードベース探索: 主要ファイル・アーキテクチャの把握
  • 既存テスト実行: 失敗を洗い出す
  • 型チェック・Lint: コンパイルエラー・Lint 違反を確認
  • フロントエンドがある場合: ビルドエラー確認
  • 発見した問題を CRITICAL / HIGH / MEDIUM に分類して報告

プロダクトアナリスト(目的・意義ベースの課題発見)

  • プロジェクトの目的・ユーザー・ビジネス価値を把握する (README, CLAUDE.md, GitHub Issues, 仕様書等を読む)
  • 「本来あるべき機能が欠けている」「動いてはいるが目的を達成できない」問題を発見する
  • 技術的には正常でも UX・ビジネス要件として問題がある箇所を洗い出す
  • Discovery エージェントとは別視点で CRITICAL / HIGH / MEDIUM を評価して報告

リーダーは両エージェントの報告を統合し、優先度の判断を行う。


Phase 2: チーム編成

問題リストをもとに必要なロールを選んでチームを編成する。

ロール一覧

固定ロール(常に起動)

ロール 責務
Command Detective 実行コントラクト調査・確定(Phase 0.5 専任)
Discovery エージェント 技術的問題発見(Phase 1 専任)
プロダクトアナリスト 目的・意義ベースの課題発見(Phase 1 専任)
統合テスト担当 既存テスト実行・新規テスト追加・失敗分析
Codex レビュアー /codex で実装をクロスレビュー(ゲート役)
再帰的プランナー 計画の見直し・漏れ発見・タスク管理(常駐)

条件付きロール(機械判定)

以下の条件を Phase 0.5 の実行コントラクトから機械的に評価し、起動を決定する。

条件変数 true の判定基準
frontend_present package.json に dev/build スクリプトがあり app_url が疎通確認済み
browser_automatable mcp__claude-in-chrome__* ツールが利用可能
backend_present API サーバ起動コマンドが存在し疎通確認済み
infra_issue_present CI/Docker 関連の失敗が Discovery で再現済み
起動ルール 起動するロール
frontend_present=true フロントエンド開発者
frontend_present=true AND browser_automatable=true Chrome テスター(常駐MUST)
backend_present=true バックエンド開発者
infra_issue_present=true インフラ専門家

Resident Boot Sequence(必須)

Phase 2 完了直後に即実行する。待機禁止。 チーム編成後はユーザーへの確認を待たず、この手順を完了してから Phase 3 に移る。

1. 常駐エージェントを Skill ツールで起動

再帰的プランナー(常に起動):
  Skill("loop", "5m 現在の全タスク状態を確認し、計画の漏れ・優先度変化・依存関係の変化を洗い出してリーダーへ報告する。問題なければ「異常なし」とだけ報告する。")

Chrome テスター(browser_automatable=true 時のみ起動):
  Skill("loop", "3m 全主要機能フローを1ラウンド探索し、発見した問題を報告する。既知バグは再報告しない。CRITICAL 新発見時のみ待機、それ以外は即次ラウンドへ。")

2. 起動確認

  • 90秒以内に各常駐エージェントから初回報告を受信する
  • 受信できなければ同一設定で再起動(最大2回)

3. フォールバック

  • /loop が利用不可なら Agent で定期単発実行に切替
  • 切替した事実を TaskUpdate の description に記録する

ロールの詳細な運用ガイドは ROLES.md を参照。


並列編集プロトコル

  • ファイル単位の予約より 責務境界での分割 を優先する。
  • jj を使って並列編集を行う。

jj の利用

# Coordinator がエージェントごとに workspace を作成
jj workspace add ../ws-<agent-name>
# 各エージェントは自分の change で作業
# bookmark: agent/<name>/<task-id>

# 統合: 各エージェント change を integration change に順次 rebase
jj rebase -s <agent-change> -d integration/<task-id>
# → テスト実行 → 通ったもののみ統合

# 統合 change がグリーンになったら main へ反映
# ロールバックは jj op undo で直前操作を戻す

競合が起きたら

  1. エージェントが最新の integration change に rebase
  2. 解決できなければ Coordinator が jj resolve で一元解消
  3. 同じホットスポットで競合が繰り返す場合はファイル分割・責務分割を検討

Phase 3: フェーズ別実行(自走)

チームはユーザー・リーダーの確認なしで、自律的にフェーズを進める。 必要に応じてメンバー間で調整を行う。

フェーズ構成

Phase A: CRITICAL 修正(並列)
    ↓ 全タスクが Integrated に達したら自動移行
Phase B: テスト追加(並列)
    ↓
Phase C: HIGH 修正(並列)
    ↓
Phase D: インフラ整備(任意)
    ↓
Phase E: Codex レビュー・統合 → PR 作成

フェーズ移行条件

  • 全タスクが Integrated 状態
  • CRITICAL が新規発生していない(再帰的プランナーが確認)
  • Codex レビュアーのゲートチェックが PASS

CRITICAL が未解決のまま次フェーズへ移行しない。

ロールバック手順

1. 影響タスクを特定: どのタスクの変更が原因か
2. 対象コミット ID を明示してリーダーに報告
3. 他エージェントへの影響を確認(承認必須)
4. jj op undo / git revert でタスク単位で戻す
5. 再帰的プランナーがタスクを再設計してから再実行

他エージェントの変更を承認なく巻き戻さない。ロールバックはタスク単位で行う。


Phase 4: 統合・PR 作成

  1. テスト実行
  2. Chrome テスター最終ラウンド(frontend_present=true 時)
  3. Codex レビュアー最終ゲートチェック
  4. コミット・プッシュ
  5. PR 作成: CRITICAL/HIGH/MEDIUM 別・テスト結果・残課題を記載

アウトプットテンプレートは TEMPLATES.md を参照。


安全ルール

  • main への直接 push 禁止 - 必ず feature ブランチ + PR
  • 大規模削除・破壊的操作はユーザー確認必須(このルールのみ中断して確認)
  • 他エージェントの変更を承認なくロールバックしない
  • Integrated 未達のままコミットしない
  • CRITICAL は最優先で修正・他フェーズより先に着手
  • 実行コマンドはプロジェクトから読み取る(推測禁止)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment