// blog post
VibeShell + tmux: 끊김 없는 모바일 개발의 비밀
연결이 끊기면 작업이 날아갑니다
VibeShell을 처음 만들고 테스트하던 때 이야기입니다. 스마트폰에서 Claude Code로 코드를 생성하고 있었는데, 카톡 알림이 와서 잠깐 앱을 전환했거든요. 돌아와보니 SSH 연결이 끊겨있고, AI가 생성하던 코드가 어디까지 진행됐는지 알 수가 없었습니다.
이게 모바일 SSH의 가장 큰 문제입니다. 화면을 잠그거나 다른 앱으로 전환하면 백그라운드 연결이 끊기기 쉽거든요.
해결책은 tmux였습니다.
tmux가 뭔가요
tmux는 터미널 멀티플렉서입니다. SSH 연결과 독립적으로 서버에서 세션을 유지해주는 도구예요. 연결이 끊겨도 세션은 서버에서 계속 살아있고, 다시 접속하면 끊기기 전 상태 그대로 이어서 작업할 수 있습니다.
금융IT에서 운영 서버 작업할 때도 tmux는 필수였는데, 모바일 개발에서도 이렇게 유용할 줄은 몰랐습니다.
설치
대부분의 서버에 이미 설치되어 있습니다. 없다면:
# Ubuntu/Debian
sudo apt install tmux
# macOS
brew install tmux
# CentOS/RHEL
sudo yum install tmux
VibeShell에서 tmux 활용하기
접속하자마자 세션에 연결하기
서버에 접속하면 바로 tmux 세션에 붙는 게 좋습니다. 아래 명령어를 스니펫으로 등록해두면 한 번의 탭으로 실행할 수 있어요.
tmux attach -t dev || tmux new -s dev
기존 세션이 있으면 붙고, 없으면 새로 만들어줍니다.
AI 도구를 tmux 안에서 실행하기
# tmux 세션 안에서 Claude Code 실행
claude
이렇게 하면 AI가 코드를 생성하는 동안 폰을 잠가도 괜찮습니다. 나중에 다시 tmux attach -t dev로 돌아오면 결과를 확인할 수 있어요. 저는 엘스 산책 다녀와서 확인하는 게 일상이 됐습니다 🐕
화면 분할 활용
tmux 안에서 화면을 분할하면 작업 공간을 넓게 쓸 수 있습니다. 자세한 tmux 단축키와 활용법은 tmux 완벽 가이드를 참고해보세요.
정리
tmux + VibeShell 조합의 핵심은 단순합니다. tmux가 세션을 서버에 유지하고, VibeShell은 그 세션에 접속하는 창구 역할을 합니다. 연결이 끊겨도 작업은 계속되고, 다시 접속하면 그대로입니다.
처음에 SSH 연결 끊김 때문에 답답했던 경험이, 결국 VibeShell에 tmux 연동을 강화하는 계기가 됐습니다. 직접 불편을 겪어봐야 좋은 기능이 나오는 것 같아요.