Show HN: Ghostty 기반 터미널, 수직 탭 및 알림

발행: (2026년 2월 20일 오전 06:30 GMT+9)
3 분 소요

Source: Hacker News

Overview

저는 Claude Code와 Codex 세션을 여러 개 동시에 실행합니다. 이전에는 Ghostty의 분할 창을 사용하고 macOS 기본 알림을 통해 에이전트가 주의를 필요로 할 때를 확인했습니다. Claude Code의 알림 본문은 항상 “Claude is waiting for your input”이라서 상황을 알 수 없고, 탭이 많이 열리면 제목이 읽기 어려워집니다.

이를 해결하기 위해 cmux라는 macOS 네이티브 앱을 Swift/AppKit으로 만들었습니다. 이 앱은 libghostty를 사용해 터미널을 렌더링하고 기존 Ghostty 설정(테마, 폰트, 색상 등)을 읽어들입니다.

Features

  • Sidebar with vertical tabs
    각 작업 공간에 대해 git 브랜치, 작업 디렉터리, 열려 있는 포트, 최신 알림 텍스트를 표시합니다.

  • Notification system

    • 터미널 시퀀스(OSC 9/99/777)를 감지합니다.
    • Claude Code, OpenCode 등 에이전트 훅에 연결할 수 있는 CLI(cmux notify)를 제공합니다.
    • 에이전트가 대기 중이면 해당 패널에 파란색 링이 표시되고 사이드바 탭이 빛납니다.
    • Cmd+Shift+U를 눌러 가장 최근의 읽지 않은 알림으로 이동합니다.
  • In‑app browser

    • agent‑browser1에서 포팅한 스크립트 가능한 API를 제공합니다.
    • 에이전트가 접근성 트리를 스냅샷하고, 요소 레퍼런스를 얻으며, 클릭, 폼 입력, JavaScript 평가, 콘솔 로그 읽기를 할 수 있습니다.
    • 터미널 패널 옆에 브라우저 패널을 분할해서 Claude Code가 개발 서버와 직접 상호작용하도록 할 수 있습니다.
  • Full scriptability

    • CLI와 소켓 API를 통해 작업 공간/탭 생성, 패널 분할, 키 입력 전송, 브라우저에서 URL 열기 등을 스크립트화할 수 있습니다.

Demo

Demo video on YouTube

Repository

cmux (AGPL) on GitHub


Footnotes

  1. https://github.com/vercel-labs/agent-browser (source of the in‑app browser API)

0 조회
Back to Blog

관련 글

더 보기 »

MacMini에 OpenClaw 설치, 파트 2

1단계: macOS 새로 설치 구성 6단계: Mac Mini 초기화 및 Apple ID 만들기 현재 실행 중인 macOS가 있는 Mac Mini에서 다음으로 이동합니다: System Settings.