복합 컨텍스트: AI 프로젝트가 오래 함께할수록 더 나아지는 이유
6개월 전, resumegeni 프로젝트에서 코딩 작업 하나를 처리하려면 한 세션 전체를 설명에 쏟아야 했어요. 에이전트는 코드 한 줄을 수정하기 전에 데이터베이스 스키마, 라우팅 규칙, 템플릿 상속 구조, 캐시 레이어, 배포 파이프라인, 테스트 패턴을 모두 이해해야 했습니다. 매 세션이 처음부터 다시 시작됐어요.
지난주에는 “마켓 페이지 성능 개선해줘”라고만 했는데, 에이전트가 이전 세션의 핸드오프 문서를 읽고 market_hub()의 병목 지점을 파악한 뒤, 집계 RPC가 포함된 페이지네이션 데이터베이스 쿼리를 구현하고, 테스트를 작성하고, 배포까지 완료했습니다. Austin 지역 응답 시간이 14초에서 108밀리초로 줄었어요. 에이전트가 더 똑똑해진 게 아닙니다. 프로젝트가 더 풍부해진 겁니다.
차이는 모델이 아닙니다. 프로젝트를 둘러싼 축적된 컨텍스트가 만든 차이입니다. 규칙을 설명하는 CLAUDE.md, 의사결정을 기록하는 메모리 파일, 세션 간 진단 결과를 보존하는 핸드오프 문서, 제약 조건을 강제하는 훅, 워크플로를 코드화한 스킬, 정확성을 검증하는 테스트 스위트, 무엇을 왜 배포했는지 기록하는 캡틴 로그. 각 산출물은 특정 문제를 해결하기 위해 만들어졌지만, 이들이 모이면 이후의 모든 문제를 더 적은 비용으로 해결할 수 있게 됩니다.
이것이 컨텍스트 복리 효과입니다.
요약
- 컨텍스트 복리 효과란 AI 지원 프로젝트가 작업 기간이 길어질수록 더 빠르게 개선되는 현상입니다. 해결된 문제가 재사용 가능한 컨텍스트를 예치하고, 이것이 다음 문제의 해결 비용을 줄여주기 때문입니다.
- 세션 사이에 모델이 좋아지는 것이 아닙니다. 프로젝트 인프라가 좋아지는 겁니다. CLAUDE.md 파일, 메모리 시스템, 훅, 스킬, 핸드오프 문서, 테스트 커버리지, 네이밍 규칙, 운영 로그가 성장합니다.
- 컨텍스트 복리 효과는 AI 에이전트와 새 프로젝트를 시작할 때 느리게 느껴지지만, 같은 프로젝트에서 500번째 세션은 빠르게 느껴지는 이유를 설명합니다. 첫 번째 세션은 컨텍스트를 쌓고, 500번째 세션은 그 컨텍스트를 사용합니다.
- 이 효과는 자동으로 발생하지 않습니다. 의사결정을 기록하는 문서, 제약 조건을 코드화하는 훅, 가정을 검증하는 테스트, 운영 이력을 보존하는 로그 같은 컨텍스트 산출물에 대한 의도적인 투자가 필요합니다.
- 컨텍스트 복리 효과를 이해하는 조직은 분기마다 엔지니어를 프로젝트 간에 순환시키는 관행을 중단하고, 축적된 프로젝트 컨텍스트를 자본 자산으로 다루기 시작할 것입니다.
무엇이 복리로 쌓이는가
컨텍스트 복리 효과는 축적된 프로젝트 지식의 여섯 가지 범주를 통해 작동합니다. 각 범주는 서로 다른 유형의 수익을 예치합니다.
규칙 문서 (CLAUDE.md). CLAUDE.md 파일은 모든 에이전트 세션에 프로젝트의 작동 방식을 알려줍니다. 파일 구조, 네이밍 규칙, 임포트 패턴, 테스트 방식, 배포 프로세스를 담고 있어요. CLAUDE.md 없는 첫 세션은 규칙을 발견하는 데 많은 시간을 씁니다. 성숙한 CLAUDE.md가 있는 100번째 세션은 그 시간이 제로입니다. 한 번 기록된 규칙은 다시는 설명할 필요가 없기 때문에, 이 문서는 복리로 쌓입니다.
의사결정 메모리. 메모리 파일은 무엇을 결정했는지뿐만 아니라 왜 그렇게 결정했는지를 기록합니다. 이후 세션이 같은 트레이드오프에 직면하면 답을 다시 도출하는 대신 메모리를 읽습니다. 제 메모리 시스템은 프로젝트 결정, 사용자 선호도, 피드백 수정 사항, 참조 포인터를 저장합니다. 개별 메모리는 작지만, 이 모음 전체가 프로젝트에서 이미 결론난 질문을 다시 논의하지 않게 해주는 의사결정 캐시입니다.
핸드오프 문서. 핸드오프 문서는 세션 경계를 넘어 진단 결과를 보존합니다. 마켓 페이지 성능 핸드오프는 세 번의 코드 리뷰 수정과 두 번의 우선순위 재조정을 거쳐 살아남았고, 나흘 뒤 구현 과정을 이끌었습니다. 핸드오프가 없었다면 다음 세션은 조사를 처음부터 시작했을 것이고, 초안이 그랬듯 잘못된 코드 경로를 타겟으로 삼았을 가능성이 높습니다. 핸드오프는 진단 시간을 재사용 가능한 산출물로 전환하여 복리로 쌓였습니다.
훅과 제약 조건. 모든 훅은 과거 실패에서 얻은 교훈을 코드화한 것입니다. 제 파괴적 API 가드는 에이전트가 Cloudflare 캐시 전체를 퍼지한 이후에 만들어졌습니다. 샌드박스 훅은 에이전트가 ~/.ssh/에 쓰기를 시도한 이후에 생겼습니다. 드리프트 감지기는 에이전트가 60일간 12번이나 작업 흐름을 놓친 이후에 만들어졌습니다. 각 훅은 같은 유형의 장애가 이후 모든 세션에서 재발하는 것을 막습니다. 훅은 사고 대응을 영구적인 예방 조치로 전환하기 때문에 복리로 쌓입니다.
스킬과 워크플로. 스킬은 에이전트가 프로세스를 다시 발명하지 않고도 실행할 수 있는 코드화된 워크플로입니다. 제 /nightcheck 스킬은 TTFB 벤치마크, 캐시 검증, 포괄적 사이트맵 크롤링을 포함한 50개 이상의 페이지 점검을 실행합니다. /scan-intel 스킬은 8개 연구 주제에 걸쳐 6개 학술 소스를 중복 제거 및 점수화하며 검색합니다. /blog-translator 스킬은 포맷을 유지하면서 글을 9개 로케일로 번역합니다. 각 스킬은 한 번 만드는 데 비용이 많이 들었지만 이후로는 무료로 실행됩니다. 스킬은 프로세스 지식을 실행 가능한 자동화로 전환하기 때문에 복리로 쌓입니다.
테스트 스위트. 테스트는 변경 후에도 프로젝트가 여전히 작동하는지 검증합니다. 성숙한 테스트 스위트가 있으면 에이전트는 실패가 즉시 포착되므로 과감한 변경을 자신 있게 수행할 수 있습니다. 테스트가 없는 프로젝트는 에이전트가 자신의 작업을 검증할 수 없기 때문에 보수적이고 점진적인 변경만 강요합니다. 테스트 커버리지는 각 테스트가 미래의 변경을 더 저렴하고 안전하게 만들기 때문에 복리로 쌓입니다.
복리 곡선
컨텍스트 복리 효과는 특징적인 곡선을 따릅니다.
세션 1-10: 투자 단계. 대부분의 노력이 기능 전달이 아닌 컨텍스트 구축에 투입됩니다. CLAUDE.md를 작성하고, 규칙을 정립하고, 첫 훅을 만들고, 테스팅 프레임워크를 설정합니다. 제품이 아닌 인프라를 만들고 있기 때문에 산출량이 느리게 느껴집니다.
세션 10-50: 가속 단계. 컨텍스트가 가치를 되돌려주기 시작합니다. 에이전트가 규칙에 대해 묻지 않고 따르기 시작합니다. 훅이 배포 전에 실수를 잡습니다. 스킬이 반복적인 워크플로를 자동화합니다. 컨텍스트 기반이 성장하기 때문에 각 세션이 이전보다 더 많은 산출물을 만들어냅니다.
세션 50-200: 복리 단계. 프로젝트에 충분한 컨텍스트가 축적되어 어려운 문제가 쉬워집니다. 성숙한 CLAUDE.md, 메모리 파일 세트, 핸드오프 문서를 읽는 에이전트는 추가 안내 없이 복잡한 다단계 구현을 수행할 수 있습니다. 마켓 페이지 수정이 이 단계에서 일어났습니다. “마켓 페이지 성능 개선해줘”라는 한 문장이 나흘간의 프로세스를 시작했고, 132배 개선으로 마무리됐습니다. 컨텍스트 인프라가 진단, 제약 조건, 검증 기준을 모두 담고 있었기 때문입니다.
세션 200+: 유지보수 단계. 대부분의 규칙, 제약 조건, 워크플로가 이미 포착되어 있기 때문에 새로운 컨텍스트 생성 속도가 느려집니다. 처음부터 만드는 것이 아니라 기존 컨텍스트를 업데이트하는 데 초점이 맞춰집니다. 오래된 메모리를 수정하고, 스킬을 확장하고, 새로운 엣지 케이스에 대한 테스트를 추가하는 식입니다. 복리 효과는 고원에 도달하지만 여전히 높은 수준을 유지합니다.
왜 이것이 분명하지 않은가
세 가지 요인이 복리 효과를 가립니다.
모델 개선이 컨텍스트 개선을 가린다. AI 세션이 시간이 지남에 따라 좋아지면 더 나은 모델 덕분이라고 생각하게 됩니다. Claude Opus 4.6은 Claude 3.5 Sonnet보다 분명히 더 좋습니다. 하지만 오래 진행된 프로젝트에서 체감하는 개선 폭은 모델 개선을 초과합니다. 컨텍스트 복리가 모델 개선 위에 쌓이기 때문입니다. 같은 모델에서 새 프로젝트로 전환하면 그 차이가 드러납니다. 복합 컨텍스트가 없기 때문에 새 프로젝트가 느리게 느껴지는 것입니다.
컨텍스트는 눈에 보이지 않는다. CLAUDE.md 파일은 텍스트 문서이고, 메모리 파일은 마크다운 노트이며, 훅은 셸 스크립트입니다. 이 산출물 중 어떤 것도 개별적으로는 인상적으로 보이지 않습니다. 복리 효과는 단일 산출물에서 보이지 않습니다. 전체 컨텍스트 스택을 대상으로 작동하는 세션들의 종합적인 행동에서만 보입니다. 특정 파일 하나를 가리키며 “이것 때문에 프로젝트가 빠르다”고 말할 수 없습니다. 500번째 세션과 1번째 세션을 비교해야만 그 차이를 알 수 있습니다.
새 프로젝트 시작이 설렌다. 새 프로젝트에는 신선한 에너지와 기술 부채가 없습니다. 하지만 축적된 컨텍스트도 없습니다. 새 프로젝트의 첫 세션은 영향력 있게 느껴지는 고수준 결정을 내리기 때문에 생산적으로 느껴집니다. 기존 프로젝트의 20번째 세션은 확립된 규칙 안에서 실행하기 때문에 일상적으로 느껴집니다. 그 일상적인 느낌이 바로 복리 효과가 작동하고 있다는 신호이고, 설레는 느낌은 복리 효과가 부재하다는 의미입니다.
무엇이 복리를 방해하는가
네 가지 실패 모드가 복리 곡선을 깨뜨립니다.
컨텍스트 부패. 오래된 메모리, 구식 CLAUDE.md 섹션, 폐기된 훅은 명확성이 아닌 혼란을 만듭니다. 구식 규칙을 따르는 에이전트는 규칙이 아예 없는 에이전트보다 더 나쁜 결과물을 냅니다. 컨텍스트에는 유지보수가 필요합니다. 제 메모리 시스템에는 최종 업데이트 타임스탬프와 명시적인 유효성 검사가 포함되어 있습니다. 죽은 컨텍스트는 없는 것보다 나쁩니다.
컨텍스트 난립. 파일이 너무 많고, 훅이 너무 많고, 스킬이 너무 많으면 탐색 문제가 발생합니다. 에이전트가 관련 컨텍스트를 찾지 못하면 컨텍스트는 복리로 쌓이지 않습니다. 조직화가 중요합니다. 제 메모리 파일은 설명이 포함된 프론트매터를 사용해서 이후 세션이 전체 내용을 읽지 않고도 관련성을 평가할 수 있습니다. 훅은 이벤트 유형별로 로드하는 디스패처에 등록되어 있습니다. 발견 가능한 컨텍스트는 복리로 쌓이고, 묻힌 컨텍스트는 부패합니다.
세션 고립. 세션이 영속 컨텍스트를 읽거나 쓰지 않으면 매 세션이 제로에서 시작합니다. 복리 효과를 위해서는 의도적인 다리가 필요합니다. 세션 간 진단을 전달하는 핸드오프 문서, 결정을 기록하는 메모리 기록, 운영 이력을 남기는 캡틴 로그가 그것입니다. 이런 다리가 없으면 500개 세션을 거친 프로젝트도 실질적으로 1개 세션만큼의 컨텍스트만 갖게 됩니다.
플랫폼 변동. AI 도구를 바꾸면 컨텍스트 스택이 초기화됩니다. 한 플랫폼용으로 작성된 CLAUDE.md가 다른 플랫폼에서 자동으로 도움이 되지 않습니다. 한 플랫폼의 이벤트 모델용 훅은 다른 플랫폼에서 실행되지 않습니다. 컨텍스트 복리는 플랫폼에 종속적이며, 이는 록인을 만드는 동시에 해자이기도 합니다. 한 플랫폼에서 컨텍스트 스택이 깊을수록 전환 비용은 높아지고, 계속 전환하는 경쟁자 대비 프로젝트 개선 속도는 빨라집니다.
자본으로서의 컨텍스트 복리
금융에서 복리는 충분한 시간이 주어지면 적은 예치금을 큰 금액으로 만들어줍니다. 핵심 통찰은 수익 자체가 추가 수익을 생성한다는 점입니다. 컨텍스트 복리도 같은 방식으로 작동합니다.
CLAUDE.md에 기록된 규칙은 이후 모든 세션에서 재설명을 줄여줍니다. 절약된 시간은 새로운 문제 해결에 쓰이고, 그 과정에서 새로운 규칙이 생기며, 이는 미래의 재설명을 더 줄여줍니다. 특정 장애 유형을 방지하는 훅은 이후 모든 세션에서 해당 장애에 대한 재조사를 제거합니다. 절약된 시간은 새로운 장애 유형에 대한 새 훅을 만드는 데 쓰입니다. 각 투자가 추가 투자를 가능하게 하는 수익을 생성합니다.
조직에 대한 시사점: 프로젝트 컨텍스트는 자본 자산입니다. 분기마다 엔지니어를 프로젝트 간에 순환시키면, 저축 계좌를 해지하면 축적된 이자가 사라지듯 축적된 컨텍스트가 파괴됩니다. AI 지원을 받으며 같은 프로젝트에 2년간 머무르는 팀이 분기마다 순환하는 팀보다 더 좋은 성과를 낼 것입니다. 개인의 역량이 더 뛰어나서가 아니라 컨텍스트가 복리로 쌓였기 때문입니다.
개인 엔지니어에 대한 시사점: 여러분의 AI 인프라는 투자 포트폴리오입니다. 모든 CLAUDE.md 섹션, 모든 메모리 파일, 모든 훅, 모든 스킬, 모든 핸드오프 문서가 예치금입니다. 포트폴리오는 처음에 천천히 성장합니다. 수백 세션 후에는 컨텍스트 스택을 보지 못하는 관찰자에게 어려운 문제가 쉬워 보이게 만드는 수익을 생성합니다.
마켓 페이지가 14초에서 108밀리초가 됐습니다. 관찰자는 성능 수정을 봅니다. 저는 세 번의 수정을 거쳐 살아남은 핸드오프 문서, 회귀를 측정한 나이트체크 시스템, 캐시 퍼지 재발을 방지한 파괴적 가드, 잘못된 초기 타겟을 포착한 코드 리뷰 스킬, 그리고 이 모든 것을 가능하게 만든 500개 세션의 축적된 컨텍스트를 봅니다.
이것이 복합 컨텍스트입니다.
FAQ
컨텍스트 복리 효과란 무엇인가요?
컨텍스트 복리 효과란 AI 지원 프로젝트가 시간이 지남에 따라 더 빠르게 개선되는 현상입니다. 해결된 문제가 재사용 가능한 컨텍스트(문서, 훅, 스킬, 테스트, 메모리)를 예치하고, 이것이 후속 문제의 해결 비용을 줄여주기 때문입니다. 이 용어는 복리에 비유한 것으로, 수익 자체가 추가 수익을 생성합니다.
어떤 AI 도구에서든 작동하나요?
원칙 자체는 범용적이지만, 구현은 도구의 영속 컨텍스트 지원 수준에 따라 달라집니다. Claude Code는 CLAUDE.md 파일, 훅, 스킬, 메모리 시스템을 기본 지원합니다. 다른 도구에서는 같은 효과를 얻기 위해 외부 스캐폴딩이 필요할 수 있습니다. 컨텍스트 영속 메커니즘을 더 많이 제공하는 플랫폼에서 복리 곡선이 더 가파릅니다.
복합 컨텍스트를 어떻게 시작하나요?
프로젝트 규칙을 설명하는 CLAUDE.md부터 시작하세요. 핵심 결정에 대한 메모리 파일을 추가하세요. 경험한 장애 패턴에 대해 훅을 작성하세요. 세션마다 반복하는 워크플로에 대해 스킬을 만드세요. 초기 투자는 느리게 느껴질 것입니다. 10-20세션 후에 수익이 나타나기 시작합니다.
단순히 문서화에 불과한 건 아닌가요?
아닙니다. 문서화는 한 구성 요소이지만, 컨텍스트 복리에는 실행 가능한 산출물도 포함됩니다. 런타임에 제약 조건을 강제하는 훅, 워크플로를 자동화하는 스킬, 정확성을 검증하는 테스트 스위트, 의사결정에 정보를 제공하는 메모리 시스템이 그것입니다. 정적 문서화는 설명합니다. 복합 컨텍스트는 행동합니다.
컨텍스트 윈도우 제한은 어떻게 되나요?
컨텍스트 복리는 모든 컨텍스트를 매 세션에 로드할 것을 요구하지 않습니다. 필요할 때 적절한 컨텍스트를 사용할 수 있으면 됩니다. CLAUDE.md는 자동으로 로드됩니다. 메모리 파일은 관련성에 따라 조회됩니다. 핸드오프 문서는 특정 작업을 이어갈 때 읽힙니다. 컨텍스트 스택은 단일 컨텍스트 윈도우보다 크지만, 에이전트는 세션당 관련 부분만 접근합니다.
프로젝트에 복합 컨텍스트가 있는지 어떻게 알 수 있나요?
프로젝트 초기와 후기에 유사한 작업에 필요한 노력을 비교해 보세요. 1개월 차에 전체 세션이 걸렸던 작업이 6개월 차에 프롬프트 하나로 완료된다면, 복합 컨텍스트가 작동하고 있는 것입니다. 노력이 동일하다면 컨텍스트가 축적되지 않고 있거나 세션 간에 보존되지 않고 있는 것입니다.
출처
이 글은 2025년 5월 이후 6개 프로젝트에 걸친 500회 이상의 자율 코딩 세션에서 얻은 프로덕션 경험을 바탕으로 합니다. 참조된 구체적 사례:
- 마켓 페이지 성능: 핸드오프 문서, 나이트체크 검증, 배포 과정은 2026년 3월 21-25일 캡틴 로그에 기술
- 파괴적 API 가드: 에이전트가 Cloudflare 캐시 전체를 퍼지한 이후 구축, deploy-and-defend 게시물에 기술
- 훅 및 스킬 인프라: 15개 이벤트 유형을 가로채는 84개 훅, NIST 코멘트에 기술
- 드리프트 감지: 60개 이상의 세션에 걸친 코사인 유사도 추적, The Invisible Agent에 기술
- 자동 연구 루프: Apple Silicon에서의 고정 예산 실험, Claudini 논문에서 검증
- Anthropic Claude Code 메모리 및 프로젝트 지침 문서: Manage Claude’s memory
- Andrej Karpathy의 autoresearch 리포지토리: autoresearch