Skip to content
Back to Blog
tmux 완벽 가이드: AI 에이전트 시대의 필수 터미널 멀티플렉서
Tutorial

tmux 완벽 가이드: AI 에이전트 시대의 필수 터미널 멀티플렉서

7 min read0

tmux 완벽 가이드: AI 에이전트 시대의 필수 터미널 멀티플렉서

AI 에이전트를 하나씩 실행하던 시대는 끝났습니다. Claude Code, Codex, Gemini CLI를 동시에 띄워서 교차 검증하고 싶은데, 창을 전환할 때마다 컨텍스트가 날아가는 경험을 해보셨나요? 바로 그 문제를 해결하는 도구가 tmux입니다.

tmux는 2007년부터 존재했지만, 2026년 AI 에이전트 시대에 가장 뜨거운 개발 도구로 다시 주목받고 있습니다. 이 글에서는 tmux가 무엇인지부터, AI 멀티 에이전트 환경에서 어떻게 활용하는지까지 완벽하게 정리해 드립니다.

tmux란 무엇인가요?

**tmux(Terminal Multiplexer)**는 하나의 터미널 창 안에서 여러 세션, 윈도우, 페인을 관리할 수 있는 서버-클라이언트 방식의 터미널 멀티플렉서입니다. 2007년 Nicolas Marriott이 개발했으며, 터미널을 닫아도 세션이 살아있다는 것이 핵심 특징입니다.

tmux를 처음 접하는 분들이 가장 많이 혼동하는 개념이 있습니다. 바로 터미널 에뮬레이터와 터미널 멀티플렉서의 차이입니다.

여러분이 현재 사용하는 iTerm2, Ghostty, Wezterm, Kitty, Warp 같은 앱들은 모두 터미널 에뮬레이터입니다. 이 앱들은 화면을 그리는 역할을 합니다. 앱을 닫으면 그 안에서 실행 중이던 모든 세션이 종료됩니다.

반면 tmux와 screen 같은 터미널 멀티플렉서는 세션 관리 서버입니다. 비유하자면, 에뮬레이터가 창문이라면 멀티플렉서는 창문 뒤에 있는 방입니다. 창문을 닫아도 방 안의 작업은 계속 진행되고, 나중에 창문을 다시 열면 작업이 그대로 남아있습니다.

AI 에이전트 시대, tmux가 다시 주목받는 이유

불과 1-2년 전까지만 해도 개발자들은 주로 단일 AI 어시스턴트를 사용했습니다. 그러나 지금은 다릅니다.

Claude Code의 Agent Teams 기능은 tmux를 활용해 여러 AI 에이전트를 병렬로 스폰합니다. 팀 리드 에이전트가 서브 에이전트들에게 작업을 분배하고, 각 에이전트가 독립된 tmux 페인에서 작업을 수행합니다. 이 방식은 단일 에이전트 대비 작업 속도와 정확도를 크게 높입니다.

실제로 개발자들이 tmux를 활용하는 방식을 보면 이렇습니다.

  • 교차 검증: Claude Code(팀 리드) + Codex + Gemini CLI를 각각의 tmux 페인에 띄워놓고, 동일한 코드 문제를 세 에이전트에게 동시에 물어봅니다. 세 가지 답변을 비교하면 훨씬 정확한 결론에 도달할 수 있습니다.
  • 병렬 작업: 프론트엔드 에이전트와 백엔드 에이전트가 각각의 페인에서 동시에 작업하고, 하나의 화면에서 진행 상황을 모니터링합니다.
  • 세션 유지: 긴 컴파일이나 AI 학습 작업이 실행 중일 때 노트북을 닫아도 작업이 계속됩니다.

AI 에이전트 2개 이상을 동시에 사용한다면, tmux는 선택이 아니라 필수입니다.

tmux의 3계층 구조 이해하기

tmux를 처음 배울 때 혼란스러운 이유는 세션, 윈도우, 페인이라는 세 가지 계층 개념을 한꺼번에 이해해야 하기 때문입니다. 각각이 무엇인지 명확하게 정리하겠습니다.

