콘텐츠로 이동

5주차: 컨텍스트 관리와 Context Rot 방지

Phase 25주차중급강의일: 2026-03-31

왜 5주차에서 컨텍스트 관리가 중심인가

섹션 제목: “왜 5주차에서 컨텍스트 관리가 중심인가”

4주차에서 루프 패러다임의 위력을 배웠다 — 같은 모델을 반복 호출하되, 결정론적 검증으로 품질을 확보한다. 하지만 루프가 작동하려면 전제 조건이 있다: 컨텍스트가 깨끗해야 한다.

4주차의 Huntley는 이 문제를 알고 있었다. 그래서 매 루프마다 새 세션을 시작하는 “fresh context” 전략을 선택했다. 하지만 이것만으로는 부족하다:

  • 루프 내부에서도 컨텍스트는 오염된다 — 도구 호출 결과, 실패한 시도, 에러 메시지가 쌓인다
  • 세션 간 상태 전달이 필요하다 — 매번 처음부터 시작하면 이전 루프의 학습이 사라진다
  • 6주차 인스트럭션 튜닝의 전제: CLAUDE.md에 제약을 추가해도, 컨텍스트가 오염되면 에이전트가 제약을 “잊는다”

이번 주의 핵심 질문: 어떻게 컨텍스트를 결정론적으로 관리할 것인가?

이 질문에 답하기 위해 먼저 Context Rot이 발생하는지, 얼마나 심각한지를 실증 데이터로 확인하고, 그 다음 해법을 쌓아 올린다.


에이전트가 장시간 실행되면서 컨텍스트 창이 점점 오염되는 현상이다:

