Claude Code에 넓은 파일·셸 권한을 줄수록 메인 머신에서 실행하는 위험도 커진다. 여분의 Mac을 초기화하고 전용 로컬 계정으로 Claude Code를 돌리면, 컨테이너보다 넓은 macOS 앱 접근성을 유지하면서도 개인 데이터와 분리된 실행 환경을 만들 수 있다.
구성 의도
이 방식은 “안전한 샌드박스”라기보다 “잃을 것이 적은 별도 장비” 전략이다. Unity, Xcode, 브라우저, GUI 앱처럼 컨테이너에서 다루기 어려운 macOS 앱을 Claude가 직접 조작해야 할 때 유용하다.
핵심 원칙은 세 가지다.
- 메인 Mac이 아니라 초기화한 spare Mac을 target으로 쓴다.
- Apple ID와 개인 자료가 없는 새 로컬 계정을 만든다.
- source Mac에서 SSH로 접속하고, 필요하면 모바일 Claude 앱으로 대화한다.
기본 절차
- target Mac을 초기화하고 macOS를 업데이트한다.
- 새 로컬 계정을 만들고 관리자 권한을 부여한다.
- Remote Login을 켜 SSH 접속을 허용한다.
- source Mac에서 SSH key를 만들고 passwordless SSH를 설정한다.
- target에 Claude Code를 설치한다.
- GitHub CLI, Playwright MCP,
yt-dlp등 필요한 도구를 선택적으로 설치한다. - Claude와 GitHub 로그인을 target 계정 안에서 수행한다.
Claude Code 설치 예시는 다음과 같다.
ssh <user>@<target-host>.local 'curl -fsSL https://claude.ai/install.sh | bash -s -- stable'보안상 주의점
--dangerously-skip-permissions 같은 모드는 메인 머신에서 쓰지 않는 편이 낫다. 별도 Mac에서도 권한이 넓은 에이전트는 로컬 파일을 읽고, 네트워크 요청을 만들고, GUI를 조작할 수 있다. 그래서 target에는 비밀 키, 개인 계정, 브라우저 세션, 클라우드 동기화 폴더를 두지 않는 것이 전제다.
또한 passwordless sudo는 편하지만 위험하다. 필요한 자동화가 명확할 때만 제한적으로 쓰고, target 장비가 물리적으로 안전한 네트워크 안에 있는지 확인해야 한다.
언제 쓸 만한가
- 메인 개발 머신을 건드리지 않고 장시간 Claude Code 작업을 맡기고 싶을 때
- GUI 앱, 브라우저, Xcode, Unity 같은 macOS 앱 제어가 필요할 때
- 모바일에서 Claude 앱으로 원격 개발 에이전트에 지시하고 싶을 때
- 컨테이너보다 넓은 권한이 필요하지만 개인 데이터 노출은 피하고 싶을 때
관련 문서
- claude-code — Claude Code 개요
- claude-computer-use-tips-best-practices — Claude computer/browser use 안정화 팁
- agent-macos — macOS 기반 AI 에이전트 앱
- ai-agent-security-tips-docker-sandbox — Docker 기반 에이전트 격리 전략
참고 자료
- How to set up your spare Mac for Claude Code to fully control — ykdojo GitHub Pages (2026-07-20 확인)