VS Code 1.128 のマルチチャット — 1セッションで2方針を並走する

AI・テック動向

VS Code 1.128 のマルチチャット — 1セッションで2方針を並走する

同じ課題に実装方針が2つ浮かんで、どちらで進めるか決めきれない。VS Code 1.128は、その2案を1つのClaudeエージェントセッション内の別チャットで並走させ、生成結果を横に並べて見比べられる。筆者はこの機能を、方針を捨てる前の「試し打ち」の道具として使っている。

目次
  1. 何が起きたのか
  2. 2案並走のワークフローを実手順で
  3. サブエージェントのread-only監視とQuick Chatsの使いどころ
  4. 1.130 に入っている設定キーを数えた
    1. 数えていて目についたのは sandbox 系だった
  5. CLI版Claude CodeとVS Code拡張の使い分け
  6. 開発者としての実践ポイント
  7. よくある疑問
  8. まとめ
  9. 参考

何が起きたのか

VS Code 1.128が2026年7月8日に公開された。目玉は、1つのClaudeエージェントセッションの中で複数のチャットを同時に持てるようになったことだ。各チャットは独立した会話履歴・タイトル・モデル選択を持ち、親となるClaudeセッションの配下に「ピアチャット」としてグループ化される。

この設計が効くのは、比較検討と分岐の作業だ。過去のターンからbranch(分岐)して別解を試したり、複数の実装アプローチを並列で走らせたりできる。VS Codeを再起動してもセッションは復元されるので、昨日の3案を今朝そのまま開き直せる。

もう1つ、ワークスペースを開いていなくても使えるQuick Chatsが入った。Agentsウィンドウで ⌘K ⌘N を押すと専用のChatsセクションに軽いチャットが生える。リロード後も残る。プロジェクトを開くまでもない質問を、その場で投げて捨てられる。

Copilot Visionも正式版になった。画像やPDFの添付が標準化され、貼り付け・ドラッグ&ドロップ・コンテキストメニューのどれでも渡せる。エージェントはツール呼び出しの中で添付画像を読みにいく。エラー画面のスクショや設計PDFを、テキストに起こさず直接渡せるようになった。デザインカンプを1枚渡して「この画面をコンポーネントに落として」と頼む、といった使い方が手間なくできる。

2案並走のワークフローを実手順で

どちらの方針が良いかをコードを書く前に机上で決めようとすると、たいてい決めきれない。ReduxとZustandのどちらが今回の規模に合うかは、実際に同じ機能を組んで依存の増え方やテストの書きやすさを見るまで判断がつかない。頭の中の比較は、手を動かした比較にほぼ勝てない。並走はこの「書いてみないと分からない」を、両方書いてから選ぶ形に変える。

筆者が実際に回している手順はこうだ。まず親のClaudeエージェントセッションを開き、最初のチャットで方針Aを走らせる。たとえば「状態管理をReduxで実装して」と指示する。

次に同じセッション内で新しいピアチャットを立て、方針Bを投げる。「同じ機能をZustandで実装して」といった具合に、前提だけ揃えて別解を要求する。2つのチャットは履歴が分かれているので、Aの文脈がBに漏れない。

Chat 1(方針A): Reduxで状態管理を実装
Chat 2(方針B): Zustandで同じ機能を実装
→ 親セッション配下にピアチャットとして並ぶ

分岐が生きるのはこの後だ。方針Aの途中で「この設計ならミドルウェアの層を変えたらどうなるか」と気になったら、その手前のターンからbranchして枝を伸ばす。元のAは残したまま、A’を別履歴で育てられる。捨てる判断を後回しにできるのが、探索段階ではありがたい。

生成された2つの差分をエディタのdiffビューで並べ、命名・依存関係・テストの書きやすさを見る。ここで劣る方を閉じ、残った方に本実装を任せる。3案を試して2案を捨てる、という動きが1画面で完結する。

