실제로 전송되는 것
여러분의 CLAUDE.md 파일 — 변환이 아닌 연결. Warp의 /init은 CLAUDE.md를 직접 연결하며, 다른 6가지 포맷("CLAUDE.md, .cursorrules, AGENT.md, GEMINI.md, .clinerules, .windsurfrules, .github/copilot-instructions.md")도 함께 지원합니다. 감지가 아니라 연결입니다. CLAUDE.md로 가득 찬 리포지토리라도 직접 연결하기 전까지는 아무런 작동도 하지 않습니다.
여러분의 스킬(skills) — 디렉토리 변경 필요. Claude Code는 .claude/skills/를 읽는 반면, Warp는 .agents/skills/에서 프로젝트 스킬을, ~/.agents/skills/에서 개인 스킬을 읽으며 /skills 명령어로 찾아볼 수 있습니다. SKILL.md 파일의 형태는 동일합니다. 이는 재작성이 아니라 단순한 이동입니다.
여러분의 MCP 서버 — 두 인터페이스를 모두 사용하는 경우 두 번 설정 필요. Warp는 "규칙과 스킬은 마이그레이션할 필요가 없습니다. CLI와 Warp 앱 모두 동일한 파일 위치에서 이를 감지합니다"라고 명시하고 있지만, MCP는 예외입니다. macOS 기준으로 ~/.warp_cli/.mcp.json에 위치한 "CLI는 Warp 앱의 설정과 분리된 자체 MCP 서버 설정을 유지합니다."
코드베이스 이해 — 이동이 아닌 재구축. Warp의 Codebase Context는 "Git으로 추적되는 코드베이스를 인덱싱"하며, 문서에 따르면 "Warp 서버에는 어떠한 코드도 저장되지 않습니다." 인덱싱을 다시 수행하면 되며, 내보낼 것은 없습니다.
전송되지 않는 것: Claude가 작업에 대해 작성한 모든 내용. Claude Code의 자동 메모리는 각 파일의 frontmatter에 있는 type 필드로 태그가 지정된 4가지 종류의 노트를 기록합니다. user(사용자의 역할, 전문성, 작업 선호도), feedback(사용자가 Claude에게 제공한 수정 사항 및 확인한 접근 방식), project(코드나 git 히스토리에서 Claude가 도출할 수 없는 진행 중인 작업, 마감일, 결정 사항), 그리고 reference(프로젝트 외부에서 정보를 찾을 수 있는 위치)입니다. 이 기능은 기본적으로 활성화되어 있으므로, 리포지토리에서 Claude Code를 일정 기간 사용했다면 직접 확인해 보지 않았더라도 이 디렉토리가 존재할 것입니다.
내보내기 기능은 없습니다. 반대편(Warp)에서 가져오는 기능도 없습니다. 그리고 가장 가치 있는 노트는 feedback과 project 노트입니다. Anthropic 문서에서 지적하듯이, 이 카테고리들은 Claude가 코드베이스에서 직접 도출할 수 있을 때는 작성을 건너뛰는 바로 그 부분들입니다.
사라지는 기능: 메커니즘으로서의 경로 범위 지정 규칙(path-scoped rules). Claude Code의 .claude/rules/는 Claude가 일치하는 파일을 터치할 때만 지침을 로드하도록 합니다. Warp에서 이에 해당하는 방식은 배치(placement)입니다. 즉, 하위 디렉토리에 AGENTS.md를 두는 것입니다. 이는 더 투박한 도구이며, 이에 의존하기 전에 알아두어야 할 로딩 동작의 특이점이 있습니다. 이는 다음 섹션에서 다룹니다.
수동 마이그레이션
1단계: Claude Code 사용을 중단하기 전에 자동 메모리 디렉토리 읽기
이 단계는 읽기 작업이며, 나중에 다시 수행할 수 없는 유일한 단계입니다.
노트는 ~/.claude/projects/<project>/memory/에 있습니다. <project> 경로는 git 리포지토리에서 파생되므로, 동일한 리포지토리의 모든 작업 트리는 하나의 디렉토리를 공유합니다. 내부에는 "세션마다 로드되는 메모당 한 줄"의 MEMORY.md 인덱스와 메모당 하나의 토픽 파일이 있습니다.
먼저 Claude가 스스로 유지 관리하는 목차인 MEMORY.md를 여세요. 그런 다음 그것이 가리키는 토픽 파일들을 여세요. 두 가지 실용적인 참고 사항이 있습니다. Anthropic 문서에 따르면 "MEMORY.md 파일의 처음 200줄 또는 처음 25KB 중 먼저 도달하는 기준까지만 모든 대화 시작 시 로드"되며, 이 임계값을 초과하는 콘텐츠는 "세션 시작 시 로드되지 않습니다." 따라서 인덱스가 길다면 일부는 한동안 비활성 상태였을 것이며, 이제야 제대로 처음 읽어보는 것일 수 있습니다. 토픽 파일은 시작할 때 전혀 로드되지 않으며, Claude는 "필요에 따라 이를 읽습니다."
진행하면서 찾은 내용을 다음 세 가지 분류로 정리하세요:
- 이미
CLAUDE.md에 있는 내용. 건너뛰세요. 그대로 연결됩니다. - 리포지토리에서 도출 가능한 내용. 역시 건너뛰세요. Warp가 코드를 인덱싱할 것입니다.
- 둘 다 아닌 내용. 이것이 실제 마이그레이션 대상입니다. 여러분이 제공한 수정 사항, 이유가 첨부된 결정 사항, 마감일, 리포지토리 외부 시스템에 대한 포인터 등입니다. 다음 단계로 넘어가기 전에 이를 다른 곳에 복사해 두세요.
아무것도 삭제하지 마세요. Anthropic은 대화 기록 보존 정리 대상에서 메모리 디렉토리를 제외합니다("MEMORY.md 및 토픽 파일은 사용자나 Claude가 편집하거나 삭제할 때까지 유지됩니다"). 따라서 Claude Code를 설치된 상태로 두어도 비용이 들지 않으며 원본을 계속 읽을 수 있습니다.
2단계: 작성된 절반을 적용하고 로딩 모델을 올바르게 설정하기
리포지토리 루트의 Warp에서 /init을 실행하고 기존 CLAUDE.md를 연결하도록 선택하세요. 그런 다음 아래 세 가지 사항을 올바르게 설정해야 합니다. 그렇지 않으면 아무런 경고 없이 실패할 수 있습니다.
파일명은 대소문자를 구분합니다. Warp 문서에서는 이를 주의 사항으로 다루고 있습니다. "Warp가 인식하려면 파일명이 반드시 대문자여야 합니다(예: agents.md나 Agents.md가 아닌 AGENTS.md)." 소문자로 된 파일은 규칙 파일로 인식되지 않으며, 에러 메시지도 표시되지 않습니다.
두 가지 위치만 자동으로 로드됩니다. "Warp는 루트 및 현재 디렉토리에 있는 AGENTS.md(또는 WARP.md)를 자동으로 적용합니다." 그 외의 경우, "Warp는 해당 하위 디렉토리의 규칙 파일도 포함하도록 최선의 노력(best-effort)을 다합니다" — 단, 사용자가 해당 디렉토리의 파일을 편집하는 경우에 한합니다. 규칙이 리포지토리 전체에 적용되어야 하는 경우, 루트 파일이 유일하게 보장되는 위치입니다.
가장 구체적인 파일이 우선합니다. Warp는 "가장 구체적이고 프로젝트와 관련된 규칙이 더 광범위한 규칙보다 우선순위를 갖는다"는 의도에 따라 현재 하위 디렉토리, 루트, 글로벌 규칙(Global Rules) 순으로 충돌을 해결합니다. 범위 지정이 선언적이었던 .claude/rules/에서 넘어온 경우, 이 변화를 주의해야 합니다. 이제 오래된 하위 디렉토리 파일이 해당 디렉토리에 한해 최신 루트 표준보다 우선하게 됩니다.
그런 다음 .claude/skills/를 .agents/skills/로 이동하고, 사용하는 앱이나 CLI에 맞게 MCP 서버를 구성한 후, /index를 실행하여 Codebase Context를 구축하세요.
Warp가 Claude Code와 달리 제공하는 한 가지는 바로 검증(verification)입니다. "상호작용에 사용된 규칙은 대화의 References 아래에 나타나거나 특정 규칙에서 파생된 것으로 표시됩니다." 실행되어야 하는 규칙에 대해 이를 한 번 테스트해 봄으로써, 디버깅이 필요하기 전에 로드된 규칙이 어떻게 보이는지 익혀두세요.
이것으로 작성된 절반에 대한 설명은 끝났습니다. 하지만 학습된 절반은 여전히 갈 곳이 없습니다.
더 나은 방법: 학습된 절반을 단일 머신에 종속되지 않는 곳에 두기
Warp에는 이에 대한 대안이 있으며, 아직 사용할 수 없더라도 이해해 둘 가치가 있습니다.
Agent Memory는 "Warp에 상주하며 내장된 Warp Agent, Claude Code, Codex 및 향후 추가될 기타 지원되는 모든 에이전트 하네스(harness) 간에 공유되는 영구 메모리 시스템"으로 설명됩니다. 메모리는 개인용, 에이전트 소유 또는 팀 소유의 저장소(store)로 구성되며, 읽기 전용 또는 읽기-쓰기 권한과 저장소별 필수 지침을 가지고 특정 에이전트에 연결됩니다. 각 메모리는 "출처를 기록"하고, 모든 변경 사항은 검사를 위해 기록되며, 생성 및 검색은 백그라운드에서 실행되므로 "토큰을 소비하거나 활성 작업에 지연 시간을 추가하지 않습니다."
세 가지 제한 사항도 명확하게 명시되어 있습니다. 이 기능은 대기자 명단이 있는 "연구 프리뷰(research preview) 단계이며 디자인 파트너를 위해 팀별로 활성화"됩니다. 서드파티 하네스는 클라우드 에이전트로 실행될 때만 지원됩니다("연구 프리뷰 기간 동안 서드파티 하네스를 로컬에서 실행하는 것은 지원되지 않습니다"). 그리고 프로그래밍 방식의 API 액세스와 셀프 호스팅은 모두 "출시 예정(Coming soon)"으로 분류되어 있습니다.
요약하자면, 올바른 방향으로 가는 훌륭한 설계이지만, 아직 일반에 공개되지 않았으며 로컬 Claude Code 세션에서는 접근할 수 없습니다. 여러분의 팀이 디자인 파트너라면 이 기능을 사용하세요. 그것이 가장 자연스러운(native) 경로입니다.
그렇지 않다면 학습된 절반을 저장할 다른 곳이 필요하며, 그것이 바로 MemoryLake가 하는 역할입니다. 단일 도구의 외부에 존재하는 메모리 레이어이므로, 1단계에서 구출한 노트를 오늘 바로 Warp에서 읽을 수 있고 다음에 사용할 도구에서도 읽을 수 있습니다. 설정은 3단계로 진행됩니다.
1단계: API 키 생성
로그인하고 API 키를 생성하세요. 연결하는 여러 도구에서 하나의 자격 증명만 사용하면 됩니다.

