클로드야, 이제 까먹으면 안된다~

compact 할 때마다 바보가 되는, 기억장치가 없는 에이전트를 위한 스킬

Jun Noh

요즘은 에이전트가 너무 일을 잘해서, 이젠 직접 화면을 캡쳐하고 로그를 쌓아서 QA까지 전부 진행한다.

점점 더 많은 일을 AI 에이전트에게 맡기고, 나는 진짜 명령과 최종 검수만 하는 발주처가 된 느낌이다.

근데 이런 자동화 파이프라인에는 아주 심각한 문제가 하나 있다.

에이전트가 스스로 앱이든 게임이든 빌드 결과물을 캡쳐하고, 그걸 스스로 검증하는 과정에서 컨텍스트를 기존과는 비교할 수 없을 만큼 많이 쓴다는 것.

문제는 이 컨텍스트 윈도우가 꽉 차게 되면 알아서 compact 을 진행하는데, 그 과정에서 잘 돌아가고 있던 자동화 파이프라인을 깨트리거나, 갑자기 이상한 목표를 진행한다거나, 이전에 실패했던 방식을 그대로 갖다 쓴다는 것.

이전 컨텍스트를 요약하는 과정에서 중요도 체크가 잘 안 되다 보니까, 뭘 하고 있던 걸 얼추 대략적으로만 기억하는 느낌이다.


근데 자체 세션 기록이 있는데 왜 이럴까?

이거 좀 뒤적여봤다.

Claude Code 가 세션 사이에 뭘 유지하냐면 두 가지다.

하나는 auto-memory. 사용자 프로필이나 프로젝트 규약 같이 “오래 참인 사실” 을 저장하는 곳. 다른 하나는 git. 이건 그냥 반영된 코드다.

근데 이 두 개로도 절대 안 잡히는 게 있다.

과정.

어제 뭘 시도했고, 뭐는 실패했고, 그래서 지금 이 수정이 왜 지금 이 형태가 됐는지. 이런 게 어디에도 안 남는다.

그러니까 compact 이 돌든 새 세션이 시작되든, Claude 는 어제 삽질해서 알아낸 근본 원인을 처음부터 다시 파낸다. 심지어 어제 이미 실패했던 접근을 오늘 또 시도한다. 실패를 어디에도 안 적어놨으니까.

이걸 요즘 며칠째 계속 당하다 보니까 진짜.. 시간은 시간대로 버리고, 세션도 날리고, 커밋을 롤백한 게 몇 번인지… 안 열받을 수가 없다.

그래서 하나 만들었다

스킬 하나 만들었다.

프로젝트 루트 메모리에 매 세션 결과를 기록해두고, 다음 세션에서 그 기록을 알아서 읽게 하는 놈이다.

파일 구조는 이렇게 생겼다.

~/.claude/projects/<프로젝트 해시>/memory/sessions/
├── INDEX.md
├── 2026-08-01_0900.md
├── 2026-08-02_1420.md
└── 2026-08-03_0830.md

각 로그는 다섯 섹션.

  • What I did — 도구 호출 단위 말고 결과 단위로
  • What I discovered (non-obvious) — 파헤쳐 알아낸 근본 원인, 숨은 제약
  • Failed attempts (don’t repeat) — 다시 시도하지 말아야 할 접근
  • Next up — 파일 단위의 다음 액션
  • Files changed — 경로 목록만

세 번째 Failed attempts 가 이 스킬의 핵심이다. 나머지 넷은 있어도 되고 없어도 되는데 이건 없으면 안 된다.

어떻게 굴러가냐면

세션 시작하면 스킬이 최근 로그 3개를 알아서 훑어서 요약해준다.

지난 세션에서 X 를 진행했고, Y 가 다음 예정이었습니다. Z 는 시도했다가 실패했으니 반복하지 마세요.

이거 진짜 편함. Claude 한테 매번 “우리 어제 뭐 하고 있었지” 브리핑 안 해줘도 알아서 파악한다.

