🧠 claude-model-spinners는 Claude Code의 ‘생각 중…’ 스피너 문구를 모델과 effort 수준에 맞춰 바꾸는 플러그인이다. 제작자는 모델의 성능을 보여주는 방식이라고 소개하지만, 문구는 유머를 위한 표현이다.
설치와 작동 방식
Claude Code에 다음 명령을 입력하고 y를 누른 뒤 Enter를 누르면 설치된다. 제작자에 따르면 재시작 없이 모든 세션에서 바로 작동한다.
`/plugin install model-spinners --marketplace CharlesSS07/claude-model-spinners
`
플러그인은 모델을 기준으로 기본 티어를 정하고, /effort 설정에 따라 티어를 올리거나 내린다. 매핑은 Haiku가 낮은 쪽부터 🫠·🫠·🫠·🤪·🤪, Sonnet이 🤪·🛹·🛹·🧐·🧐, Opus가 🛹·🧐·🧐·🧙·🧙, Fable이 🧙·🔮·🔮·🔮·🔮 순이다. 각 배열은 low, medium, high, xhigh, max에 대응한다.
티어별 문구는 다음과 같은 식이다. 🫠 ‘멍하니 있음’에는 “화면 핥는 중…”이, 🤪 ‘어리숙함’에는 “Stack Overflow에서 복사해 붙이는 중…”이 포함된다. 🛹 ‘임기응변’은 “main에 강제 푸시하는 중…”, 🧐 ‘숙고’는 “장단점을 따지는 중…”, 🧙 ‘현자’는 “아직 찾지 못한 버그를 고치는 중…”, 🔮 ‘신탁’은 “묻기도 전에 해결하는 중…” 같은 문구를 쓴다.
제작자는 기본 문구와 새 문구를 합쳐 120개가 넘는 동사를 티어별로 분류했다고 설명한다. Sonnet에는 Moonwalking, Sock-hopping 같은 춤 동작을, Opus에는 Bloviating과 Pontificating을 배정했다. 새 문구 제안은 hooks/verbs.ts를 수정해 PR을 보내는 방식으로 받는다.
구현과 제한 사항
플러그인은 두 개의 함수 훅을 사용한다. turn.step이 주 세션의 effort 수준을 기록하고, ui.render가 Spinner 컴포넌트의 문구를 해당 티어의 목록에서 가져온다. 선택은 Claude Code가 고른 단어를 시드로 삼아 한 차례 동안 유지되고, 다음 차례에 바뀐다.
처음 세션을 시작할 때는 Claude Code가 첫 모델 요청 전까지 effort 수준을 공개하지 않아 첫 스피너가 medium을 기준으로 표시되는 알려진 문제가 있다.
로컬에서 시험하거나 테스트하려면 다음 명령을 사용한다.
git clone https://github.com/CharlesSS07/claude-model-spinners
claude --plugin-dir ./claude-model-spinners # try your local copy
claude plugin test ./claude-model-spinners # run the tests
tsc -p .로 타입을 검사하려면 플러그인을 폴더에서 불러올 때 Claude Code가 생성하는 API 타입이 필요하다. 이 타입은 git에서 제외된 .claude-plugin/types/에 기록되며, claude plugin validate와 claude plugin test는 이를 생성하지 않는다. 새로 복제한 저장소에서는 먼저 claude --plugin-dir . -p "ok" 같은 명령으로 한 번 불러와야 한다.
제거 명령은 다음과 같다.
`/plugin uninstall model-spinners
`
플러그인은 MIT 라이선스다. 제작자는 Charles Strauss이며, @charles07_s라는 계정으로 활동하고 AI 안전성과 해석 가능성을 연구한다고 소개한다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요