어떤 문제가 있었냐면요
AI 코딩 에이전트랑 한 세션은 끝나는 순간 증발해요. 그날 내린 결정도, 막혔던 지점도, 어떻게 뚫었는지도, "다음부턴 이렇게 하자"던 다짐까지 전부요.
대화 로그가 남아 있어도 별 소용이 없어요. 수만 토큰짜리 원문은 검색도 안 되고, 다시 읽히지도 않거든요.
/agent-memory-log는 이 문제를 푸는 슬래시 커맨드예요. 세션을 구조화된 마크다운 노트로 요약해서 Obsidian 기반 AgentMemory 볼트에 넣어줘요.
무엇을 남기냐면요
원문 로그를 그대로 던져 넣지 않아요. "어떤 종류의 앎인가"로 나눠서 정리해요. 그래서 노트 섹션이 고정돼 있어요.
- 작업 요약 — 이 세션에서 뭘 했는지 1~3문장
- 변경 파일 — 실제로 손댄 파일 목록
- 중요한 결정 — 왜 그 방식을 골랐는지
- 막힌 점 / 해결 — 디버깅하면서 얻은 것
- 배운 점 — 다음 세션에 넘겨줄 지식
- 다음부터 적용할 규칙 후보 — 습관으로 만들 만한 것
섹션을 고정한 이유는 단순해요. 나중에 여러 세션 노트를 기계적으로 훑을 때(요약 파이프라인이나 승격 작업 같은 거요), 어디에 뭐가 있는지 예측 가능해야 하거든요. 매번 형식이 다르면 사람도 도구도 못 읽어요.
설계하면서 신경 쓴 것
같은 날 여러 번 저장하면요
노트 경로는 10-sessions/claude/{날짜}-claude-{프로젝트}.md예요. 그런데 하루에 같은 프로젝트로 두 번, 세 번 저장하면 어떻게 될까요?
CLI가 기존 파일은 손도 안 대고 -2, -3 같은 접미사를 붙여서 새 파일을 만들어요. 예전엔 기존 노트를 잠깐 옮겨뒀다가 다시 되돌리는 식으로 처리했는데, 그러다 한 번 날려먹으면 복구가 안 되잖아요. 지금은 그럴 일이 없어요.
훅 자동 저장을 버린 이유
처음엔 세션이 끝날 때 자동으로 저장되게 했어요. 편할 것 같았거든요.
근데 써보니 모든 세션이 기록할 가치가 있는 건 아니더라고요. 오타 하나 고친 세션, 파일만 읽어본 세션까지 전부 노트가 되니까 볼트가 금세 쓰레기로 찼어요. 진짜 필요한 노트를 찾기가 더 어려워졌죠.
그래서 지금은 제가 요청할 때만 실행돼요.
파이프라인에서 어디쯤이냐면요
이 커맨드는 [기록 → 지식 → 글] 흐름의 첫 단계예요.
여기서 쌓인 세션 노트랑 일일 TIL이 다음 단계인 /til-to-knowledge의 입력이 돼요. 거기서 프로젝트 특수 사정을 걷어내고 어디서나 통하는 지식 문서로 승격시키는 거예요.
배운 점
기록 시스템의 가치는 "쓰는 비용"이 아니라 "다시 읽힐 확률" 이 정해요.
구조를 고정한 것도, 충돌을 방어한 것도, 쓰레기를 안 만들기로 한 것도 — 셋 다 결국 다시 읽힐 확률을 올리려는 장치였어요. 아무리 열심히 적어도 다시 안 읽히면 안 적은 거랑 똑같으니까요.