MemoryLake
모든 글로 돌아가기
Tutorial2026년 8월 17일·11 분 소요

컨텍스트 손실 없이 Claude 메모리를 Zed로 마이그레이션하는 방법 (2026)

이 분야의 대부분의 마이그레이션은 데이터 추출에 대한 안 좋은 소식으로 시작합니다. 하지만 이번에는 다릅니다. Claude는 메모리를 그대로 가져오는 문서화된 방법을 제공합니다. Anthropic의 메모리 가져오기 및 내보내기에 관한 도움말 문서에서는 Claude에게 직접 다음과 같이 요청하라고 안내합니다. "나에 대한 메모리를 메모리에 표시된 그대로 토씨 하나 틀리지 않고 작성해 줘." 그러면 "[저장된 날짜, 제공되는 경우] - 메모리 내용" 형식으로 포맷된 단일 코드 블록 형태의 구조화된 덤프가 반환됩니다.

이는 이 카테고리의 거의 모든 소스보다 훌륭합니다. 즉, 이번 마이그레이션의 어려움은 지식을 추출하는 데 있지 않다는 뜻입니다. 진짜 어려운 부분은 각 라인을 어디로 보낼지 결정하는 것입니다. Zed는 지식을 저장하는 단 한 곳의 공간을 가지고 있지 않고 세 개의 공간을 가지고 있으며, 각각의 비용이 다르고, 그중 하나는 여러분이 작성하려는 파일을 자동으로 무시하기 때문입니다.

이 글에서는 Claude 메모리에 실제로 무엇이 포함되어 있는지, 이를 Zed의 Instructions, Skills, MCP 레이어로 라우팅하는 방법, 그리고 이전 도구에서 남겨진 파일이 방금 작성한 파일보다 우선순위를 갖게 만드는 첫 번째 일치(first-match) 규칙에 대해 자세히 알아봅니다.

실제로 전송되는 내용

메모리 항목: 날짜와 함께 완전히 전송됩니다. Anthropic은 Claude의 메모리를 "채팅 중에 실시간으로 읽고, 쓰고, 업데이트하는 카테고리별로 정리된 개별 항목 세트"로 설명합니다. 이러한 항목들은 그대로 덤프되어 나오며, 대부분 저장 날짜가 포함되어 있기 때문에 마이그레이션에서 보기 드문 이점을 제공합니다. 즉, 모든 줄을 일일이 읽어보지 않고도 최신 지식과 오래된 지식을 구분할 수 있습니다. 날짜별로 먼저 정렬하면 분류 작업의 절반은 끝난 셈입니다.

카테고리: 구조가 아닌 힌트로 활용하세요. Settings > Memory에서 항목들은 카테고리별로 그룹화되어 있으며, 문서화된 중점 영역은 사용자의 역할 및 전문적 컨텍스트, 커뮤니케이션 선호도 및 작업 스타일, 기술적 선호도 및 코딩 스타일, 프로젝트 세부 정보 및 진행 중인 작업입니다. 이러한 그룹화가 Zed의 레이어와 1:1로 매핑되지는 않지만, 유용한 1차 분류 기준이 됩니다. 선호도와 스타일은 한 곳에, 프로젝트 세부 정보는 다른 곳에 배치하는 경향이 있기 때문입니다.

프로젝트별 메모리: 개별적으로 관리되며, 이는 매우 중요합니다. Anthropic은 "각 프로젝트에는 고유한 별도의 메모리 공간과 전용 프로젝트 요약이 있으므로, 각 프로젝트 내의 컨텍스트는 다른 프로젝트나 프로젝트 외의 채팅과 분리되어 집중되고 관련성을 유지합니다"라고 명시하고 있습니다. Projects를 사용해 왔다면 내보낼 메모리가 하나가 아니라 프로젝트당 하나씩에 프로젝트 외 메모리 더미가 추가로 있는 것입니다. 이를 별도로 내보내지 않으면 Claude가 의도적으로 분리해 둔 컨텍스트가 병합되어, 특정 항목이 어떤 리포지토리에 관한 것이었는지 알려주는 신호를 잃게 됩니다.

