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 지원: 브라우저는 로컬에서 실행하면서 네트워크 요청은 원격 머신을 통해 라우팅하는 프록시 모드를 포함하여, 원격 웹 애플리케이션을 쉽게 미리 볼 수 있습니다.
  • 확장 가능한 API: 터미널 에뮬레이터가 구현할 수 있는 소켓 기반 API를 제공하여 터미널 멀티플렉서 및 창 관리자와의 깊은 통합을 가능하게 합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트