umputun/agterm

A genuinely good terminal

agterm – 완전한 제어 API를 갖춘 미니멀 macOS 터미널

개요

  • Ghostty 렌더링 엔진을 기반으로 한 네이티브 macOS 터미널 애플리케이션입니다. 워크스페이스(세션의 이름 지정된 그룹)에 초점을 맞춘 작은 UI와 프로그래밍 가능한 제어 표면을 제공합니다.

주요 기능

  • 워크스페이스 및 세션 – 각 워크스페이스는 여러 이름 지정된 셸 세션을 보유하며 다른 세션으로 전환해도 계속 실행됩니다.
  • 제어 API(agtermctl) – 명령줄 도구가 로컬 Unix 소켓을 통해 실행 중인 agterm과 통신합니다. 스크립트(또는 AI 에이전트)는 세션 생성, 세션에 입력, 창 분할, 오버레이 프로그램 실행, 터미널 텍스트 읽기, 상태 아이콘 설정, 네이티브 선택기 표시 등을 수행할 수 있습니다.
  • 분할, 스크래치 창 및 오버레이 – 세션을 가로 또는 세로로 분할하거나, 임시 "스크래치" 터미널을 열거나, 기본 셸을 방해하지 않고 전체 화면/플로팅 오버레이를 실행할 수 있습니다.
  • 복원 모드 – 재시작 시 새 셸을 얻거나, 활성 상태였던 명령을 다시 실행하거나, zmx 데몬을 사용하여 원래 프로세스를 유지(라이브 모드)할 수 있습니다.
  • 에이전트 통합 – 선택적 스킬 플러그인은 Claude Code, Codex 또는 기타 에이전트에게 agtermctl 명령을 가르쳐 AI 에이전트가 자체 레이아웃을 구성하고, 오버레이를 실행하고, 사이드바에서 상태(활성, 차단, 완료)를 직접 보고할 수 있게 합니다.
  • 확장성 – 키 바인딩은 keymap.conf에서 정의됩니다. 모든 명령을 키 코드에 바인딩하여 한 줄을 강력한 UI 작업으로 전환할 수 있습니다.

사용 방법

# 워크스페이스 및 세션 생성
ws=$(agtermctl workspace new demo)
sid=$(agtermctl session new --workspace "$ws" --cwd "$PWD" --no-select)

# 세션을 세로로 분할
agtermctl session split on --axis horizontal --target "$sid"

# 숨겨진 세션에 명령 입력
agtermctl session type $'pwd\n' --target "$sid"

# 출력의 마지막 10줄 읽기
agtermctl session text --target "$sid" --lines 10

이 API는 창, 창 분할, 오버레이, 알림, 선택기, 전체 모델의 JSON 덤프도 다룹니다.

설치

  • Apple 실리콘 Mac용 서명된 .dmg(macOS 14 이상)로 배포됩니다.
  • Homebrew Cask로도 사용 가능: brew install --cask umputun/apps/agterm(agtermctl 바이너리 포함).
  • 선택적 에이전트 스킬 플러그인은 터미널의 도움말 메뉴 또는 Claude/Codex 플러그인 명령을 통해 설치할 수 있습니다.

대상 사용자

  • 많은 장기 실행 코딩 에이전트나 백그라운드 프로세스를 실행하고 명확한 시각적 개요가 필요한 개발자.
  • 터미널 레이아웃을 스크립트화하고 창 관리를 자동화하려는 고급 사용자.
  • 수동이 아닌 프로그래밍 방식으로 구동할 수 있는 가벼운 macOS 터미널을 원하는 모든 사람.

관련 프로젝트

  • agterm-linux – Linux용 GTK4 포트.
  • agwinterm – Windows용 재구현.
  • 에이전트 상태를 원격 tmux 세션에 푸시하는 다양한 동반 도구 등.

라이선스 – MIT.


모든 세부 사항은 리포지토리의 README에서 직접 가져왔습니다. 추가 기능은 추측되지 않습니다.

관련

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