캡처되지 않은 내용. 시크릿 채팅(Incognito chats)은 아무것도 기여하지 않습니다. Anthropic의 문서에 따르면 이 모드가 켜져 있으면 "Claude는 채팅을 기억하지 않으므로 Claude의 메모리나 채팅 기록에 저장되지 않습니다." 또한 프로젝트 지식 파일은 메모리와는 다른 개념입니다. 업로드한 파일은 프로젝트 내에 존재하며, 해당 콘텐츠를 이동하려면 메모리 항목이 아니라 파일 자체를 이동해야 합니다. 이 경계선에서 많은 사람들이 혼란을 겪곤 합니다. 자세한 내용은 Claude가 프로젝트 지식 파일을 잊어버리는 이유에서 다루고 있습니다.

Zed 측의 경우, 최근 대상이 변경되었습니다. v1.4.0 이전에 Zed를 설정했고 Rules Library를 기억하신다면, 해당 모델은 이제 사라졌습니다. 현재 문서에는 다음과 같이 명확히 명시되어 있습니다. "Rules가 Skills와 Instructions로 대체되었습니다. 재사용 가능한 온디맨드 Rules는 Skills가 되고, 기본적으로 항상 켜져 있는 Rules는 개인 AGENTS.md가 됩니다. 프로젝트 .rules 파일은 호환성 프로젝트 지침 파일로 계속 지원됩니다." 따라서 로딩 동작과 비용이 서로 다른 세 가지 보금자리가 존재합니다.

  • Instructions — 항상 켜짐. 개인 지침은 ~/.config/zed/AGENTS.md(Windows의 경우 %APPDATA%\Zed\AGENTS.md)에 저장됩니다. 프로젝트 지침은 리포지토리의 파일에서 가져옵니다. 여기에 있는 모든 내용은 세션이 시작될 때마다 항상 로드됩니다.
  • Skills — 온디맨드(필요할 때만). 글로벌하게는 ~/.agents/skills/에, 프로젝트별로는 .agents/skills/SKILL.md가 포함된 폴더를 두면, 에이전트가 관련이 있거나 직접 호출할 때 로드합니다.
  • MCP 서버 — 실시간 데이터 및 도구로, context_servers 아래에 구성됩니다. 지식을 저장하는 곳은 아니지만, 기억하기보다는 조회해야 하는 정보에 적합한 솔루션입니다.

수동 마이그레이션

1단계: 그대로 내보낸 후, 내용을 읽기 전에 날짜를 먼저 확인하세요

Claude를 열고 Anthropic 문서에 나와 있는 대로 정확히 덤프를 요청하세요. "나에 대한 메모리를 메모리에 표시된 그대로 토씨 하나 틀리지 않고 작성해 줘." 일반 메모리에 대해 한 번 수행하고, 컨텍스트가 중요한 각 Project 내부에서도 한 번씩 수행하세요. 이 메모리 공간들은 서로 분리되어 있기 때문입니다. 각 결과를 출처별로 라벨을 붙여 개별 임시 파일에 붙여넣으세요.

이제 사람들이 흔히 건너뛰는 단계를 진행합니다. 항목이 유용한지 평가하기 전에, 덤프에 표시된 저장 날짜를 사용하여 최신 상태인지 평가하세요. 8개월 전에 테스트 프레임워크를 설명한 항목은 그 이후로 변경된 코드베이스에 대한 주장일 뿐입니다. 마지막으로 대규모 리팩터링을 수행한 시점보다 오래된 내용은 사실이 아니라 의심스러운 정보로 표시해 두세요.

설정 > 메모리(Settings > Memory)를 열어 카테고리별로 그룹화된 항목을 찾아보고, "Claude에게 변경하거나 제거할 사항 말하기" 상자를 통해 잘못된 내용을 수정하거나 개별 항목을 삭제할 수도 있습니다. 내보내기 전에 정리하는 것이 내보낸 후에 정리하는 것보다 대개 더 빠릅니다. 인터페이스가 알아서 그룹화해 주기 때문입니다.

한 가지 주의할 점은, Claude 사용을 중단할 계획이더라도 정리 과정에서 '메모리 초기화(Reset memory)'를 선택하지 마세요. Anthropic 문서에 따르면 이는 모든 메모리를 영구적으로 삭제하며 되돌릴 수 없습니다. 마이그레이션하는 동안 메모리 축적을 중단하고 싶다면 '메모리 일시 중지(Pause memory)' 기능을 사용하세요.

