휴대폰에서 Claude Code 권한 요청을 승인하는 방법
Claude Code의 권한 프롬프트를 휴대폰에서 처리해 세션을 계속 진행시키는 방법. 터미널을 지키고 있을 필요도, 세션이 멈춘 채로 둘 필요도 없습니다.
- CLI
- 0.2.17
- 프리뷰 ref
- a2c45c8
Claude Code를 본격적으로 쓰다 보면 같은 문제에 자주 부딪힙니다.
세션은 잘 돌아갑니다… 권한 프롬프트를 만나기 전까지는요.
노트북 앞이라면 2초면 결정할 일입니다. 휴대폰만 있다면 결과가 둘로 갈립니다.
- 자리를 비운 사이 세션이 끝나 있거나,
- 세션이 그냥… 막힌 채로 멈춰 있거나.
이 워크플로는 휴대폰을 터미널로 만들지 않고 Claude 권한 프롬프트를 휴대폰에서 처리합니다.
요약
- 모바일 승인에서 무엇을 원하는지 정합니다.
- 안전 우선: 맥락은 여전히 확인하되, 노트북 앞에 있을 필요는 없음
- 속도 우선: 프롬프트를 줄임 (위험은 커짐)
- Happier를 사용한다면 설정하고(또는 Direct sessions로 연결하고), 휴대폰에서 세션을 엽니다.
- 권한은 무리 없는 모드로 둡니다 (대부분의 작업에는 보통 Default 또는 Safe YOLO).
- 세션이 권한을 요청하면 맥락을 보고 허용 / 거부합니다 ("다시 묻지 않기" 같은 선택지는 제공될 때, 정말 그럴 생각일 때만 사용합니다).
- Plan에서 막혀 있다면 Exit Plan Mode를 일반 권한 프롬프트가 아니라 사용자 작업 요청으로 다룹니다.
문제
Claude는 실제로 영향을 주는 도구(파일 편집, 명령 실행, 의존성 설치 등)를 실행하려 할 때 권한을 요청할 수 있습니다.
이건 좋은 일입니다. 안전 경계니까요.
하지만 이런 뜻이기도 합니다.
- 세션을 시작하고 자리를 비우면,
- 승인 하나 때문에 전체 실행이 멈출 수 있습니다.
흔한 방법과 트레이드오프
먼저 떠오르는 방법들:
- 그냥 노트북 앞에 있기: 괜찮지만, 세션이 15~60분 걸리고 그동안 움직여야 한다면 현실적이지 않습니다.
- 휴대폰에서 SSH: 되긴 하지만, 모바일에서는 맥락을 확인하기 불편해서 결정을 서두르게 됩니다.
- YOLO를 켜고 프롬프트를 안 보기: 빠르지만, 허용할 생각이 없던 영향이 생기기 쉬운 방법이기도 합니다.
도움이 되는 것은 휴대폰에서 승인을 맥락과 함께 검토할 수 있는 방법입니다.
- Happier: Claude Code, Codex 등 여러 에이전트를 크로스 디바이스로 실행하고 오케스트레이션할 수 있는 오픈 소스 앱입니다. 세션이 내 머신에서 계속 실행되는 동안, 휴대폰에서 Claude 권한 프롬프트를 맥락과 함께 승인할 수 있습니다. 트레이드오프: 천천히 요청을 읽지 않으면 모바일에서는 여전히 결정을 서두르기 쉽습니다.
이 가이드는 그 워크플로에 집중합니다 (다만 충돌, 망가진 환경, 이상한 예외 상황처럼 "진짜 터미널이 필요한 순간"이 여전히 있다는 점은 솔직히 말씀드립니다).
Happier에서 권한이 동작하는 방식 (멘탈 모델)
Happier는 "권한"을 세션의 핵심 설정으로 다룹니다.
- 권한은 도구성 작업에 대해 얼마나 자주 승인을 요청받는지를 결정합니다.
- 선택은 세션에 저장되므로 기기를 바꿔도 일관됩니다.
그래서 휴대폰 승인도 무리 없이 할 수 있습니다. 세션이 무엇을 할지 추측하는 게 아니라, 세션의 현재 정책을 보고 판단하니까요.
권한 요청 vs 승인 요청 vs 사용자 작업 요청
이 세 가지는 헷갈리기 쉽습니다.
- 권한 요청: "이 도구 / 작업을 허용할까?"
- 승인 요청: "이 상위 수준 작업을 실행할까?" (Happier의 액션 시스템을 통해)
- 사용자 작업 요청: "에이전트가 계속하려면 사람의 구조화된 결정이 필요함" (예: AskUserQuestion, Exit Plan Mode)
실제로 주로 다루게 되는 것은:
- 권한 프롬프트 (허용 / 거부)
- Exit Plan Mode 프롬프트 (플랜 승인 / 변경 요청 / 변형)
작업 방식에 맞는 권한 모드 고르기
Happier는 몇 가지 권한 모드를 제공합니다. 이름은 일부러 직설적입니다.
- Default: 프로바이더나 런타임이 요청할 때 묻습니다.
- Read-only: 쓰기성 작업을 거부합니다.
- Safe YOLO: 읽기성 작업은 자동 허용하고, 쓰기성 작업 전에는 묻습니다.
- YOLO: 프로바이더가 허용하는 한 승인을 건너뜁니다.
무리 없는 기본 설정 (대부분에게 권장)
- Default로 시작합니다.
- 위험이 낮은 프롬프트로 너무 자주 끊긴다면 Safe YOLO로 옮깁니다.
- YOLO는 "빠르게 진행하고 diff는 나중에 검토하겠다"는 의도적인 모드로 다룹니다.
후회를 줄이는 패턴:
- 평소에는 Default 또는 Safe YOLO를 사용합니다.
- 디버깅 중 실수로 쓰는 것을 막고 싶을 때는 잠시 Read-only로 바꿉니다.
- YOLO는 안전 대신 속도를 의도적으로 택할 때만 사용합니다 (그리고 나중에 diff를 확인할 준비가 되어 있을 때).
Happier를 처음 사용한다면 (무엇이고 어디서 받는지)
Happier는 Claude Code, Codex, OpenCode 같은 AI 코딩 에이전트를 위한 오픈 소스 컴패니언 앱(모바일 / 웹 / 데스크톱)입니다.
여기서의 워크플로는, Claude Code는 작업 공간이 있는 머신에서 계속 실행되고, Happier로 휴대폰에서 맥락과 함께 프롬프트를 승인하는 것입니다.
이 가이드 기준으로는, 휴대폰을 터미널로 만들지 않고도 Claude 권한 프롬프트를 맥락과 함께 처리하고 세션을 계속 진행시킬 수 있다는 뜻입니다.
시작하기:
- 휴대폰에서 Happier 사용하는 방법
- GitHub: https://github.com/happier-dev/happier
- 설치 / 다운로드: https://github.com/happier-dev/happier#how-it-works
- Discord (커뮤니티 + 지원): https://discord.gg/W6Pb8KuHfg
단계별: 휴대폰에서 Claude 권한 프롬프트 승인하기
1) 막혀 있는 세션 열기
휴대폰(앱 또는 모바일 웹 UI)에서:
- Claude를 실행 중인 세션을 엽니다
- 프롬프트나 요청이 표시된 곳까지 스크롤합니다
설정에 따라 권한 요청은 다음 중 한 곳에 표시됩니다.
- 트랜스크립트 안, 또는
- 입력창 영역 (요청 UI 형태로)
2) 무엇을 요청하는지 읽기 (바로 Allow를 누르지 마세요)
승인하기 전에 요청에 포함된 구체적인 정보를 확인합니다.
- 명령 이름
- 대상 파일 경로
- 변경 내용 요약 (있는 경우)
휴대폰에서 핵심은 맥락과 함께 결정할 수 있다는 점입니다.
3) Allow / Deny 선택하기 (필요하면 범위 지정)
프로바이더가 범위가 지정된 선택지("이 도구는 다시 묻지 않기", "이 명령은 다시 묻지 않기" 등)를 제공한다면, 정말 그럴 생각일 때만 사용하세요.
이런 "기억하기" 선택은 보통 전역 영구 정책이 아니라 세션 범위입니다.
4) Plan 중이라면 "Exit Plan Mode"를 사용자 작업 요청으로 처리하기
이 부분에서 많이들 헷갈립니다.
Plan 모드는 Claude의 동작 방식을 바꾸지만, 권한을 우회하지는 않습니다.
Claude가 Plan 모드를 끝낼 준비가 되면, Happier는 Exit Plan Mode를 다음과 같은 선택지가 있는 사용자 작업 요청으로 표시할 수 있습니다.
- Approve Plan
- Request changes
- (변형) Approve Plan (Accept Edits)
- (변형) Approve Plan (Bypass All Permissions)
이것은 별도의 명시적인 결정으로 다루세요. 도구 권한 프롬프트와는 다릅니다.
권한 요청을 휴대폰으로 받기 (알림)
푸시 알림을 켜면, 세션이 다음 이유로 막혔을 때 Happier가 알려줄 수 있습니다.
- 권한 요청, 또는
- 사용자 작업 요청 (AskUserQuestion이나 Exit Plan Mode 등)
현재 모바일에서는:
- 권한 알림에서 Allow / Deny를 제공할 수 있습니다
- 사용자 작업 알림에서 Answer를 제공할 수 있습니다
중요한 안전 동작: 알림이 해당 기기에서 신뢰되지 않았거나 알려지지 않은 서버를 가리키면, Happier는 알 수 없는 서버에서 조용히 승인하는 대신 더 안전한 추가 / 전환 흐름으로 안내합니다.
Happier를 켜 둔 채 컴퓨터 앞에 있다면, 0.2.16의 알림 설정을 켜서 Happier가 컴퓨터에서 포커스된 동안 휴대폰 푸시를 끌 수 있습니다. 컴퓨터 포커스를 확인할 수 없으면 휴대폰 알림은 계속 전달됩니다.
흔한 실수
- YOLO를 계속 켜 두기: 프롬프트가 안 보이게 되지만, 신경 쓰던 경계를 넘었을 때도 알아차리지 못하게 됩니다.
- 읽지 않고 승인하기: 빨리 막힘을 풀고 싶어지는 모바일에서는 특히 위험합니다.
- Exit Plan Mode를 도구 권한과 혼동하기: 결과가 다른 별개의 요청입니다.
문제 해결
증상: 세션은 막혀 있는데 트랜스크립트에 프롬프트가 보이지 않음
가능한 원인:
- 올바른 세션을 열지 않음 (여러 서버 / 여러 세션)
- 프롬프트 표시 위치 설정 때문에 요청이 트랜스크립트가 아닌 입력창 영역에 표시됨
- 오래된 메시지를 보고 있고, 요청은 더 아래에 있음 (모바일에서 놓치기 쉬움)
해결:
- 세션을 열고 가장 최근 메시지까지 스크롤합니다.
- 입력창 근처에 요청 UI가 있는지 확인합니다.
- Settings → Session → Permissions의 프롬프트 표시 위치 옵션을 확인합니다.
증상: 알림에서 Allow/Deny를 눌렀는데 아무 일도 일어나지 않음
가능한 원인:
- 알림이 이 휴대폰에서 아직 신뢰되지 않았거나 활성화되지 않은 서버 / 프로필을 대상으로 함
- 지금 머신(데몬)에 연결할 수 없음
- 누른 시점에 요청 상태가 이미 바뀜 (이미 처리됨)
해결:
- 알림이 아니라 앱을 직접 엽니다.
- 올바른 서버 / 프로필에 연결되어 있는지 확인합니다.
- 세션을 열고 Inbox나 트랜스크립트에서 요청의 현재 상태를 확인합니다.
증상: 같은 도구 / 명령에 대해 권한 프롬프트가 계속 나옴
가능한 원인:
- 프로바이더나 런타임이 해당 요청에 대한 허용 목록 업데이트를 안정적으로 지원하지 않음
- 권한 모드를 왔다 갔다 바꾸고 있어서 실제 정책이 계속 바뀜
해결:
- 가능하다면 해당 도구 / 명령에 범위가 지정된 "다시 묻지 않기" 옵션을 사용합니다.
- 아니라면 그 작업 동안 Safe YOLO로 바꾸는 것을 고려합니다.
증상: "Exit Plan Mode" 요청이 왔는데 무엇을 골라야 할지 모르겠음
가능한 원인:
- 이것은 일반 권한 프롬프트가 아니라 사용자 작업 요청(플랜 검토)입니다.
해결:
- 실행을 시작하려면 Approve Plan을 고릅니다.
- Claude가 플랜을 수정하게 하려면 Request changes를 고릅니다.
- "권한 우회" 계열의 변형은 플랜이 끝난 뒤 그 동작을 명시적으로 원할 때만 사용합니다.
자주 묻는 질문
YOLO를 켜는 것과 같은가요?
아닙니다.
핵심은 프롬프트를 의미 있고 검토 가능한 상태로 유지하고, 모바일에서도 맥락과 함께 결정할 수 있게 하는 것입니다.
Plan 모드는 권한을 우회하나요?
아닙니다. Plan 모드와 권한은 별개입니다.
Plan 모드에서도 권한 프롬프트가 나올 수 있습니다.
안전한가요?
설정한 기기와 서버 간 신뢰 수준만큼 안전합니다.
중요한 점은 Happier가 알 수 없는 서버에서 조용히 승인하지 않고, 권한이 항상 명시적으로 유지된다는 것입니다.