2단계: 첫 번째 메모리 업로드
각각 하나의 사실을 담은 짧은 항목들입니다. 소스 자료는 1단계의 세 번째 분류이며, Claude Code 자체의 노트 유형이 좋은 분류 가이드가 됩니다:

적용된 수정 사항. Claude Code의 feedback 카테고리 — 여러분이 거부한 접근 방식과 확인한 접근 방식입니다. 이는 가장 가치 있는 분류이며 Warp의 규칙 모델 어디에도 이에 해당하는 기능이 없습니다.
이유가 포함된 결정 사항. "부하가 걸릴 때 읽기 복제본(read replica)이 지연되므로 마이그레이션은 추가 전용으로만 진행됩니다." 지침은 AGENTS.md에 속하지만, 그 이유는 여기에 속하며, 이는 다음 분기에 규칙이 다시 되돌려지는 것을 방지하는 역할을 합니다.
코드가 아닌 작업 컨텍스트. 마감일, 현재 우선순위, 어떤 서비스를 누가 소유하고 있는지 등 — Claude Code의 project 카테고리로, 문서에서는 Claude가 "코드나 git 히스토리에서 도출할 수 없는 것들"로 설명합니다.
외부 포인터. 대시보드, 이슈 트래커, 런북(runbook) 등 — reference 카테고리입니다.
3단계: AI 및 에이전트 연결
사용하는 도구를 연결하세요. MemoryLake는 MCP 및 API를 통해 접근할 수 있으며, Warp는 MCP 서버를 지원합니다. 단, 앱과 CLI가 별도의 MCP 설정을 유지하므로 공유 설정은 두 번 구성해야 한다는 점을 기억하세요. Claude Code, Codex, Cline, OpenClaw도 동일한 방식으로 연결되며, 다른 도구들도 API를 통해 동일한 메모리를 읽습니다.