2단계: 각 항목을 Zed의 세 가지 보금자리 중 하나로 라우팅하세요

정리된 덤프를 한 줄씩 살펴보세요. 각 항목은 정확히 한 곳으로 가야 하며, 기준은 그 정보가 언제 참이어야 하는가입니다.

작업하는 모든 곳에서 항상 참이어야 함 → 개인 `~/.config/zed/AGENTS.md`. 선호하는 언어, 설명 구조화 방식, 프로젝트 간에 유지하려는 컨벤션 등이 해당됩니다. 이 파일은 짧게 유지하세요. 모든 프로젝트의 모든 세션에서 로드되므로, 파일이 길어지면 매번 비용(컨텍스트 소모)이 발생합니다.

이 리포지토리에서 항상 참이어야 함 → 프로젝트 지침 파일. 아키텍처 결정, 사내 컨벤션, 빌드 및 테스트 명령 등이 해당됩니다. 여기에 함정이 있으니 아래 내용을 확인하세요.

특정 작업을 할 때만 가끔 참이어야 함 → Skill. 이는 대부분의 사람들이 놓치는 레이어이며, Claude 메모리의 놀라울 정도로 많은 부분이 여기에 속합니다. 다단계 절차, 릴리스 체크리스트, "마이그레이션 작성 방법", 항상 따르는 디버깅 루틴 등은 CSS를 편집하는 동안에는 컨텍스트에 있을 필요가 없습니다. Skill로 등록해 두면 관련이 있을 때나 직접 호출할 때만 로드됩니다. Skills는 개인용의 경우 ~/.agents/skills/에, 리포지토리 공유용의 경우 .agents/skills/에 배치합니다.

지식이 아니라 실시간 정보인 경우 → MCP. "스테이징 상태는 Grafana에 있습니다", "티켓 상태는 Linear에 있습니다"와 같이 실제 라이브 시스템을 가리키는 항목은 지침 파일의 오래된 문장보다 context_servers 아래의 서버를 통해 제공하는 것이 훨씬 좋습니다.

이제 함정이 나옵니다. 두 번 읽을 가치가 있습니다. Zed는 프로젝트 지침을 찾기 위해 .rules, .cursorrules, .windsurfrules, .clinerules, .github/copilot-instructions.md, AGENT.md, AGENTS.md, CLAUDE.md, GEMINI.md 등의 파일 이름 목록을 검색합니다. 그리고 문서에는 "Zed는 이 목록에서 첫 번째로 일치하는 파일을 사용합니다"라고 명시되어 있습니다.

첫 번째 일치(First match)입니다. 병합되거나 가장 구체적인 것이 아니라, 첫 번째 파일만 적용됩니다. 이전 실험에서 남겨진 .cursorrules 파일이 리포지토리에 있다면 그 파일이 우선권을 가지며, Claude 내보내기에서 신중하게 작성한 AGENTS.md는 절대 로드되지 않습니다. 아무런 에러도 발생하지 않습니다. 에러 없이 에이전트는 마이그레이션이 전혀 일어나지 않은 것처럼 동작할 뿐입니다. 무엇이든 작성하기 전에 이 9가지 파일 이름 중 리포지토리에 존재하는 것이 있는지 확인하고, 신뢰할 수 없는 파일은 삭제하거나 통합하세요.

나중을 위해 알아두면 좋은 점도 있습니다. "프로젝트 지침은 개인 AGENTS.md와 충돌할 때 이를 덮어씁니다." 따라서 리포지토리 파일이 더 강력한 권한을 가지며, 이는 팀 작업 시 일반적으로 원하는 방식이자 진정으로 개인적인 선호도를 프로젝트 파일에서 제외해야 하는 이유이기도 합니다. 프로젝트가 설정을 잊어버린 것처럼 동작하기 시작하면, 모델 관련 문제를 의심하기 전에 이 우선순위 순서부터 확인해야 합니다. 이는 Zed가 프로젝트 컨텍스트를 잊어버리는 이유에서 다루는 패턴입니다.

더 나은 방법: 하나의 메모리 레이어, 어떤 어시스턴트든 지원

