IBM Bob

Bob V2: より速く、より良く、よりスマートに

V1 で学んだすべてを、ゼロから作り直しました。

Bob V2: より速く、より良く、よりスマートに

著者

IBM Bob Team

公開日

カテゴリー

release

共有

Bob V2: Faster, better, smarter

Bob V2 は6月24日に一般提供開始となります。日常的な使い勝手が大きく向上しています。処理が速くなり、別の作業をしながらバックグラウンドでタスクを実行できるようになり、すべてのクライアントで同じ動作をする単一エージェント上に構築されました。このエージェントはまず Bob IDE に搭載され、Bob Shell はまもなく続きます。新バージョンへの移行はインストールするだけ。既存の設定、ルールファイル、MCP サーバーはそのまま引き継がれます。

この記事で取り上げること:

  • 新しいアーキテクチャの概要
  • 日常業務に現れる変化:パフォーマンス、新しいモード、バックグラウンドタスク、ロールバック、ドキュメント操作、サブエージェント
  • Workflows — 大規模かつ複数フェーズにわたる変更を繰り返し実行可能にするフレームワーク

まず IBM で実証済み

Bob の最初のユーザーは IBM 自身で、メインフレームシステムからクラウドネイティブサービスまで、10万人を超える開発者がオンボーディングしています。V2 は GA よりずっと前に大規模な社内ユーザーへ提供されました。この記事で紹介する機能は5月初旬から段階的に展開されており、それぞれ実際の本番環境での使用実績を経てリリースされています。

1つのエージェント、1つのハーネス、複数のクライアント

Bob V1 の IDE 拡張とシェルは、2つの別々の基盤の上に作られていました。これは Bob を素早く開発者の手元に届けるための意図的な判断でしたが、改善のたびに2回ずつ作業が必要になるという問題がありました。分割されたコードベースでは、こうした要望への対応が遅くなりがちです。

V2 では、推論・インフラ・インターフェースをきれいに分離した3層アーキテクチャに置き換えられています:

コンポーネント役割
エージェントエージェントループ。すべての推論とコード生成はここで行われ、どのクライアントでも動作は同一。
ハーネス共有インフラ:認証、ログ、フィーチャーフラグ、テレメトリ。
クライアントIDE、シェルなど各インターフェース。ロジックの重複なし。

日常業務で変わること

個々の機能の前に、その土台となる部分が変わりました。V2 の chat は意図的に静かになっています。途中のツール呼び出しや行き詰まった探索は折りたたまれて見えなくなり、作業とその結果が前面に出るようになりました。裏側の機械的な動作ではなく、成果が見えるということです。

サブエージェント:コンテキストをクリーンに保つ

Bob が複雑なタスクを進めていくと、会話はファイル読み込み、検索、行き詰まった探索で埋まっていきます。そうした詳細の大半はメインタスクには関係ありませんが、context window を消費し続けます。

これを解決するのがサブエージェントです。Bob が「このコードベースで認証がどう動いているか調べる」といった自己完結型の作業をする必要があるとき、独自のクリーンなコンテキストを持つサブエージェントを起動します。サブエージェントがファイルを読み込み、呼び出しをトレースし、パターンを把握する。メインエージェントに返ってくるのはサマリーだけで、途中のステップは破棄されます。

並列ネイティブツール呼び出し

V1 ではツール呼び出しは1件ずつ実行していました。ファイル読み込みをリクエストして結果を待ち、次をリクエストする、という流れです。5つのファイル読み込みと3つの検索にまたがるタスクでは、この待機時間がすぐに積み重なります。V2 ではモデルが1ターンで複数のツールをリクエストでき、それらが並列で実行されます。V1 で約30秒かかっていたタスクが10秒以内に終わることも珍しくありません。

ネイティブツール呼び出しにより、V1 がすべてのツールリクエストに付けていた冗長な XML も不要になり、同じタスクでも消費 token 数が減ります。context window も200kから270k tokenに拡大され、長いタスクをより長く実行できるようになりました。

Parallel tool calling in Bob 2.0.0

3つのモード:Agent、Plan、Ask

V2 では Bob の旧5モードが3つに整理されました:

  • Agent — Bob がアクションを起こしてタスクを完了します。フルエージェント機能を使用。
  • Plan — Bob が独自の計画プロセスを実行します。要件の収集、コンテキストの把握、理解の確認を経て、Agent に渡せる実行可能なプランを生成します。
  • Ask — 読み取り専用。Bob がコードベースに手を加えることなく、アーキテクチャやロジックを説明します。

推奨アドバイスは変わっていません。慣れていないコード、または影響範囲の広い変更の場合は、まず Ask か Plan から始め、作業内容が明確になったら Agent に切り替えましょう。

different_modes

割り込みを減らし、コントロールは維持

ファイルの読み込み、ディレクトリの一覧表示、コード検索などの読み取り操作はデフォルトで承認済みになりました。Bob が確認なしにコンテキストを収集できるようになっています。状態を変更する操作(ファイル編集、コマンド実行、MCP ツール呼び出し、スキル呼び出し)は引き続き明示的な承認が必要です。承認はロールバック、カスタムルール、ignore ファイルと並ぶ複数の制御レイヤーの1つであり、ツールクラスごとに厳しくも緩くも設定できます。

