토큰 효율 진단 (2026-09-21)
7월 말부터 9월 21일까지 Claude Code 309세션, Codex 360세션의 토큰 로그를 직접 집계한 결과와, 그걸로 바꾼 규칙.
점수 55/100 — 캐싱은 A, 컨텍스트 위생은 D
| 항목 | 실측 | 점수 |
|---|---|---|
| 캐시 적중률 | Claude 97.9%, Codex 97.5%. 캐시 덕에 87% 절감 | 9 |
| 컨텍스트 크기 | 호출당 평균 317K, peak 중앙값 235K. 400K 이상 호출 34%가 비용 54% | 3 |
| 턴당 비용 | 10 → 9월 중순 $3.6 | 6 |
| 일간 지출 | 중앙값 13). 구독이라 실제 제약은 한도 소진 | 2 |
| subagent 위임 | 컨텍스트의 33%가 sidechain, 최근 15%로 하락 | 6 |
| 도구 위생 | 같은 파일 중복 Read 48% | 6 |
| 사고/effort | thinking이 output의 38%, effort max 17% | 5 |
| 피처 단위 | 9월 lane 중앙값 318·85턴 | 7 |
무엇이 떨어져 있었나
- 비용 구성이 cache read 50%, cache write 40%, output 10%. 사고 토큰을 줄여봐야 10%가 상한이고, 결국 “매 호출 다시 읽는 컨텍스트 크기”가 전부다.
- 세션이 길수록 산출물이 비싸진다. 출력 1K당 1턴 세션 0.40.
- multi-session-dev를 써도 절감이 안 나왔다. lane은 $0.12/1K로 싸지만, lane을 띄운 Lead 세션이 350~650K까지 커져 지출의 87%를 썼다. 실행만 분리됐고 계획·통합은 여전히 긴 세션이었다.
- Codex도 창이 258K로 고정인데 턴당 토큰은 Claude와 같다(3.9M). 턴당 tool call 28.5회.
어떻게 고쳤나 (ai-working 31cec881)
- 계획 세션과 lane 실행 세션 분리. 계획 세션은 plan과 계약 파일을
~/.local/state/multi-session-dev/plans/에 저장하고 끝낸다. 새 세션이 그 두 파일만 읽고 lane을 띄운다. - 계약 파일에 결정·기각한 대안·발견한 제약을 필수로 적는다. 안 그러면 새 세션이 조사를 반복한다.
- 컨텍스트 상한은 강제 안 함(내 결정). phase 경계에서만 세션을 나눈다. 1시간 넘게 대기하면 캐시 TTL이 끝나므로 그때도 새 세션.
- lane 검증 명령은 전체 로그를 파일에 남기고 컨텍스트엔 실패 줄만. 판정은 exit code로.
- lane 하나면 스킬 안 씀. 모델·effort는 안 낮춤(성능 우선).
안 한 것과 남은 것
- 일간 지출은 $로 관리 안 한다. 구독이라 실제 제약은 429(4.5%)이고 계정 회전이 답.
- CLIProxyAPI는 토큰을 안 남긴다. 필요하면
request-log켜기. - 긴 세션이 품질을 떨어뜨렸다는 건 내 데이터로 증명 못 했다. Anthropic의 “context rot” 문서가 근거. 2주 뒤 gate 리뷰 FAIL·lane 재시도 횟수로 확인.
정본: 에이전트 토큰 효율