craftzdog/tmux-claude-hatch

tmux plugin that runs Claude Code sessions in popups per project directory, with an fzf picker showing each session's status and a bell that highlights the window that needs you.

해결하는 문제

이 프로젝트는 tmux 내에서 여러 개의 Claude Code 에이전트 세션을 관리할 수 있는 방법을 제공합니다. 개발자들은 Neovim이나 Emacs와 같은 주 에디터에서 벗어나지 않고도 AI 에이전트를 백그라운드에서 실행할 수 있습니다. 에이전트가 작업 중인지, 대기 중인지, 또는 대기 중인지 수시로 창을 전환하거나 수동으로 추적할 필요가 없습니다.

작동 방식

이것은 tmux 플러그인으로 작동하는 쉘 스크립트 모음입니다. Claude Code 세션은 중첩된 tmux 세션으로 시작되며, 현재 창 위에 팝업으로 표시됩니다.

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

  • 세션 관리: 각 에이전트는 고유한 중첩 세션을 가지므로, 팝업을 닫아도 프로세스는 종료되지 않습니다.
  • 중앙 선택기: fzf를 사용하여 모든 실행 중인 에이전트를 목록으로 표시하고, claude agents --jsonjq를 사용해 파싱하여 에이전트의 실시간 상태(작업 중, 대기 중, 대기 중)를 표시합니다.
  • 벨 전달: 에이전트 세션에서 발생하는 터미널 벨을 현재 창으로 전달하여, 에이전트가 주의를 요할 때 사용자에게 알립니다.
  • 선택적 플러그인: 별도의 Claude Code 플러그인이 벨 및 캐시 새로 고침 설정을 자동화합니다.

대상 사용자

tmux와 (Neo)vim 또는 Emacs를 사용하며, 코드에 집중하면서 AI 에이전트가 백그라운드에서 작업을 처리하도록 원하는 개발자들.

주요 기능

  • 팝업 인터페이스: tmux 팝업(prefix + y)을 통해 Claude 세션을 시작하고 연결할 수 있습니다.
  • 실시간 상태 추적: 중앙 선택기(prefix + u)에서 에이전트가 working, waiting, idle 상태인지 실시간으로 확인할 수 있습니다.
  • 크로스톡 알림: 백그라운드 에이전트가 벨을 울릴 때 현재 창에 시각적 강조를 표시합니다.
  • 스마트 점프: 에이전트가 시작된 창으로 클라이언트를 자동으로 전환하고 팝업을 엽니다.
  • 라이브 미리보기: fzf 선택기 내에서 에이전트의 화면을 직접 미리 볼 수 있습니다.

관련

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