Cursor には大きく2つのウィンドウがあります。1つは従来から VS Code 譲りの編集環境である Editor ウィンドウ、もう1つが Glass UI の導入とともに追加された Agents ウィンドウ です。両者は外観こそ似ていますが、その役割は大きく異なります。
本記事では、この2つのウィンドウの機能的な違いと使い分けを整理します。結論を先に述べると、次のように位置づけられます。
- Editor ウィンドウ ― 開発者自身がコードを編集する作業環境
- Agents ウィンドウ ― AI エージェントにタスクを委譲し、実行・管理する環境
全体像を図にすると次のようになります。
Editor ウィンドウ
これまでの Cursor(および VS Code)と同じ、コードを直接編集するための画面です。
- 操作の主体は開発者であり、ファイルを開き、コードを書くのは自分自身です。
- 作業環境はローカルマシンに閉じています。
- 1つのプロジェクトに対して、単一の作業ツリーで向き合います。
- Git 操作は、ローカルに保存された認証情報を用いて実行されます。
従来どおりの感覚で扱える、標準的な開発環境です。
Agents ウィンドウ
Cursor 3 で導入された、AI エージェントにタスクを委譲するための画面です。単一の作業環境ではなく、複数のエージェントが並行して稼働する環境だと捉えると理解しやすいでしょう。
- 操作の主体は AI エージェントであり、開発者はタスクを指示する立場になります。
- 実行環境を選択できます。ローカルだけでなく、クラウドやリモート(SSH)サーバー上でも実行可能です。クラウド環境であれば、ローカルマシンを閉じてもエージェントは処理を継続します。
- 複数のエージェントを同時に稼働させられます。たとえば、一方がテストを書き、もう一方がドキュメントを修正するといった並行作業が可能です。
- 複数のリポジトリをまたいだ作業も実行できます。
指示を出せば、複数のエージェントがそれぞれの環境で並行してタスクを処理する ― これが Agents ウィンドウの基本的な動作モデルです。
エージェント同士が競合しない仕組み ― worktree
「複数のエージェントが同時に動く」と聞くと、同一ファイルへの書き込みが衝突しそうに思えます。これを防ぐのが worktree(ワークツリー) です。
仕組み自体は単純で、同じリポジトリに対して、独立した作業ディレクトリを複数用意するというものです。
- エージェント A はディレクトリ A で作業する
- エージェント B はディレクトリ B で作業する
- リポジトリの履歴(オブジェクト)は共有されるため、ディスク使用量が単純に倍増することはない
それぞれが独立したディレクトリで作業するため、互いの変更を上書きしてしまう事故が起きません。クラウド上で動くエージェントも同様に、1つずつ専用の作業領域を割り当てられます。Agents ウィンドウがマルチブランチをサポートしているように見えるのも、この worktree(エージェントごとに専用ブランチを持つ)が基盤になっています。
誤解しやすいポイント①:ブランチは常に両ウィンドウで共有される、わけではない
ここは特に誤解されやすいところです。実際に、次のような質問が寄せられることがあります。
Q. Editor ウィンドウでも Agents ウィンドウでも、チェックアウトしているブランチは両者に反映される。つまり、現在のブランチは常に両方で共有されている ― という理解で合っていますか?
直感的には正しそうに思えますが、これは正確ではありません。回答を整理すると次のようになります。
A. 共有されるのは、メインのチェックアウト(メインの作業ツリー)だけです。worktree やクラウドエージェントは、それぞれ自分専用のブランチ上で動作しており、あなたのメインのブランチとは切り離されています。したがって「常に共有されている」わけではありません。
ポイントをまとめると次のとおりです。
- 共有されるのは、メインのチェックアウト(メインの作業ツリー)だけです。
- worktree やクラウドで進行するエージェントの作業は、それぞれ別のブランチ上にあり、メインとは切り離されています。
- エージェントが作業を完了し「適用(Apply)」した時点で、はじめてその成果がメインに統合されます。
図にすると、共有されるのは中央のメインだけで、各エージェントは独立していることが分かります。
すなわち「メインの作業ツリーは共有され、各エージェントの作業ツリーは独立している」と理解するのが正確です。
誤解しやすいポイント②:Agents ウィンドウのターミナルで Git 認証が失敗するのは「仕様」
もう1つ、つまずきやすいのが Git の認証まわりです。Agents ウィンドウのターミナルで手動の Git 操作を実行すると、Editor ウィンドウでは成功する同じコマンドが、認証エラーで失敗することがあります。
実際のエラー例を示します。
Agents ウィンドウ(失敗する):
workspace $ git pull
remote: Invalid username or token. Password authentication is not supported for Git operations.
fatal: Authentication failed for 'https://github.com/your-org/your-repo/'
Editor ウィンドウ(成功する):
% git pull
Updating 89939d8..17cf4e3
Fast-forward
これは不具合ではなく仕様です。理由は実行環境の違いにあります。
-
Editor ウィンドウのターミナルは、あなたの通常のシェルで動作し、ローカルマシンの keychain / SSH 認証情報を利用します。だからいつもどおり
git pullが通ります。 -
Agents ウィンドウのターミナル(
workspace $というプロンプト)は、隔離された(sandboxed)エージェント環境で動作します。ローカルの GitHub 認証情報は使わず、エージェント用に Cursor が管理する Git アクセスを利用します。 - この管理されたアクセスは、エージェントがアイドル状態だったり、ローカルとクラウドの間を移動したりした後に同期がずれることがあり、その結果として
Invalid username or tokenが発生します。
認証の経路を図にすると、どこで失敗しうるかが見えてきます。
対処法
- 手動で Git 操作(pull / push など)をしたい場合は、Editor ウィンドウのターミナルから実行します。ローカルの認証情報を使うため、最も確実です。
- 最新の変更を取り込ませたい場合は、Agents ウィンドウでエージェントに「最新の変更を取り込んで」と依頼します。エージェント自身が Git を実行する際は、管理されたアクセスを先にリフレッシュしてから処理するため、認証も自動的に整います。
逆に言えば、Editor ウィンドウのターミナルでも認証エラーが出る場合は仕様ではなく別の問題なので、ローカルの認証設定を確認する必要があります。
比較表
| Editor ウィンドウ | Agents ウィンドウ | |
|---|---|---|
| 役割 | 自分でコードを編集する | AI にタスクを委譲する |
| 操作の主体 | 開発者 | AI エージェント |
| 実行環境 | ローカルのみ | ローカル / クラウド / リモート(SSH) |
| 同時実行 | 単一の作業 | 複数を並行 |
| 対象範囲 | 基本は単一リポジトリ | 複数リポジトリをまたげる |
| ブランチ | 単一のブランチ | worktree で個別のブランチ |
| Git 認証 | ローカルの認証情報 | Cursor が管理するアクセス |
どちらを使うべきか ― 優劣ではなく使い分け
ここまで違いを見てきましたが、どちらが優れているという話ではありません。AI に任せられる作業が増えても、コードやテキストを自分の手で書き直したり、細かく調整したりする場面は今も数多くあります。そうした「自分で編集する」作業には、従来どおりの Editor ウィンドウのほうが直感的で使いやすいでしょう。
そして重要なのは、2つのウィンドウは同時に開いておけるという点です。たとえば次のような併用が自然にできます。
- Editor ウィンドウで自分のコードを書きながら、Agents ウィンドウでは別のエージェントにテストやドキュメントを任せる
- エージェントが「適用(Apply)」した成果を、Editor ウィンドウで自分の目で確認・微調整する
つまり、片方を選ぶのではなく、作業の性質に応じて両者を行き来するのが最も効率的な使い方です。
- 自分の手で編集・調整したいとき → Editor ウィンドウ
- まとまったタスクを任せたい・並行して進めたいとき → Agents ウィンドウ
まとめ
- Editor ウィンドウは開発者自身がコードを編集する環境、Agents ウィンドウは AI エージェントにタスクを委譲する環境です。
- どちらが優れているということはなく、2つのウィンドウは同時に開いておけます。自分で編集したいときは Editor、タスクを任せたいときは Agents、と作業に応じて使い分けるのが効果的です。
- エージェントは worktree によって独立した作業ディレクトリ・ブランチで動作するため、競合せずに並行作業を進められます。
- 共有されるのはメインの作業ツリーのみで、各エージェントの作業は「適用」するまでメインとは独立しています。
- Agents ウィンドウのターミナルで手動 Git が認証エラーになるのは仕様です。手動操作は Editor ウィンドウから、自動取り込みはエージェントへの依頼で行うのが確実です。