세션 (Session)

세션은 tmux의 최상위 단위입니다. 하나의 프로젝트나 작업 맥락으로 생각하면 됩니다. 여러 개의 세션을 동시에 실행할 수 있으며, 각 세션은 독립적으로 작동합니다. 예를 들어 "프로젝트-A" 세션과 "프로젝트-B" 세션을 동시에 유지하면서 빠르게 전환할 수 있습니다.

윈도우 (Window)

윈도우는 세션 안에 있는 탭과 같습니다. 브라우저의 탭을 떠올리시면 됩니다. 하나의 세션 안에 여러 윈도우를 만들 수 있고, 각 윈도우는 전체 화면을 차지합니다. 하단 상태 표시줄에서 현재 어떤 윈도우가 활성화되어 있는지 확인할 수 있습니다.

페인 (Pane)

페인은 하나의 윈도우를 여러 구역으로 나눈 것입니다. 화면을 좌우 또는 상하로 분할해서 동시에 여러 작업을 볼 수 있게 해줍니다. AI 에이전트를 병렬로 실행할 때 가장 활발하게 사용하는 단위가 바로 페인입니다.

tmux
├── 세션: "ai-project"
│   ├── 윈도우 0: "에디터"
│   │   ├── 페인 왼쪽: vim
│   │   └── 페인 오른쪽: 파일 탐색
│   └── 윈도우 1: "에이전트팀"
│       ├── 페인 1: Claude Code (팀 리드)
│       ├── 페인 2: Codex
│       └── 페인 3: Gemini CLI
└── 세션: "monitoring"
    └── 윈도우 0: "로그"

필수 키바인딩 완전 정복

tmux를 처음 배울 때 가장 큰 장벽이 키바인딩입니다. 하지만 핵심 명령어 10개만 익히면 일상 작업의 80%를 커버할 수 있습니다.

tmux의 모든 키바인딩은 prefix(프리픽스) 키로 시작합니다. 기본값은 Ctrl+B입니다. prefix를 누르고 손을 뗀 다음 명령 키를 누르는 방식입니다.

세션 관련

명령단축키설명
디태치prefix + d세션을 유지한 채 터미널 분리
세션 목록tmux ls실행 중인 세션 목록 확인
세션 재연결tmux attach -t [이름]기존 세션에 다시 연결
세션 이름 변경prefix + $현재 세션 이름 변경

윈도우 관련

명령단축키설명
새 윈도우prefix + c새 윈도우 생성
윈도우 목록prefix + w인터랙티브 윈도우 목록
다음 윈도우prefix + n다음 윈도우로 이동
이전 윈도우prefix + p이전 윈도우로 이동

페인 관련

명령단축키설명
수평 분할prefix + %좌우로 화면 분할
수직 분할prefix + "상하로 화면 분할
페인 이동prefix + 방향키인접 페인으로 이동
페인 닫기prefix + x현재 페인 종료

처음에는 prefix + d(디태치)와 tmux attach(재연결)만 제대로 익혀도 tmux의 핵심 가치인 세션 영속성을 활용할 수 있습니다.

추천 조합: Ghostty + tmux

터미널 에뮬레이터를 무엇을 쓰느냐는 종종 종교 전쟁에 가까운 논쟁이 되곤 하지만, 2026년 기준으로 가장 많이 추천되는 조합은 Ghostty + tmux입니다.

Ghostty를 추천하는 이유:

Ghostty는 GPU 가속을 기반으로 매우 빠른 렌더링 속도를 자랑합니다. AI 에이전트들이 대량의 텍스트 출력을 쏟아낼 때 버벅임 없이 화면을 처리합니다. 또한 설정이 단순하고, macOS와 Linux 모두 지원합니다.

