회사에서는 여러 프로젝트를 Claude Code로 작업합니다. 문제는 퇴근길 지하철이나 저녁 먹고 소파에 앉아 있을 때 꼭 아이디어가 떠오른다는 거예요. “아, 그 화면에 버튼 하나만 추가하면 되는데…” 싶은데, 정작 회사 Mac 앞에는 없죠.
Claude Code에는 Remote Control이라는 기능이 있어서, 내 컴퓨터에서 돌고 있는 Claude Code 세션을 폰의 Claude 앱이나 claude.ai/code에서 그대로 이어서 조작할 수 있습니다. 그런데 써보니 한 가지가 계속 걸렸습니다.
“이미 실행 중인 세션”만 이어갈 수 있다는 것.
회사에서 A 프로젝트 세션을 열어두고 나왔으면 A는 폰에서 계속할 수 있어요. 그런데 갑자기 B 프로젝트 아이디어가 떠오르면? B에서는 Claude Code가 안 떠 있으니 손쓸 방법이 없습니다. 그래서 만든 게 이번 글의 주인공, Remote Control 런처입니다.
Remote Control 간단 정리
먼저 기능 자체를 짧게 정리하면 이렇습니다.
- Claude Code는 내 컴퓨터에서 그대로 실행되고, 폰/웹은 그 세션을 들여다보고 조작하는 “창” 역할만 합니다. 그래서 로컬 파일, MCP 서버, 프로젝트 설정이 전부 그대로 쓰입니다.
- Pro / Max / Team / Enterprise 요금제에서 사용 가능 (API 키 방식은 안 됨)
- 시작 방법은 세 가지
claude remote-control: 서버 모드. 터미널에서 원격 접속을 기다리는 상태로 계속 떠 있음claude --remote-control "이름": 평소처럼 터미널에서 대화하면서 원격으로도 접속 가능- 이미 작업 중인 세션에서
/remote-control(또는/rc)
- 서버 모드에서는 스페이스바를 누르면 QR 코드가 떠서 폰으로 바로 붙을 수 있고, claude.ai/code 세션 목록에도 나타납니다.
제가 주목한 건 서버 모드입니다. 한 번 띄워두면 계속 대기하고, 하나의 프로세스에서 여러 세션을 동시에 받을 수 있거든요(기본 최대 32개).
주요 옵션도 몇 개 알아두면 좋습니다.
| 옵션 | 설명 |
|---|---|
--name "이름" | claude.ai/code 세션 목록에 보일 이름 |
--spawn same-dir | 기본값. 모든 세션이 같은 폴더를 공유 |
--spawn worktree | 세션마다 별도 git worktree 생성 (같은 파일 동시 수정 충돌 방지) |
--capacity N | 동시 세션 최대 개수 |
-c, --continue | 서버를 껐다 켠 뒤 이전 세션 이어가기 |
아이디어: “런처 세션”을 하나 상시로 띄워두자
제 회사 Mac의 프로젝트들은 전부 ~/Documents/work/git/ 아래에 모여 있습니다.
~/Documents/work/git/
├── project-a/
├── project-b/
├── some-admin-tool/
└── ...
그래서 이렇게 해봤습니다.
- 상위 폴더(
~/Documents/work/git/)에서 Remote Control 서버를 하나 상시로 띄워둔다. 이게 “런처”입니다. - 폰에서 이 런처 세션에 접속해서 “B 프로젝트용 Remote Control 띄워줘“라고 말한다.
- 런처 세션의 Claude가 하위 폴더를 뒤져서 해당 프로젝트를 찾고, 그 폴더에서
claude remote-control을 새로 실행한다. - 폰의 세션 목록에 B 프로젝트 세션이 새로 생기면, 거기로 들어가서 작업 시작!
핵심은 Claude Code가 Claude Code를 띄워준다는 겁니다. 별도의 서버 프로그램이나 앱을 만들 필요 없이, 이미 있는 Claude가 셸 명령을 실행할 수 있다는 점을 그대로 활용한 거죠.
좋았던 점: 프로젝트 이름을 정확히 몰라도 된다
폰으로 폴더 이름을 정확히 타이핑하는 건 은근 귀찮습니다. some-admin-tool인지 admin_tool인지 기억도 안 나고요.
런처가 Claude니까 그냥 “그 관리자 페이지 프로젝트”, “당구 쪽 플레이리스트 만드는 거” 정도로만 말해도 하위 폴더 목록을 보고 알아서 맞는 걸 찾아줍니다. 애매하면 후보를 보여주고 물어보고요. 이게 스크립트나 단축어로 만들었으면 절대 안 되는 부분이라, 개인적으로 가장 만족스러운 포인트입니다.
런처에게 시키는 일 (예시)
런처 세션에서 Claude가 실제로 하는 일은 대략 이런 흐름입니다.
# 1) 하위 프로젝트 찾기
ls ~/Documents/work/git/
# 2) 찾은 프로젝트 폴더에서, 런처와 별개로 백그라운드 실행
cd ~/Documents/work/git/project-b
nohup claude remote-control --name "project-b" > /tmp/rc-project-b.log 2>&1 &
몇 가지 신경 쓴 부분이 있습니다.
- 백그라운드로 띄우기: 런처 세션이 명령을 끝내고 나서도 새 서버가 계속 살아 있어야 하니까
nohup ... &(또는 tmux)로 분리해서 띄웁니다. --name으로 이름 붙이기: 이름을 안 주면호스트명-랜덤단어식으로 이름이 붙어서 폰에서 뭐가 뭔지 헷갈립니다. 프로젝트 이름을 그대로 쓰니 세션 목록에서 바로 보입니다.- 런처는 상위 폴더 전용: 런처 세션에서 직접 코드를 고치지 않고, “띄워주는 역할”만 하게 했습니다. 상위 폴더에서 작업하면 여러 프로젝트가 섞여서 오히려 복잡해지더라고요.
매번 설명하기 귀찮으면 상위 폴더에 CLAUDE.md를 하나 두고 “이 폴더는 런처다, 요청 받으면 하위 프로젝트를 찾아서 remote-control 서버를 백그라운드로 띄워라” 정도로 적어두면 편합니다.
실제로 쓰는 흐름
지금은 이렇게 쓰고 있습니다.
- 회사 Mac에서
~/Documents/work/git/런처 Remote Control을 켜둔 채 퇴근 - 저녁에 아이디어가 떠오르면 폰 Claude 앱 → 런처 세션 접속
- “플레이리스트 프로젝트 띄워줘”
- 잠시 후 세션 목록에 새 세션 등장 → 들어가서 바로 작업 지시
- 작업이 끝나면 다음 날 회사에서 결과 확인
예전에는 “내일 회사 가서 해야지” 하고 메모만 해두다가 잊어버리는 일이 많았는데, 이제는 떠오른 순간 바로 던져둘 수 있어서 좋습니다.
주의할 점
- Mac이 켜져 있어야 합니다. 결국 로컬에서 도는 프로세스라 컴퓨터가 꺼지거나
claude프로세스가 죽으면 세션도 오프라인이 됩니다. 잠자기 후 깨어나면 자동 재연결되긴 하지만, 잠자기 상태에서는 당연히 일을 못 하니 절전 설정을 조정하거나caffeinate를 같이 쓰는 걸 추천합니다. - 네트워크 문제가 오래 가면 서버 모드가 종료됩니다. 공식 문서 기준으로 서버 모드는 연결 거부(403)가 약 10분 넘게 이어지면 프로세스가 종료돼요. 회사 VPN 전환 같은 상황에서 런처가 꺼져 있을 수 있다는 건 염두에 두는 게 좋습니다.
- 같은 폴더에서 여러 세션 → 파일 충돌 가능. 한 프로젝트에서 여러 작업을 동시에 돌리고 싶으면
--spawn worktree옵션으로 세션마다 worktree를 나누는 게 안전합니다. - 권한 확인. 폰에서 들어오는 요청이 결국 회사 Mac에서 명령을 실행하는 구조라, 보안이 신경 쓰이면 claude.ai 설정의 Require trusted devices(신뢰할 수 있는 기기) 옵션을 켜두는 것도 방법입니다.
마무리
Remote Control 자체는 “하던 작업을 폰에서 이어하기”용 기능인데, 서버 모드를 런처처럼 쓰니까 “폰에서 새 작업을 시작하기“까지 가능해졌습니다. 따로 앱을 만들 필요도 없고, 무엇보다 프로젝트 이름을 대충 말해도 알아듣는다는 게 Claude를 런처로 쓰는 가장 큰 장점인 것 같습니다.
회사 컴퓨터에 여러 프로젝트를 두고 Claude Code를 쓰시는 분이라면 한 번 시도해 보세요. 설정이라고 할 것도 없이 상위 폴더에서 claude remote-control 한 줄이면 시작입니다.