5.5 KB · 수정 2026-08-04 15:09
목차

26.8.4(화) 세션 — 코디 지침·규칙 코퍼스 개편 (세션릴레이 근본수정) — 기록: [코디]

논의·대안

페페 지적 = "세션 릴레이가 잘 안 된다. 컨텍스트 50% 넘으면 다음 작업 유무와 무관하게 넘어가야 하는데 세션마다 안 한다. 규칙과 기본 지침이 복잡해서 기억에서 우선순위가 안 되는 것 같다."

트랜스크립트 218세션을 전수 측정해 원인을 규칙 준수 문제가 아니라 신호 부재로 규명했다. 페페 기준 임계(100k토큰)를 넘긴 세션 162개 중 릴레이 실행은 22개뿐 — 140개 미실행(86%). 릴레이 도구(tools/session-relay)는 이미 완성·검증돼 있었으므로 도구가 아니라 발동이 문제였다.

대안 비교: - (A) 규칙 문구를 강하게 고친다 → 기각. 코디는 컨텍스트 사용량을 볼 신호가 아예 없어서, 문구를 아무리 세게 써도 "볼 수 없는 값을 보고 판단하라"는 지시가 된다. - (B) 훅으로 숫자를 컨텍스트에 주입한다 → 채택. 단 PostToolUse는 금지(remember 플러그인이 툴콜마다 훅을 돌려 세션 spawn 60초 타임아웃을 낸 전례) → 턴당 1회인 UserPromptSubmit 사용. - (C) 자동압축에 맡긴다 → 기각. 압축은 세션을 넘기지 않고 요약만 해 맥락을 잃는다. 실측 압축 발동 흔적 0건.

규칙 코퍼스는 13개 에이전트(감사 6렌즈 → 적대검증 6 → 종합 1, 174만 토큰·42분·오류 0)로 전량 감사했다. 적대검증이 감사 보고서의 오류도 잡아냈다 — 종합이 clip_handoff_now()를 기존 코드로 착각했으나 실물 확인 결과 존재하지 않는 함수였다.

결정

  1. 컨텍스트 숫자의 단일 출처 = C:\dev\tools\ctxmeter\ctx.py. 트랜스크립트에서 직접 계산한다. UserPromptSubmit 훅이 매 턴 코디에 주입 — 실동작 확인됨([컨텍스트] 33.3% (333,309 / 1,000,000 토큰)). ⚠ 처음엔 statusLine에도 같은 계산을 물렸으나 statusLine은 CLI 전용이라 VS Code 확장 UI엔 렌더링되지 않는다 (projects/guide/toolkit-catalog.md에 이미 기록돼 있던 사실을 놓쳤다). 페페 지시로 제거. 페페가 컨텍스트를 보는 경로 = 코디가 답변 끝에 한 줄로 적어준다(CLAUDE.md §3.4 · runbook 규칙화).
  2. 릴레이 임계 = 1M의 50% = 500,000토큰. 넘으면 다음 작업 유무와 무관하게 넘긴다.
  3. ccusage 제거(페페 지시). Opus 5를 200k 창으로 계산했고, 같은 입력 8회에 60%·301%가 번갈아 나오는 불안정한 계산이었다. VS Code 확장 모델표 직접 판독 결과 Opus 5 = window:1e6, native_1m — 페페 인식이 맞았다.
  4. CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=50 제거. 릴레이(50%)와 같은 지점에서 다퉈 압축이 이기면 세션이 안 넘어간다.
  5. 항상 로드하는 파일은 C:\dev\CLAUDE.md 하나로 한다. tooling.md·workflow.md(42KB)는 조건부 로드로 전환하고 원자 규칙만 CLAUDE.md에 backfill. 93,669 → 36,124바이트(61% 감소).
  6. 규칙은 한 곳에만 쓴다(중복 금지, CLAUDE.md §5 규약화). 오늘 발견한 pfs 모순이 정확히 사본 방치로 생겼다.
  7. BRIEF 캡 숫자(20,000)는 안 건드린다. 실제 문제는 캡이 아니라 "터졌는데 아무도 몰랐다"였으므로 알림을 붙이는 게 해법. 하드 실패 → 자동절단+배너 전환은 페페 승인 사안으로 남겼다.

산출물·커밋

검증 = ctxmeter 자체검사 14/14 · 정보손실 대조 33/33 보존 · build_brief PASS · bash -n 통과 · 알림 실전송 telegram_ok=1 한글 온전 · devplan check_theme/check_font/build_hub --selftest 전부 FAIL 0.

다음

관계