다른 곳에서는 잘 작동하는 검색이 프로젝트 경계에서 멈추는 이유
대화 검색 및 memory에 관한 Anthropic의 도움말 문서는 이 기능의 역할을 다음과 같이 설명합니다. "새 대화에서 관련 정보를 찾고 참조할 수 있도록 Claude가 이전 대화를 검색하도록 유도할 수 있습니다." 이 기능은 사용 가능해지면 자동으로 실행됩니다. "이전 대화 검색 기능이 계정에 배포되면 기본적으로 활성화됩니다." 또한 실행될 때 눈으로 확인할 수 있습니다. "Claude가 이전 대화를 검색할 때 현재 대화에 도구 호출(tool call)로 반영되는 것을 볼 수 있습니다."
또한 내부 작동 방식에 대해서도 설명합니다. "이러한 검색은 검색 증강 생성(RAG)을 사용하며 대화 중에 도구 호출로 나타납니다."
그런 다음 검색 범위를 명시하는데, 이 문장이 바로 모든 문제의 핵심입니다. Claude는 다음과 같은 경계 내에서 대화를 검색할 수 있습니다. "프로젝트 외부의 모든 대화. 개별 프로젝트 대화(검색은 각 특정 프로젝트 내부로 제한됨)."
이를 다이어그램으로 이해해 보면, 하나의 검색 가능한 기록이 아님을 알 수 있습니다. 하나의 일반 풀과 프로젝트당 하나의 밀폐된 구획이 있는 구조입니다. 일반 풀에서 시작된 검색은 일반 풀만 커버합니다. Project A 내부에서 시작된 검색은 Project A만 커버합니다. 서로 교차하지 않습니다.
이러한 설계 이유는 다른 곳에 명시되어 있으며 매우 일관성이 있습니다. Anthropic의 프로젝트 문서는 프로젝트를 의도적으로 독립된 공간으로 설명합니다. "프로젝트를 사용하면 자체 대화 기록과 지식 베이스를 갖춘 독립된 작업 공간을 만들 수 있습니다." '독립됨(self-contained)'이 핵심 기능입니다. 한 고객의 작업이 다른 고객의 답변에 섞이지 않아야 하는 프로젝트는 원래 설계된 목적대로 정확히 작동하고 있는 것입니다.
문제는 대부분의 사람들이 프로젝트를 격리 경계가 아닌 폴더처럼 사용한다는 점입니다. 그리고 검색 인덱스를 자동으로 분할하는 폴더는 단순히 항목을 그룹화하는 폴더와는 완전히 다르게 작동합니다.
같은 영역에 두 번째 경계가 있으며, 사라진 대화를 찾기 전에 이를 알아둘 필요가 있습니다. Incognito 대화는 의도적으로 제외됩니다. "Claude는 이전 대화를 검색할 때 incognito 대화에서 정보를 가져오지 않습니다." Anthropic의 incognito 문서는 더욱 명확하게 설명합니다. 이는 "대화 기록이나 Claude의 memory에 저장되지 않는 임시 대화"입니다. 따라서 유령 아이콘 아래에서 시작한 대화는 검색에서 누락된 것이 아니라, 처음부터 검색 대상이 아니었던 것입니다.
사람들이 대신 시도하는 방법들
더 나은 표현으로 다시 질문하기. 이해는 가지만, 문제가 표현 방식이 아닌 범위(scope)일 때는 소용이 없습니다. 도구 호출이 실행되고 현재 있는 풀을 검색한 뒤 동일하게 아무것도 찾지 못합니다. 도구 호출이 일어나는 것을 볼 수 있다면, 질문을 바꾸는 것은 해결책이 아닙니다.
Memory 기능이 공백을 메워줄 것이라 가정하기. Memory와 대화 검색은 관련이 있지만 서로 다르며, memory가 밀폐된 구획을 열린 공간으로 만들어 주지는 않습니다. 두 기능 사이의 관계와 각각의 한계는 Claude's memory across chat and Cowork에서 다루고 있습니다.
Claude가 잊어버렸다고 결론 내리기. 이는 매우 구체적인 방식으로 잘못된 진단이며, 실제 원인과 구분해야 합니다. 애초에 가리키지 않은 대화를 검색하지 못하는 모델은 작업 세션 내부에서 context를 잃어버리는 모델과 다릅니다. 두 번째 문제는 실제로 존재하며 그 나름의 원인이 있으며, 이는 why Claude forgets previous conversations에서 다루었습니다. 이번 문제는 망각이 아니라 경계선의 문제입니다.
대신 모든 것을 프로젝트 지식(project knowledge)에 업로드하기. 합리적인 직관이며 해당 프로젝트 내에서는 도움이 됩니다. 하지만 프로젝트 지식은 대화 검색과는 다른 메커니즘입니다. 이는 사용자가 첨부하는 문서로, 크기가 커지면 검색을 통해 확장되며, Anthropic은 이를 "응답 품질을 유지하면서" 용량을 확장하는 RAG 모드로 설명합니다. 그러나 이 기능이 다른 곳에 있는 이전 대화를 이곳에서 보이게 만들어 주지는 않습니다. 이 메커니즘은 how Claude's project RAG mode works에서 설명했으며, 첨부 파일에 의존할 때 발생하는 실패 사례는 when Claude forgets project knowledge에서 다루었습니다.
검색 토글을 껐다 켜기. 설정 제어 기능은 존재합니다. Settings > Memory로 이동하여 “Search and reference chats” 옆의 토글을 끌 수 있습니다. 하지만 이를 토글한다고 해서 범위가 바뀌는 것은 아니며, 검색 실행 여부만 바뀔 뿐입니다.
모든 것을 하나의 구획에 넣기 위해 하나의 거대한 프로젝트 만들기. 이 방법은 작동하지만, 프로젝트의 목적을 훼손하는 지점에 이르게 되며 요금제 제한에 부딪힙니다. "무료 사용자는 최대 5개의 프로젝트만 생성할 수 있습니다."
해결책: 대화를 시작하기 전에 어떤 풀에 속할지 결정하기
경계는 고정되어 있고 문서화되어 있습니다. 여러분이 제어할 수 있는 것은 작업이 경계의 어느 쪽에 놓이게 할 것인지, 그리고 어느 쪽이든 결론이 유지되도록 할 것인지 여부입니다.
1단계: 실제로 어떤 풀을 검색하고 있는지 확인하기
문제를 진단하기 전에 먼저 자신이 어디에 있는지 파악하세요. 현재 대화가 프로젝트 내에 있다면 검색은 해당 프로젝트의 대화에 도달합니다. 프로젝트 외부에 있다면 검색은 모든 프로젝트 외부의 모든 대화에 도달합니다.
그런 다음 검색이 실제로 실행되었는지 확인하세요. Anthropic의 문서에 따르면 검색은 대화에서 도구 호출로 나타나므로, 추측할 필요 없이 눈으로 확인할 수 있습니다. 눈에 띄게 실행되었지만 아무것도 반환하지 않은 검색은 범위(scope) 문제입니다. 아예 나타나지 않은 검색은 설정 또는 가용성 문제입니다. 이 기능은 "웹, Claude Desktop 및 Claude 모바일 앱의 유료 요금제(Pro, Max, Team 및 Enterprise 요금제) 사용자"가 사용할 수 있다고 문서화되어 있습니다.
이 한 가지 확인만으로 겉보기에는 동일해 보이는 두 가지 실패 모드를 구분할 수 있습니다.
2단계: 컨테이너를 의도적으로 선택하고 규칙을 기록해 두기
나중에 관련 없는 작업에서 대화 스레드를 찾아야 한다면 프로젝트 외부에 두세요. 스레드가 다른 곳에 노출되지 않아야 한다면 프로젝트에 넣고 그것이 프로젝트의 목적임을 받아들이세요.
기록해 둘 만한 규칙은 프로젝트를 이 두 가지 목적 중 무엇을 위해 사용할 것인가입니다. 대부분의 파편화된 기록은 결정을 내리지 않아 발생합니다. 3월에 정리 정돈을 위해 만든 프로젝트가 9월에는 보이지 않는 장벽이 됩니다. 또한 incognito가 어디에 해당하는지 유의하세요. 이는 프로젝트의 더 강력한 버전이 아니라 제3의 상태이기 때문입니다. Incognito 대화는 기록에 전혀 저장되지 않고 나중에 변환할 수 없으며, Anthropic은 incognito 모드가 "현재 프로젝트 외부의 대화에서만 사용할 수 있다"고 명시하고 있습니다.
3단계: 결론을 도출한 구획에서 밖으로 꺼내기
필요한 정보가 대화 속에 갇혀 있지 않게 되는 순간, 검색 범위는 더 이상 걸림돌이 되지 않습니다.
결정을 내린 세션이 끝나면 컨테이너 외부의 어딘가에 결론을 글로 적어 두세요. 무엇이 선택되었는지, 왜 선택되었는지, 무엇이 그것을 바꿀 수 있는지 4~5문장으로 작성합니다. 그러면 "그것이 어떤 풀에 있었는가"라는 질문에 답할 필요가 없어집니다. 결론이 더 이상 풀 속에 존재하지 않기 때문입니다. 이는 단일 세션이 아닌 여러 세션에 걸쳐 어시스턴트를 유용하게 만드는 것과 동일한 규율이며, 이에 대해서는 making Claude remember previous conversations에서 설명했습니다.
MemoryLake에서 설정하기
모든 벤더의 구획 외부에 존재하는 저장소는 범위가 제한된 검색에 대한 구조적인 해답입니다. MemoryLake는 어디서나 접근할 수 있기를 원하는 결론을 위한 별도의 레이어로, 대화 기록에서 파생되는 것이 아니라 사용자가 직접 관리합니다. 자신의 언어로 항목을 직접 작성합니다. Anthropic의 시스템이나 다른 벤더의 저장소에서 아무것도 읽거나 쓰거나 제거하지 않습니다. Claude 대화는 사용자가 지정한 프로젝트 내부에서 완전히 Claude 자체의 제어 하에 유지됩니다.
1단계: API 키 생성하기
대시보드에서 키를 생성합니다. 이 키를 통해 원래 대화가 어떤 제품의 구획에서 이루어졌는지에 관계없이 각 어시스턴트가 동일한 결론 세트에 도달할 수 있습니다.