チャットのキーボードナビも改善され、複数チャット間の移動がキー操作だけで済むようになった。方針Aとその分岐A’、方針Bの3枚を行き来しながら差分を追う場面で、マウスに持ち替える回数が減る。ブラウザをどのタブ位置に開くかの設定も入ったので、生成物のプレビューを右端に固定して比較に集中する、といった画面の作り込みもできる。

サブエージェントのread-only監視とQuick Chatsの使いどころ

長めのタスクをワーカーに任せると、そのサブエージェントの読み取り専用トランスクリプトがAgentsウィンドウに「read-only peer chats」として並ぶ。ワークスペースを開き直さずに、ワーカーが今どのファイルを触っているか、どこで詰まっているかを覗ける。進捗に質問を投げることもできる。

数十分かかるリファクタを1つ走らせつつ、その進捗を横目で監視しながら別チャットで設計メモを詰める、といった並行作業がやりやすくなった。ワーカーが誤った前提で突き進んでいたら、トランスクリプトを見て早めに気づける。完了を待ってから修正指示を出すより、途中で軌道を直す方が手戻りが小さい。

例えば依存パッケージを一括で上げるリファクタをワーカーに任せると、途中でテストが赤いまま先へ進む場面がある。read-only peer chatでその赤を早めに見つければ、「そのテストは仕様変更で落ちているから無視して進めて」と一言足すだけで済む。完了報告を待ってから全部やり直すのに比べ、直しが1行の指示で終わる。

Quick Chatsの出番は、リポジトリを開くほどでもない相談だ。「この正規表現の意味を説明して」「gitのこのエラーの原因は」といった単発の問いを、Agentsウィンドウで ⌘K ⌘N から生やして処理する。ワークスペースの文脈に紐づかないぶん、頭の切り替えが軽い。

OS級のキーボードショートカットも入り、VS Codeがフォーカスを持っていなくてもチャットを呼び出せる。ブラウザで調べ物をしながら、手を止めずに質問を投げられる。

1.130 に入っている設定キーを数えた

この記事は 1.128 の時点で書いた。手元の VS Code は2つ先の 1.130.0 になっていたので、機能がどう残っているかを実体で確かめた。UI を触る代わりに、インストール済みのバンドルから設定キーを抜き出す方法を取っている。

# インストール先の workbench バンドルから chat.* の設定キーを抜く
grep -ohE '"chat\.[a-zA-Z]+(\.[a-zA-Z]+)*"' \
  ".../Microsoft VS Code/<hash>/resources/app/out/vs/workbench/workbench.desktop.main.js" \
  | sort -u

chat. で始まる設定キーは400個あった。このうち複数セッションに関わるものを抜き出す。

設定キー 関係する話
chat.viewSessions.enabled / .orientation並走の実体 セッションを並べて表示する。orientation で並べ方を切り替える
chat.agentSessions.defaultConfiguration 新しいセッションの既定設定
chat.newSession.defaultMode 新規セッションの既定モード
chat.sessions.confirmArchive セッションを畳むときの確認
chat.sessionSync.enabled / .excludeRepositories セッションの同期と、リポジトリ単位の除外
chat.subagents.allowInvocationsFromSubagents サブエージェントからさらにサブエージェントを呼べるか

コマンド側にも workbench.action.chat.archiveAllAgentSessionschatSessionPrimaryPickerassignSelectedAgent が入っていた。2案を並走させて片方を畳む操作は、1.130 でもコマンドとして残っている。

数えていて目についたのは sandbox 系だった

探していたのは複数セッションのキーだが、量で目立ったのは別の系統だった。

chat.agent.sandbox.enabled
chat.agent.sandbox.enabledWindows
chat.agent.sandbox.allowAutoApprove
chat.agent.sandbox.allowNetwork
chat.agent.sandbox.allowedNetworkDomains
chat.agent.sandbox.deniedNetworkDomains
chat.agent.sandbox.allowUnsandboxedCommands
chat.agent.sandbox.fileSystem.windows / .mac / .linux
chat.agent.terminal.autoApprove
chat.agent.terminal.allowList

