본문 바로가기
IT

클로드 코드를 IDE 없이 쓰는 법: SSH + tmux로 어디서든 이어서 작업하기

by 안드뽀개기 2026. 5. 7.
반응형

 

노트북을 꺼도 작업이 사라지던 시절

클로드 코드를 처음 쓸 때 가장 불편했던 건 "끊김"이었다.

카페에서 노트북으로 작업하다가 이동 중에 폰으로 이어서 보고 싶어도, 다시 환경을 세팅하고 컨텍스트를 복원하는 데 시간을 낭비했다. VS Code나 커서(Cursor) 같은 IDE 기반 플러그인은 클라이언트 앱이 살아 있어야 세션이 유지된다. 노트북 뚜껑을 닫으면 그걸로 끝이다.

그런데 클로드 코드는 CLI 도구다. 터미널에서 돌아간다. 이 사실을 제대로 활용하면, 기기가 바뀌어도 작업 흐름이 끊기지 않는다.


핵심 구조: 라즈베리파이 + tmux + SSH

내 셋업은 간단하다. 항상 켜져 있는 머신 하나에 클로드 코드를 올려두고, SSH로 붙었다 떼었다 한다.

집에 있는 라즈베리파이 5(Debian 기준)에 tmux를 설치하고, 클로드 코드를 그 안에서 실행한다. 어떤 기기에서든 아래 두 줄이면 직전 상태로 돌아온다.

ssh nowhere
tmux -u at

-u는 유니코드 지원 플래그고, atattach -t 0의 단축형이다. 네트워크가 끊겨도, 클라이언트가 꺼져도 세션은 서버 쪽에 그대로 살아 있다.

tmux 세션 안에 프로젝트별 윈도우를 만들어두면 실질적인 멀티 프로젝트 관리가 된다. Ctrl-F 1, Ctrl-F 2 식으로 전환하면 각 윈도우마다 클로드 코드가 독립적으로 돌아간다. IDE 없이, 탭 없이, Electron 없이.


SSH 에이전트를 systemd로 관리하는 이유

클로드 코드가 서버에서 돌아가면 한 가지 문제가 생긴다. git push나 원격 서버 배포 시 SSH 키를 어디서 가져오느냐는 것이다.

해결책은 systemd 유저 유닛으로 ssh-agent를 항상 띄워두는 것이다. .bashrc에 소켓 경로를 고정해두면 어떤 셸이든(클로드 코드의 서브셸 포함) 자동으로 에이전트를 인식한다.

export SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}/openssh_agent"

클로드 코드가 git push나 배포 스크립트를 실행할 때 별도 설정 없이 키를 쓸 수 있다. 클라이언트에서 -A 플래그로 에이전트 포워딩을 해줄 필요가 없다. 에이전트가 이미 서버에 있으니까.


tmux 스크롤백이 실제로 유용한 이유

IDE에는 터미널 창이 있지만, 클로드 코드가 긴 빌드 로그나 수천 줄짜리 분석 결과를 출력할 때 스크롤이 잘 안 되거나 잘려서 보이는 경우가 많다.

tmux의 history-limit을 10,000줄로 설정해두면 Shift-PageUp으로 수천 줄 위를 자유롭게 오갈 수 있다. 클로드가 뭔가 잘못 처리했을 때 출력 로그를 다시 보고 싶을 때 특히 유용하다.

# ~/.tmux.conf
set -g history-limit 10000

복사도 vi 키바인딩 모드로 처리하면 마우스 없이 원하는 텍스트 블록을 뽑아서 다른 창에 붙여넣기가 된다. 이 조합이 IDE의 검색·복사 기능을 상당 부분 대체한다.


이 방법이 안 맞는 경우

솔직히 말하면, 이 셋업이 모든 사람에게 맞는 건 아니다.

GUI 프리뷰가 필요한 프론트엔드 작업, 실시간 브라우저 확인이 잦은 디자인 작업, 또는 주니어 개발자처럼 IDE의 코드 탐색 기능에 의존하는 경우라면 이 방법은 불편하다. 터미널에 어느 정도 익숙해야 한다는 전제도 있다.

보안 면에서도 주의가 필요하다. SSH 키를 항상 켜진 서버에 올려두는 방식은 그 서버가 뚫리면 키가 노출된다. 서버가 인터넷에 직접 노출되어 있다면 이 방식보다 에이전트 포워딩(ssh -A)을 쓰는 게 낫다. 집 네트워크 안에서만 쓰는 기기라면 수용 가능한 트레이드오프다.

WireGuard 같은 VPN을 붙이면 외부에서 접속할 때 보안이 한 단계 높아진다. 집 와이파이에서는 LAN 직통, 외부에서는 VPN 경유로 자동 전환되게 설정하면 이동 중에도 같은 명령어로 붙을 수 있다.


오늘 바로 해볼 것

지금 당장 클로드 코드를 tmux 안에서 실행해봐라.

tmux new -s claude-work
# tmux 세션 안에서
claude

새 작업을 시작하고, 중간에 Ctrl-B D로 세션을 분리한 다음, 다시 tmux attach -t claude-work로 붙어봐라. 세션이 그대로 살아 있다는 걸 확인하는 것만으로도 워크플로우에 대한 시각이 달라진다.


※ 본 글은 정보 제공 목적이며 특정 제품·서비스의 추천이 아닙니다.


poster.py에 넣어드릴까요? 파일 구조를 먼저 확인하겠습니다.

반응형