세션 끝날 때는 내가 “마무리” 라고 말하거나 compact 태그 (<summary>) 가 감지되면 새 항목 쓰고 INDEX.md 갱신한다.

저장 위치가 좋은 게, Claude Code 가 이미 만들어놓은 ~/.claude/projects/<hash>/memory/ 폴더를 그냥 갖다 쓴다. 새 폴더 안 만들고, DB 도 없고, 별도 install 도 필요없다. 그냥 마크다운 파일이라 grep 되고 아무 에디터에서든 열린다.

써봤는데

만들고 며칠 굴려봤다.

지금 진행 중인 게임 프로젝트 로그 폴더가 이렇게 쌓였다.

- 2026-08-02_1900 — Priority 2+3 대공사 완주. Blender KRX arena 리빌드 + VFX 5종 폴리시. 4 commits
- 2026-08-02_1700 — 대공사 Phase 1-3 완료: 자동화 100% + Dollar 대개조 + Boss dark charcoal. 3 commits
- 2026-08-02_1500 — VFX 대장정 5 phase. 사용자 최종 평가 "너무 별로, procedural 구려, Blender 로 재작성 필요". 8 commits
- 2026-08-02_1121 — StockMap 아레나 완성 + 몹 전투 대수술 + Elden Ring 표준 attack variety. 23 commits
- 2026-07-31_1400 — Boss T-pose 재발 fix + attack hitbox 창 도입 + Dodge 조이스틱 미입력 방향 fix
- 2026-07-31_0830 — Boss 애니 fix (BoneMap retarget) + session-log skill 신규 제작

하루에 세션이 3~4개씩 쌓인다.

며칠 전에 진짜 없었으면 큰일 났을 순간이 있었다.

Ticker shader 를 unshaded 로 만졌다가 실패한 게 로그에 남아있었다. 며칠 뒤 비슷한 shader 이슈로 또 unshaded 를 건드리려던 참에, 로그 보고 손을 멈췄다. 저번에 이게 왜 안 됐는지가 Failed attempts 에 세 줄로 정리돼 있었다.

만약 이 로그가 없었으면, 아마 세션을 더 태우고 나서야 “아 저번에도 이거 안 됐었지” 를 깨달았을 것이다.

Auto-memory 랑은 어떻게 다르냐면

이 스킬이 auto-memory 를 대체하는 게 아니다. 오히려 서로 보완.

시스템잡는 것답하는 질문
Auto-memory오래 유지되는 사실”사용자가 뭘 신경 쓰나? 프로젝트 구조는?”
Session log세션 하나 동안 있었던 일”지난번에 뭘 시도했나? 왜 멈췄나?”

세션 로그에서 같은 실패가 3번 이상 반복되면 auto-memory 의 feedback 항목으로 승격시키는 규칙도 넣어놨다. 세션 로그가 쌓이다 보면 자연스럽게 auto-memory 로 흘러가는 파이프가 있는 셈이다.

마치며

이렇게 따로 세션 로그를 남겨두니까 더 잘 “기억”한다. 는 솔직히 모르겠고, 그냥.. 덜 까먹는다. 가 맞는 거 같다.

갑자기 뜬금 없이 3일 전에 기획했다가 폐기한 내용을 들고 오거나 하는 진짜 이해할 수 없는 순간들이 새로운 세션을 열 때마다 있었는데, 이렇게 관리를 하니까 매번 “지금 뭐 하고 있었어, 분석해봐” 안해도 되니까…

좋긴하다.

그냥 쉽게 설치할 수 있는 skill이니까 따로 npm 빌드를 열어놨다.

npx skills add Choonham/session-log-skill -g -a claude-code -y

리포는 여기: github.com/Choonham/session-log-skill

클로드야, 이제 좀 까먹지 말고 잘 살아야 한다~

마침.

다른 글 보기