MemoryLake
모든 글로 돌아가기
Pain Point2026년 5월 22일7 분 소요

왜 Windsurf가 내 아키텍처 결정을 잊어버릴까?

2주 전, 당신과 Cascade는 데이터 레이어를 정리했습니다: Prisma 위에 Drizzle, 엣지 런타임 친화적, ORM 측 조인 없음, 분석 쿼리를 위한 원시 SQL. 당신은 긴 대화에서 그 이유를 기록했습니다. 오늘 새로운 Cascade 세션을 열어 새로운 엔드포인트를 추가하려고 하는데, Cascade는 조인된 포함으로 Prisma 스키마 작성을 제안합니다.

결정은 당신의 머릿속, 코드베이스, 그리고 지난 2주간의 채팅 기록 어딘가에 있습니다. 그러나 Cascade의 기억에는 없습니다. 그 이유는 다음과 같습니다.

간단한 답변

Windsurf는 Cascade에 과거 채팅의 지속적인 크로스 세션 기억이 없기 때문에 아키텍처 결정을 잊어버립니다. 또한 .windsurfrules 파일은 전체 ADR과 근거를 담기에는 너무 작습니다 (~6,000자 제한). 결정 세부 사항은 오래된 세션에서 사라지고 긴 세션에서는 압축됩니다. 검색 가능한 프로젝트 기억이 있으면 모든 채팅과 모든 도구에서 결정을 쿼리할 수 있습니다.

Windsurf가 아키텍처 결정을 잊어버리는 이유

아키텍처 결정은 코드베이스에서 가장 가치 있는 맥락이며 모든 편집기의 기본 기억에 의해 가장 잘 제공되지 않습니다. 세 가지 Cascade 메커니즘이 손실을 초래합니다:

1. 채팅 내용에 대한 크로스 세션 기억 없음. Cascade Memories는 짧은 작업 공간 범위의 메모를 캡처합니다. 90개의 메시지 디자인 논의의 전체 추론 체인을 저장하도록 설계되지 않았습니다. 새로운 채팅을 열면 모든 결정의 이유가 채팅 사이드바에 앉아 있습니다 — 당신은 읽을 수 있지만 에이전트는 볼 수 없습니다.

2. 규칙 파일이 ADR에 비해 너무 작음. 실제 ADR은 맥락, 고려된 옵션, 결정, 결과 및 후속 조치를 포함합니다. 여섯 개를 6,000자 .windsurfrules에 넣는 것은 비현실적입니다. 대부분의 팀은 포기하고 한 줄로 작성합니다: "Drizzle 사용". 이 줄은 살아남습니다. 그러나 근거는 남지 않으므로 Cascade는 거부된 옵션을 계속 제안합니다.

3. 세션 내 요약이 이유를 압축함. Codeium은 이전 버전이 중요한 맥락을 놓쳤기 때문에 Cascade의 요약기 개선을 문서화했습니다. 지금도 요약은 손실이 발생합니다. 추론이 짧은 문장으로 바뀌고 Cascade는 그 뒤에 있는 제약을 잃습니다.

Windsurf가 아키텍처 결정을 잊어버릴 때 잃는 것

잃어버린 근거는 가장 비싼 종류의 맥락 손실입니다:

  • 거부된 옵션이 다시 살아납니다. Prisma는 이미 평가되고 거부되었습니다. 이유가 없으면 Cascade는 다시 제안합니다 — 그리고 당신의 반발이 없으면, 주니어 개발자나 덜 회의적인 검토자가 이를 수용할 수 있습니다.
  • 결정이 매 스프린트마다 재논의됩니다. "Redis를 사용할까요?"는 3월에 답변되었습니다. 검색 가능한 기록이 없으면 5월에 다시 질문이 들어오고, 당신은 세션을 낭비하며 다시 결정해야 합니다.
  • 새로운 코드가 이전 결정을 조용히 위반합니다. "모든 결제는 Stripe Checkout을 통해, 원시 API는 사용하지 않음"이 한 번 결정되었습니다. 다음 기능은 원시 API를 사용합니다. 제약이 에이전트에게 도달하지 않았기 때문입니다.