위의 두 단계가 가진 공통점을 주목해 보세요. 둘 다 존재하고 가치가 있지만 단 하나의 벤더만 읽을 수 있는 형식으로 저장된 지식 베이스에 관한 것입니다. Claude는 훌륭한 내보내기 기능을 제공하지만(대부분의 다른 도구보다 낫습니다), 여러분은 여전히 날짜가 지정된 플랫한 항목 목록을 다음 도구도 이해하지 못할 3단계 파일 레이아웃으로 변환하는 데 오후 시간을 다 보내야 합니다.

MemoryLake는 이러한 반복 작업을 없애줍니다. 프로젝트의 영구적인 지식을 보관하는 하나의 메모리 레이어를 구축하여, 사용 중인 어시스턴트가 무엇이든 이를 읽을 수 있도록 합니다. Zed의 Instructions는 매 세션마다 컨텍스트에 있어야 하는 소량의 정보만 처리하는 좁은 역할을 계속 수행하고, 축적된 지식 체계는 Claude와 Zed가 모두 접근할 수 있는 곳에 위치하게 됩니다. 설정은 단 3단계로 끝납니다.

1단계: API 키 생성

MemoryLake에 로그인하고 API 키를 생성합니다. 연결하는 모든 도구에 대해 단 하나의 자격 증명만 있으면 되므로, 손으로 직접 변환하는 마지막 작업이 될 것입니다.

Claude 메모리를 Zed로 마이그레이션하기 위해 MemoryLake API 키 생성하기
Claude 메모리를 Zed로 마이그레이션하기 위해 MemoryLake API 키 생성하기

2단계: 첫 번째 메모리 업로드

날짜 확인을 통과한 항목들과 그 뒤에 숨겨진 결정 및 제약 조건 등 정리된 내보내기 파일을 업로드합니다. Claude 자체 메모리가 저장하는 방식처럼 항목을 짧고 단일 주제로 유지하세요. 그래야 검색이 잘 되고 수정하기도 쉽습니다. 특히 거부된 사항(시도했다가 포기한 접근 방식과 그 이유)에 특별히 신경을 쓰세요. 이는 새로운 어시스턴트에게 가장 필요하지만 스스로 유추하기는 가장 어려운 항목들입니다.

내보낸 Claude 메모리 항목을 MemoryLake에 업로드하기
내보낸 Claude 메모리 항목을 MemoryLake에 업로드하기

3단계: AI 및 에이전트 연결

도구를 연결합니다. MemoryLake는 MCP 및 API를 통해 접근할 수 있으므로, context_servers를 통해 연결하는 Zed를 비롯하여 Claude Code, Codex, OpenClaw와 같은 MCP 네이티브 에이전트들은 MCP 서버를 가리키는 방식으로 연결하고, 다른 어시스턴트들은 API를 통해 동일한 메모리를 읽습니다. AGENTS.md는 짧게 유지되고, Skills는 목적에 맞게 유지되며, 늘어나는 프로젝트 지식 더미를 양쪽에 중복으로 복사할 필요가 없어집니다.

MCP 컨텍스트 서버를 통해 Zed를 MemoryLake에 연결하기
MCP 컨텍스트 서버를 통해 Zed를 MemoryLake에 연결하기

두 가지 솔직한 한계가 있습니다. MemoryLake가 Claude의 메모리를 대신 읽어주지는 않습니다. 위의 1단계는 한 번은 직접 해야 하는 실제 작업입니다. 또한 강제 적용 레이어가 아닙니다. Zed의 지침은 동작을 보장하기보다는 유도하는 역할을 하며, 어떤 메모리 레이어도 이 사실을 바꾸지는 못합니다.

실제 적용 시 변화하는 점

항상 켜져 있는 파일의 크기가 작게 유지됩니다. 마이그레이션 후에는 확실히 읽힐 것이라는 보장이 있는 AGENTS.md에 전체 내보내기 내용을 붙여넣고 싶은 유혹이 생깁니다. 이로 인해 400줄짜리 지침 파일이 만들어지며, 항상 켜져 있는 파일이 길어지면 정말 중요한 규칙에 대한 준수율이 떨어집니다. 검색 가능한 지식을 활용하면 이러한 유혹을 없앨 수 있습니다.

Skills를 마침내 제대로 활용하게 됩니다. 대부분의 사람들은 즉각적인 보상이 없는 추가 작업이라는 이유로 온디맨드 레이어를 채우지 않습니다. 어차피 내보내기 파일을 라우팅해야 할 때 정렬 작업을 한 번 해두면, 그 순간 절차적 지식들이 항상 켜져 있는 컨텍스트에서 벗어나게 됩니다.

