並列エージェント委任
1回の delegate_task 呼び出しで複数のサブエージェントに作業を分散する場合、特にファイルの作成や編集を伴う場合に使用します。最もコスト超過やツリーの破損が発生するのは、2つのエージェントが同じファイルを自分が所有していると認識したときです。
使用するタイミング
タスクが同じリポジトリ、ディレクトリ、またはプロジェクトに影響を与える、あらゆるマルチエージェントファンアウト(ファイル作成、エリアごとのリファクタリング、ビルド→テストの分割など)。
手順
-
ディスパッチ前に、パスでスライスする。 各タスクに、指定されたファイルまたはディレクトリの排他的な所有権を与えます。2つのエージェントが同じファイルに書き込んではならず、どのファイルも割り当てられないままにしてはいけません。多くの重複するスライスよりも、少なく明確に大きなスライスを優先します。
-
すべてのタスクブリーフに絶対パスを明記する。 相対パスは一部のエージェント内部では異なるワーキングディレクトリに対して解決され、その結果、作業が
~/Projects/app/fixtureではなく~/fixtureに配置される可能性があります。「このツリーの外には何も作成しない」という行を明示的に含めます。 -
共有ファイルには1人の所有者を割り当てる。 設定ファイル、マニフェスト、リストレジストリは、名前を指定して単一のタスクに所有させます。他のエージェントには、それを編集してはならず、含まれるべき内容を報告することだけを許可すると伝えます。
-
望まない副作用を禁止する。 インストール、ビルド、テスト実行、git コミットが許可されているかどうかを明示的に述べます。監視なしのインストールは、無関係なディレクトリに
node_modulesを散らかします。 -
機械的に確認可能なレポートを要求する: 作成された正確な絶対パス、検証された内容、およびその検証方法(パース、レンダリング、ビルド、単体テスト)。検証方法なしの自己申告による成功はノイズです。
-
コミットまたは報告する前に、自分でマージ結果を検証する: ビルドし、テストスイートを実行し、重要なファイルを読み戻します。N個の独立したレポートが動作するツリーを構成することを信頼してはいけません。
-
迷子ファイルを掃除する。 エージェントが作成した可能性のあるディレクトリ(ホームルート、兄弟プロジェクトディレクトリ、スクラッチ)を対象ツリーの外側で検索します。セッションが終了する前に見つけたものを調整します。
常時適用ルール
- ファイルの削除は症状です。2つのエージェントが「未使用」のパスを整理するとき、それぞれが相手が書き込んだばかりのものを削除します。削除権限は明示的に割り当てます。
- 自分のターンをブロックして兄弟エージェントを待ってはいけません。独立した作業を続け、結果が到着したときに行動します。
- 自分がすでに終了してコミットした後に結果が到着した場合は、ワーキングツリーの状態と迷子ファイルを確認し、まだ何をする必要があるかを判断します。ツリーがクリーンであると想定せず、彼らの作業が競合しないと想定もしないでください。
- 1つのアーティファクトに書き込むエージェントの数は可能な限り低く抑えます。読み取り専用の分析には自由にファンアウトし、書き込みには控えめにファンアウトします。
落とし穴
- 同名の衝突。 「CSSファイル」や「設定」を説明する2つのブリーフが、エージェントごとに異なるパスにルーティングされます。正確な絶対パスを指定します。
- コンベンションの逸脱。 部分的に構築されたツリーを見たエージェントが、ミッドフライトで別のエージェントのレイアウトを採用し、1つのプロジェクトに2つのコンベンションが残ります。ブリーフ内でレイアウトを固定します。
- 実行されていない検証を信頼する。 ビルドやレンダリングが合格したと主張するレポートに証拠がない場合は、通常、構造的に判断されたことを意味します。それを再現します。
- クリーンアップの衝突。 あるエージェントが自分の「現在は死んでいる」ファイルを削除すると、兄弟エージェントの成果物が削除される可能性があります。上記の常時適用ルールを参照してください。
サポートファイル
templates/delegation-brief.md— パス所有権、禁止された副作用、検証可能なレポート形式を強制するタスクブリーフのコピー&記入用テンプレート。