Windsurf의 내장된 우회 방법 (각각의 단점)

Windsurf에는 세 가지 관련 메커니즘이 있습니다. 어떤 것도 ADR 규모의 콘텐츠를 위해 설계되지 않았습니다.

`.windsurfrules`는 당신의 스택에 대한 몇 가지 한 줄 메모를 담을 수 있습니다. 그러나 실용적인 문자 제한과 Cascade가 세션이 증가함에 따라 로드된 규칙을 요약하기 때문에 전체 ADR을 담을 수 없습니다.

Cascade Memories는 채팅 중 짧은 메모를 자동 생성합니다. "사용자가 작은 PR을 선호함"에는 유용합니다. "우리는 이 다섯 가지 제약 조건 때문에 Prisma보다 Drizzle을 선택했습니다"에는 쓸모가 없습니다.

워크플로우는 반복 가능한 절차를 스크립트할 수 있습니다. 기억 기능이 아니며 도움이 되지 않습니다.

공식 Cascade Memories 문서를 읽어보면 전체 기능을 확인할 수 있습니다.

작은 선호도에는 기본 기능이 작동합니다. 그러나 팀의 아키텍처 근거에는 작업을 위해 설계되지 않았습니다.

Windsurf의 내장 기억이 부족한 부분

아키텍처 결정은 편집기 범위에 국한되지 않습니다. 이들은 프로젝트 범위에 있으며, 종종 조직 범위에 있습니다. "우리는 Drizzle을 선택했습니다"라는 동일한 결정은 Cascade, Cursor, Claude Code, ChatGPT 또는 코드 검토 도구에 있든지 간에 적용됩니다. Windsurf의 기본 기능은 Windsurf를 넘어 이동하지 않으며, /docs/adr/ 폴더의 ADR은 모든 도구의 모든 에이전트가 실제로 찾고 사용할 수 있는 경우에만 유용합니다.

기억은 편집기가 아닌 프로젝트를 따라야 합니다.

MemoryLake가 Windsurf의 아키텍처 결정을 잊어버리는 문제를 해결하는 방법

MemoryLake는 Windsurf와 Cascade의 기본 MCP 지원을 통해 연결되는 크로스 모델 기억 레이어입니다. ADR을 규칙 파일에 넣으려 하지 말고, ADR 폴더와 디자인 논의를 프로젝트에 로드하면 Cascade가 매 턴마다 관련 결정을 검색합니다.

  • 1급 기억으로서의 ADR. /docs/adr/ 폴더, RFC 및 과거 디자인 논의를 프로젝트에 드롭하세요. Cascade가 데이터 레이어를 스캐폴드할 때 "ADR-014: ORM 선택"을 가져와 전체 근거를 볼 수 있습니다, 한 줄이 아닙니다.
  • 원시 프롬프트보다 10,000배 더 많은 맥락. MemoryLake의 검색 엔진은 수십억 개의 프로젝트 기억에서 읽고 매 턴마다 관련 ADR만 반환합니다. 규칙 파일 제한 없음, 요약 드리프트 없음.
  • 모든 AI에 걸쳐 하나의 결정 로그. 동일한 ADR이 Cursor, Claude Code, ChatGPT, Claude Desktop 및 Gemini에서 보입니다. 새로운 개발자가 어떤 도구를 열어도 동일한 이유로 동일한 결정을 봅니다.

MemoryLake는 또한 기억에 대한 Git 스타일의 버전 관리를 제공하므로 ADR이 대체될 때 차이점과 이력을 얻습니다 — 조용한 덮어쓰기가 아닙니다. 2026년 현재 LoCoMo 긴 맥락 벤치마크에서 94.03%를 기록했으며, 밀리초 검색 및 AES-256 종단 간 암호화로 최고의 결과입니다.