Clean Context (초기)[시스템 프롬프트] [태스크 명세] [현재 코드]
Context Rot (30회 시도 후)[시스템 프롬프트] [태스크 명세] [실패 #1] [에러 #1] [실패 #2] [에러 #2] … 128K 토큰 → 환각 발생, 추론 품질 급락

실증 데이터: Chroma의 Context Rot 연구

섹션 제목: “실증 데이터: Chroma의 Context Rot 연구”

“컨텍스트가 길어지면 나빠진다”는 직관적이지만, 얼마나 나빠지는지는 Chroma의 2026년 실증 연구가 처음으로 정량화했다. 18개 frontier 모델(Claude, GPT, Gemini, Llama 등)을 대상으로 테스트한 결과:

발견수치
중간 위치(mid-window) 정확도 하락30%+
입력 길이와 정확도 상관모든 모델에서 음의 상관 — 예외 없음
반직관적 결과섞인(shuffled) 문서가 논리적으로 정렬된 문서보다 정확도 높음

마지막 발견이 특히 중요하다. 논리적 순서로 배치하면 모델이 “이미 앞에서 봤으니 뒤는 대충 읽어도 된다”고 판단하는 경향이 있다. 섞으면 매 위치에서 주의를 기울여야 하므로 오히려 정확도가 올라간다.

왜 발생하는가 — 3가지 복합 메커니즘

섹션 제목: “왜 발생하는가 — 3가지 복합 메커니즘”

Chroma 연구가 얼마나 나빠지는지를 보여줬다면, 후속 연구는 나빠지는지를 밝혀냈다. 세 가지 메커니즘이 서로를 증폭시킨다:

메커니즘설명스케일링
Lost-in-the-middle컨텍스트 중간에 위치한 정보가 시작/끝보다 검색 정확도 낮음위치 의존
Attention dilution컨텍스트가 길어질수록 각 토큰이 받는 attention 비중 감소이차(quadratic) — 길이 2배 → 희석 4배
Distractor interference관련 없는 정보가 관련 정보에 대한 추론을 능동적으로 방해노이즈 비율에 비례

이 연구에서 나온 중요한 개념: MECW (Maximum Effective Context Window) — 모델의 in-context 정보 정확도가 사용 가능한 수준 이하로 떨어지는 지점. MECW ≠ 공칭 최대 컨텍스트. 벤치마크에서 최상위 모델도 공칭 한계 훨씬 이전에 정확도가 떨어지기 시작했다. 아래 표에서 실효 사용량이 60-70%인 이유가 바로 이것이다.

1M 토큰 시대 — 큰 창이 해결책인가?

섹션 제목: “1M 토큰 시대 — 큰 창이 해결책인가?”

2026년 기준 frontier 모델의 컨텍스트 창:

모델공식 컨텍스트실효 사용량
Claude Opus/Sonnet 4.61M 토큰~600-700K
GPT-5.41M 토큰~600-700K
Gemini 2.5 Pro1M 토큰~600-700K

실효 사용량이 60-70%인 이유: 나머지는 시스템 프롬프트(~50K), 도구 스키마(~30K), 안전 마진(~200K)이 차지한다.

Compaction 전략 — 무엇을 버리고 무엇을 남길 것인가

섹션 제목: “Compaction 전략 — 무엇을 버리고 무엇을 남길 것인가”

auto-compaction이 작동할 때, 보존 우선순위가 결정적이다:

우선순위보존 대상이유
1 (최고)시스템 프롬프트 + CLAUDE.md에이전트의 “헌법” — 이것을 잃으면 행동 규칙이 사라진다
2최근 4개 메시지현재 작업의 즉각적 맥락
3현재 태스크의 도구 결과방금 읽은 파일, 방금 실행한 테스트 결과
4 (최저)오래된 대화 + 이전 도구 결과요약으로 대체 가능

압축하지 말아야 할 때: 다음 상황에서는 compaction보다 세션을 끊고 새로 시작하는 것이 낫다:

  • 대화 주제가 완전히 전환된 경우 (이전 맥락이 오히려 방해)
  • 연속 5회 이상 같은 에러가 반복되는 경우 (Context Rot이 이미 심각)
  • 요약 자체가 원본의 50% 이상인 경우 (압축 효율이 없음)

이것이 4주차에서 Huntley가 “fresh context”를 선택한 이유다 — 루프 간에는 compaction보다 완전 초기화 + 상태 파일 전달이 더 결정론적이다.

휴리스틱을 넘어서 — ACON 압축 프레임워크

섹션 제목: “휴리스틱을 넘어서 — ACON 압축 프레임워크”

현재 compaction 전략(Claude Code 포함)은 휴리스틱 기반이다 — “최근 4개 보존”, “나머지 요약” 같은 규칙. ACON (Agent Context Optimization, arXiv:2510.00615, 2025년 10월)은 압축을 정형 최적화 문제로 접근한다:

지표결과
피크 토큰 절감26-54%
정확도 유지95%+
방식gradient-free, API 호환 (어떤 모델이든 API로 사용 가능)

ACON의 핵심 통찰: 고정 규칙 대신, 각 컨텍스트 세그먼트가 현재 태스크에 기여하는 정도를 동적으로 채점하고 임계값 이하를 제거한다. “항상 최근 4개 보존”(휴리스틱)과 “현재 태스크에 가장 관련 있는 메시지 보존”(최적화)의 차이다.

현재 Claude Code는 휴리스틱을 사용하지만, ACON은 이 분야의 발전 방향을 보여준다 — 규칙 기반에서 최적화 기반 compaction으로의 전환.

Ralph 루프의 해법: Context Window Wiping

섹션 제목: “Ralph 루프의 해법: Context Window Wiping”

Ralph 루프의 핵심 혁신 중 하나는 태스크 완료 또는 실패 후 컨텍스트를 완전히 초기화하는 것이다:

class RalphContextManager:
def __init__(self, max_tokens: int = 200_000):
self.max_tokens = max_tokens
self.state_file = "claude-progress.txt"
def should_wipe_context(self, current_tokens: int) -> bool:
"""컨텍스트 창의 75% 이상 사용 시 초기화"""
return current_tokens > self.max_tokens * 0.75
def build_fresh_context(self) -> str:
"""상태 파일에서 결정론적으로 컨텍스트 재구성"""
state = self.load_state()
return f"""
# 프로젝트 상태
{state['completed_tasks']}
# 현재 태스크
{state['current_task']}
# 관련 코드 (현재 버전만)
{state['relevant_code_snippet']}
"""
def save_state(self, task: str, status: str):
"""다음 루프를 위한 상태 저장"""
with open(self.state_file, 'a') as f:
f.write(f"[{status}] {task}\n")
claude-progress.txt완료/실패 태스크 기록
fix_plan.md구조화된 태스크 큐
@codebase_map.md파일 구조 스냅샷 (최신 유지)

fix_plan.md 템플릿:

# 프로젝트: Calculator App
## 완료된 태스크
- [x] 기본 파일 구조 생성 (2026-03-31 14:23)
- [x] add() 함수 구현 및 테스트 통과 (2026-03-31 14:45)
## 현재 태스크
- [ ] subtract() 함수 구현
- 예상 파일: calculator.py:15-25
- 관련 테스트: tests/test_calculator.py:20-35
## 대기 중인 태스크
- [ ] multiply() 함수
- [ ] divide() 함수 (0 나눗셈 예외 처리 필수)

토큰 경제학 — 40-70%의 낭비를 줄이는 법

섹션 제목: “토큰 경제학 — 40-70%의 낭비를 줄이는 법”

컨텍스트 관리의 궁극적 목표는 같은 예산으로 더 많은 유용한 작업을 하는 것이다. 실측 데이터에 따르면 에이전트 입력 토큰의 40-70%가 낭비다 — 중복된 도구 결과, 불필요한 파일 내용, 과도한 시스템 프롬프트.

모델 라우팅 — 모든 작업에 Opus를 쓸 필요는 없다

섹션 제목: “모델 라우팅 — 모든 작업에 Opus를 쓸 필요는 없다”
태스크 유형비중권장 모델비용 (1M 토큰)
단순 조회, 포맷팅, 타입 확인60-70%Haiku$1 / $5
표준 코딩, 버그 수정, 기능 추가25-30%Sonnet$3 / $15
아키텍처 설계, 복잡한 디버깅5-10%Opus$5 / $25

모델 라우팅만으로 5-8배 비용 절감이 가능하다. Claude Code의 effort 파라미터(4주차 참조)가 이 라우팅의 제품화된 형태다.

Prompt Caching — 반복을 자산으로 바꾸기

섹션 제목: “Prompt Caching — 반복을 자산으로 바꾸기”

에이전트의 매 턴에서 시스템 프롬프트, 도구 스키마, CLAUDE.md는 동일한 내용이 반복된다. Prompt caching은 이 정적 부분을 캐시하여 재사용한다:

작업가격 (기본 대비)
캐시 쓰기 (5분 TTL)1.25x
캐시 쓰기 (1시간 TTL)2x
캐시 읽기0.1x (90% 절감)

루프 패러다임에서의 시사점:

  • 연속 세션: 첫 턴에서 캐시 생성 → 이후 턴에서 0.1x로 읽기 = 매우 경제적
  • Ralph fresh context: 매 루프마다 새 세션 → 캐시 재생성 필요 = 비용 증가
  • 트레이드오프: Context Rot 방지(fresh) vs 캐시 효율(continuous). 4주차의 Huntley Showdown과 같은 문제

Initializer 패턴 — 2-phase 상태 관리

섹션 제목: “Initializer 패턴 — 2-phase 상태 관리”

Anthropic의 공식 하네스 가이드에서 권장하는 2-phase 패턴은 위 상태 파일 설계를 체계화한 것이다:

Phase 1 — Initializer (첫 루프):

  1. 요구사항을 파싱하여 feature list를 JSON으로 생성
  2. claude-progress.txt 초기화
  3. init.sh (환경 설정 스크립트) 생성
{
"features": [
{"id": "F001", "name": "사용자 인증", "status": "pending", "files": ["src/auth.py"]},
{"id": "F002", "name": "대시보드 UI", "status": "pending", "files": ["src/dashboard.py"]}
],
"constraints": ["pytest 통과 필수", "타입 힌트 100%"]
}

Phase 2 — Coding Agent (이후 루프):

  1. init.sh 실행으로 환경 설정
  2. JSON에서 "status": "pending" 항목을 꺼내 작업
  3. 완료 시 "status": "done" + claude-progress.txt에 기록
  4. 다음 루프는 JSON을 읽고 남은 항목부터 시작

이 패턴은 현재 week-05의 state file 3종(claude-progress.txt, fix_plan.md, @codebase_map.md)의 상위 추상화다. JSON feature list가 fix_plan.md를, init.sh가 @codebase_map.md를 대체한다.


영구 지식 시스템 — LLM Wiki 패턴

섹션 제목: “영구 지식 시스템 — LLM Wiki 패턴”

Initializer 패턴이 단일 태스크의 상태를 관리한다면, LLM Wiki 패턴은 프로젝트 전체의 지식을 영구적으로 축적한다. Karpathy가 제안한 이 패턴의 핵심은 “지식을 한 번 정리하고, 최신 상태를 유지한다” (compile once, keep current)이다.

아키텍처:

계층역할예시
Raw Sources불변 원본 자료논문 PDF, 회의 녹취, 코드베이스
WikiLLM이 생성·유지하는 마크다운 파일요약, 교차 참조, 엔티티 페이지
Schema구조와 워크플로우를 정의하는 설정 파일CLAUDE.md에 wiki 규칙 기술

3대 연산:

  1. Ingest — 새 원본 자료를 읽고, 요약을 작성하고, 관련 wiki 페이지를 업데이트
  2. Query — 질문에 대해 wiki를 검색하여 답변을 합성하고, 새 발견을 다시 wiki에 기록
  3. Lint — 모순, 오래된 정보, 고아 페이지, 누락된 교차 참조를 점검

이 패턴은 Initializer의 상위 진화형이다: state file 3종(단일 태스크) → JSON feature list(다기능 프로젝트) → Wiki(영구 지식 그래프). 컨텍스트 관리의 궁극적 형태는 세션마다 전체를 다시 파악하는 것이 아니라, 축적된 지식을 참조하는 것이다.


지식 그래프 기반 토큰 절감 — Graphify

섹션 제목: “지식 그래프 기반 토큰 절감 — Graphify”

컨텍스트에 원본 파일을 그대로 넣는 대신, 코드베이스를 지식 그래프로 변환하여 필요한 부분만 조회하면 토큰 소비를 극적으로 줄일 수 있다. Graphify는 이 접근법의 실전 구현체다.

동작 방식:

  • 코드 분석: tree-sitter AST 추출로 클래스, 함수, import, 호출 그래프를 로컬에서 파싱 (LLM 호출 불필요, 코드가 외부로 전송되지 않음)
  • 문서/미디어 분석: PDF, 이미지, 동영상 등을 LLM으로 의미 추출
  • 그래프 구축: NetworkX + Leiden 클러스터링으로 커뮤니티 탐지, 인터랙티브 HTML 시각화 + JSON 출력
  • 신뢰도 태깅: 관계를 EXTRACTED(확정), INFERRED(추론, 점수 포함), AMBIGUOUS(모호)로 구분

토큰 효율: 혼합 코퍼스에서 원본 파일 직접 읽기 대비 71.5배 토큰 절감. 한 번 그래프를 구축하면 SHA256 캐시로 증분 업데이트만 수행한다.

이 접근법은 LLM Wiki 패턴과 결합할 수 있다: Graphify로 코드베이스의 구조를 그래프화하고, LLM Wiki로 그 위에 인사이트와 결정 사항을 축적한다.

LazyGraphRAG — 대규모 배포를 위한 경량 그래프 검색

섹션 제목: “LazyGraphRAG — 대규모 배포를 위한 경량 그래프 검색”

Graphify가 단일 코드베이스를 로컬에서 그래프화한다면, Microsoft의 LazyGraphRAG는 엔터프라이즈 규모의 문서에 그래프 기반 검색을 적용한다:

지표LazyGraphRAG vs Full GraphRAG
인덱싱 비용0.1% (1/1000)
쿼리 비용4% (1/25)
품질벡터 RAG, RAPTOR 등 경쟁 기법 대비 우위

LazyGraphRAG는 사전 요약 없이 lazy evaluation으로 그래프를 구축하여, 1M 토큰 컨텍스트 창보다도 우수한 검색 품질을 달성한다. Microsoft Discovery(Azure)에 실전 배포되어 있다.

Graphify(로컬 코드베이스, 개인 사용) vs LazyGraphRAG(대규모 문서, 엔터프라이즈) — 비용-품질 스펙트럼의 두 지점이다.


컨텍스트를 관리하는 접근법은 도구마다 다르다. 2026년 기준 세 가지 전략이 경쟁 중이다:

전략대표 도구방식장점단점
ExplicitCursor사용자가 컨텍스트에 넣을 파일을 직접 선택정밀한 제어, 토큰 낭비 최소수동 노동, 누락 리스크
AmbientWindsurf (Cascade)도구가 자동으로 관련 파일 탐지편리, 누락 방지과다 포함, 토큰 낭비 리스크
HybridClaude Code파일 기반 영속(CLAUDE.md) + 자동 압축균형, 루프 친화적설정 필요, 학습 곡선
TieredGitHub Copilot3계층 메모리(user/repo/session) + Agent ModeVS Code UX 친숙, 28일 자동 메모리VS Code 중심, CLI 제어 제한
SandboxedCodex CLI컨테이너 격리 + AGENTS.md안전한 실행, 도구 중립MCP 미지원, 컨텍스트 192K 제한
Large-windowGemini CLI1M 컨텍스트 + GEMINI.md무료 티어, 최대 컨텍스트생태계 신규, 도구 연동 적음
AutonomousDevin전체 자율 세션엔드투엔드 자동화~35분/10 ACU 후 성능 저하

VS Code Copilot은 2026년에 3계층 메모리(user/repository/session)를 도입하여, 사용자 선호(전역) → 프로젝트 규칙(레포) → 현재 대화(세션)를 분리했다. Claude Code의 CLAUDE.md 3레벨 계층(전역/프로젝트/로컬)과 동일한 설계 원리다.

인스트럭션 파일 수렴 — 업계가 파일 기반 컨텍스트를 검증하다

섹션 제목: “인스트럭션 파일 수렴 — 업계가 파일 기반 컨텍스트를 검증하다”

2025-2026년에 주목할 트렌드: 모든 주요 AI 코딩 도구가 독립적으로 파일 기반 컨텍스트 관리에 수렴했다. 경쟁하는 거의 모든 것에서 다르지만, 컨텍스트 관리 아키텍처만큼은 같은 결론에 도달했다:

도구인스트럭션 파일계층 구조
Claude CodeCLAUDE.md3레벨: ~/.claude/(전역) → project/.claude/(프로젝트) → workspace/(로컬)
OpenAI Codex CLIAGENTS.md디렉토리 트리 계층적 탐색 (가장 가까운 파일 우선)
Google Gemini CLIGEMINI.md프로젝트 루트
Cursor.cursor/rules/*.mdcGlob 패턴으로 스코프 지정
GitHub Copilot.github/copilot-instructions.md단일 파일 + 28일 자동 메모리
WindsurfCascade Memories사용 패턴에서 자동 생성

에이전트가 LLM에 구조화된 데이터를 보낼 때, 직렬화 포맷에 따라 토큰 소비가 2~3배 차이난다. 동일한 50명 사용자 목록을 7가지 포맷으로 직렬화한 실험 결과:

포맷토큰 수LLM 정확도적합 상황
CSV~80044.3%순수 테이블 (정확도 주의)
Markdown-KV~95060.7%단순 키-값 검색
TOON99376.4%균일 배열 데이터
JSON (compact)~1,10073.7%범용 — 가장 안전한 균형점
JSON (pretty)1,48175.0%인간 가독성 필요 시
YAML1,71074.5%중첩 설정, 프롬프트 구조화
XML2,69072.1%레거시 시스템 연동

TOON — 토큰 최적화 직렬화의 한 사례

섹션 제목: “TOON — 토큰 최적화 직렬화의 한 사례”

TOON (Token Oriented Object Notation, 2025)은 JSON의 구조를 유지하되 따옴표, 중괄호, 쉼표를 제거하고, 균일 배열을 CSV식 테이블로 표현한다. GitHub 23.7K stars, npm 1.6M/월 다운로드로 커뮤니티 관심이 실재한다.

// TOON 예시: 균일 배열 → 헤더 + 행 형식
users[3]{id,name,email}:
1,Alice,alice@example.com
2,Bob,bob@example.com
3,Carol,carol@example.com

강점: 균일 배열에서 pretty JSON 대비 40-60% 토큰 절감. 한계: 비균일/중첩 데이터에서 compact JSON보다 15-20% 더 클 수 있음. Spec이 Working Draft(v3.0, 3주 만에 v0.8→v3.0)이고, LLM이 TOON으로 훈련되지 않아 프롬프트에 포맷 설명이 필요하다.

  • 기본값: compact JSON — 모든 LLM이 이해하고, 생태계가 성숙. pretty JSON 대비 25-40% 절감.
  • 대규모 균일 테이블(100+ rows): TOON 또는 CSV 검토 — 단, 정확도 트레이드오프 측정 필수.
  • API 기반 구조화 출력: function calling / structured output API가 있으면 그것이 최적 (Microsoft 측정: JSON 대비 42% 절감).
  • 7주차 멀티에이전트: 에이전트 간 아티팩트를 compact JSON으로 설계. Week 7 아티팩트 핸드오프 참조.

  1. 1M 토큰 컨텍스트가 있으면 Context Rot은 해결되는가? Chroma 연구 데이터를 근거로 답하라.
  2. Ralph의 fresh context vs 연속 세션 — 캐싱 비용(fresh = 매번 재생성, continuous = 0.1x 읽기)까지 고려하면 어느 쪽이 경제적인가? 어떤 조건에서 역전되는가?
  3. CLAUDE.md를 200줄 이하로 유지하라는 조언의 근거는 무엇인가? SkillReducer의 “less-is-more” 효과와 연결하여 설명하라.
  4. Chroma 연구에서 섞인 문서가 정렬된 문서보다 정확도가 높은 이유를 추론하라. 이것이 컨텍스트 설계에 주는 시사점은?
  5. Initializer 패턴에서 feature list를 JSON으로 쓰는 이유는 무엇인가? Markdown으로 쓰면 어떤 문제가 생기는가?
  6. MECW(실효 최대 컨텍스트 창)는 항상 공칭 최대보다 작다. 기업 AI 실패의 65%가 다단계 추론 중 컨텍스트 드리프트에서 비롯된다면, 에이전트 세션을 어떻게 설계해야 하는가? “스프린트” 패턴(5-10 메시지 짧은 상호작용 + 새 컨텍스트)과 연결하여 논하라.

  1. 토큰 사용량 측정

    Claude Code 세션에서 /cost 명령을 실행하여 현재 세션의 토큰 사용량을 확인한다. 10턴 대화 후 다시 측정하여 증가량을 기록한다.

    import anthropic
    def count_tokens(messages: list) -> int:
    client = anthropic.Anthropic()
    response = client.messages.count_tokens(
    model="claude-opus-4-6",
    messages=messages
    )
    return response.input_tokens
  2. Compaction 전후 비교

    20턴 이상 대화한 세션에서 /compact 명령을 실행한다. 압축 전후의 토큰 수, 응답 품질, 작업 연속성을 비교 기록한다.

  3. 상태 파일 시스템 구축

    fix_plan.mdclaude-progress.txt를 자동으로 업데이트하는 헬퍼 함수를 작성한다. Lab 05의 state_tracker.py를 참고한다.

  4. Lab 05 연결

    위 실험 결과를 바탕으로 Lab 05의 token_counter.py, context_manager.py, state_tracker.py, main.py 4개 모듈을 구현한다.

제출 마감: 2026-04-07 23:59

요구사항:

  1. 토큰 카운터 통합된 Ralph 루프 (ralph_with_context.sh)
  2. Context Rot 시뮬레이션 및 측정 결과 그래프
  3. 자동 컨텍스트 초기화 로직 구현
  4. 상태 추적 시스템 (fix_plan.md + claude-progress.txt) 동작 증명

  1. Context Rot은 실증적 현상이다 — Chroma 연구: 18개 모델 모두에서 입력이 길어질수록 정확도 하락. 중간 위치에서 30%+ 저하.
  2. 1M 토큰 창이 해결책이 아니다 — 큰 창 = Context Rot이 발생할 공간이 더 넓어질 뿐. 실효 사용량은 60-70%.
  3. Compaction은 토큰 기반 — 모델 최대의 ~75% 도달 시 자동 트리거. 최근 4개 메시지 보존, 나머지 요약.
  4. Ralph의 fresh context가 루프 간 최선 — 루프 내부에서는 compaction, 루프 사이에서는 완전 초기화 + 상태 파일 전달.
  5. 토큰 40-70%가 낭비 — 모델 라우팅(Haiku 60-70%), prompt caching(read 0.1x), CLAUDE.md 200줄 이하로 절감.
  6. Initializer 패턴 — JSON feature list + claude-progress.txt + init.sh 2-phase 구조로 상태를 결정론적으로 관리.
  7. LLM Wiki 패턴 — 세션 단위 상태 파일을 넘어, LLM이 영구 지식 위키를 유지·관리하는 아키텍처. Ingest → Query → Lint 사이클로 지식을 축적.
  8. 지식 그래프 토큰 절감 — Graphify 같은 도구로 코드베이스를 그래프화하면 원본 대비 71.5배 토큰 절감 가능. LazyGraphRAG는 엔터프라이즈 규모에서 GraphRAG 비용의 0.1%로 유사 품질 달성.
  9. 인스트럭션 파일 수렴 — 모든 주요 코딩 도구(Claude Code, Codex CLI, Gemini CLI, Cursor, Copilot, Windsurf)가 독립적으로 파일 기반 컨텍스트 영속에 수렴. 설정 파일이 세션 간 컨텍스트 관리의 보편적 해법.
  10. MECW < 공칭 최대 — 실효 최대 컨텍스트 창은 항상 공칭보다 작다. 기업 실패의 65%는 컨텍스트 공간 부족이 아닌 컨텍스트 드리프트에서 비롯. 짧고 집중된 세션 설계가 핵심.