에이전트브리지: 브라우저 기반 캔버스로 터미널 세션과 AI 에이전트 관리하기
다양한 머신에서 여러 AI 에이전트와 터미널을 동시에 운영하는 개발자들은 종종 통제력을 잃는다. 에이전트브리지(AB)는 자체 호스팅 웹 앱으로 이 문제를 해결한다: 무한한 캔버스 위에 실시간 세션 창, 실시간 상태 표시기, 그리고 어떤 브라우저에서도 접근 가능한 인터페이스를 제공한다. 노드는 PTY 데몬을 실행하는 서버, 컨테이너 또는 가상머신이며, 에이전트는 클로드, 코드크스 등 유사 도구를 의미하며, 세션은 노드 상의 지속적인 PTY 프로세스이다.
캔버스는 전략 시뮬레이션 게임(RTS) 인터페이스를 모방한다: 줌, 팬, 작업 기반 창 그룹화가 가능하다. 상태(사용 중/대기 중/오류)는 아이콘과 미니맵으로 표시되어 20개 이상의 세션을 각각 열지 않고도 즉시 확인할 수 있다.
아키텍처 및 핵심 구성 요소
AB는 서버에 배포되며 URL을 통해 실행된다—Electron이나 VPN이 필요하지 않다. 주요 용어:
- 노드: PTY 데몬을 실행하는 컴퓨팅 노드 (VPS, Incus 컨테이너, Docker, VM).
- 에이전트: 터미널 내에서 작동하는 AI 도구 (클로드, 큐웬, kilo).
- 세션: 노드 상의 지속적이고 재연결 가능한 PTY 프로세스.
캔버스는 중심 역할을 한다: 터미널 창, 에이전트 인터페이스, 메모를 포함한다. 백엔드, 프론트엔드, 인프라스트럭처와 같은 작업 단위별로 '섬'으로 그룹화할 수 있다. 상태 점이 있는 미니맵을 통해 전체 시스템의 개요를 한눈에 파악할 수 있다.
향후 기능: 사용량 통계(실행 시간, 자원 소비), 세션 기록.
실제 배포 사례
SSH를 통한 원격 노드 연결
SSH 마법사가 PTY 데몬 설정을 자동화한다: 호스트 정보를 입력하면 즉시 캔버스 엔드포인트를 제공받는다. 수동 설정이 필요 없다.
복수 프로젝트에서의 동시 작업
5개의 리포지토리, 8개의 터미널, 3개의 에이전트: 캔버스는 활동 현황을 표시하고, 창을 격자형으로 정렬하거나 하나의 패널에 집중할 수 있다.
Incus 컨테이너를 활용한 격리 환경 구축
하나의 호스트에 Incus/LXD를 사용: 에이전트용 시스템 컨테이너(루트 권한)와 완전한 docker-in-docker 지원이 가능하며, 특별한 대안 없이도 동작한다. 장점:
- 격리성: 컨테이너가 손상되더라도 다시 생성만 하면 호스트는 깨끗하게 유지된다.
- 중첩된 Docker: 완전한 데몬 기능,
docker-compose up명령어가 정상 작동한다. - 확장성: 하나의 서버에서 50개 이상의 노드를 관리 가능하며, 클릭 한 번으로 전환 가능하다.
- 바인드 마운트: 호스트와 컨테이너 간 공유 폴더를 통해 아티팩트를 쉽게 공유할 수 있다.
호스트에 설치된 AB는 모든 PTY 데몬을 노드로 인식한다.
도구 생태계 내 위치
AB는 tmux, Warp, VS Code Remote와 함께 사용되며, 브라우저를 통해 수십 개의 세션을 시각적으로 관리하는 데 초점을 맞춘다. 단순한 터미널 대체 도구는 아니지만, 다중 머신 워크플로우를 위한 보조 계층이다. 개인정보 보호도 강화되어, 보드는 소유자만 접근 가능하다.
개발 로드맵
- 모바일 인터페이스: 모니터링용.
- Incus 통합: AB에서 직접 컨테이너 생성 및 관리.
- 프록시 미들웨어: 에이전트 트래픽 가로채기, 메트릭 및 로그 수집.
가장 중요한 요소들
- 브라우저에서 자동 재연결되는 지속적 세션 — SSH 조작 없이도 가능.
- 10개 이상의 노드에 대한 캔버스 기반 시각적 상태 모니터링.
- Incus 기반 격리: 단일 호스트에서 완전한 Docker 환경 구현.
- 자체 호스팅 웹 앱: URL로 어디서든 접근 가능.
- 오픈소스: 창, 분석 기능 등 컴포넌트 확장 가능.
— Editorial Team
아직 댓글이 없습니다.