Prompt is too long 클로드 코드: 버전부터 올리기
claude-code

Prompt is too long 클로드 코드: 버전부터 올리기

· 6분 읽기 · 합니

Claude Code(클로드 코드)로 한참 작업하다 보면 갑자기 Prompt is too long이 뜨고 더 진행되지 않을 때가 있습니다. 영문 그대로라 검색해도 개발자용 글만 나옵니다.

이 글은 터미널에서 쓰는 Claude Code 이야기입니다. 웹이나 데스크톱 앱에서 비슷한 문구를 보셨다면 원인이 다를 수 있고, 아래 내용은 그쪽에서 확인된 것이 아닙니다.

대부분 「대화가 길어졌으니 줄이라」는 답을 만납니다. 그래서 새 세션(하나의 대화 단위)을 열고 하던 일을 처음부터 다시 설명하게 됩니다.

그런데 공식 체인지로그(제품이 무엇을 고쳤는지 버전별로 적어 두는 기록)를 보면 다른 이야기가 나옵니다. 이 오류는 최근까지 Claude Code 쪽 버그였고 두 번에 걸쳐 고쳐졌습니다.

자동 압축이 안 돌아서 나는 경우

Claude Code는 대화가 길어지면 알아서 압축합니다. 오래된 내용을 요약으로 줄여 공간을 만드는 동작이고, 이것을 자동 압축이라고 부릅니다.

그러니 정상 경로는 셋입니다. 한 세션이 길어지고, 자동 압축이 돌고, 작업이 이어집니다. Prompt is too long은 가운데 칸이 비었을 때도 납니다. 대화가 정말 커서 나는 경우도 있지만, 줄여 주는 동작이 안 돌아서 나는 경우가 따로 있다는 뜻입니다. 뒤엣것이 최근까지 버그였습니다.

고쳐진 원인 둘: 2.1.284와 2.1.288

공식 체인지로그에 같은 오류를 고친 기록이 두 번 있습니다.

버전무엇이 문제였나
2.1.284압축을 했는데도 여전히 길면 거기서 멈췄습니다. 지금은 한 번 더 압축하고 최근 대화를 덜 남깁니다
2.1.288직전 답의 토큰(AI가 글을 세는 단위) 사용량이 0으로 보고되면 자동 압축이 돌지 않고 오류로 끝났습니다

터미널이 아니라 코드 편집기에서 쓰시는 분을 위한 건도 하나 있습니다. VSCode 확장에서 큰 텍스트 파일을 메시지에 붙였을 때 압축 뒤에도 같은 오류가 났고 2.1.284에서 고쳐졌습니다.

셋 다 체인지로그에 Claude Code 쪽 수정으로 올라와 있습니다. 앞의 둘이 터미널에서 나던 원인이고 마지막은 편집기 쪽 건입니다. 어느 쪽이든 사용자가 무언가 잘못해서 생긴 것이 아니라 줄여 주는 동작이 안 돈 것입니다.

먼저 할 것: claude update

그래서 첫 번째로 할 일은 버전을 올리는 것입니다.

claude update

올린 뒤 같은 작업을 다시 시켜 보시면 됩니다. 위에 적은 원인에 해당했다면 여기서 끝납니다.

설치 방식에 따라 자동으로 올라가기도 하지만, 터미널을 오래 켜 둔 채 쓰고 계셨다면 지금 돌고 있는 세션은 옛 버전일 수 있습니다. 명령을 한 번 실행해 확인하는 편이 빠릅니다. 설치 방식별 업데이트 차이는 클로드 코드 맥 설치 방법에 정리해 두었습니다.

⚠️ 체인지로그는 고친 것만 적습니다. 고쳐지지 않은 다른 경로가 있는지는 공개된 자료로 알 수 없습니다.

그다음: autocompact 설정

버전을 올려도 같은 오류가 난다면 자동 압축이 도는 시점을 조절할 수 있습니다.

/autocompact

자동 압축이 대화의 어느 정도 지점에서 돌지를 정하는 설정입니다. 더 일찍 돌게 하면 오류를 만나기 전에 줄여 줍니다. 이 설정은 최근에 모델별로 따로 저장되게 바뀌었습니다. 전에는 모델을 바꾸면 설정이 따라가지 않았는데 지금은 각 모델이 자기 값을 유지합니다. 오푸스에서 조절해 둔 값이 소넷으로 바꿨을 때 그대로 적용되지 않는다는 뜻이기도 합니다.

