Claude Code /goal・Agent View完全ガイド|v2.1.139の自律実行と並列運用
- Claude Codeで複数タスクを並行して走らせたいエンジニア
- 「テストが通るまで走り続けてほしい」ニーズがあるフリーランス
- Codex /goalと迷っている、または両方使い分けたい開発者
「セッションに戻ったらまだ同じ場所で止まってた」。Anthropicコミュニティでこの愚痴が頻発したのは、Claude Codeが各ターン後に律儀に人間の判断を仰ぐ仕様だったからだ。「Claudeとの往復をやめて、ゴールを与えてしまえ」という趣旨の主張がX・Reddit・Mediumで散発的に上がっていたが、そこに書かれていた要望をAnthropicがほぼそのまま製品化したのが2026年5月11日のClaude Code v2.1.139である。
/goalコマンドとAgent View。前者は「条件を満たすまで自走させる」仕組み、後者は「複数セッションを束ねて捌く」UIだ。両者は単独で使っても効くが、組み合わせると「人間が眠っている間に4つの目標を別々に達成させる」運用までスケールする。
4月の/powerup・MCP 500K拡張が「セッション内」の体験を整え、5月初旬の/ultrareview・/recapが「長時間作業」を整えたとすれば、今回追加された2機能は「セッションそのものを増やす」段階に踏み込んでいる。
/goal:Haiku評価で完了条件まで自走するターンループ
公式ドキュメントによれば、/goalは「完了条件を設定すると、Claudeが条件を満たすまでターンをまたいで作業を続行する」コマンドだ。各ターン終了後にHaikuクラスの小型モデルが会話履歴を読み、条件が満たされていればyes、まだならnoを返す。noの場合は次のターンが自動で開始される。
最小の使い方
/goal all tests in test/auth pass and the lint step is clean
これを打つと、その瞬間からターンが走り始める。別途プロンプトを送る必要はない。画面下部には「◎ /goal active」のインジケータが表示され、ゴール開始からの経過時間がカウントされる。
引数を付けずに/goalを実行すると、現在のステータスとして「条件・経過時間・ターン数・トークン消費・直前の評価モデルの判断理由」が一覧で出る。途中で止めたければ/goal clear(stop、off、reset、none、cancelもエイリアス)だ。
評価モデルは何を見ているか
ここを誤解すると条件が機能しない。評価モデルはコマンドを実行しない・ファイルも独立で読まない。会話の中にClaudeが書き出した内容だけを見て判定する。つまり「npm testが0で終了」という条件は、Claudeが実際にnpm testを走らせてその出力が会話に含まれて初めて成立する。
うまく機能する条件の典型は以下のパターンだ。
- 計測可能な終点:テスト結果、ビルドの終了コード、ファイル数、空のキュー
- 証明の手段の明示:「
git statusがクリーンであること」「npm testが0で終了」 - 副作用の禁止条項:「他のテストファイルは変更しない」
条件は最大4,000文字まで書ける。長くなりすぎる条件はかえって評価がぶれるため、自分は3〜5行のチェックリスト形式で書くようにしている。
暴走を止める「stop after N turns」
評価モデルが「条件未達」を返し続けると、/goalは理論上無限ループに入る。コストとレート制限の両方が心配なら、条件自体に上限を書き込む。
/goal 全テスト緑になるか、ターンが30に達したら停止。
出力に「終了理由」を必ず含めること
Claudeはこの条件を毎ターン意識し、ターン数を会話に書き出すよう振る舞う。30ターンに達したら評価モデルが「達成」と判定して終了する。GitHubでchrischabot/claude-code-goalがリリース前から似た発想を提案していた経緯もあり、ターン上限のクラウド側標準実装としては妥当な落としどころだ。
内部実装はStop Hook
Stop Hookとは、Claudeが1ターンを終えた瞬間に発火させる拡張点だ。スクリプトやプロンプトで「もう一度走らせるか、ここで止めるか」を制御できる仕組みである。/goalは実体としてはセッション限定のプロンプト型Stop Hookだ。Workspaceの信頼ダイアログを承認していない状態、もしくは管理者ポリシーでdisableAllHooks: trueが設定されている環境では使えない。使えない場合は黙って何も起きるわけではなく、コマンド側が理由を表示してくれる仕様になっている。
評価トークンは設定されているスモールモデル(既定はHaiku)で課金される。/goalを走らせ続けたときの追加コストは、メインターンの消費に対して通常は無視できる水準だ。
-p・Remote Controlでも動く
/goalはインタラクティブモード以外でも有効だ。
claude -p "/goal CHANGELOG.mdが今週マージされた全PRに対応している"
ワンショットの呼び出しで完了条件まで自走させられる。中断したいときはCtrl+C。スマホアプリのRemote Controlからも同じコマンドが通るため、外出中にゴールを設定してClaude Codeに任せ、達成時にプッシュ通知を受け取るという運用も成立する。プッシュ通知の設定は先月の5月アップデート記事で扱った内容と同じだ。
--resumeや--continueでセッションを再開した場合、達成前の/goalは条件が引き継がれる。ただし経過時間・ターン数・トークン消費のベースラインはリセットされる。
Agent View:「claude agents」で複数セッションを一望する
公式ブログAgent view in Claude Codeによれば、Agent Viewは「すべてのバックグラウンドセッションを単一の画面に表示する」研究プレビューだ。claude agentsコマンドで起動し、ターミナル全体を専有して以下のような表を出す。
Pinned
✽ clawd walk cycle Write assets/sprites/clawd-walk.png 3m
Ready for review
∙ jump physics github.com/anthropics/example/pull/2048 2h
Needs input
✻ power-up design needs input: double jump or wall climb? 1m
Working
✽ collision detection Edit src/physics/CollisionSystem.ts 2m
Completed
✻ title screen result: menu, options, and credits done 9m
状態とアイコンが二重のシグナルを担う
各行のアイコンには2つの情報が同時に乗っている。色(インジケータ)が状態、形が実プロセスの生存だ。これを覚えると一覧の読み方が劇的に速くなる。
| インジケータ | 状態 | 意味 |
|---|---|---|
| アニメーション | Working | ツール実行中または生成中 |
| 黄色 | Needs input | 入力待ち。許可決定か質問への回答を求めている |
| 暗め | Idle | 入力待ちだが特定の質問はない |
| 緑 | Completed | 正常終了 |
| 赤 | Failed | エラー終了 |
| グレー | Stopped | Ctrl+Xまたはclaude stopで停止 |
アイコン形状は✻(プロセス生存)、∙(プロセス終了済みだが再アタッチで再開可能)、✢(/loopセッションが次回実行を待っている)の3種類。最初は混乱したが、3日も使うと色と形を別系統で読めるようになり、20件超の一覧でも瞬時にフィルタできるようになる。
Peekとアタッチの使い分け
行を選んでSpaceを押すとPeekパネルが開く。そのセッションの最新出力と「今何を求めているか」だけが見える。多くの場合これで足りる。回答が多肢選択なら数字キーで即答できる。ブロックされた他のセッションではTabで「Claudeが提案する返信」を入力欄に読み込み、編集してから送れる(空入力でのTabはサブエージェントの一覧表示にもなる)。!で始めればBashコマンドを送れる。
完全な会話を読みたいときはEnterまたは→でアタッチ。claudeを直接起動したときと同じ状態になり、戻りたければ空入力で←。アタッチ時にはClaudeが「離脱中に何があったか」の短いリキャップを自動で先頭に貼る仕様になっており、ここはセッション再開のコストを大きく下げている。
バックグラウンドセッションの実体
claude agentsが一覧するのは、ユーザーごとのスーパーバイザープロセスが管理するバックグラウンドセッションだ。シェルやターミナルを閉じてもセッションは生き続ける。Webサーバープロセスのデーモン化に近い設計だと考えると理解しやすい。
git worktreeは、1つのリポジトリに対して複数のチェックアウト用ディレクトリを持つgitの公式機能だ。feature-Aとfeature-Bを別ディレクトリで同時に開発する時に使うあれ、と思えばいい。Agent Viewのファイル編集は公式仕様上、自動でgit worktreeに分離される。バックグラウンドセッションは作業ディレクトリで起動するが、ファイルへの書き込みは.claude/worktrees/配下のworktreeに対して行われる。同じチェックアウトを複数セッションが並列で読み、それぞれが独立した書き込み先を持つ仕掛けだ。tools/tech-blogのような単一リポジトリで5並列のリファクタリングを走らせてもコンフリクトしない。
セッションを削除するとworktreeも消えるため、残したい変更はマージかpushで取り出してから消すことが運用上のお作法になる。ここでうっかり消すと、別worktreeでまだコミットしていなかった成果を失う。
キーボードショートカット早見表
押したキーが何をするかを最短で把握できるよう、自分が最初に覚えた12個を抜き出しておく。
| キー | 動作 |
|---|---|
↑ / ↓ | 行移動 |
Space | Peekパネル開閉 |
Enter / → | 選択セッションへアタッチ |
Shift+Enter | ディスパッチ即アタッチ |
Alt+1〜Alt+9 | グループ内のN番目のセッションへアタッチ |
Ctrl+S | グルーピング切替(状態↔ディレクトリ) |
Ctrl+T | ピン留め切替 |
Ctrl+R | セッション名変更 |
Ctrl+X | 停止(2秒以内に再押下で削除) |
Shift+↑ / Shift+↓ | 並び替え |
Esc | パネル閉/入力クリア/終了 |
? | 全ショートカット表示 |
4〜8並列が現実的なスイートスポット
BuildFastWithAIのレビューでは、多くの開発者が「4〜8並列がコーディネーション負荷とレート制限のバランス上、実用的なスイートスポット」と回答している。これより増やしてもサブスクリプション残量の消費スピードがそのまま倍率で上がり、人間側もどのセッションが何を待っているか把握しきれなくなる。
自分(電脳狐影)はPMの立場でPM職の感覚に当てはめると、これは「同時に走る依頼の数」を絞る話と同型だ。並列を増やすほど切り替えコストが線形以上に増える。エンジニアでなくとも、進行中タスクが7〜10件を超えると「全部把握している」感覚が崩壊することは、複数プロジェクトを掛け持ちした人なら経験的に知っているはずだ。Agent Viewは並列をやりやすくする道具であって、無制限に増やすための道具ではない。
4〜8並列を本気で回すなら、レート制限緩和済みのClaude Pro/Maxプランが前提になる。プラン詳細と現在の利用上限はAnthropic公式の料金ページで確認するのが正確だ。
Codex /goalとClaude /goalの違い
Codex(OpenAIのCLIエージェント)を併用していないなら、ここは読み飛ばしてかまわない。OpenAI Codex CLIにも/goalという名前のコマンドが存在し、しばしば比較される。Anthropic公式とOpenAI公式の双方を直接突き合わせた一次情報は現状少ないが、Developers Digestの比較記事(厳密にはClaude側はManaged Outcomes機能との比較記事だが、/goalの設計思想の整理として参考になる)が両者の違いを端的にまとめている。
| 観点 | Codex /goal | Claude Code /goal |
|---|---|---|
| 思想 | ランタイム制御。pause・clearの手動操作も組み込み | プロンプト型Stop Hookのラッパー |
| 完了判定 | エージェントループ内の自己判定が中心 | 別の評価モデル(Haikuクラス)が判定 |
| 状態の永続化 | ターミナルセッションをまたいで持続 | セッション限定。--resumeで復元 |
| 強み | コンパイル・シェル中心の反復作業 | 「達成済み」の根拠が会話に残る |
| 弱み | 達成基準が暗黙的になりがち | 評価が会話表面しか見ない(コマンド再実行はしない) |
「Codex /goalで前進、Claude Managed Outcomes(あるいはClaude /goal)で品質ゲート」というハイブリッド運用が現場の落としどころとして広く語られている。両者は競合というより、用途の異なる道具だ。具体的には、Codex /goalで実装フェーズの反復(コンパイル・シェル中心の繰り返し)を回し、Claude /goalで「テスト緑+規約遵守」のような達成根拠が会話に残る品質判定を担わせる、といった分担になる。
/loop・Stop Hook・Auto Modeとの違い
「自動で走り続ける仕組み」は他にもある。混同すると間違った道具を選ぶことになる。
| 仕組み | 次ターンの起動契機 | 停止条件 |
|---|---|---|
/goal | 前ターン終了 | 評価モデルが条件達成と判断 |
/loop | 設定時間の経過 | 手動停止、またはClaudeが完了と判断 |
| Stop Hook | 前ターン終了 | スクリプト/プロンプトが判断 |
| Auto Mode | (ターン内ツール承認のみ) | Claude自身が「終わった」と判断 |
/goalとStop Hookは設計上ほぼ同じものだ。違いは「セッション限定でその場で書ける」(/goal)か、「設定ファイルに書いて全セッションで効かせる」(Stop Hook)かにある。自分の手元では「再現性のあるルールはStop Hook、一回限りのタスクは/goal」という棲み分けに落ち着いた。
Auto Modeとは補完関係だ。Auto Modeはツール呼び出しの承認を自動化するが、ターン完了後の判断は依然としてClaude任せだ。両方を有効にすれば「ツール承認+ターン承認の両方が不要」な状態になり、本当の意味で人間が席を立てる。
自分(電脳狐影)ならこう使う
/goalは1ファイル〜1モジュールのリファクタリングに使う。条件は「テスト緑+他ファイル変更なし+ターン上限30」の3点セット。これより大きい範囲だと評価モデルが「終わったか」を判定しきれない印象がある- Agent Viewは平日朝の起動ルーチンにする。
claude agentsを最初に開き、夜のうちに走らせていた3〜4セッションのPeekで結果だけ吸収、必要なら1セッションだけアタッチ。Slack開く前にこれをやると驚くほど立ち上がりが早い /goalと/loopを混ぜない。両方とも自動継続だが、片方は条件達成で止まり、片方は時刻ベース。混在するとClaudeのコンテキストが歪んで判断が悪くなる- 本番マージ前は
/ultrareview、開発中の繰り返しは/goal。役割を分ける。/ultrareviewをループに巻くとコストが破綻するし、/goalに独立検証はないのでセキュリティクリティカルなマージには不十分だ - Agent Viewは6セッションまでにする。本番作業しているリポジトリで7セッション目を増やそうとした日に頭が混乱して進捗を1つ巻き戻したことがある。並列の自慢より、確実に終わらせる方が結果的に速い
- Workspaceの信頼ダイアログを承認してから
/goalを使う(未承認だと無効) disableAllHooks: trueが管理者ポリシーに入っていると/goalは使えない- バックグラウンドセッションはサブスクリプション残量を並列数倍速で消費する
- worktreeはセッション削除時に消える。残したい変更は事前にコミット・push
- 機械がスリープすると進行中セッションは止まる。
claude respawn --allで再開可能 - Agent Viewは研究プレビュー。UIとショートカットは仕様変更があり得る
Claude Code関連の最新仕様はAnthropic公式のcode.claude.com/docsとGitHubリポジトリanthropics/claude-codeのChangelogに集約されている。本記事の仕様はv2.1.139時点のものだ。
関連記事
- Claude Code 5月アップデート|/ultrareview・/recap・プッシュ通知完全ガイド
- Claude Code 4月アップデート完全ガイド|/powerup・MCP 500K・@メンション
- Claude Code 3月アップデート|Voice Mode・/loop・バックグラウンドタスク
- Claude Code Auto Mode完全ガイド|承認地獄から解放される新機能
- Claude Opus 4.7 完全ガイド|SWE-bench 87.6%・xhigh effort・タスク予算
本記事の情報は2026年5月12日時点のものである。Claude Code v2.1.139および/goal・Agent Viewは研究プレビュー段階であり、仕様・キーボードショートカット・対象プランは予告なく変更される場合がある。料金とプラン対応はAnthropic公式サイトで最新情報を確認すること。研究プレビュー機能の利用は自己責任で行うこと。バックグラウンドセッションのworktree削除によりコミット未取得の変更が失われる可能性がある点、評価モデルによる自動継続は想定外のトークン消費を生む可能性がある点に留意されたい。記事中の「Anthropic」「Claude」「Claude Code」はAnthropic, PBCの、「OpenAI」「Codex」はOpenAI, Inc.の、「GitHub」はMicrosoft Corporationの、それぞれ商標または登録商標である。