1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code の fork() の使いどき — 並列エージェント設計の判断基準

1
Posted at

「Claude Code でサブエージェントを並列で走らせたいけど、fork() と通常の fresh agent どちらを使えばいい?」——エージェント設計を自動化に組み込もうとすると、この判断で詰まります。

結論を先に言います。fork() を使うのは「親のコンテキストが必要で、かつ子の出力をコンテキストに戻したくないとき」 です。

この記事の環境

  • Claude Code(Agent SDK)
  • subagent_type: "fork" / "general-purpose"
  • 自動化設計(content-executor)を組む中で確認した動作

fork() の実際の動作

fork() で起動したエージェントは、親セッションのコンテキストをすべて引き継ぎます。

重要なのは キャッシュ共有 です。fork() は親と同じコンテキストから始まるため、Prompt Caching がそのまま効きます。コンテキストが重いセッションでも、fork() の子エージェントは初回から低コストで動きます。

親セッション(コンテキスト 5万トークン)
  └── fork() → 子は同じ 5万トークンのキャッシュを引き継ぐ
        入力コスト = キャッシュヒット分(入力単価の約1/10)で処理される

一方、fresh agent はコンテキストがゼロから始まります。タスクの背景・ファイルの内容・制約条件をすべてプロンプトに書いて渡す必要があります。

fork() vs fresh agent の判断基準

条件 fork() fresh agent
親のコンテキストが必要 ✅ ❌(プロンプトに書く)
子の生ログを親コンテキストに入れたくない ✅ ✅
独立した視点・別モデルが必要 ❌ ✅
軽量な単発タスク ❌(過剰) ✅
並列研究・調査 ✅ ✅
コンテキストを読んだ後の派生作業 ✅ △(要再ロード)

fork() を選ぶ 3 条件:

  1. 親が今持っているコンテキストを子エージェントにも使わせたい
  2. 子の作業結果(ツール呼び出しの生ログなど)を親コンテキストに入れたくない
  3. 並列でいくつかの独立した問いを調べたい

fresh agent を選ぶ条件:

  • 別モデルを使いたい(fork は親と同じモデル固定)
  • コンテキストのない「第三者の目」が必要
  • 親のコンテキストが重すぎて引き継ぎが逆効果なとき

実装例(並列チェック)

// 並列チェックを fork() で実行する設計例
Agent({ subagent_type: "fork", prompt: "誇張チェック: ...", run_in_background: true })
Agent({ subagent_type: "fork", prompt: "ターゲット適合チェック: ...", run_in_background: true })
Agent({ subagent_type: "fork", prompt: "CTA重複チェック: ...", run_in_background: true })
// 各チェックの完了を待ち、結果だけを受け取る
content-executor(本体)
  ├── fork(誇張チェック)        ─┐
  ├── fork(ターゲット適合チェック) ─┤ 並列実行
  └── fork(内部リンク存在チェック) ─┘
     ↓ 判定結果だけを受け取る(生ログは引き継がない)

これで親のコンテキストを汚さずに、並列チェックを低コストで実行できます。

まとめ

  • fork() = コンテキスト継承 + キャッシュ共有。重いセッションの派生作業に使う
  • fresh agent = ゼロから開始。クリーンな判断・別モデル使用時に使う
  • 子の生ログを親コンテキストに戻したくない場合はどちらでも run_in_background: true

判断基準の比較表と、実際の自動化設計への組み込みパターンの詳細は元記事にも載せています → https://www.masatoman.net/articles/claude-code-fork-subagent-guide-2026?utm_source=qiita&utm_medium=referral&utm_campaign=dist-syndication&utm_content=claude-code-fork-subagent-guide-2026

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?