관련해서 고쳐진 것이 둘 더 있습니다. 세션 중간에 모델을 바꾸면 새 모델이 기본값을 쓰는 채로 남아 재시작해야 풀리던 문제가 2.1.285에서 고쳐졌습니다. 새 환경이나 모델 교체 직후의 첫 요청이 서버 값을 안 쓰던 것도 같은 2.1.288에서 함께 고쳐졌습니다. 그 요청은 이제 최대 1.5초까지 기다릴 수 있습니다.

그래도 날 때

여기까지 왔다면 대화 자체가 정말로 큰 경우입니다. 순서대로 좁히시면 됩니다.

  • 큰 파일을 메시지에 붙이셨다면 그것부터 빼고 다시 시켜 봅니다. 파일 전체를 붙이는 대신 경로를 알려 주고 읽게 하는 편이 가볍습니다
  • /compact를 직접 실행해 지금 바로 압축합니다. 자동으로 돌기를 기다리지 않습니다
  • 새 세션으로 옮깁니다. 이때 처음부터 다시 설명하지 않으려면 지금까지의 결론을 파일 하나에 적어 두고 그 파일을 읽게 하는 방법이 있습니다

마지막 방법이 번거로워 보여도, 긴 대화를 끌고 가는 것보다 결론을 파일로 남기는 쪽이 다음에도 쓰입니다.

이 오류를 만나면 대화를 버리기 전에 위 순서를 한 번만 밟아 보시길 권합니다. 버전 한 줄로 끝나는 경우가 생각보다 많고, 그게 아니어도 어디까지 확인했는지가 남습니다.

30초 요약
  • Prompt is too long은 대화가 길어서가 아니라 자동 압축이 돌아야 할 때 안 돌아서 나는 경우가 있습니다.
  • 공식 체인지로그에 이 오류를 고친 기록이 두 번 있습니다. 2.1.284는 압축 뒤에도 길 때, 2.1.288은 직전 답의 토큰 사용량이 0으로 보고될 때입니다.
  • 그래서 확인 순서는 claude update가 먼저입니다.
  • 버전을 올려도 같은 오류가 나면 /autocompact로 압축 시점을 조절합니다. 이 설정은 모델별로 따로 저장됩니다.
  • 큰 파일을 메시지에 붙인 경우라면 그것부터 빼고, 그다음 /compact를 직접 실행하고, 마지막으로 새 세션으로 옮깁니다.
  • ⚠️ 버전을 올리면 반드시 사라진다고 공식 문서가 보장하지는 않습니다.

자주 묻는 질문

버전을 올렸는데도 같은 오류가 납니다

체인지로그에 적힌 앞의 두 원인과 편집기 쪽 건에 해당하지 않는 경우입니다. /autocompact로 압축 시점을 조절해 보시고, 큰 파일을 메시지에 붙이셨다면 그것부터 빼 보십시오. 그래도 나면 /compact를 직접 실행해 지금 바로 압축합니다.

대화를 줄이는 게 답이 아닌가요?

마지막 수단입니다. 이 오류는 줄여 주는 동작이 자동으로 돌지 않아 난 경우가 있었고 그 원인들이 최근 고쳐졌습니다. 대화를 줄이면 하던 맥락을 잃으므로 버전 확인과 설정 조절을 먼저 하시는 편이 낫습니다.

웹이나 데스크톱 앱에서도 같은 문구가 나나요?

도입에 적은 대로 이 글은 터미널에서 쓰는 Claude Code 기준입니다. 웹과 데스크톱 앱은 확인하지 못했습니다.

몇 토큰을 넘으면 나나요?

공개된 자료에 숫자가 없습니다. 모델과 플랜마다 다르고 공식 문서가 기준값을 밝히지 않습니다. 숫자를 기준으로 삼기보다 오류가 났을 때의 확인 순서를 따르시는 편이 맞습니다.

autocompact 설정이 모델을 바꾸면 초기화되나요?

최근 버전부터는 모델별로 따로 저장됩니다. 각 모델이 자기 설정을 유지하므로, 오푸스에서 조절한 값이 소넷에 그대로 적용되지는 않습니다.

출처 (3)펼쳐서 전체 출처 보기
#prompt is too long#클로드 코드 오류#context window exceeded#오토 컴팩트#Claude Code

관련 글