Google Labs チームの 2 人のエンジニアが執筆した Google for Developers の記事で、Google の 非同期コーディングエージェントである Google Jules が、 Jules Tools という新しい CLI を通じてコマンドラインから操作できるように なったことを発表している。記事が挙げる動機は、それまで開発者が Jules とやり取りする場は主に ウェブブラウザだったのに対し、著者たちの言葉を借りれば、開発者はテスト、ビルド、デバッグ、 リリースを行うターミナルに住んでいる、という点である。

記事の主張は、コマンドラインという操作面は、エージェントにどこからアクセスするかだけでなく、 エージェントが何であるかを変える、というものである。コマンドラインによって Jules はプログラム 可能、スクリプト化可能、カスタマイズ可能になり、独立した行き先として操作するのではなく、開発者 自身の自動化に組み込めるようになる。著者たちはその結果を、コーディングエージェントのための ダッシュボードであると同時にコマンドの操作面でもあると表現し、「今後の展望」の節で、開発ツールの 未来はハイブリッドであると論じている。

要点

  • 記事は Jules を、既存のリポジトリと統合し、プロジェクトの全体的なコンテキストを理解し、テストの 作成、機能の構築、音声による変更履歴の提供、バグ修正、依存関係のバージョン更新といったタスクを 実行する非同期コーディングエージェントとして説明している。
  • タスクの実行方法も説明されている。Jules は一時的な VM を立ち上げ、そこで作業を行い、プルリクエストを 返す。開発者が依頼するまでは何も実行されない。
  • CLI は npm install -g @google/jules でインストールでき、Jules に何をさせるかを伝えるコマンドと、 その振る舞いを調整するフラグを中心に構成されている。記事の例は jules remote list --task と jules --theme light である。
  • スクリプト化できるため、記事では他のコマンドラインツールと組み合わせる例が示されている。接続済みの リポジトリの一覧表示、指定したリポジトリに対するリモートセッションの作成、TODO ファイルをループして 複数のセッションに振り分けること、gh から GitHub のイシューのタイトルをパイプで新しいセッションに 渡すこと、そして Gemini CLI を使って最も退屈なイシューを選ばせ、それを Jules に引き渡すことである。
  • Jules Tools は対話的に使うための TUI も提供しており、/remote のようなコマンドでタスクの ダッシュボードビューを表示し、/new でタスクの作成手順を案内する。記事はこれを、ウェブ UI と 同じ操作を、より速く、開発者が作業している場所のより近くで行えるものとして提示している。
  • 著者たちは 2 つの軸に沿った「設計からしてハイブリッド」という立場を表明している。1 つはローカルと リモートの組み合わせで、望むときは自分のマシンを使い、規模が必要なときは複数の VM を立ち上げる。 もう 1 つは自分でやることと委任することの組み合わせで、コードに直接関わり続けながら、作業を エージェントに任せる。

文脈

これは製品のスタッフ 2 人が執筆したファーストパーティの製品発表であり、Jules が何をするのか、そして なぜターミナルという操作面が重要なのかについての主張はベンダー自身のものである。利用データや評価は 報告されていない。

開発者が直接関わり続けながら並行して委任する、という記事の「設計からしてハイブリッド」という枠組みは、 エージェントにどれだけの自律性を与えるかについての立場であり、ヒューマン・イン・ザ・ループ や 監督付きエージェンシーのスペクトラム に隣接する。エージェントをスクリプト化可能にし、既存の CLI ツールと組み合わせられるようにすることを重視している点で、この記事は アウターループ や 長時間稼働エージェント のワークフローに関する他の取り組みと並ぶものである。