different_modes

バックグラウンドタスク

Bob はセッションを1つの会話に縛りつけなくなりました。開発者は複数のタスクを同時に走らせながら、バックグラウンドに置いて別の作業を続けることができます。各タスクは独自のスレッドとコンテキストを持つため、切り替えても作業の場所が保持されます。タスクパネルでは実行中・完了・要対応の状態が一目でわかり、完了したタスクは自動的に整理されます。またバックグラウンドでタスクが完了しても、フォーカスが切り替わったり作業中のタブが変わったりすることはありません。

ロールバック、作り直し

V1 ではこの機能を「チェックポイント」と呼び、git の上に構築していました。そのため git リポジトリがない場合はチェックポイントが使えず、履歴が膨大になると動作が遅くなるという制約がありました。V2 では全体をシンプルに作り直し、「ロールバック」と改名しました。ファイルの状態をタスクごと、会話ターンごと、個別のツール呼び出しごとに直接追跡し、いずれの時点にも復元できます。ロールバックはクライアントではなくエージェント側に組み込まれているため、エージェントがどこで動いていても同じように機能します。

new_checkpoints

ドキュメントの操作

タスクのコンテキストの多くはコードベースの外にあります。設計ドキュメント、仕様書、テストケースのスプレッドシートなどです。V2 は .docx.pdf.xlsx ファイルをネイティブに読み込みます。会話にドロップするだけで、Bob がそのまま作業に使えます。コピー&ペーストや別途抽出ステップは不要です。

出力についても同様です。分析タスクの最後に、Bob は調査結果をまとめた自己完結型の HTML サマリーを1枚生成できます。ブラウザで開けて、特別なツールも不要。セッションに参加していなかった人にも渡しやすい形で調査結果を共有できます。

既存の設定はそのまま引き継がれます

他の AI コーディングツールへの投資はゼロからやり直しにならず、そのまま活かせます。V2 は既存の規約、ルールファイル、コマンド、MCP サーバーを読み込みます。さらに、エコシステムのデファクトスタンダードになりつつある plugin フォーマットのサポートも追加されたので、よく使われるツールコレクションを Bob で直接実行できます。MCP サーバーは V1 から専用の設定タブがありましたが、V2 ではスキル専用のタブが追加されました。スキルの追加・設定・削除もファイルを直接編集せずに同じ方法で行えます。

Workflows:複数フェーズの変更を繰り返し実行可能にする

AI はオープンエンドな問題解決は得意ですが、同じことを2回やるのは苦手です。「Java 21 に移行して」と別の日に2回頼んだら、異なるアプローチと異なる結果が返ってくることがあります。1回きりの作業ならそれでも構いません。しかし大規模なエンタープライズ作業——メインフレームアプリのモダナイズ、何千ものファイルのリファクタリング、フェーズに分かれて進む作業——では、そのばらつき自体が問題になります。

Workflows はそうした作業に骨格を与えます。出発点は「すべてのステップが AI を必要とするわけではない、すべてのステップを完全自動化すべきではない」という考え方です:

  • 純粋な自動化でよいステップ——依存関係のスキャン、テストの実行。
  • AI が必要なステップ——複雑なコード変換、パターン分析。
  • 人間が必要なステップ——戦略の承認、コミット前の差分レビュー。

Workflow はそれぞれのステップをどこで実行するかを定義します。エンジンがステップを順番に実行し、状態を保持し、エラーを処理し、プロセス全体を繰り返し実行可能にします。

ここで IBM のプレミアムパッケージが活躍します。各パッケージには IBM がそのドメインで積み重ねてきた数十年の知見をもとに検証・設計された Workflow が含まれています。それぞれ個別のオファリングとして、別途詳細記事が公開される予定です:Java モダナイゼーション向け IBM Bob Premium Package、IBM i 向け Premium Package、IBM Z 向け Premium Package。GA 時点で利用可能な Workflow は Bob 本体およびこれらのパッケージに付属するものです。より広範な作成機能はアーリーアダプターとともに API 仕様が固まり次第、順次公開されます。

今後の展開

同じアーキテクチャにより、旧来の基盤では実現不可能だった方向性が開かれました。具体的な日程や確約は意図的に示しませんが、探索している主な領域として、エージェントのリモート実行と任意のクライアントからのアクセス、複数エージェントが1つのタスクで協調動作すること、より多くのクライアントへの Bob の展開などがあります。これらの実際の形は、アーリーアダプターが最も必要とするものによって決まっていきます。

6月24日にアップデート

Bob V2 は6月24日に通常のバージョンアップデートとしてリリースされます。IDE 拡張をアップデートすると新しいアーキテクチャに切り替わります。Bob Shell はまもなく続きます。移行ステップはありません。設定、ルールファイル、MCP サーバーはそのまま引き継がれます。

最初の1週間でぜひ試してほしいこと:Plan モードでタスクを開始し、プランを Agent に渡して、別の作業と並行してバックグラウンドで実行させてみましょう。

リンク