コーディングエージェントをターミナルで回していると、生成された UI や API ドキュメント、ローカルのプレビューを「別ウィンドウのブラウザ」へ切り替えて確認する往復が増えます。その往復が短いほど、エージェントの出力を同じ文脈で検証しやすくなります。

📑目次
  1. terminal-browser とは何か — 公開主体と CLI の骨格
  2. 仕組み — kitty graphics / Electron offscreen / Swift 入力
  3. 導入前チェック — OS・端末・制約の意思決定表
  4. 類似ツールとの差分 — Carbonyl / Browsh / Browser Use
  5. よくある質問(FAQ)
  6. まとめ — 今日の判断と次の一手

terminal-browser は、既存ターミナルの中に Chromium ベースの実ブラウザを描画し、コーディングエージェントと Web プレビューを同じタブに同居させるための OSS です。公開主体は Zenbu(創業者 Rob Pruzan)です。

この記事の目的は「人気 OSS の要約」ではなく、次の判断を持ち帰ることです。

  1. 手元の OS / 端末が現状の実用条件に合うか
  2. agent-browser 互換 CLI で、見える同一インスタンスを操作したいか
  3. 別 Chrome ウィンドウやヘッドレス自動化で足りるなら、今は見送るべきか

terminal-browser とは何か — 公開主体と CLI の骨格

結論から言うと、terminal-browser は「端末向けの簡易ビューア」ではなく、実ブラウザ(Chromium)をターミナル内に載せ、エージェント横で同じ画面を共有するためのプレビュー/操作レイヤです。

公開日・発見経路と根拠ソース

独立報道の RuntimeWire は、2026-07-30 公開として伝えています。

実装の正本は GitHub zenbu-labs/terminal-browser にあります。

日本語圏では gihyo.jp の紹介 が発見経路になりました。ただし導入判断の根拠は、次の側に置きます。

  • 公式サイト(製品仕様・install 訴求)
  • GitHub README(CLI / How it works の正本)
  • 独立報道(RuntimeWire など)

製品定義と用途

公式サイトは「A browser that runs directly inside your terminal」と定義し、次のような用途を前面に出しています。

  • エージェントと Web サイトの side-by-side
  • built-in の browser-use 系 CLI
  • HTML plan の split 表示
  • SSH 経由のリモートプレビュー(ポートフォワードなし、という訴求)

主体の文脈として、Y Combinator の Zenbu 公開ページ は、創業者 Rob が coding agents 向けの拡張可能な IDE を構築していると説明しています。読み分けは次のとおりです。

  • terminal-browser 単体の仕様確認: 公式と GitHub を優先
  • YC ページ: 運営主体の背景として読む

CLI 骨格(公開ドキュメント共通)

公開ドキュメントで共通して見える CLI 骨格は次のとおりです。

操作 代表コマンド 読み方
インストール curl -fsSL https://terminal-browser.sh/install | bash 公式 LP 表記。README 側は -fsSl 表記の揺れあり。導入前にスクリプト内容を確認する
起動 terminal-browser 既存ターミナル内でブラウザを立ち上げる入口
ページを開く open <url> ローカル HTML や dev server の確認に使う
分割表示 --split right など エージェント作業面とプレビューを同居させる
一覧 ls 複数 browser / tab があるときの対象確認
操作 action(agent-browser compatible) エージェントから同一可視インスタンスを操作する楔

action 操作と複数インスタンス

gihyo の整理では、action に次の系統が示されています。

  • snapshot
  • click
  • fill
  • eval

複数インスタンス時の流れは次です。

  1. ls で対象を確認する
  2. --browser / --tab で操作対象を絞る
  3. 必要ならリポジトリ案内のエージェント向け skill(skill/SKILL.md)を使う

設計上の要点は次の対比にあります。

  • やること: 開発者が見ている同じブラウザ面を CLI で共有する
  • やらないこと(主眼ではない): ヘッドレス専用の別プロセスを暗黙に生やす
zenbu-labs/terminal-browser の GitHub リポジトリ画面
公開 README と CLI・How it works が実装の正本になります

出典

人気指標の読み方

GitHub の人気指標は変動します。時点スナップショットは次のとおりです。

  • RuntimeWire 引用(2026-07-31 頃): 約 429 stars / 18 forks / 80 commits
  • compose 前の再取得(2026-08-01): 約 550 stars / 22 forks / 81 commits

スター数は関心の発見シグナルであり、対応 OS や安定性の代替指標にはしません。


仕組み — kitty graphics / Electron offscreen / Swift 入力