ファイルシステムとネットワークを別々に絞れて、Windows だけ有効化を切り替えられる。並走の話をするなら、並べたセッションが互いの作業領域を壊さないかのほうが先に効いてくる。設定キーの並びが、そこを想定した作りになっていた。

未検証: 設定キーとコマンドIDが存在することは確かめたが、UI を操作して2案並走のワークフローを実際に回してはいない。キーがあることと、期待どおり動くことは別になる。

CLI版Claude CodeとVS Code拡張の使い分け

マルチチャットが強くなったことで、CLI版Claude CodeとVS Code拡張の役割が前より分かれてきた。筆者の使い分けを表にする。

観点 CLI版 Claude Code VS Code 拡張(1.128)
得意な作業 長時間の自動バッチ、スクリプト連携、ヘッドレス実行 対話的な比較検討、GUIでの進捗監視
複数エージェント ログを追跡して把握 ピアチャットを1画面に並べて監視
方針の比較 ターミナル出力を読み比べる 複数チャット+diffビューで横並び
画像・PDF添付 パス渡しが中心 貼付・ドラッグ&ドロップで直接(Vision GA)
自動化との相性 CI・cron・パイプに組み込みやすい 手作業の探索・レビュー向き

切り分けはシンプルだ。人手を介さず回したい定型処理はCLI、目で見比べて選ぶ探索はVS Code。両者は競合しない。夜間に走らせるテスト生成やドキュメント一括更新はCLIに任せ、翌朝その結果をVS Codeで開いてレビューする、といったリレーも組める。

開発者としての実践ポイント

  1. 迷った2案は、頭の中で優劣を決める前に別チャットで両方走らせる。生成結果のdiffを見てから捨てる。
  2. 気になった脇道は、元のチャットを止めずに過去ターンからbranchして枝で試す。本筋を汚さない。
  3. 数十分級のタスクはワーカーに投げ、read-only peer chatで進捗を監視しながら別チャットで手を動かす。
  4. リポジトリを開くまでもない単発の質問は ⌘K ⌘N のQuick Chatsに逃がす。文脈を汚さない。
  5. エラー画面や設計PDFはテキストに起こさず、Vision GAで画像のまま添付して読ませる。

複数のエージェントを1画面に集約する発想をさらに突き詰めたい人は、筆者がTauri+SvelteKit+Pythonで自作した複数AIエージェントを1画面に統合するMission Controlの設計記事も読んでみてほしい。統合UIで何が速くなるかを、実装の裏側から書いている。

よくある疑問

チャットごとに別のモデルを割り当てられるのか。割り当てられる。各チャットはモデル選択を独立して持つので、方針Aのチャットに推論の重いモデル、方針Bのチャットに軽量モデルを当て、速度と質のバランスを変えながら見比べられる。同じ課題に別モデルを二枚差して、出力の癖の違いを確かめる使い方もやりやすい。

branch(分岐)は具体的に何に使うのか。会話の途中で「この前提を変えたらどうなるか」を試したいときに使う。元のチャットを進めたまま、気になったターンから枝を伸ばして別の指示を与える。分岐前の履歴は共有され、分岐後だけが分かれる。失敗した枝は捨て、良かった枝を本筋に採る。仮説を潰す試行を、元の会話を壊さずに回せる。

CLI版Claude Codeと同時に使えるのか。使える。役割が別なので競合しない。筆者はCLIで夜間バッチを走らせ、VS Codeで日中の比較レビューをする形で並行させている。同じリポジトリを両方から触っても、作業の性質が分かれているぶん混ざりにくい。

まとめ

複数エージェントを1画面で回す作業は、CLIのログ追跡よりVS Codeのマルチチャットの方が比較と監視が速い。長時間の自動バッチはCLI、方針を見比べる探索はVS Code、と使い分けるのが今の筆者の結論だ。

