클로드 코드 모델 변경 — /model 명령과 기본 모델 고정
클로드 코드에서 모델을 바꾸는 방법은 세 가지입니다. ① 대화 중에 바꾸려면 /model, ② 켤 때 정하려면 claude --model sonnet, ③ 앞으로 계속 그 모델로 쓰려면 설정 파일에 "model"을 적습니다. 셋이 겹치면 켤 때 준 값이 설정 파일을 이깁니다. 아래에 별칭 목록, 우선순위, 이름을 잘못 썼을 때 나오는 메시지까지 실제 실행 결과로 정리했습니다. (2026년 8월 2일 기준 · CLI 2.1.204)
1. 클로드 코드 모델 변경, 어디서 하나
| 언제 | 방법 | 적용 범위 |
|---|---|---|
| 대화 중에 | /model 또는 /model sonnet |
지금 세션 + 다음부터의 기본값 |
| 켤 때 | claude --model sonnet |
그 세션만 |
| 환경 변수로 | ANTHROPIC_MODEL=sonnet |
그 세션만 |
| 계속 고정 | 설정 파일의 "model" |
모든 세션(또는 그 프로젝트) |
2. 세션 중에 바로 바꾸기 — /model
가장 많이 쓰는 방법입니다. 이름 없이 /model만 치면 고르는 화면이 뜨고, 뒤에 이름을 붙이면 바로 바뀝니다.
/model # 목록에서 고르기
/model sonnet # 바로 소넷으로
/model opus # 바로 오퍼스로
여기서 꼭 알아야 할 게 고르는 화면의 키 두 개입니다. CLI 2.1.153부터 /model로 고른 값은 다음 세션의 기본값으로도 저장됩니다.
Enter— 모델을 바꾸고 기본값으로 저장합니다./model sonnet처럼 이름을 직접 친 것도 이쪽과 같습니다.s— 이번 세션만 바꿉니다. 다음에 켜면 원래대로 돌아옵니다.
Enter로 골랐다가 계속 그 모델로 쓰게 되는 실수가 흔합니다. 임시로 바꿀 때는 s를 누르세요.
대화가 이미 진행된 상태에서 모델을 바꾸면 확인을 한 번 물어봅니다. 바뀐 모델은 대화 전체를 처음부터 다시 읽어야 해서, 그동안 쌓아 둔 임시 저장분(캐시)을 못 쓰기 때문입니다. 대화가 길수록 비용이 확 뜁니다. 이 부분이 신경 쓰인다면 클로드 코드 컨텍스트 관리에서 /compact·/clear 쓰는 법을 같이 보세요.
3. 켤 때 정하기 — claude --model
터미널에서 켤 때 붙이는 옵션입니다. --help에 적힌 설명이 그대로입니다.
$ claude --help
--model <model> Model for the current session. Provide an alias for the latest
model (e.g. 'fable', 'opus', or 'sonnet') or a model's full
name (e.g. 'claude-fable-5').
여기서 중요한 건 "for the current session"입니다. 이 옵션은 기본값을 바꾸지 않고 그 창에서만 먹습니다. 그래서 터미널을 두 개 열어 서로 다른 모델을 동시에 돌리고 싶을 때는 /model로 갈아타지 말고 각각 --model을 붙여 켜야 합니다.
# 터미널 A — 가벼운 수정
claude --model haiku
# 터미널 B — 어려운 리팩터링
claude --model opus
정말 그 모델로 도는지는 결과 JSON으로 확인할 수 있습니다. 실제로 돌려 보면 modelUsage에 쓰인 모델이 그대로 찍힙니다.
$ claude --model sonnet -p "Reply with exactly: ok" --output-format json
...
"modelUsage": {
"claude-sonnet-5": { "contextWindow": 1000000, "maxOutputTokens": 64000, ... }
}
4. 앞으로 계속 고정하기 — 설정 파일
매번 옵션을 붙이기 귀찮으면 설정 파일에 적어 둡니다. 두 곳 중에 고르면 됩니다.
| 파일 | 적용 범위 |
|---|---|
~/.claude/settings.json |
내 모든 프로젝트 |
.claude/settings.json (프로젝트 안) |
그 프로젝트만 · 깃에 올려 팀과 공유 가능 |
{
"model": "sonnet"
}
임시 프로젝트에 .claude/settings.json으로 "model": "haiku"를 넣고 옵션 없이 켜 보니 실제로 하이쿠로 돌았습니다. 설정 파일에서 손댈 수 있는 다른 항목들은 클로드 코드 권한 설정에 정리해 뒀습니다.
5. 별칭(alias)에는 어떤 게 있나
모델의 긴 이름을 외울 필요 없이 짧은 별칭을 쓰면 됩니다. 별칭은 그 계열의 최신 버전을 가리키고, 새 모델이 나오면 알아서 따라 올라갑니다.
| 별칭 | 쓰임 |
|---|---|
default |
직접 고른 값을 지우고 계정 기본 모델로 되돌립니다 |
haiku |
간단한 작업용. 빠르고 쌉니다 |
sonnet |
평소 코딩용 기본기 |
opus |
복잡한 추론이 필요할 때 |
fable |
가장 어렵고 오래 걸리는 작업용 |
best |
쓸 수 있으면 페이블 5, 아니면 최신 오퍼스 |
opusplan |
계획 세울 땐 오퍼스, 실행할 땐 소넷으로 자동 전환 |
opus[1m] |
100만 토큰짜리 긴 대화용 오퍼스 |
opusplan이 은근히 실속 있습니다. 설계를 짤 때만 비싼 모델을 쓰고, 실제로 파일을 고치는 단계에서는 싼 모델로 내려가기 때문입니다. 어떤 모델이 얼마인지는 클로드 오퍼스 5 vs 4.8 vs 페이블 5 비교에 가격표로 정리해 뒀습니다.
claude update로 올려 보세요. 버전은 claude --version으로 확인합니다.
버전을 고정하고 싶으면 별칭 대신 전체 이름을 씁니다. 이러면 새 모델이 나와도 안 바뀝니다.
claude --model claude-sonnet-5
6. 여러 곳에 설정했다면 — 뭐가 이기나
공식 문서에 적힌 우선순위는 이렇습니다. 위에 있을수록 셉니다.
- 세션 중에 친
/model - 켤 때 준
--model - 환경 변수
ANTHROPIC_MODEL - 설정 파일의
"model"
실제로 확인해 봤습니다. 프로젝트 설정에 "model": "haiku"를 넣어 둔 폴더에서 --model sonnet과 ANTHROPIC_MODEL=sonnet을 각각 줘 보니, 둘 다 설정 파일을 무시하고 소넷으로 돌았습니다.
--continue·--resume)로 연 세션은 저장될 때 쓰던 모델을 그대로 씁니다. 지금 기본 모델을 바꿔 놨어도 마찬가지입니다. 다른 창에서 /model로 바꾼 게 옛 세션까지 따라가지 않게 하려는 동작입니다. 바꾸고 싶으면 켤 때 --model을 같이 주면 됩니다. 이어서 하기 자체는 클로드 코드 세션 이어서 하기에 정리해 뒀습니다.
7. 모델 이름을 잘못 쓰면
없는 이름을 주면 이렇게 나옵니다. 실제 출력입니다.
$ claude --model gpt-5 -p "Reply with exactly: ok"
There's an issue with the selected model (gpt-5). It may not exist or you may not
have access to it.
여기서 헷갈리기 쉬운 게 언제 걸러지느냐입니다. /model로 친 이름은 보내기 전에 검사해서 Model "…" is not a recognized model id.로 막고 세션은 원래 모델을 유지합니다. 반면 --model·ANTHROPIC_MODEL·설정 파일에 적은 이름은 검사 없이 그대로 넘어가서 위처럼 첫 요청에서 터집니다. 설정 파일에 오타를 내면 켤 때는 멀쩡해 보이다가 첫 질문에서 실패하는 이유가 이것입니다.
8. 모델이 과부하일 때 자동으로 넘기기
쓰려던 모델이 몰려서 응답을 못 받을 때, 다른 모델로 넘겨 이어가게 할 수 있습니다.
claude --fallback-model sonnet,haiku
설정 파일에 고정하려면 배열로 적습니다. (이름이 model이 아니라 fallbackModel입니다)
{
"fallbackModel": ["claude-sonnet-5", "claude-haiku-4-5"]
}
알아 둘 점 세 가지입니다. ① 넘어가는 건 그 한 번의 응답에만 해당하고, 다음 메시지는 원래 모델부터 다시 시도합니다. ② 중복을 뺀 뒤 최대 3개까지만 쓰입니다. ③ 로그인·결제·사용량 한도 문제로 실패한 것은 넘기지 않습니다. 과부하나 서버 오류일 때만 동작합니다.
또 하나, 클로드 코드는 이 설정을 켤 때 알려 주지 않고 /status에도 안 보여 줍니다. 실제로 모델이 넘어갈 때 뜨는 안내 문구가 유일한 신호입니다.
자주 묻는 질문 (FAQ)
Q. 지금 어떤 모델을 쓰고 있는지 어디서 보나요?
/model을 치면 지금 모델에 표시가 되어 있습니다. 상태줄에 띄워 놓고 볼 수도 있습니다. 남은 사용량까지 같이 보는 법은 클로드 코드 사용량 확인에 정리해 뒀습니다.
Q. 모델 변경 단축키는 없나요?
따로 없고 /model이 사실상 그 자리입니다. 대신 모드 전환·줄바꿈 같은 자주 쓰는 키는 클로드 코드 단축키 정리에 모아 뒀습니다.
Q. 회사 계정인데 원하는 모델이 목록에 없습니다.
관리자가 availableModels로 쓸 수 있는 모델을 제한했을 수 있습니다. 이때는 이름을 직접 줘도 Model "…" is restricted by your organization's settings.가 뜨고 허용된 모델로 시작합니다.
Q. VS Code 확장에서도 바꿀 수 있나요?
됩니다. 확장도 안에서 같은 CLI를 돌리므로 /model이 그대로 먹습니다. 확장과 CLI가 어떻게 다른지는 클로드 코드 vscode 연동에 정리해 뒀습니다.
마무리
정리하면 지금 바꾸려면 /model, 이 창만 바꾸려면 --model, 계속 쓰려면 설정 파일입니다. 가장 자주 실수하는 두 곳만 기억하세요. 첫째, /model 화면에서 Enter는 기본값까지 바꾸니 임시로 바꿀 땐 s를 누릅니다. 둘째, 설정 파일에 적은 모델 이름은 켤 때 검사하지 않으니 오타가 있으면 첫 질문에서 터집니다.
📚 참고 출처 (2026년 8월 2일 확인)
· Claude Code — Model configuration
· Claude Code — Settings
· 본문의 명령 출력과 우선순위 확인 결과는 Claude Code 2.1.204로 직접 실행해 얻었습니다.

COMMENTS