導入判断で重要なのは機能名よりも、描画が成立する前提条件です。README の How it works を実務語に落とすと、次の三段になります。

描画・入力の三段

  1. Chromium を Electron の offscreen rendering で動かし、GPU 側から画素を取る
  2. その画素を kitty graphics protocol 対応端末へ送り、ターミナル内にブラウザ画面として出す
  3. クリックやキー入力を Chromium へ合成イベントとして戻す。端末だけでは足りない入力は、macOS では Swift の背景アプリが OS から補う(trackpad 含む)

UI スタックと対応端末

UI 側は次の組み合わせとして説明されています。

  • Rust のグラフィックスエンジン
  • React(TypeScript)のカスタムレンダラ
  • 外枠 UI とページを同一 canvas に合成

要するに「テキストだけを再描画する端末ブラウザ」ではなく、画素レベルのプレビューを端末プロトコルで運ぶ構成です。

公式が挙げる対応端末の例は次のとおりです。

  • Ghostty
  • Kitty
  • cmux
  • WezTerm

README は VS Code 内ターミナルなどにも言及しますが、前提は kitty graphics が使えることです。非対応端末では、本筋の描画経路が成立しません。

評価軸(デモ余談との切り分け)

ネストの余談として、作者が browser と terminal を何層も重ねたデモに触れた、という紹介もあります。これは話題性の補足であって、導入要件ではありません。評価の軸は次に置きます。

  • 自分の端末で画素が届くか
  • エージェントと同じ面を操作できるか

導入前チェック — OS・端末・制約の意思決定表

terminal-browser を試す価値があるかは、機能の多さより前提条件の一致で決まります。公開情報を意思決定表に落とすと次のように整理できます。

意思決定表