프로젝트별 분리가 마이그레이션 후에도 유지됩니다. Claude가 프로젝트 메모리를 분리해 두는 데는 이유가 있습니다. 마이그레이션 중에 이를 하나의 파일로 병합하면 그 이점을 잃게 됩니다. 리포지토리 지침이나 프로젝트 범위가 지정된 메모리 레이어에서 이를 분리해 두면 그 경계선이 계속해서 가치를 발휘합니다.

다음 도구로 전환할 때 오후 시간을 다 쓰는 대신 연결만 하면 됩니다. 이것이 실제 절약되는 부분입니다. 여러분은 또 에디터를 바꾸게 될 것입니다. 그때 10분이 걸릴지 하루가 걸릴지는 지식이 특정 벤더의 형식으로 되어 있는지 아니면 여러분만의 형식으로 되어 있는지에 달려 있습니다.

Claude도 계속 작동합니다. 이 과정에서 Claude를 포기할 필요는 전혀 없습니다. Anthropic의 가져오기 흐름은 붙여넣은 메모리를 다시 받아들이므로, 공유 레이어가 양쪽 모두에 데이터를 공급합니다. 어차피 대부분의 사람들은 채팅 어시스턴트와 에디터를 서로 다른 용도로 사용하게 되며, 기본 제공 기능을 넘어 Claude 메모리 확장하기에서 이 조합을 다룹니다.

이전을 위한 모범 사례

한 번에 하지 말고 프로젝트별로 내보내세요. 프로젝트 메모리 공간은 의도적으로 분리되어 있습니다. 하나로 병합된 덤프는 지식과 리포지토리 간의 매핑을 파괴합니다.

문구보다 날짜를 더 신뢰하세요. 아무리 자신감 넘치는 어조로 작성된 항목이라도 3월에 작성된 것이라면 여전히 3월의 항목일 뿐입니다. 덤프는 저장 날짜를 제공하므로, 이를 첫 번째 필터로 사용하세요.

무엇이든 작성하기 전에 9가지 파일 이름을 감사하세요. .rules, .cursorrules, .windsurfrules, .clinerules, .github/copilot-instructions.md, AGENT.md, AGENTS.md, CLAUDE.md, GEMINI.md — 첫 번째로 일치하는 파일이 우선권을 갖습니다. 사용을 중단한 도구에서 남겨진 파일이 새 파일을 조용히 무시해 버릴 수 있습니다.

절차는 Skills에, 사실은 Instructions에 넣으세요. 단계가 있다면 Skill입니다. 고정된 사실이라면 Instruction입니다. 이 둘을 섞으면 항상 켜져 있는 파일이 비대해집니다.

정리 단계에서 메모리를 초기화하지 마세요. Anthropic은 메모리 초기화(Reset memory)를 영구적이며 되돌릴 수 없는 작업으로 규정하고 있습니다. 마이그레이션하는 동안에는 되돌릴 수 있는 '일시 중지(Pause)' 옵션을 사용하세요.

양방향 가져오기 모두에서 데이터 손실이 발생할 수 있음을 예상하세요. Anthropic의 자체 가져오기 문서에 따르면 "Claude가 가져온 메모리를 항상 성공적으로 통합하지 못할 수 있으며" 업무 관련 콘텐츠가 우선시된다고 명시되어 있습니다. 모든 메모리 전송은 완료된 동기화가 아니라 확인이 필요한 시작 초안으로 취급하세요.

모델을 탓하기 전에 무엇이 로드되었는지 확인하세요. 마이그레이션 후 Zed가 어떤 지침 파일을 가져왔는지 확인하세요. "에이전트가 내 규칙을 무시합니다"라는 보고의 절반은 파일이 아예 로드되지 않은 경우입니다.

결론

