컨텍스트 관리
컨텍스트는 Claude의 작업 메모리입니다. Claude가 읽는 모든 파일, 실행하는 모든 명령, 여러분이 보내는 모든 메시지 — 이 모든 것이 컨텍스트 윈도우의 공간을 차지합니다.
한국어 대본
- 00:00컨텍스트는 Claude의 작업 기억입니다.
- 00:06Claude가 읽는 모든 파일, 실행하는 모든 명령, 보내는 모든 메시지는
- 00:10모두 컨텍스트 창의 공간을 차지합니다.
- 00:15컨텍스트 창을 Claude가 기억 속에 담아 둘 수 있는 공간의 크기라고 생각해 보세요.
- 00:21프롬프트를 입력할 때마다 Claude가 파일을 읽고, 도구 호출을 실행하고, 도구 호출 결과를 받습니다.
- 00:26이 내용이 컨텍스트 창에 추가됩니다.
- 00:28컨텍스트 창에 넣을 수 있는 양은 제한되어 있으므로, 가능한 한 효율적으로 활용하는 일이 매우 중요합니다.
- 00:38이제 이 한계에 가까워지면 컨텍스트 창이 자동으로 압축됩니다.
- 00:44압축은 중요한 세부 정보를 요약하고 불필요한 도구 호출 결과를 제거해 컨텍스트 창의 공간을 많이 확보합니다.
- 00:52다만 이전 대화의 세부 정보가 손실될 가능성이 있다는 점에 유의하세요.
- 00:56/compact 명령으로 압축을 수동으로 실행할 수도 있습니다.
- 01:02그러면 그 시점까지 수행한 모든 작업을 압축합니다. 컨텍스트 공간을 비우면서도 이전 작업에 대한 기억은 남길 수 있어 유용합니다.
- 01:11이전 작업에 대한 기억 없이 완전히 처음부터 시작하려면 /clear를 실행하면 됩니다. 그러면 처음부터 다시 시작하게 됩니다.
- 01:21컨텍스트 상태를 확인하려면 /context 명령을 실행하세요.
- 01:25여기에서 컨텍스트 크기가 얼마나 되는지 전체적인 그림을 볼 수 있고,
- 01:29어떤 범주가 컨텍스트를 가장 많이 차지하는지,
- 01:31이 모든 내용을 보여 주는 그래픽도 확인할 수 있습니다.
- 01:35일반적인 기준은 특정 기능을 작업하면서
- 01:38컨텍스트 창의 한도를 넘었지만 계속 진행해야 한다면
- 01:41그때 압축하세요.
- 01:43이 기능과 관련된 컨텍스트를 유지하는 것이 개발을 계속할 때 중요합니다.
- 01:47계획을 완료하고 새로운 기능을 시작하려는 경우에는
- 01:51그때 /clear를 실행하세요.
- 01:51이전 대화가 새로 만들려는 내용에 편향을 일으키는 것을 원하지 않을 것입니다.
- 01:57Claude가 다른 세션에서 기억하기를 원하는 내용은 Claude.md 파일에 넣으세요.
- 02:02그러면 매번 처음부터 다시 발견할 필요가 없습니다.
- 02:07구체적으로 작성하세요.
- 02:09더 짧은 프롬프트를 작성하는 것이 장기적으로는 더 많은 컨텍스트를 차지한다는 점이 아이러니합니다.
- 02:15명확하게 작성하지 않으면 Claude가 코드베이스를 더 많이 둘러보고 스스로 생각해야 하므로,
- 02:20한두 문장으로 조금 더 분명하게 작성하는 경우보다 컨텍스트 창 공간을 훨씬 더 많이 차지합니다.
- 02:26MCP 서버는 기본적으로 사용 가능한 모든 도구를 컨텍스트에 불러옵니다.
- 02:31프로젝트와 관련 없는 MCP 서버가 많다면 해당 서버를 꺼 보는 것이 좋습니다.
- 02:38MCP 서버와 비슷하게 작동하지만 전체 내용을 컨텍스트에 넣지 않아 공간을 절약하는 스킬도 사용해 볼 수 있습니다.
- 02:45Subagents는 주 에이전트와 병렬로 실행되지만 완전히 별도의 컨텍스트 창을 사용합니다.
- 02:51여정 없이 답변이 필요한 작업, 예를 들어 인증 엔드포인트가 어디에 있는지 묻는 작업은
- 02:56Subagents가 작업을 수행하고 주 에이전트에 요약만 반환하게 할 수 있습니다.
- 03:01Claude Code에서 컨텍스트를 관리하는 것은 중요합니다. 긴 세션을 요약하려면 /compact를 사용하고
- 03:11새로 시작하려면 /clear를 사용하세요. 컨텍스트 창을 효과적으로 사용하려면 원하는 내용을 구체적으로
- 03:17작성하세요. 현재 컨텍스트 창에서 무엇이 사용 중인지 확인하고, 답변만 필요한 작업은
- 03:22Subagents에 위임하세요.
컨텍스트 윈도우란 무엇인가요?
컨텍스트 윈도우를 Claude가 메모리에 담을 수 있는 공간의 양이라고 생각해 보세요. 프롬프트를 입력하거나, Claude가 파일을 읽거나, 도구 호출을 실행하거나, 도구 호출 결과를 받을 때마다 모두 컨텍스트 윈도우에 추가됩니다. 공간이 유한하기 때문에 이를 어떻게 사용하는지 최적화하는 것이 중요해집니다.

