umputun/agterm

Terminal for agentic flow

해결하는 문제

agterm은 여러 AI 코딩 에이전트를 동시에 사용하는 개발자를 위해 특별히 설계된 네이티브 macOS 터미널입니다. 기존의 탭 방식 터미널은 수많은 장기 실행 에이전트 세션을 추적하기 어렵게 만들어, 어떤 에이전트가 진행 중인지, 어떤 에이전트가 차단되었는지, 어떤 에이전트에게 사용자 개입이 필요한지 혼란을 야기하곤 합니다. agterm은 세션을 이름이 지정된 워크스페이스로 정리하고 에이전트 상태에 대한 시각적 신호를 제공함으로써 이 문제를 해결합니다.

작동 방식

핵심 터미널 렌더링 및 셸 I/O를 위해 Ghostty 엔진 (libghostty)을 내장하면서 그 위에 커스텀 관리 레이어를 추가합니다. 셸을 Windows > Workspaces > Sessions > Panes라는 이름의 계층 구조로 정리합니다.

주요 메커니즘은 다음과 같습니다:

  • Control API and CLI: agtermctl이라는 도구를 통해 외부 스크립트나 AI 에이전트가 로컬 소켓을 통해 프로그래밍 방식으로 세션을 생성하고, 창 크기를 조정하며, 오버레이를 실행하고, 알림을 보낼 수 있습니다.
  • Agent Integration: 에이전트(Claude Code 또는 Codex 등)가 자신의 상태(active, blocked, completed)를 세션의 사이드바 행에 직접 보고하고 자신의 레이아웃을 관리할 수 있도록 설치 가능한 "skills" 및 "status hooks"를 제공합니다.
  • Dashboard: 여러 세션의 라이브 출력을 동시에 모니터링할 수 있는 그리드 뷰입니다.
  • Overlays: 기본 셸을 방해하지 않고 세션 위의 플로팅 창에서 임시 프로그램(diff 뷰어 등)을 실행할 수 있는 기능입니다.

대상 사용자

여러 프로젝트에서 AI 코딩 에이전트를 사용하며, 동시 에이전트 워크플로우를 관리하기 위해 고도로 조직화되고 스크립트 가능한 터미널 환경이 필요한 macOS(Apple Silicon, macOS 14+) 개발자 및 파워 유저.

주요 특징

  • Workspace Organization: 세션을 이름이 지정된 컨텍스트(예: "work", "personal")로 그룹화하여 탭이 복잡해지는 것을 방지합니다.
  • Agent Status Tracking: 사이드바와 대시보드의 시각적 인디케이터(색상 및 깜박이는 글리프)를 통해 어떤 에이전트가 활성 상태인지 또는 차단되었는지 보여줍니다.
  • Programmable Interface: 거의 모든 것이 agtermctl CLI를 통해 스크립트화할 수 있습니다.
  • Advanced Layouts: 분할 창, 스크래치 터미널 및 플로팅 오버레이를 지원합니다.
  • Efficient Navigation: 세션 및 작업을 위한 퍼지 팔레트와 컨텍스트 간 빠른 전환을 위한 MRU(most-recently-used) 스위처를 포함합니다.