클로드 자동 메모리 (Auto memory) 알아보기
클로드를 사용하고, 자동메모리 기능이 켜져있다면 클로드한테 뭔가 이야기했을 때나 잘못을 지적했을 때 "메모리에 저장하겠습니다. " 라고 하는 걸 많이 봤을 것이다. 여기선 그 메모리가 내부에 어떻게 저장되고 있고, 어떻게 사용되고, 어떻게 관리하는게 효율적일지 알아보겠다.
클로드 자동 메모리 (Auto Memory)
클로드 자동 메모리는 말 그대로 자동으로 저장되는 메모리이다. 사용자가 어떤 피드백을 주거나 참고할 것을 줬을 때 필요하다는 판단하에 메모리 파일에 저장한다.
자동메모리는 기본적으로 켜져있으며, 아래 설정을 통해 제어할 수 있다.
{
"autoMemoryEnabled": false
}메모리 파일은 git 저장소별로 관리되어, 다른 저장소하면 다른 메모리를 가지고 있을 것이고 worktree끼리는 공유한다.
어떻게 저장되고 있나?
/context로 확인해보면 현재 컨텍스트가 어떤걸로 이루어져있는지 확인할 수 있다.

나는 이 중 Memory files가 1%로 생각보다 꽤 차지하고 있다.
그럼 메모리는 어떻게 생겼나 보자
~/.claude/projects/<project>/memory/ 경로를 확인해보면 메모리 파일을 확인할 수 있다.

생각보다 많다...!!
이때까지 MEMORY.md에 CLAUDE.md처럼 한 파일로 다 저장되는줄 알았는데,
확인해보니 여러 메모리 파일(작게 쪼개진 지침들)이 있고, MEMORY.md에서 인덱싱(진입점만 나열)하는 구조이다.
위 메모리들을 살펴보면 feedback으로 시작하는 것들이 많다. 주로 "이렇게 해", "이렇게 하지마" 했던 것들이 많아서 그렇다.
어떻게 사용될까?
세션 시작 시 MEMORY.md의 200줄 또는 25KB를 항상 로드한다. (참고로 CLAUDE.md는 항상 전체 로드됨)
위 이미지들처럼 세부 파일은 필요할 때만 로드되므로, 한번에 로드되는 컨텍스트 양을 작게 유지할 수 있다.
클로드가 세션을 진행하며 MEMORY.md에서 지금 필요해보이는 세부 파일(예: 이탈릭체를 쓰지말라고 하는 feedback_no_italics.md)을 참고하여 작업을 수행한다.
어떻게 관리하는게 효율적일까?
메모리는 git 저장소별로 관리되고, 로컬에서만 사용되다보니 관리가 어렵다. 메모리에 어떤게 저장되어있는지 잘 모르는데, 클로드는 예전 지침을 따를 수도 있고, 다른 레포에서 작업할 때도 이전 메모리를 따르길 원하는데 저장소가 달라서 메모리가 없을 수도 있다.
1. 저장 경로 통일하기
아마 많은 사람들이 여러 레포에서 작업할텐데, 여러 레포의 규칙이 겹치는 경우가 많다.
그래서 메모리가 여러 경로에 흩어지게 하는 것보단 로컬 경로 1개로 통일하는게 좋다고 생각한다.
(레포별로 지침들은 레포별 CLAUDE.md에 저장)
설정에서 아래처럼 폴더 지정을 해둘 수 있다.
{
"autoMemoryDirectory": "~/my-custom-memory-dir"
}2. 주기적으로 메모리 정리하기
작업을 하면 할수록 메모리에 저장되는 지침들이 많아진다. (나처럼.....)
메모리에서 CLAUDE.md로 옮기거나, 스킬로 만들거나, 제거할 건 제거해주는 것이 좋다.

클로드에게 메모리 정리해달라고 하면 삭제할거 삭제하고, 스킬로 옮길 것 추천해주고, CLAUDE.md로 옮길 것도 처리해준다. 편하다.

정리하고 나니 메모리 사용률이 1% → 0.6%로 줄었다.

메모리 세부 파일이 37개에서 6개로 줄었다...! (위 이미지에 내 메모리 내용이 너무 잘나와서 부끄럽지만..ㅎ) 이제 관련 메모리를 더 잘 찾게 되길 기대해본다...
클로드 자동메모리가 생기고부터 클로드가 자동메모리를 적극적으로 쓰고, 읽게 되었는데 어떻게 저장되고 있는지 알게되니 더 효율적으로 사용할 수 있었다.
(하지만 이런저런 이유로 gpt로 갈아탑니다.)
참고자료
- Claude Code 공식문서: https://code.claude.com/docs/ko/memory#auto-memory
✍️ 이 글은 사람이 직접 작성했습니다.