Claude Code ↔ GLM(Z.ai) 1초 스위칭 환경 구축기
든든한 항해사 · Claude Code MVP 공장 · · 좋아요 0 · 답글 0
연재 Claude Code MVP 공장 시즌 6 2/4편
1월 20일 오후 3:00 이전에 이 글을 읽으셨던 분들은 다시 한 번 읽어주세요.ㅠㅠ
시도하고자 했던 것과 그 이유를 알려주세요
최근 Claude Code를 사용하면서 비용 효율이 좋은 GLM(Z.ai) 모델과 성능이 강력한 Claude 모델을 번갈아 가며 사용하고 싶었습니다.
하지만 매번 .claude/settings.json 설정 파일을 직접 수정하거나 복사해 넣는 과정이 너무 번거로웠습니다.
작업 흐름이 끊기지 않게 터미널 명령어 한 번으로 두 모델을 1초 만에 전환하는 환경을 구축하고 싶었습니다.
GLM이 뭔가요?
GLM 소개 : https://www.youtube.com/watch?v=nSnZdEjUalo
GLM vs Claude 스위칭 : https://www.youtube.com/watch?v=T7cOguVYdsU
싸고 좋은건 알겠는데, 매번 환경 설정 파일을 수정해서 사용해야 하는게 너무 불편한 것 같아서,
쉽게 사용할 수 있는 방법을 알려드리도록 하겠습니다.
배운 점과 나만의 꿀팁을 알려주세요
이제 작업별로 터미널에서 gt g라고 치면 바로 GLM 모드가 되고, gt c라고 치면 Claude 모드로 동작하게 되어 쉽게 사용할 수 있게 되었네요.
설정 파일을 일일이 찾아다닐 필요가 없어지니 코딩 리듬(Vibe)이 끊기지 않는 것이 가장 큰 장점입니다.
작업 환경을 자동화를 통해 개선하여 생산성을 높일 수 있다니, 게으른 게발자가 되어 가고 있습니다.
처음에는 설정 파일을 교체하는 방식으로 했었는데, 뭔가 불안정한 것 같았습니다.
gt c 후 claude 실행 시켜 놓고 /usage 로 확인하면, 명령이 수행되지 않을때가 있더라고요
그래서, 환경파일을 교체하는 방식에서, 환경 변수를 바꾸고 터미널이 수행되는 방식으로 바꾸었습니다.( 이것도 좀 더 테스트 하면서 모니터리을 해 봐야 할 것 같습니다.)
또 하나 시행착오는 ~/.zshrc 파일 수정을 llm에게 시켰더니, 기존 내용을 몽땅 다 지워버리고, 위 gt 함수만 남겨놨더라구요.ㅠㅠ
개발자에게, 바이브코더에게 백업 절차는 필수입니다.
앞으로의 계획이 있다면 들려주세요
몇 일 사용해 봤는데, 가성비 측면에서 glm 만족스러운 수준입니다.
제가 어제 오늘은 좀 무거운 작업을 시켜서 인지, 조금 느린 듯 한게 쪼금 아쉽네요.
그래도, glm에게 일 시켜놓고, 사례글 쓸수 있어 좋아요~
ahthropic에서 언제 이렇게 다른 모델이 claude code에 강제 입주하는 기능을 막을지 모르지만,
glm 토큰을 다 쓸 때까지 괴롭히고, 죽여볼 참입니다.
claude 요금제를 100$로 낮출꺼에요!!
더 쉽게/편하게 이용 할 수 있는 방법이 있다면 알려주세요~
(부록) Windows OS
윈도우 사용자분은 아래 내용 참조하셔서, llm에게 물어보고 진행하세요.
PowerShell 프로필 설정 방법:
PowerShell을 관리자 권한으로 실행
실행 정책 변경 (처음 한 번만):
powershellSet-ExecutionPolicy RemoteSigned -Scope CurrentUser
프로필 파일 열기:
powershellnotepad $PROFILE
(파일이 없다는 오류가 나면:
New-Item -Path $PROFILE -Type File -Force실행 후 다시 시도)
위의 함수를 복사해서 붙여넣고 저장
PowerShell 재시작 또는
. $PROFILE실행
Option 2: Batch Script
gt.bat파일을 만들어서 PATH에 있는 폴더에 저장:
function gt {
param(
[string]$mode = "s"
)
switch ($mode) {
"g" { # GLM 모드 (Z.ai)
$env:ANTHROPIC_AUTH_TOKEN = "여기에 GLM KEY를 입력하세요"
$env:ANTHROPIC_BASE_URL = "https://api.z.ai/api/anthropic"
$env:ANTHROPIC_VERSION = "2023-06-01"
$env:API_TIMEOUT_MS = "3000000"
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL = "glm-4.5-air"
$env:ANTHROPIC_DEFAULT_SONNET_MODEL = "glm-4.7"
$env:ANTHROPIC_DEFAULT_OPUS_MODEL = "glm-4.7"
Write-Host "🔹 GLM 모드 활성화 (현재 터미널만)" -ForegroundColor Cyan
}
"c" { # Claude 모드 (Anthropic)
Remove-Item Env:\ANTHROPIC_AUTH_TOKEN -ErrorAction SilentlyContinue
Remove-Item Env:\ANTHROPIC_BASE_URL -ErrorAction SilentlyContinue
Remove-Item Env:\ANTHROPIC_VERSION -ErrorAction SilentlyContinue
Remove-Item Env:\API_TIMEOUT_MS -ErrorAction SilentlyContinue
Remove-Item Env:\ANTHROPIC_DEFAULT_HAIKU_MODEL -ErrorAction SilentlyContinue
Remove-Item Env:\ANTHROPIC_DEFAULT_SONNET_MODEL -ErrorAction SilentlyContinue
Remove-Item Env:\ANTHROPIC_DEFAULT_OPUS_MODEL -ErrorAction SilentlyContinue
Write-Host "🔸 Claude 모드 활성화 (현재 터미널만)" -ForegroundColor Yellow
}
{ $_ -in "s", "" } { # 상태 확인
if ($env:ANTHROPIC_BASE_URL -like "*z.ai*") {
Write-Host "🔹 현재: GLM ($env:ANTHROPIC_DEFAULT_SONNET_MODEL)" -ForegroundColor Cyan
} else {
Write-Host "🔸 현재: Claude (Anthropic 기본)" -ForegroundColor Yellow
}
}
default {
Write-Host "사용법: gt [g|c|s]"
Write-Host " g - GLM 모드"
Write-Host " c - Claude 모드"
Write-Host " s - 상태 확인 (기본)"
}
}
}
태그: #CTO