다른 선택지들:

  • Wezterm: Lua 기반 설정으로 고도의 커스터마이징이 가능합니다. tmux 없이도 자체 멀티플렉싱을 지원하지만, 원격 서버 세션 유지를 위해서는 여전히 tmux가 필요합니다.
  • Kitty: 빠른 속도와 풍부한 기능이 장점이지만, 설정 파일이 다소 복잡합니다.
  • iTerm2: macOS에서 오랫동안 표준이었지만, GPU 가속 에뮬레이터들에 비해 속도가 느린 편입니다.
  • Warp: AI 기능이 내장되어 있어 편리하지만, tmux와 호환성 이슈가 있습니다.

중요한 점은, 어떤 에뮬레이터를 선택하든 원격 서버나 장기 세션 관리를 위해서는 tmux가 필요하다는 것입니다.

AI 에이전트 개발 실전: tmux로 멀티 에이전트 환경 구축하기

이제 실제로 AI 에이전트 개발 환경을 tmux로 구축하는 방법을 살펴보겠습니다.

기본 세션 구성

# AI 에이전트 전용 세션 생성
tmux new-session -s ai-team

# 윈도우를 에이전트 수에 맞게 분할
# 세 개의 페인으로 분할 (수평 2개 + 하단 1개)
prefix + %    # 좌우 분할
prefix + "    # 하단 페인 추가

각 페인에 에이전트 배치

# 페인 1 (왼쪽 상단): Claude Code 팀 리드
claude --dangerously-skip-permissions

# 페인 2 (오른쪽 상단): Codex
codex

# 페인 3 (하단): Gemini CLI
gemini

교차 검증 워크플로우

멀티 에이전트 교차 검증은 다음 순서로 진행합니다.

  1. 문제 제시: 세 에이전트에게 동일한 코드 문제나 질문을 입력합니다.
  2. 독립 응답 수집: 각 에이전트의 응답을 동시에 확인합니다.
  3. 수렴 판단: 세 에이전트가 동일한 방향을 제시하면 신뢰도가 높습니다. 의견이 갈리면 추가 검증이 필요합니다.
  4. 팀 리드 종합: Claude Code(팀 리드)가 다른 에이전트들의 의견을 참고해 최종 결정을 내립니다.

이 방식으로 작업하면 단일 에이전트 대비 코드 오류가 크게 줄어들고, 더 창의적인 해결책을 찾을 수 있습니다.

세션 저장과 복구

장기 프로젝트를 진행할 때는 tmux-resurrect 플러그인을 활용하면 재부팅 후에도 세션 레이아웃을 복구할 수 있습니다.

# tmux-resurrect 설치 (TPM 필요)
# ~/.tmux.conf에 추가
set -g @plugin 'tmux-plugins/tmux-resurrect'

# 세션 저장: prefix + Ctrl+s
# 세션 복구: prefix + Ctrl+r

tmux를 더 강력하게: 필수 설정 커스터마이징

기본 tmux 설정은 꽤 불편합니다. 아래 설정만 추가해도 사용성이 크게 향상됩니다.

# ~/.tmux.conf

# prefix 키를 Ctrl+A로 변경 (선택사항, screen 사용자 친숙)
# unbind C-b
# set -g prefix C-a

# 마우스 지원 활성화 (클릭으로 페인 전환 가능)
set -g mouse on

# 인덱스를 1부터 시작 (키보드 레이아웃 직관적)
set -g base-index 1
setw -g pane-base-index 1

# 비주얼 피드백 개선
set -g status-style bg=black,fg=white
set -g window-status-current-style bg=white,fg=black,bold

# 페인 이동을 vim 스타일로 (선택사항)
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# 설정 즉시 리로드
bind r source-file ~/.tmux.conf \; display-message "Config reloaded"

이 설정 중 가장 먼저 적용해볼 것은 set -g mouse on입니다. 마우스 지원이 활성화되면 클릭으로 페인을 전환할 수 있어 초보자도 훨씬 편하게 사용할 수 있습니다.

마무리