컨텍스트가 가득 찼을 때 발생하는 일
한계에 가까워지면 컨텍스트 윈도우는 자동으로 **압축(compacted)**됩니다. 압축은 중요한 세부 사항을 요약하고 불필요한 도구 호출 결과를 제거하여 공간을 확보합니다. 이 과정에서 세부 사항이 손실될 수 있다는 점에 유의하세요.


명령어
/compact 명령어로 압축을 수동으로 실행할 수 있습니다. 이는 그 시점까지의 모든 내용을 압축합니다. 이전에 작업한 내용에 대한 기억을 유지하면서 컨텍스트 공간을 확보하고 싶을 때 유용합니다.

이전 세션에 대한 기억 없이 완전히 처음부터 시작하고 싶다면 /clear를 실행하세요. 이는 모든 것을 제거합니다.

컨텍스트의 상태를 확인하려면 /context 명령어를 실행하세요. 컨텍스트 크기, 가장 많은 공간을 차지하는 카테고리, 그리고 분석 내용을 보여주는 시각적 그래픽에 대한 개괄적인 개요를 얻을 수 있습니다.

언제 무엇을 사용할까요
일반적인 기준은 다음과 같습니다:
-
/compact사용: 특정 기능을 작업하고 있고 컨텍스트 한계에 부딫혔지만 계속 진행해야 할 때 사용하세요. 현재 작업 중인 기능과 관련된 컨텍스트를 유지하는 것이 중요합니다. -
/clear사용: 새로운 기능을 시작하고 싶을 때 사용하세요. 이전 대화가 새로운 작업에 편향을 일으키는 것을 원하지 않을 것입니다. 세션 간에 Claude가 기억하기를 원하는 내용은 CLAUDE.md 파일에 넣어두면 처음부터 다시 알아낼 필요가 없습니다.
컨텍스트 공간을 절약하는 팁
구체적으로 작성하세요. 모호한 프롬프트는 더 작아 보일 수 있지만, 실제로는 장기적으로 더 많은 컨텍스트를 소모합니다. 명확한 지시가 없으면 Claude는 코드베이스를 더 많이 탐색하고 자체적으로 추론해야 하는데, 이는 상세한 프롬프트보다 훨씬 더 많은 컨텍스트 공간을 차지합니다.
MCP 서버를 관리하세요. MCP 서버는 사용하지 않을 때도 기본적으로 사용 가능한 모든 도구를 컨텍스트에 로드합니다. 현재 프로젝트와 관련 없는 작업을 위해 구성된 서버가 있다면 비활성화하는 것을 고려해 보세요. MCP 서버와 유사하게 작동하지만 모든 것을 미리 컨텍스트에 로드하지 않는 "Skills"를 사용해 볼 수도 있습니다.
서브에이전트를 사용하세요. 서브에이전트는 메인 에이전트와 병렬로 실행되지만 완전히 별도의 컨텍스트 윈도우를 가집니다. "인증 엔드포인트가 어디에 위치해 있나요?"와 같이 답변만 필요한 작업의 경우, 서브에이전트가 작업을 수행하고 메인 에이전트에게 요약만 반환하여 기본 컨텍스트를 깨끗하게 유지합니다.
요약
Claude Code 내에서 컨텍스트를 관리하는 것은 매우 중요합니다. 긴 세션을 요약하려면 /compact를 사용하고, 새로 시작하려면 /clear를 사용하세요. 컨텍스트 윈도우를 효과적으로 사용하려면: 프롬프트를 구체적으로 작성하고, 현재 컨텍스트를 소모하는 요소를 확인하고, 결과만 필요한 작업은 서브에이전트에 위임하세요.