< CMD_RETURN// SYSTEM.BACK()
DOC_ID: CLAUDE-C:

claude-code-cli-vs-desktop

[개발]claude-codecliworkflow

Claude Code를 터미널 CLI와 Desktop 앱으로 나눠 쓸 수 있다는 걸 알고 나서 비교해봤다.

기본 전제: 토큰·성능은 동일하다

두 인터페이스는 동일한 Claude Code 엔진과 Anthropic API를 사용한다. Desktop의 시각적 UI는 클라이언트 측에서 렌더링되므로 API 호출이나 토큰 소모량에 영향을 주지 않는다. Prompt caching, auto-compaction도 동일하게 적용된다. 설정 파일(~/.claude.json, CLAUDE.md, MCP 서버)도 공유된다.

CLI에서만 되는 것

  • 비인터랙티브 모드 (-p): CI/CD 파이프라인, 스크립팅에 필수
  • Unix 파이프라인: git diff | claude -p "review" 같은 조합
  • 구조화 출력: --output-format json/stream-json
  • 예산·턴 제한: --max-budget-usd, --max-turns
  • dontAsk 권한 모드: Desktop은 4가지 모드만, CLI는 하나 더
  • 제3자 클라우드: AWS Bedrock, Google Vertex, Azure Foundry
  • 고급 권한 제어: --allowedTools, --disallowedTools
  • Agent Teams: 다중 에이전트 병렬 조율
  • Linux 지원: Desktop은 macOS/Windows만

Desktop에서만 되는 것

  • 시각적 Diff + 인라인 댓글: 변경된 줄에 댓글 → Claude가 읽고 수정
  • 앱 미리보기: localhost 임베딩 브라우저로 실시간 확인
  • 자동 검증: 스크린샷 캡처 → 검증 → 수정 자동 반복
  • 병렬 세션 탭: 사이드바에서 여러 작업 동시 관리 (자동 Git Worktree 격리)
  • PR 자동화 UI: Auto-fix, Auto-merge, CI 상태 실시간 표시
  • 파일·이미지 첨부: 드래그 앤 드롭으로 목업이나 에러 화면 첨부

세션은 공유되지 않는다

두 인터페이스는 세션 저장소가 완전히 분리되어 있다. --continue로 이전 세션을 불러올 때 CLI는 CLI 세션만, Desktop은 Desktop 세션만 본다.

전환은 일방향이다:

  • CLI → Desktop 가능: 세션 중 /desktop 입력 → 대화 기록 유지한 채 Desktop으로 이동, CLI 종료
  • Desktop → CLI 불가: 역방향 전환 방법이 없다

예외적으로 웹(Remote) 세션은 양방향이다. Desktop에서 "Continue in → Claude Code on the Web"으로 보낸 세션을 CLI에서 claude --teleport로 받아올 수 있다.

도구 선택 기준

"CLI 우선으로 하다가 필요할 때 /desktop"이라는 전략은 직관적으로 보이지만, /desktop이 일방향이기 때문에 스위칭 이후 CLI로 돌아갈 수 없다는 게 함정이다. 작업을 시작하기 전에 성격을 먼저 파악하는 게 낫다.

작업선택
UI 확인이 필요한 프론트엔드 작업Desktop
PR 리뷰, 시각적 코드 검토Desktop
여러 버그 병렬 수정Desktop
자동화, 스크립팅, CI/CDCLI
백엔드 로직, 리팩토링CLI
계획 수립 후 실행CLI로 계획 → Desktop으로 실행
★ END OF TRANSMISSION
[CLAUDE-CODE][CLI][WORKFLOW]