예전엔 Claude Code에게 “여러 줄짜리 주석은 절대 쓰지 마라” 같은 강한 규칙을 줘야 했습니다. 최악의 상황, 그러니까 파일을 실수로 지우는 것 같은 사고를 막으려면 다소 부정확하더라도 확실한 지침이 필요했기 때문입니다. Anthropic은 최근 이런 규칙들을 대거 걷어냈습니다. Claude Code 시스템 프롬프트의 80퍼센트 이상을 삭제했다고 밝혔습니다.

Anthropic이 Claude Code의 시스템 프롬프트를 어떻게 다시 설계했는지 정리한 글을 공개했습니다. 예전엔 옳았지만 지금은 오히려 방해가 되는 “신화”가 된 관행들을, 이전과 이후를 나란히 놓고 설명합니다.
출처: The new rules of context engineering for Claude 5 generation models – Anthropic
규칙을 주는 대신 판단하게 둔다
예전 모델에게는 특정 상황에서만 맞는 지침도 일단 강하게 못 박아둬야 했습니다. “코드에는 기본적으로 주석을 달지 마라. 여러 줄짜리 독스트링이나 주석 블록은 절대 쓰지 말고, 한 줄을 넘기지 마라.” 이런 식이었죠. 문제는 이 규칙이 항상 맞지는 않는다는 데 있습니다. 사용자가 문서화를 선호하거나, 복잡한 코드라 여러 줄 설명이 꼭 필요한 경우도 있으니까요.
예전 모델로는 이런 예외를 봐줄 여유가 없었습니다. 규칙 없이 풀어두면 상황을 잘못 읽고 엉뚱하게 행동하는 경우가 잦았기 때문에, 부정확함을 감수하고서라도 강한 규칙을 유지할 수밖에 없었습니다. 하지만 새 모델은 판단력이 좋아졌습니다. 지금 시스템 프롬프트에는 그 대신 이런 문장이 들어갑니다. “주변 코드처럼 읽히게 써라. 주석 밀도와 이름 짓는 방식, 관용구를 그대로 맞춰라.” 세세한 금지 조항 대신, 맥락을 보고 알아서 판단하라는 방향으로 바뀐 셈입니다.
예시를 주는 대신 인터페이스를 설계한다
도구 사용법을 가르치는 방식도 바뀌었습니다. 예전엔 “이렇게 써라”는 예시를 보여주는 게 기본이었습니다. 그런데 Anthropic은 최신 모델에서 예시가 오히려 탐색 범위를 좁힌다는 사실을 발견했습니다. 모델이 예시에 나온 패턴만 따라 하려는 경향이 생기는 겁니다.
그래서 이제는 예시 대신 도구 자체의 구조로 행동을 유도합니다. 할 일 관리 도구를 예로 들면, 상태값을 pending·in_progress·completed 세 가지로만 딱 나눠두는 것 자체가 “동시에 진행 중인 항목은 하나만 두라”는 의도를 은연중에 전달합니다. 어떻게 써야 하는지 예시로 설명하는 대신, 파라미터 구조 자체가 사용법을 말해주게 설계하는 방식이죠.
처음부터 다 알려주지 않고, 필요할 때 불러온다
세 번째 변화는 정보를 쥐어주는 시점입니다. 코드 리뷰나 검증 절차처럼 항상 필요한 건 아니지만 필요할 땐 반드시 있어야 하는 정보를, 예전엔 처음부터 시스템 프롬프트에 다 넣어뒀습니다. 지금은 이런 정보를 별도의 “스킬”로 분리해서, 실제로 그 작업을 할 때만 선택적으로 불러오게 바꿨습니다.
이 원칙은 도구에도 똑같이 적용됩니다. 일부 도구는 처음부터 전체 정의를 보여주지 않고, 필요한 순간에 검색해서 찾아 쓰도록 지연 로딩 방식으로 설계돼 있습니다. 그래야 당장 안 쓰는 도구가 컨텍스트 공간을 미리 차지하지 않으니까요. CLAUDE.md 같은 참고 파일도 마찬가지입니다. 모든 실무 지침을 하나의 파일에 몰아넣기보다는, 상황에 맞는 파일만 필요한 순간에 불러오는 트리 구조로 두는 편이 낫다는 겁니다.
이렇게 정리된 원칙들을 나란히 놓고 보면 방향은 하나로 모입니다. 모델이 똑똑해질수록, 무엇을 하지 말라고 못 박는 것보다 무엇을 스스로 판단하게 둘지를 설계하는 쪽으로 무게중심이 옮겨가고 있습니다. 시스템 프롬프트에서 걷어낸 80퍼센트는 결국 모델을 못 믿어서 채워뒀던 안전장치였던 셈입니다.

답글 남기기