zenbu-labs/terminal-browser

A real browser inside your terminal

解决的问题

terminal-browser 将功能齐全的图形化网页浏览器直接带入您的终端。它旨在弥合基于终端的开发环境与网络之间的鸿沟,使开发人员无需离开命令行界面即可与网站交互、调试应用程序,并为AI编码代理提供基于网络的上下文。

工作原理

该项目使用 Kitty graphics protocol 将无头 Chromium 实例生成的像素直接渲染在终端窗口内。它捕获用户输入(如鼠标点击、滚动和键盘事件),并将其转换为浏览器引擎的合成事件。UI 使用自定义的 Rust 引擎和 React 构建,实现了浏览器内容与基于终端的 UI 元素的无缝分层。它还包含一个供终端实现的 API,支持拆分窗格、管理标签页以及与编码代理直接集成等高级功能。

适用人群

此工具专为那些习惯于基于终端的工作流(如 Neovim、Tmux 或 VS Code)并希望将网页浏览或AI驱动的网页交互集成到现有终端布局中的开发人员和高级用户而设计。

亮点

  • Agent-Ready: 专为与编码代理配合使用而设计,允许它们与浏览器交互、查看页面内容并执行基于网络的任务。
  • 高性能: 使用离屏渲染,仅将更改的像素补丁发送到终端,以确保流畅且帧率稳定的性能。
  • SSH 支持: 包含一种代理模式,可在本地运行浏览器,同时通过远程机器路由网络请求,从而轻松预览远程 Web 应用程序。
  • 可扩展 API: 提供基于 socket 的 API 供终端模拟器实现,允许与终端多路复用器和窗口管理器进行深度集成。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目