이번 마이그레이션은 데이터 추출이 더 쉬운 드문 케이스입니다. Anthropic은 그대로 내보내는 기능을 제공하고, 항목에는 날짜가 지정되어 나오며, 설정 > 메모리(Settings > Memory)를 통해 시작하기 전에 정리할 수 있습니다. 진짜 작업은 데이터를 받는 쪽에 있습니다. Zed는 Rules를 Skills와 Instructions로 대체했기 때문에, 각 항목을 항상 컨텍스트에 둘지, 필요할 때만 둘지, 아니면 아예 두지 않을지 결정해야 합니다. 또한 첫 번째 일치 파일이 우선권을 갖는다는 점을 고려하여 방금 작성한 파일을 Zed가 실제로 읽고 있는지 확인해야 합니다.

이 라우팅 작업을 한 번만 수행하고, 영구적인 지식은 특정 벤더가 소유하지 않은 곳에 보관하세요. 그러면 다음 에디터로 전환할 때는 오후 시간을 다 쓰는 대신 연결만 하면 됩니다. 출발지가 다른 어시스턴트라면 ChatGPT 메모리를 Zed로 마이그레이션하기에서 해당 과정을 다루고 있으며, Claude 메모리를 Cursor로 마이그레이션하기에서 또 다른 일반적인 목적지를 다룹니다.

자주 묻는 질문

Claude 메모리를 내보낼 수 있나요?

네, 가능합니다. Anthropic의 도움말 문서에 따르면 Claude에게 직접 "나에 대한 메모리를 메모리에 표시된 그대로 토씨 하나 틀리지 않고 작성해 줘"라고 요청하면 "[저장된 날짜, 제공되는 경우] - 메모리 내용" 형식으로 포맷된 단일 코드 블록으로 항목을 반환합니다. Settings > Memory에서 항목을 찾아보고 편집할 수도 있습니다.

Claude는 프로젝트별로 별도의 메모리를 가지고 있나요?

네. Anthropic 문서에 따르면 각 프로젝트는 고유한 별도의 메모리 공간과 프로젝트 요약을 가지며, 이는 "다른 프로젝트나 프로젝트 외의 채팅과 분리되어 집중되고 관련성을 유지"합니다. 어떤 지식이 어떤 코드베이스에 속하는지 보존하려면 각 프로젝트의 메모리를 별도로 내보내세요.

내보낸 항목들은 Zed의 어디로 가야 하나요?

정보가 언제 참이어야 하는지에 따라 세 가지 공간으로 나뉩니다. 범용적인 선호도는 개인 ~/.config/zed/AGENTS.md로 가고, 리포지토리 전용의 고정된 사실은 프로젝트 지침 파일로 가며, 다단계 절차는 ~/.agents/skills/ 또는 .agents/skills/ 아래의 Skills가 됩니다. 실시간 시스템을 가리키는 항목은 context_servers 아래의 MCP 서버를 통해 제공하는 것이 더 좋습니다.

Zed가 왜 제 AGENTS.md를 읽지 않나요?

거의 대부분 목록의 앞부분에 있는 다른 파일이 먼저 일치했기 때문입니다. Zed는 .rules, .cursorrules, .windsurfrules, .clinerules, .github/copilot-instructions.md, AGENT.md, AGENTS.md, CLAUDE.md, GEMINI.md를 확인하고 첫 번째 일치 항목을 사용합니다. 리포지토리에 남겨진 .cursorrules가 있으면 에러 메시지 없이 우선권을 갖게 됩니다.

Zed에 여전히 Rules Library가 있나요?

아닙니다. Zed의 현재 문서에 따르면 Rules는 Skills와 Instructions로 대체되었습니다. 재사용 가능한 온디맨드 Rules는 Skills가 되었고, 항상 켜져 있는 Rules는 개인 AGENTS.md가 되었으며, 프로젝트 .rules 파일은 호환성 프로젝트 지침 파일로 계속 지원됩니다.

마이그레이션 후에도 Claude를 계속 사용할 수 있나요?

네, 대부분의 사람들이 그렇게 하고 있습니다. Anthropic은 웹 및 Claude Desktop의 Free, Pro, Max, Team 플랜에서 사용할 수 있는 Settings > Memory의 "가져오기 시작(Start import)"을 통해 메모리를 다시 가져오는 기능을 지원합니다. 다만 Claude가 "가져온 메모리를 항상 성공적으로 통합하지 못할 수 있다"는 문서상의 주의 사항이 있습니다. 양쪽 모두에 데이터를 공급하는 하나의 공유 레이어를 유지하면 어느 한쪽 방향의 완벽함에 의존하지 않아도 됩니다.