開発者のRob Pruzan氏は2026年7月30日、既存のターミナル内でChromiumベースのブラウザーを表示・
Introducing terminal-browser
— Rob Pruzan (@RobKnight__) July 30, 2026
A browser that runs inside your existing terminal
- Preview your website next to your agent
- Open HTML plans in your terminal
- Browser use CLI built inhttps://t. pic.co/ gTzO57zGfe twitter. com/ IysSjJ2ryQ
Chromiumの画面をターミナルへ描画
terminal-browserは、実行中のプログラムがターミナル上に画像を表示するためのKitty graphics protocolを利用する。表示先には、このプロトコルに対応するターミナルが必要になる。公式サイトでは、対応ターミナルの例としてGhostty、Kitty、cmux、WezTermなどを挙げている。描画時は、ウィンドウを表示せずに描画結果を取得できるElectronのオフスクリーンレンダリングAPIを使い、Chromiumが生成したピクセルをGPUから読み取ってターミナル内へ描く。
ブラウザーの外枠にあたるUIの実装には、Rustで構築したグラフィックスエンジンとReactのカスタムレンダラーを使っている。UI自体はTypeScriptで記述され、Webページと同じキャンバスへ描画される。これにより、ページの上にタブや操作部品を重ねられる。
操作時は、ターミナルからマウスのクリック、ポインターの位置、キーボード入力を受け取り、対応するイベントをChromiumへ送る。ターミナルから取得できない入力イベントは、Swift製のバックグラウンドアプリがOSから読み取る。この仕組みにより、トラックパッドを使った滑らかなスクロールや、無限キャンバスを備えるWebアプリの操作にも対応するという。
紹介投稿の返信欄では、ブラウザーとターミナルを何層まで入れ子にできるかというやり取りもあった。Pruzan氏は、内側から数えて
i could only get as far as a browser running in a terminal running in a browser running in a terminal running in a browser running in a terminal pic.
— Rob Pruzan (@RobKnight__) July 30, 2026twitter. com/ k4e0nFJaM7
Webページを開き、エージェントからも操作
公式サイトが案内するインストールコマンドは次のとおり。
curl -fsSL https://terminal-browser.sh/install | bash
v0.
terminal-browser openに一般公開されたWebサイトのURLやlocalhostのポート、ローカルのHTMLファイルを渡すと、コマンドを実行したペインでブラウザーが起動する。--splitオプションでは上下左右の方向と分割比率を指定でき、コーディングエージェントの画面とWeb画面を同じターミナルタブに並べられる。
terminal-browser open localhost:3000 --split right terminal-browser open ./plan.html --split down --size 0.4 terminal-browser ls
開いたページは、人が直接操作できるほか、terminal-browser actionを通じてエージェントからも操作できる。このサブコマンドはagent-browser互換で、ページのスナップショット取得、要素のクリック、フォーム入力、JavaScriptの実行などに対応する。操作コマンドは、引数の区切りを示す--の後ろに指定する。
terminal-browser action -- snapshot terminal-browser action -- click @e14 terminal-browser action -- fill @e3 "hello" terminal-browser action -- eval "document.title"
デフォルトでは、同じターミナルタブで開いているブラウザーのアクティブタブを操作する。複数のブラウザーやタブを開いている場合は、terminal-browser lsでブラウザーやタブの識別子を確認し、--browserや--tabで対象を選択できる。
このほか、公式サイトではSSH経由の利用例も紹介している。SSH接続先でterminal-browserを実行すると、Chromiumが生成したピクセルデータはKitty graphics protocolのエスケープシーケンスとして送信され、同じSSHセッションを通って手元のターミナルへ届く。このため、リモート側のWebサーバーのポートを手元へ転送する必要がない。
エージェント向けのスキルも提供されている。これを使うと、エージェントはWebページを開いたり、表示中のページを確認・