MemoryLake를 Windsurf에 연결하는 3단계

  1. 프로젝트를 생성하고 결정 기록을 로드하세요. MemoryLake에 로그인하고 프로젝트 관리로 이동하여 프로젝트 생성 버튼을 클릭하고 리포지토리 이름(예: "acme-platform — ADRs")으로 이름을 지정하세요. /docs/adr/, RFC 폴더 및 Document Drive를 통해 내보낸 Cascade 채팅을 업로드하세요 (PDF, Markdown, Word, Excel, 이미지 모두 지원). 빠른 검색을 위해 Memories 탭에 주요 결정의 짧은 요약을 추가하세요.
  2. MCP 서버 엔드포인트를 생성하세요. 프로젝트 내의 MCP 서버 탭을 열고 MCP 서버 추가 버튼을 클릭한 후 "Windsurf 통합"으로 이름을 지정하고 생성 버튼을 클릭하세요. MemoryLake는 API 키 ID, 비밀 및 엔드포인트 URL을 반환합니다. 비밀을 즉시 복사하세요 — 한 번만 표시됩니다.
  3. 서버를 Cascade의 MCP 구성에 추가하세요. Windsurf에서 설정 → Cascade → MCP 관리 → 원시 구성 보기로 이동한 후, 엔드포인트 URL과 Bearer 토큰으로 memorylake 항목을 추가하세요. 저장하고 Cascade를 재시작하세요. 이제 Cascade는 아키텍처 형태의 코드를 작성하기 전에 결정 기록을 조회할 수 있는 memorylake 도구를 갖추게 됩니다.

자주 묻는 질문

Windsurf는 세션 간 아키텍처 결정을 기억하나요?

Windsurf의 Cascade는 과거 채팅에 대한 내장된 크로스 세션 기억이 없습니다. .windsurfrules는 세션 간에 유지되지만 전체 ADR을 담기에는 너무 작습니다. Cascade Memories는 짧은 메모일 뿐이며 디자인 문서가 아닙니다. 과거 채팅은 에이전트가 읽을 수 없는 사이드바에 있습니다.

Cascade가 우리의 아키텍처 결정을 기억하게 하려면 어떻게 해야 하나요?

Windsurf의 기본 MCP 지원을 통해 Cascade를 MemoryLake와 같은 외부 기억 레이어에 연결하세요. ADR, RFC 및 과거 디자인 논의를 프로젝트에 로드하면 Cascade는 새로운 아키텍처 형태의 코드를 작성하기 전에 관련 결정을 검색할 수 있습니다.

왜 Cascade는 우리가 이미 거부한 옵션을 계속 제안하나요?

거부는 오래된 채팅이나 요약된 문단에 살고 있기 때문입니다. 근거에 대한 검색 가능한 기억이 없으면 Cascade는 각 새로운 요청을 일반적인 모범 사례에 따라 평가하며, 특정 결정 로그에 따라 평가하지 않습니다.

그냥 ADR을 .windsurfrules에 넣을 수 있나요?

한 줄 요약을 거기에 넣을 수 있지만, 규칙 파일은 약 6,000자의 실용적인 제한이 있으며 맥락 공간을 위해 다른 모든 것과 경쟁합니다. 전체 ADR과 근거, 옵션 및 결과는 검색 가능한 기억에 있어야 하며, 전처리된 문자열이 아닙니다.

동일한 ADR이 Cursor나 Claude Code에서 작동하나요?

.windsurfrules는 Windsurf 전용입니다. MemoryLake는 ADR을 모델 중립적인 프로젝트에 저장하므로 동일한 결정 로그가 Windsurf, Cursor, Claude Code, Claude Desktop, ChatGPT 및 MCP 또는 REST를 사용하는 모든 도구에서 작동합니다.