観点 確認すること いまの公開情報での目安
OS 手元が Apple Silicon Mac か gihyo の v0.3.2 整理では Apple Silicon Mac のみ。Windows 非対応。Linux は roadmap(PR #4)
端末 kitty graphics を使えるか Ghostty / Kitty / cmux / WezTerm 等が公式例。非対応端末では本筋の描画が成立しない
ワークフロー agent と同一タブで見えるプレビューが必要か 別 Chrome ウィンドウで足りるなら必須ではない
エージェント制御 同一可視インスタンスを CLI 操作したいか action が agent-browser 互換。detached な headless 自動化とは設計が異なる
リモート SSH 先サイトを port-forward なしで見たいか 公式が SSH プレビューを訴求。リモート側に install できることが前提
成熟度 ライセンス表示・Linux・拡張の不足を許容できるか gihyo 時点ではライセンス表示なしの指摘あり。extensions / design mode は roadmap
人気指標 スター数を事実と混同していないか 429→550 前後で変動。採用判断の主根拠にしない

出典の使い分け

出典は次のように使い分けます。

プラットフォーム表記は次が並立するため、導入直前に release notes を再確認してください。

  • 公式 LP の macOS/Linux 表示
  • README roadmap の Linux PR
  • gihyo の Apple Silicon 限定注記

今日試すならこの順番

読後にそのまま実行できる最小ループです。

  1. 端末が kitty graphics 対応か確認する(非対応ならここで停止)
  2. OS が現状の実用対象(公開情報上は Apple Silicon Mac 中心)か確認する
  3. curl... | bash のスクリプト内容と権限境界を読んでから install する
  4. ローカルの静的 HTML か localhost の dev server を open / --split で開く
  5. エージェントから action -- snapshot(または同等)を 1 本通し、見えている面と操作対象が一致するか確認する
  6. チーム標準が Linux / Windows 主体なら、Linux PR と代替手段を評価し、今は見送りも選択肢に残す
terminal-browser の install 導線ページ
install は公式 one-liner でも、実行前にスクリプト内容の確認が先です

出典

早期 OSS としての注意点

⚠️ 注意点: 早期 OSS では、対応 OS・ライセンス表記・拡張機能の有無が短期間で変わります。記事時点の表は「今の公開スナップショット」であり、組織導入の最終仕様書ではありません。セキュリティ境界としても、次を権限と監査の対象に含めてください。

  • リモート install
  • agent からの eval 系操作

類似ツールとの差分 — Carbonyl / Browsh / Browser Use

「ターミナルで Web を見る」系統は複数あり、terminal-browser は置換関係というより用途の楔が違います。

比較表

系統 代表 強み terminal-browser との差分メモ
端末内 Chromium 高忠実度 Carbonyl 端末内 Chromium、メディア/WebGL などの先行例 RuntimeWire の整理では、terminal-browser は frame rate より fidelity と agent 同居を優先する主張
低帯域テキスト/遠隔閲覧 Browsh Firefox 経由の端末向け描画、帯域制約向き エージェント横プレビュー用途が主眼ではない
ヘッドレス agent 操作 Browser Use など モデルが click/type/form を自動化 terminal-browser は開発者が見える同一インスタンスを CLI 共有する楔
通常 GUI ブラウザ Chrome / Safari 拡張・安定性・全 OS タブ文脈が agent と分断されやすい

編集的な読み方

編集的な読み方は次のとおりです。

  • 別ウィンドウの Chrome で十分な人: 必須ではない
  • 「エージェントが触っている面」と「人間が見ている面」を一致させたい人: ヘッドレス自動化だけでは足りない隙間を埋める候補
  • Carbonyl 系: 端末内 Chromium という点では近い
  • terminal-browser の訴求中心: coding-agent ワークスペースへの取り込み

関連記事:

よくある質問(FAQ)

プラットフォームと端末

Q1. Windows や Intel Mac でも今すぐ使えるか?

A. gihyo の v0.3.2 時点整理では次のとおりです。

  • Apple Silicon Mac のみ
  • Windows は非対応
  • Linux は roadmap(PR #4)

導入前に GitHub release notes と README を再確認してください。

Q2. どのターミナルが必要か?

A. kitty graphics protocol 対応が前提です。公式例は次です。

  • Ghostty
  • Kitty
  • cmux
  • WezTerm

非対応端末では描画経路が成立しません。

エージェント操作と SSH

Q3. コーディングエージェントからどう操作するか?

A. terminal-browser action(agent-browser 互換)が中心です。公開情報で紹介される操作系統は次です。

  • snapshot
  • click
  • fill
  • eval

複数インスタンス時は次で対象を特定します。

  • ls
  • --browser / --tab

リポジトリの agent skill も案内があります。

Q4. SSH 先の localhost を見るのに port-forward は不要か?

A. 公式の説明は、「リモートで terminal-browser を動かし、kitty graphics の画素を SSH 経由で手元に届ける」ため port-forward 不要、という整理です。前提条件は次です。

  • リモート側にバイナリを入れられること
  • 端末側が画素を受け取れること

ネットワークポリシーで remote binary 実行が制限される環境では成立しません。

類似ツールと人気指標

Q5. Carbonyl や Browser Use と何が違うのか?

A. レイヤが異なります。単純な上位互換ではありません。

  • Carbonyl: 端末内 Chromium の先行実装
  • Browser Use: 自動化レイヤ
  • terminal-browser: エージェントと同一タブの可視プレビューに、互換 CLI を載せる楔

Q6. スター数や Hatena ブックマーク数は採用根拠になるか?

A. なりません。それらは注目度のシグナルです。採用判断は次で行います。

  • OS / 端末適合
  • 可視インスタンス共有の必要性
  • ライセンスとロードマップ許容度

まとめ — 今日の判断と次の一手

terminal-browser は、コーディングエージェント作業を「ターミナル 1 タブ」に閉じたい人向けの実験的だが具体的な選択肢です。

向く人 / 向かない人

向く人の目安:

  • Apple Silicon と kitty graphics 対応端末を前提にしている
  • エージェントと Web プレビューの文脈分断を減らしたい
  • SSH 先プレビューや HTML plan の split 表示を試したい

向かない、または保留が妥当な目安:

  • Windows 必須
  • Linux 標準機のみ
  • kitty graphics 非対応端末固定
  • ライセンス未表示や早期 roadmap を許容できない組織導入
  • 別ウィンドウのブラウザで十分なワークフロー(無理に置き換え不要)

次の一手

次の一手は小さくて構いません。

  1. 公式 install を読む
  2. ローカル HTML か dev server を open --split する
  3. エージェントから action で snapshot 相当を 1 回通す

その最小ループが通らなければ、今は見送りです。継続利用するなら、次を追跡対象に入れてください。

  • release
  • Linux PR
  • ライセンス表記の更新
krona23

著者

krona23

IT業界20年以上の実務経験を持ち、日本国内有数のPVを誇る大規模Webサービスで事業部長・CTOを複数社で歴任。Windows/iOS/Android/Webと技術の変遷を経験し、現在はAIネイティブへの変革に注力。DevGENTでは、AIコードエディタ・自動化ツール・LLMの実践的な使い方を日英西3言語で発信中。

DevGENT について →

コメントを残す

Trending

DevGENTをもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む