왜 데스크탑 앱이 아니라 터미널인가
데스크탑 앱 = 전화로 요리법을 물어보는 것 — 알려는 주지만 내 주방엔 못 들어옴
터미널 Claude Code = 셰프가 직접 내 주방에 와서 요리하는 것 — 재료를 만지고 불을 켬
데스크탑 앱(Claude·ChatGPT)의 다섯 가지 한계:
- 내 파일·폴더에 직접 손을 못 댄다. 코드를 받으려면 복사 → 붙여넣기 → 저장을 내가 반복해야 합니다.
- 명령을 실행할 수 없다.
npm install, 서버 켜기, git push, 배포를 대신 실행해주지 못합니다.
- 에이전트 루프가 없다. 한 번 답하고 끝. CLI는 "읽기 → 수정 → 실행 → 에러 확인 → 재수정"을 스스로 반복합니다.
- Harness(확장 도구)가 안 붙는다. MCP·Subagents·Hooks·슬래시 명령이 거의 안 돌아갑니다.
- 컨텍스트 관리가 어렵다.
/compact나 프로젝트 규칙 파일 같은 정교한 관리가 안 됩니다.
| 기능 | 데스크탑 앱 | 터미널 Claude Code |
| 내 파일 직접 수정 | ✕ (복붙 필요) | ○ |
| 명령어 실행 (설치·배포) | ✕ | ○ |
| Git · 서버 조작 | ✕ | ○ |
| 에이전트 루프 | ✕ | ○ |
| MCP · Hooks · Subagents | △ 제한적 | ○ |
| HUD 계기판 | ✕ | ○ |
그럼 앱은 언제? 질문·브레인스토밍, 글쓰기·요약, 이미지 보고 물어보기. 즉 생각과 대화는 앱, 실제로 컴퓨터에서 일 시키기는 터미널입니다.
VSCode 플러그인을 쓰지 않는 이유
플러그인은 에디터 안에 갇힌 조수, 터미널 Claude Code는 컴퓨터 전체를 쓸 수 있는 AI 엔지니어입니다.
| 기능 | VSCode 플러그인 | 터미널 Claude Code |
| MCP 연결 | △ 제한적 | ○ 완전 지원 |
| Subagents · Hooks | ✕ | ○ |
| 슬래시 명령 | ✕ | ○ |
| 프로젝트 메모 파일 | △ 부분 | ○ 완전 |
| HUD 계기판 | ✕ | ○ |
다만 코드 한 블록만 고칠 때나 자동완성 용도로는 플러그인도 괜찮습니다. "프로젝트 전체를 AI에게 맡기고 싶다"면 터미널입니다.
/model — 어떤 두뇌를 쓸지 고르기
한줄 정의
작업에 사용할 AI 모델(두뇌)을 바꾸는 명령어. 같은 운전자에게 다른 엔진을 끼워주는 것과 같습니다.
| 모델 | 언제 쓰나 | 특징 |
| Sonnet | 일상 코딩, 빠른 수정·질문 | 빠르고 저렴, 충분히 똑똑 — 기본 추천 |
| Opus | 복잡한 문제, 큰 설계, 어려운 디버깅 | 가장 강력 · 긴 맥락 · 상대적으로 느리고 비쌈 |
| Haiku | 직접 고를 일은 거의 없음 | 가볍고 빠름. 주로 서브에이전트용으로 자동 호출 |
바꾸는 법: /model 입력 → Enter → 화살표(↑↓)로 선택 → Enter. 이후 대화부터 적용됩니다.
모델 옆에는 추론 강도(effort) 설정도 있습니다. 깊게 생각할수록 시간과 토큰을 더 씁니다. 하루 종일 쓰는 학습·실습에는 medium 정도가 균형이 좋습니다.
한 방 정리
기본은 Sonnet. "이건 좀 어려운데?" 싶을 때만 Opus로 올리세요. 모델은 엔진, 모드는 운전 방식, 컨텍스트는 책상 크기 — 이 셋을 구분하면 됩니다.
권한 모드 — 얼마나 물어보게 할지
한줄 정의
같은 모델이라도 어디까지 물어보고 어디까지 알아서 하게 할지를 정하는 설정입니다. 자동차로 치면 엔진(모델)이 아니라 운전 방식입니다.
Shift + Tab 을 누를 때마다 다음 순서로 돌아갑니다.
| 모드 | 안 물어보고 하는 것 | 화면 아래 표시 |
| Manual (기본) | 읽기만. 파일 수정·명령 실행은 매번 확인 | ⏸ manual mode on |
| acceptEdits | 작업 폴더 안 파일 수정과 mkdir·mv 같은 정리 명령 | ⏵⏵ accept edits on |
| plan | 읽고 계획만 세움. 소스는 안 건드림 | ⏸ plan mode on |
계정 조건이 맞으면 auto 가 plan 뒤에 하나 더 붙습니다. 안전하다고 판단한 작업은 묻지 않고 진행하는 모드입니다. 화면에 안 보인다면 그 계정에서는 아직 안 열린 것이니 신경 쓰지 않아도 됩니다.
설정값 이름은 default 이고 화면에는 Manual 로 표시됩니다. 같은 것입니다.
plan 으로 시작해서 auto 로 넘기기
이게 실전에서 가장 많이 쓰는 흐름입니다. 계획을 먼저 보고, 납득한 다음에 자동으로 돌립니다.
Shift + Tab 으로 plan 진입 → 시킬 일을 말합니다.
- Claude가 계획을 써서 보여주고 승인을 묻습니다.
- 선택지가 세 개 뜹니다.
승인 화면
Claude has written up a plan and is ready to execute. Would you like to proceed?
❯ 1. Yes, and use auto mode
2. Yes, manually approve edits
3. Tell Claude what to change
shift+tab to approve with this feedback
- 1번을 권합니다. 계획을 이미 읽었으니 단계마다 다시 물어볼 이유가 없습니다.
- 2번은 하나하나 확인하고 싶을 때. 느리지만 가장 안전합니다.
- 3번은 계획이 마음에 안 들 때. 고칠 점을 말하면 계획을 다시 씁니다.
auto 로 넘기기가 꺼려진다면
그건 모드가 위험해서가 아니라 계획이 아직 못 미더워서입니다. 3번을 고르고 이렇게 물어보세요 — “이 계획이 실패할 수 있는 이유를 확률 순으로 나열해줘.” “내가 놓친 전제가 뭐야?” “제일 위험한 단계 하나만 더 쪼개줘.” 계획이 단단해지면 auto 가 무섭지 않습니다.
그래도 지켜야 할 것
맡기기 전에 Git으로 한 번 저장해두세요(07장). 되돌릴 지점이 있으면 대부분의 사고는 사고가 아니게 됩니다.
더 깊게 생각시키기 — think
이건 모드가 아니라 프롬프트에 넣는 말입니다. 답을 내기 전에 더 오래 따져보게 만듭니다.
think → think hard → think harder → ultrathink 순으로 깊어집니다.
- 예: “
ultrathink 해서 왜 이 에러가 나는지 분석해줘.”
- 생각도 출력 토큰을 씁니다. 어려운 문제에만 쓰세요.
되돌리기 — /rewind
왜 이걸 먼저 알아야 하나
“잘못되면 어쩌지”가 비개발자를 가장 많이 멈춰 세웁니다. 되돌릴 수 있다는 걸 알면 과감해집니다.
/rewind 는 대화와 파일 변경을 이전 지점으로 되돌립니다. 입력창이 비어 있을 때 Esc 를 두 번 눌러도 같은 메뉴가 열립니다.
고를 때 확인할 것
메뉴에서 어디까지 되돌릴지를 고르게 됩니다 — 대화만 되돌릴지, 파일 변경까지 되돌릴지. 파일까지 되돌리면 그 뒤에 손으로 고친 것도 같이 사라집니다. 한 번 읽고 고르세요.
자주 쓰는 슬래시 명령
| 명령 | 하는 일 |
/status | 현재 모드, 진행 중인 작업, 컨텍스트 사용량, 로그인 방식을 한 번에 보여줌 |
/model | 모델 · 추론 강도 변경 |
/compact | 길어진 대화를 요약해 공간 확보 |
/clear | 대화를 완전히 비우고 새로 시작 |
/rewind | 대화·파일 변경을 이전 지점으로 되돌리기 |
/resume | 이전 세션을 불러와 이어서 작업 |
/rename | 세션 이름 바꾸기 |
/btw | 본 작업을 흐트러뜨리지 않고 곁가지 질문하기 |
/login | 계정 연결 상태 확인 · 다시 로그인 |
/skills | 지금 쓸 수 있는 Skill 목록 |
/config | 테마 · 기본 권한 모드 같은 환경 설정 |
/exit | Claude Code 종료 (또는 Ctrl + C 두 번) |
/usage | 토큰·비용 상세 분해 보기 |
/status에서 반드시 확인할 것
로그인 방식이 API 과금으로 잡혀 있으면 즉시 /exit 후 다시 로그인하세요. 구독 요금제와 API 요금제는 비용 차이가 큽니다(04장 참고).
그리고 지금 어느 폴더에 들어와 있는지도 여기서 확인됩니다. Claude는 그 폴더의 파일을 생성·읽기·수정·삭제할 수 있습니다.
대화를 정리하는 두 가지 — /clear 와 /compact
비슷해 보이지만 판단 기준이 다릅니다.
| 명령 | 언제 | 무슨 일이 일어나나 |
/clear | 새 작업을 시작할 때 | 앞 대화를 끊습니다. 이전 맥락이 오히려 방해될 때 |
/compact | 같은 작업인데 대화만 길어졌을 때 | 요약해서 책상 위 자리를 만듭니다 |
한 줄로: 새 기능을 시작하면 /clear, 같은 버그를 계속 쫓는 중이면 /compact.
입력창 기본기
이걸 모르면 긴 지시를 쓰다가 엔터를 눌러 중간에 날아갑니다.
| 하고 싶은 것 | Windows | macOS |
| 줄바꿈 (전송 말고) | Ctrl + Enter | Option + Enter |
| 스크린샷 붙여넣기 | Alt + V | Cmd + V |
| 답변 중단 | Esc | Esc |
| 입력창 비우기 | Esc 두 번 | Esc 두 번 |
| 단어 단위 커서 이동 | Alt + ←→ | Option + ←→ |
| 세션 종료 | Ctrl + C 두 번 | Ctrl + C 두 번 |
볼 대상을 좁혀주기 — @ 멘션
“알아서 찾아봐”보다 어디를 보라고 짚어주는 쪽이 훨씬 정확하고 훨씬 쌉니다.
@파일이름 또는 @폴더이름 — 그것만 보게 합니다.
- 파일을 터미널 창으로 끌어다 놓아도 같은 효과입니다.
- 화면이 이상할 때는 스크린샷을 붙여넣으세요. 말로 열 줄 설명하는 것보다 빠릅니다.
예시
@견적서 폴더에 있는 PDF 세 개만 비교해줘.
항목별 단가가 어떻게 다른지 표로 만들고,
가장 싼 곳과 가장 비싼 곳의 차이가 어디서 나는지
한 문단으로 설명해줘.
딴 얘기 하고 돌아오기 — /btw
작업 도중에 “근데 이건 뭐야?”가 떠오릅니다. 그냥 물어보면 본 대화가 옆길로 샙니다.
/btw 뒤에 물어보면 곁가지 대화로 처리되고 본 작업 맥락은 그대로 남습니다.
- 다 물어봤으면
Esc 를 눌러 원래 세션으로 돌아오세요. 이걸 안 하면 계속 곁가지에 머무릅니다.
/resume — 하던 작업 이어서 하기
이전에 나눴던 대화를 그대로 불러와 끊긴 지점부터 이어갑니다. 어제 멈춘 프로젝트를 오늘 다시 열 때, 실수로 터미널을 껐을 때 씁니다.
- 작업하던 프로젝트 폴더로 이동 (
cd 폴더명)
claude 입력
/resume 입력 → 최근 대화 목록에서 화살표로 선택 → Enter
/resume은 같은 폴더에서 했던 대화만 보여줍니다. 다른 프로젝트를 찾는다면 먼저 그 폴더로 cd 하세요. 너무 오래된 대화는 /compact로 한 번 정리하고 이어가면 쾌적합니다.
HUD — AI가 일하는 걸 보는 계기판
터미널 하단에 항상 떠 있는 상태 표시줄입니다. 조종사가 고개를 숙이지 않고 전방 유리에서 계기판을 보듯, 시선을 떼지 않고 핵심 정보를 확인합니다.
- 컨텍스트 사용량 — 기억 공간을 얼마나 썼는지 게이지로
- 비용 추정 — 현재 세션에서 쓴 비용
- 활성 도구 — 지금 파일 읽기/쓰기/명령 실행 중 무엇을 하는지
- Todo 진행률 — 시킨 작업 목록의 완료 상태
- Git 브랜치 — 현재 작업 중인 코드 브랜치
계기판 직접 설정하기 — statusline
화면 아래에 늘 보이는 줄을 원하는 항목으로 바꿀 수 있습니다. 매번 /status 를 칠 필요가 없어집니다.
처음에는 이 세 가지면 충분합니다 — 지금 폴더, 쓰고 있는 모델, 컨텍스트 사용률. 사용률이 보이면 /compact 할 시점을 감으로 알 수 있습니다.
그대로 붙여넣으세요
/statusline 지금 폴더 이름이랑 쓰고 있는 모델, 컨텍스트 남은 양을 한 줄로 띄워줘
스스로 점검
- 데스크탑 앱이 못 하는 일 세 가지를 말할 수 있는가?
Shift + Tab 을 눌렀을 때 돌아가는 모드 세 가지의 이름과 차이는?
- 계획 승인 화면의 1번과 2번은 무엇이 다른가?
- 새 작업을 시작할 때와 같은 버그를 계속 쫓을 때, 각각 무엇을 쓰는가?
- 잘못 갔을 때 되돌리는 명령과, 고를 때 확인해야 할 것은?
직접 해보기 — claude를 켜고 /status → /model → Shift+Tab 을 세 번 눌러 화면 아래 표시가 어떻게 바뀌는지 확인하고, 나온 모드 이름을 순서대로 여백에 적으세요. 그 다음 /statusline 프롬프트를 한 번 실행해 계기판을 켜두세요.