2단계: 첫 번째 memory 업로드하기
현재 갇혀 있는 결정 사항부터 시작하세요. 일반 대화에서 결론을 찾기 어려울 것 같은 두세 개의 프로젝트를 떠올리고, 각각을 날짜가 적힌 짧은 단락으로 작성해 보세요. 대화 내용을 그대로 복사하는 것이 아니라, 결정된 사항을 기록하는 것입니다.

3단계: AI 및 에이전트 연결하기
도구가 이 레이어를 가리키도록 설정하여 나중에 검색하는 대신 작업을 시작할 때 해당 결론을 로드하도록 하세요. 유일하게 확실한 방법으로 검증해 보세요. 프로젝트 외부에서 새 대화를 열고 원래 프로젝트 내부에서 도출된 결론을 요청해 보세요. 답변을 받아낸다면 경계선으로 인해 손해를 보는 일은 더 이상 없는 것입니다.

실무에서 달라지는 점
첫 번째 변화는 진단 방식입니다. "Claude가 내 대화를 찾지 못함"이라는 현상은 범위가 제한된 검색, 저장되지 않은 대화, 또는 기능이 실행되지 않음이라는 세 가지 고유한 상황으로 나뉘며, 각각 대처 방법이 다릅니다. 경계가 존재한다는 사실을 알면 해결할 수 없는 불만이 2분짜리 확인 작업으로 바뀝니다.
두 번째는 프로젝트를 본래의 강점에 맞게 사용할 수 있게 된다는 점입니다. 여러 클라이언트를 위해 작업하거나 개인적인 스레드와 업무용 스레드를 분리할 때 격리는 진정으로 가치 있습니다. 실수로 격리했을 때만 해가 될 뿐입니다. 결론이 다른 곳에 저장되면 검색 비용을 지불하지 않고도 적극적으로 격리할 수 있습니다.
세 번째는 한 제품의 경계가 다른 도구가 아는 정보까지 결정하지 않게 된다는 점입니다. 프로젝트에서 도출된 결정이 다른 어시스턴트가 접근할 수 있는 저장소에 존재한다면, 도구 간 이동이 이미 해결된 문제를 다시 도출해야 함을 의미하지 않게 됩니다. 이는 cross-tool memory for knowledge workers에서 설명한 상황입니다.
네 번째는 팀에게 중요한 다소 조용한 변화입니다. Anthropic은 Team 및 Enterprise 요금제에서 incognito 대화가 "계정 소유자가 사용할 수 있는 조직 데이터 내보내기에 포함된다"고 명시하고 있으며, Claude는 incognito 대화 내에서도 맞춤형 스타일과 같은 프로필 정보에 여전히 접근할 수 있습니다. Incognito는 기록에 저장되고 memory에 사용되는 대상에 관한 것일 뿐, 소속 조직으로부터의 프라이버시 모드가 아닙니다. 이에 의존하기 전에 이 사실을 알면 나중에 정말 난처한 대화를 예방할 수 있습니다.
Claude의 검색 경계를 넘어 작업하기 위한 모범 사례
프로젝트가 자신에게 어떤 의미인지 한 번만 결정하세요. 프로젝트는 격리 경계이거나 폴더입니다. 둘 다 될 수는 없으며, 검색 범위는 첫 번째 해석을 따릅니다.
검색을 탓하기 전에 도구 호출을 확인하세요. 도구 호출은 의도적으로 대화에 표시됩니다. 이를 확인하면 진단이 즉시 바뀝니다.
Incognito를 더 깔끔한 프로젝트 대용으로 사용하지 마세요. 이는 다른 결과를 초래하는 다른 메커니즘입니다. 아무것도 저장되지 않고, 되돌릴 수 없으며, Team 및 Enterprise 요금제에서는 여전히 조직 내보내기에 나타납니다.
결론은 컨테이너 외부에 기록하세요. 프로젝트 내부에만 존재하는 결정 사항은 한 번의 정리 작업만으로도 접근 불가능해질 수 있습니다.
클라이언트 작업은 의도적으로 격리해 두세요. 이는 경계선이 사용자가 원하는 대로 정확히 작동하는 경우입니다. 우회하려 하지 말고 이를 적극 활용하세요.
자신의 저장소를 분기마다 다시 읽어보세요. 3월에 작성된 결론이 6월에 반박되었는데 둘 다 날짜 없이 방치되어 있다면, 결론이 아예 없는 것보다 못합니다.
결론
Claude의 이전 대화 검색은 신뢰할 수 없는 것이 아닙니다. 범위가 지정되어 있을 뿐이며, Anthropic은 이를 한 줄로 명시하고 있습니다. 검색 대상은 "프로젝트 외부의 모든 대화. 개별 프로젝트 대화(검색은 각 특정 프로젝트 내부로 제한됨)"입니다.
이러한 설계는 의도된 것이며 타당합니다. 프로젝트는 "자체 대화 기록과 지식 베이스를 갖춘 독립된 작업 공간"으로 문서화되어 있으며, 한 클라이언트 프로젝트가 다른 클라이언트의 답변으로 유출되는 것이 프로젝트 간 검색이 되지 않는 것보다 훨씬 더 심각한 문제입니다.
잘못되는 부분은 기능이 구축된 방식과 사람들이 이를 채택하는 방식 사이의 불일치뿐입니다. 프로젝트는 폴더처럼 생성되고, 사람들은 폴더가 외부에서도 검색 가능할 것이라 기대합니다. 구획이 실재한다는 점을 알게 된다면 해결책은 간단합니다. 현재 어떤 풀에 있는지 확인하고, 새로운 작업이 어느 쪽에 속할지 의도적으로 결정하며, 결론 자체는 어떤 구획도 가둘 수 없는 곳에 보관하는 것입니다.