세 가지 솔직한 제한 사항이 있습니다. MemoryLake는 Claude Code의 자동 메모리를 읽거나 내보내거나 삭제할 수 없습니다. 해당 디렉토리에 대한 API가 없기 때문에 1단계에서 수동으로 읽어야 했던 것입니다. 또한 AGENTS.md나 글로벌 규칙을 작성하지 않습니다. 위의 로딩 동작은 Warp의 동작 방식이며, 메모리 레이어가 이를 변경하지 않습니다. 마지막으로 메모리는 컨텍스트일 뿐 강제 사항이 아닙니다. Anthropic 자체 문서에서도 CLAUDE.md와 자동 메모리에 대해 동일한 지적을 하고 있습니다. 즉, Claude는 "이를 강제된 구성이 아닌 컨텍스트로 취급"합니다. 매번 반드시 준수해야 하는 사항은 실행을 실패하게 만드는 체크(check) 단계에 포함되어야 합니다.
실제 변화하는 점
규칙 마이그레이션이 반나절이 아닌 몇 분 만에 끝납니다. /init이 CLAUDE.md를 제자리에 연결해 줍니다.
학습된 절반이 더 이상 보이지 않는 상태로 방치되지 않습니다. 몇 달 후에야 존재를 깨닫는 대신, 처음부터 의도적으로 디렉토리를 한 번 읽고 정리하게 됩니다.
로컬 머신 전용이 더 이상 기본값이 아닙니다. Claude Code의 자동 메모리는 명시적으로 머신 간에 공유되지 않지만, 외부로 이동시킨 정보는 공유가 가능해집니다.
규칙 디버깅에 대한 확실한 답을 얻을 수 있습니다. References를 통해 실제로 어떤 규칙이 실행되었는지 확인할 수 있으며, 이는 CLAUDE.md에서는 불가능했던 기능입니다.
다음 마이그레이션 비용이 줄어듭니다. 지식이 더 이상 두 도구 중 어느 한쪽의 홈 디렉토리에 갇혀 있지 않기 때문입니다.
Claude Code에서 Warp로 이동하기 위한 모범 사례
전환한 후가 아니라 전환하기 전에 MEMORY.md를 읽으세요. 이는 모든 Claude Code 세션에 로드되며 다른 모든 항목의 인덱스 역할을 합니다.
복제하기보다 연결하세요. /init은 7가지 외부 포맷 연결을 지원합니다. 동일한 규칙의 복사본 두 개는 한 달만 지나도 서로 달라지게 됩니다.
파일명의 대소문자를 즉시 확인하세요. 모두 대문자여야만 인식됩니다. 이는 Warp의 규칙 시스템에서 가장 흔하게 발생하는 무경고 실패 원인입니다.
리포지토리 전체에 적용되는 규칙은 루트 파일에 두세요. 루트와 현재 디렉토리는 자동으로 로드되지만, 그 외의 위치는 최선 노력(best-effort) 방식으로 처리됩니다.
오래된 재정의(override)가 있는지 하위 디렉토리 파일을 감사하세요. 가장 구체적인 파일이 우선하며, 오래된 파일도 구체성을 유지하기 때문입니다.
중요하게 생각하는 규칙은 References를 통해 한 번씩 검증하세요. 로드된 것은 사실이고, 여러분이 작성한 것은 의도일 뿐입니다.
규칙 파일에 추론 과정을 포함하지 마세요. 규칙은 요청 시점에 적용되며 컨텍스트를 두고 경쟁합니다. 일반적인 형태는 코딩 에이전트가 실제로 읽는 내용에서 확인할 수 있습니다.
스킬을 메모리로 취급하지 마세요. 스킬은 절차적이고 안정적이지만, 메모리는 작업하면서 작성되는 것입니다. 그 차이점은 에이전트 스킬이 메모리가 아닌 이유에서 다룹니다.
결론
이번 마이그레이션은 목적지(Warp)가 여러분을 중간에서 맞이해 주는 드문 케이스입니다. Warp의 /init은 CLAUDE.md를 직접 연결하고, 스킬은 디렉토리 이름 변경만으로 이동하며, Codebase Context는 리포지토리에서 자체적으로 재구축됩니다. 컨텍스트가 전적으로 직접 작성한 파일에만 존재했다면 반나절 만에 작업을 끝낼 수 있으며, 올바르게 설정해야 할 것은 대문자 파일명, 루트 대 하위 디렉토리 로딩 모델, 그리고 가장 구체적인 규칙 우선 원칙뿐입니다.
함께 가져올 수 없는 것은 Claude가 작성한 절반입니다. 자동 메모리는 기본적으로 활성화되어 있으며, ~/.claude/projects/<project>/memory/에 수정 사항과 프로젝트 상태를 저장합니다. 이는 설계상 로컬 머신 전용이며 내보내기 기능이 없습니다. Warp의 Agent Memory는 이러한 지식을 담기에 적합한 형태(교차 하네스 지원, 출처 추적, 에이전트별 액세스)를 갖추고 있지만, 디자인 파트너 팀으로 제한된 연구 프리뷰 단계이며 프리뷰 기간 동안 로컬에서 실행되는 서드파티 하네스는 지원하지 않습니다.
그러므로 Claude Code 사용을 중단하기 전에 메모리 디렉토리를 읽고, CLAUDE.md에 없으면서 코드로도 도출할 수 없는 수정 사항과 결정 사항들을 보존하여 단일 도구의 홈 디렉토리에 종속되지 않는 레이어에 저장하세요. 규칙은 몇 분 만에 연결될 것입니다. 추론 과정은 오직 여러분만이 직접 옮길 수 있는 부분입니다. 그리고 애초에 이 정보가 유실되었던 이유는 Claude Code가 머신 간에 망각하는 이유에서 다루고 있습니다.