1.128は、AIコーディングの単位を「1本の会話」から「並走する複数の会話」へと押し広げた。方針を1つに絞る前に、まず2案を並べて走らせる癖をつけたい。捨てた案の履歴も残るので、後から「あの時こっちを選んでいたら」を検証し直せるのも効いてくる。

参考

Anthropic「Reflect」— AI利用の可視化を自動化の材料にするAnthropic「Reflect」— AI利用の可視化を自動化の材料にする前のページ

WordPress 7.0.2 の緊急修正を読む — batch API の添字ズレが RCE に化けた仕組みと、自作プラグインの点検次のページWordPress 7.0.2 の緊急修正を読む — batch API の添字ズレが RCE に化けた仕組みと、自作プラグインの点検

ピックアップ記事

  1. 高精度OCRデスクトップアプリの作り方 — PaddleOCR-VLとPyIns…

  2. New Eden Intelligence Hub の作り方 — EVE Onl…

  3. 競艇予想AIの作り方 — LightGBMで「当たる順位」を学習させる実装ガイド…

  4. Claude Mission Control の作り方 — Tauri+Pyth…

関連記事

  1. Meta「Muse Image」がアプリ内に — @メンション撤回とAPI無しをどう見るか

    AI・テック動向

    Meta「Muse Image」がアプリ内に — @メンション撤回とAPI無しをどう見るか

    Metaが自社初の画像生成モデルMuse Imageをアプリ内に投入し…

  2. WordPress 7.0.1 と 7.1 の React 19 — 自作テーマ・プラグインを今から通す準備

    AI・テック動向

    WordPress 7.0.1 と 7.1 の React 19 — 自作テーマ・プラグインを今から…

    WordPress 7.0.1はバグ修正中心の保守リリース。本当の山は…

  3. Claude Code の /doctor が診断して直す — 肥大化した設定の健診

    AI・テック動向

    Claude Code の /doctor が診断して直す — 肥大化した設定の健診

    読み取り専用だったClaude Codeの/doctorが、確認の上で…

  4. GPT-5.6 Sol/Terra/Luna が Copilot に — 従量課金で3層を使い分ける
  5. Anthropic「Claude Science」に学ぶ — 個人開発者が作れるドメイン特化AIワークベンチの型
  6. Claude API が会話途中の system メッセージに対応 — キャッシュを壊さず方針を差し替える

注目

AIで、ここまで作れる

AIで作った2D RPGを、ブラウザでそのまま遊べます。その「作り方=最後まで完成させる進め方」も実例つきで公開中。

▶ ゲームを遊ぶやり方を読む

PR

ロリポップ!レンタルサーバー(PR)

レンタルサーバ:ロリポップ!(本サイトの稼働環境・PR)

  1. Claude 音声モードが Opus / Sonnet 対応 — 音声が「入力手段」から「実行手段」に変わった

    AI・テック動向

    Claude 音声モードが Opus / Sonnet 対応 — 音声が「入力手…
  2. JavaScriptでブラウザゲームを作る①|ビルド不要(file://)で動くシーン制の土台と全体設計【Archipelago Saga制作】

    アプリの作り方

    JavaScriptでブラウザゲームを作る①|ビルド不要(file://)で動く…
  3. アプリの作り方

    自作MCPサーバーの作り方 — 長い処理はジョブ方式で公開する
  4. FX Monitor Pro の作り方 — Flet で主要10通貨ペアを常時モニターするデスクトップ為替アプリ

    アプリの作り方

    FX Monitor Pro の作り方 — Flet で主要10通貨ペアを常時モ…
  5. CodeQL 2.26.0 でプロンプトインジェクション検出 — LLMアプリをCIで守る

    AI・テック動向

    CodeQL 2.26.0 でプロンプトインジェクション検出 — LLMアプリを…
PAGE TOP

TAG CLOUD

ドラッグで回転・クリックでそのタグの記事一覧へ