본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 03. 23:56

Claude Code (Opus 4.8)가 모든 도구 호출(Tool Calls)을 조용히 손상시킴 — 일본어 환경에서 쉽게 발생하는 수정되지

요약

Claude Code Opus 4.8 버전에서 Windows 환경 및 일본어 사용 시 도구 호출(Tool Calls)이 손상되는 버그를 분석합니다. 긴 세션과 비 ASCII 문자가 결합될 때 발생하는 자기 강화 루프 현상과 그 해결 방법을 다룹니다.

핵심 포인트

  • Opus 4.8, Windows, 일본어 환경에서 도구 호출 손상 발생
  • 손상된 출력을 모델이 모방하는 문맥 내 자기 강화 루프 현상
  • 복구 방법: /rewind, /compact 또는 /clear 사용 권장
  • 예방책: Opus 4.7로 다운그레이드하거나 작업을 작게 분해

Claude Code를 길고 지속적인 세션으로 실행하다 보면, 갑자기 모든 도구 호출(tool call)이 망가져 있는 것을 발견할 수 있습니다. 저는 일본어 환경에서 여러 세션을 몇 시간 동안 실행하는 동안 이 현상을 겪었습니다. 제가 발견한 내용은 다음과 같습니다.

발생하는 현상

  • 함수 호출(Function call) 시작 태그가 count / court와 같은 의미 없는 토큰으로 손상됩니다.
  • 인자(Arguments)가 채팅창에 가공되지 않은 텍스트로 유출됩니다 (파일명이 인라인으로 나타남).
  • MCP 연결은 정상입니다 (/mcp 실행 시 Connected로 표시됨) — 도구 또는 서버의 문제가 아닙니다.
  • 한 번 시작되면 스스로 복구되지 않습니다. 모델은 이미 히스토리에 있는 손상된 출력을 마치 올바른 형식인 것처럼 모방합니다 (학습이 아닌, 문맥 내 자기 강화 루프(in-context self-reinforcing loop) 현상).
  • 모델 자체는 실패를 인지하지 못합니다 — 모든 것이 성공한 것처럼 행동합니다. 외부에서 지켜보는 인간만이 이를 포착할 수 있습니다.

트리거 (관찰된 조건)

GitHub 이슈 anthropics/claude-code #63875 (OPEN, 미수정 상태)에서도 동일한 증상이 보고되었으며, 조건이 일치합니다:

  • 모델: Opus 4.8 (4.7에서는 발생하지 않음; 유사한 4.7 버그 #61133closed/fixed(종료/수정됨) 상태임)
  • OS: Windows (platform:windows 라벨이 붙어 있음)
  • 긴 턴(Long turns) / 누적된 컨텍스트(accumulated context)
  • 도구 인자(tool arguments) 내의 비 ASCII (일본어) 문자

→ 요약하자면, "Opus 4.8 + Windows + 일본어 + 장시간 실행"이 이 버그를 만나는 가장 쉬운 경로입니다.
그럼에도 불구하고, 영어로 작성된 GitHub 이슈에는 일본어 사용자들의 보고가 거의 없습니다. 이는 현상이 드문 것이 아니라, 영어 채널을 통해 보고가 덜 되었을 가능성이 높습니다. 동일한 문제로 막힌 다음 사람을 위해 이 글을 작성합니다.

복구 (손상 발생 후)

  • /rewind (Esc 키를 두 번 누르는 것도 가능) — 손상된 턴(turn) 이전의 체크포인트로 되돌립니다. /compact보다 가볍습니다.
  • /compact — 히스토리(history)를 요약본으로 대체하여 손상된 예시들을 제거합니다 (모방 루프를 끊어줍니다).
  • --continue는 상황을 악화시킵니다 — 가공되지 않은 히스토리를 복구하므로, 손상된 예시들이 다시 나타나게 됩니다.
  • 위 방법들로 해결되지 않는 심각한 손상(고립된 tool_result 등)의 경우, /clear (새 세션)를 사용하세요.

예방 (근본 원인)

1. Opus 4.7으로 다운그레이드

이 버그는 4.8 버전에 특화되어 있습니다. 4.7(수정됨)로 전환하면 이를 피할 수 있습니다. /config에서 기본값으로 설정하거나, /model을 통해 세션별로 설정할 수 있습니다. 버전 차이에 따른 성능 격차는 사실상 무시할 수 있는 수준입니다.

2. 작업 분해 (실질적인 해결책)

4.8의 장점은 단일한 거대한 작업을 던졌을 때 나타납니다. 하지만 그 작업 자체의 성공률이 낮으며, 모델의 버전을 높이는 것이 근본적인 해결책은 아닙니다.
작업을 분해하면 4.7이 이를 안정적으로 처리하며, 턴(turn)이 짧게 유지되고 컨텍스트(context)가 가볍게 유지됩니다 — 이는 바로 이 버그를 유발하지 않는 조건입니다.
= 높은 성공률 + 적은 손상, 일거양득입니다. 무거운 작업을 서브 에이전트(subagents)로 격리하면 메인 세션의 컨텍스트를 깨끗하게 유지할 수 있습니다.

3. 조기 컴팩트(Compact) 수행 + CLAUDE.md

CLAUDE.md는 항상 로드되며 요약(summarization) 과정에서도 유지됩니다. 중요한 제약 조건과 결정 규칙을 (채팅이 아닌) CLAUDE.md에 넣어두면, 규칙을 잃지 않으면서도 빈번하게 컴팩트(compact)를 수행할 수 있습니다.

요약

"더 강력한 모델로 무차별 대입(Brute-force)하기"는 "작업을 분해하고 안정적인 모델에서 실행하기"를 이길 수 없습니다.
Anthropic이 4.8 전용 버그에 대한 수정 사항을 출시할 때까지는, Opus 4.7 + 작업 분해만으로도 충분합니다. 만약 일본어로 긴 세션을 운영 중인데 최근 무언가 이상하다고 느껴진다면, 이것이 가장 먼저 확인해야 할 사항입니다.

원문은 Zenn에 일본어로 게시되었습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0