tmux는 단순한 터미널 도구가 아닙니다. AI 에이전트 시대에 여러 AI를 동시에 운용하고, 작업 맥락을 잃지 않으며, 원격 서버에서도 안정적으로 개발하기 위한 인프라입니다.

핵심을 정리하면 이렇습니다.

  • 터미널 에뮬레이터(Ghostty, iTerm2 등)는 화면을 그리는 앱이고, tmux는 세션을 관리하는 서버입니다. 두 가지는 역할이 다르며 함께 사용합니다.
  • tmux의 3계층(세션 > 윈도우 > 페인)을 이해하면 복잡한 AI 에이전트 환경을 체계적으로 구성할 수 있습니다.
  • Claude Code + Codex + Gemini CLI를 각각의 페인에 배치하고 교차 검증하면 단일 에이전트보다 훨씬 정확한 결과를 얻습니다.
  • AI 에이전트 2개 이상을 동시에 사용한다면 tmux는 선택이 아닌 필수입니다.

오늘 바로 brew install tmux로 설치하고, tmux new-session -s test로 첫 세션을 만들어 보세요. 처음에는 낯설지만, 일주일만 사용하면 tmux 없는 개발 환경으로 돌아가기 힘들어질 것입니다.


자주 묻는 질문 (FAQ)

Q: tmux와 screen 중 무엇을 선택해야 하나요?

둘 다 터미널 멀티플렉서지만, 2026년 기준으로는 tmux를 강력히 추천합니다. tmux는 더 활발하게 개발되고 있고, 설정 파일 문법이 직관적이며, 수직 분할 등 현대적인 기능을 지원합니다. screen은 매우 오래된 프로젝트로 새로운 기능 추가가 거의 없습니다. 특별한 이유가 없다면 tmux를 선택하세요.

Q: prefix 키(Ctrl+B)가 너무 불편합니다. 바꿀 수 있나요?

네, ~/.tmux.conf에서 자유롭게 변경할 수 있습니다. 가장 많이 쓰는 대안은 Ctrl+A(screen의 기본값)입니다. 단, Ctrl+A는 bash에서 줄의 맨 앞으로 이동하는 단축키이기도 해서, 두 번 누르면 tmux prefix, 한 번 누르면 bash 기능으로 동작하도록 설정해야 합니다. 익숙해지면 기본 Ctrl+B가 오히려 편하다는 의견도 많습니다.

Q: 원격 서버에서도 tmux를 사용할 수 있나요?

tmux의 가장 강력한 사용 사례 중 하나가 바로 원격 서버 작업입니다. SSH 연결이 끊겨도 tmux 세션은 서버에서 계속 실행됩니다. ssh user@server로 접속한 뒤 tmux attach를 입력하면 이전 작업이 그대로 이어집니다. 오래 걸리는 AI 학습이나 빌드 작업을 서버에서 실행할 때 특히 유용합니다.

Q: VS Code 터미널에서도 tmux를 쓸 수 있나요?

VS Code 내장 터미널에서 tmux를 실행할 수는 있지만, 마우스 스크롤 처리나 일부 키바인딩 충돌 등 사소한 문제가 발생할 수 있습니다. VS Code로 코드를 편집하면서 외부 터미널(Ghostty 등)에서 tmux를 실행하는 방식을 더 권장합니다. 특히 AI 에이전트 멀티 페인 작업은 전용 터미널 창에서 진행하는 것이 집중도에도 좋습니다.

Q: tmux-resurrect 없이 tmux 세션이 재부팅 후 사라지면 어떻게 하나요?

tmux 세션은 시스템 재부팅 시 기본적으로 사라집니다. 이를 방지하려면 tmux-resurrect(수동 저장/복구) 또는 tmux-continuum(자동 저장) 플러그인을 설치하면 됩니다. 두 플러그인 모두 TPM(tmux Plugin Manager)을 통해 쉽게 설치할 수 있습니다. AI 에이전트 환경처럼 복잡한 레이아웃을 반복적으로 구성한다면 이 플러그인들이 상당한 시간을 절약해 줍니다.


참고 자료