간단한 답변
Bolt.new는 전체 코드베이스, 채팅 기록 및 시스템 프롬프트를 단일 200K 토큰 Claude 창에 담기 때문에 프로젝트가 대략 15-20개의 컴포넌트를 초과하면 가장 오래된 컨텍스트가 먼저 퇴출됩니다. 해결책은 Bolt 외부에 지속적인 프로젝트 기억을 유지하는 것입니다.
왜 Bolt.new가 프로젝트 컨텍스트를 잊어버리는가
Bolt.new는 모든 프로젝트를 WebContainer 내에서 실행하고, 매 턴마다 전체 가시 파일 트리, 메시지 기록 및 자체 시스템 프롬프트를 Claude에 전달합니다. 세 가지 제약 조건이 잊어버림을 불가피하게 만듭니다:
1. 200K 토큰 한계. Bolt 뒤에 있는 Anthropic의 Claude 모델은 200K 토큰 컨텍스트 창을 가지고 있습니다. Bolt는 사용자들이 약 500K 토큰에서 채팅이 멈춘다고 보고한 자체 내부 한계를 가지고 있습니다. 프로젝트 파일과 채팅 기록이 그 공간을 놓고 경쟁합니다. 중간 SaaS 프론트엔드는 첫날에 이를 채울 수 있습니다.
2. 전체 트리가 기본적으로 프롬프트에 포함됩니다. Bolt는 .bolt/ignore에 명시적으로 추가하지 않는 한 매 턴마다 프로젝트의 모든 파일을 읽습니다. 컴포넌트, 훅 및 구성 파일이 누적됨에 따라 새로운 지침을 위한 창의 비율이 줄어들어 Bolt가 이전 요구 사항을 무시하거나 바꾸기 시작합니다.
3. 채팅 기록은 동일한 예산의 일부입니다. Bolt의 "기억"은 어제 당신이 말한 내용을 롤링 대화에서 유지합니다. 창이 넘치면 가장 오래된 턴이 잘립니다. 결정, 제약 조건 및 "이 파일을 건드리지 마세요" 규칙이 조용히 사라집니다.
결과: Bolt는 현재 당신의 코드베이스를 알고 있지만, 그 주위의 프로젝트를 기억하지는 않습니다.
Bolt가 프로젝트 컨텍스트를 잊어버릴 때 잃는 것
Bolt가 컨텍스트를 잃을 때마다 두 번의 비용을 지불합니다 — 한 번은 토큰으로, 한 번은 정리로.
- 재작성된 작업. Bolt는 더 이상 원래 의도를 보지 못하기 때문에 지난주에 만든 컴포넌트를 다시 생성하여, 당신이 차이를 비교하고 병합해야 합니다.
- 잃어버린 요구 사항. "인증에 Supabase를 사용하고, Firebase는 절대 사용하지 마세요"가 퇴출되고, Bolt는 다음 프롬프트에서 기꺼이 Firebase를 연결합니다.
- 깨진 교차 파일 논리. 참조된 파일이 컨텍스트에서 벗어나면, Bolt는 스텁을 만들어 내고 당신의 경로는 404가 됩니다.
이들은 엣지 케이스가 아닙니다. Bolt GitHub 이슈 트래커에는 "프롬프트가 너무 깁니다: 200001 토큰 > 200000 최대" 오류에 대한 수백 개의 댓글이 달린 스레드가 있어, 빌드 중간에 세션을 삭제합니다.
Bolt.new의 내장된 해결책
StackBlitz는 세 가지 완화책을 출시했습니다. 이들은 도움이 되지만, 그 중 어느 것도 진정한 프로젝트 기억을 제공하지는 않습니다.
`.bolt/ignore` 파일. .gitignore를 모델로 하여, Bolt에게 프롬프트에서 제외할 폴더와 파일을 알려줍니다. 이는 여유 공간을 확보하지만, 또한 Bolt가 제외한 모든 것에 대해 맹목적으로 만듭니다 — 무시된 헬퍼를 가져오는 경로를 건드리면 Bolt는 추측으로 그것을 다시 구축합니다.
채팅 타겟팅. 요청을 단일 파일이나 폴더로 범위를 제한할 수 있습니다. 이는 한 턴의 작업 세트를 좁히지만, 턴 간 제약 조건을 지속하지는 않습니다.
StackBlitz 클라우드 백업. 당신의 프로젝트는 StackBlitz와 동기화되므로, 채팅이 없어도 코드는 살아남습니다. 코드는 문제가 아닙니다. 코드를 생성한 추론, 규칙 및 결정이 잃어버리는 것입니다.
더 깊은 안내를 원하시면, Bolt 팀은 이러한 레버를 공식 Bolt 도움말 센터에 문서화했습니다.
5화면 프로토타입의 경우, 원주율은 괜찮습니다. 실제 제품의 경우, 그렇지 않습니다.
Bolt의 내장 기억이 부족한 점
더 깊은 문제는 Bolt의 기억이 Bolt를 떠날 수 없다는 것입니다. 디자인 다듬기를 위해 화면을 v0으로 이동하거나, 백엔드 작업을 Cursor에 맡기거나, Claude에게 아키텍처를 검토해 달라고 요청하는 순간, 컨텍스트가 사라집니다. 모든 새로운 도구는 빈 상태로 시작하며, 당신은 루프에서 유일한 지속적인 기억이 됩니다 — 세 가지 다른 채팅에 동일한 제약 조건 단락을 붙여넣습니다.
이것이 교차 도구 기억 레이어가 채우는 간극입니다: 모든 AI가 읽을 수 있는 하나의 프로젝트 기억으로, Bolt는 테이블의 한 의자일 뿐, 전체 테이블이 아닙니다.
MemoryLake가 Bolt가 프로젝트 컨텍스트를 잊어버리는 것을 어떻게 해결하는가
MemoryLake는 프로젝트의 의도 — 파일, 결정, 명명 패턴 및 규칙 — 를 Bolt의 채팅 창 외부에 저장합니다. Bolt는 각 세션 시작 시 MemoryLake에서 읽고, 당신이 전환하는 모든 도구도 마찬가지입니다.
- 채팅보다 오래 지속되는 프로젝트 기억. 사양, 디자인 노트, ADR 및 이전 대화는 MemoryLake 프로젝트에 저장됩니다. 새로운 Bolt 채팅을 열면, MemoryLake에서 가져온 짧은 컨텍스트 요약을 붙여넣고, Bolt는 200K 토큰의 원시 파일이 아닌 프로젝트와 이미 정렬된 상태로 하루를 시작합니다.
- 원시 프롬프트보다 10,000배 더 많은 컨텍스트. MemoryLake의 검색 엔진은 수십억 개의 프로젝트 기억에서 읽고, 매 턴마다 관련된 것만 반환합니다. 이제 전체 앱을 200K 창에 집어넣으려 하지 않습니다.
- 진동 코딩 스택 전반에 걸쳐 휴대 가능. 동일한 프로젝트 기억이 v0, Lovable, Replit Agent, Cursor 및 Claude에서 작동합니다. UI 패스를 위해 Bolt에서 v0로 점프하면 프로젝트가 함께 이동합니다.
MemoryLake는 LoCoMo 긴 컨텍스트 벤치마크에서 94.03%를 기록했으며, 밀리초 검색 및 AES-256 종단 간 암호화를 제공합니다.
MemoryLake를 Bolt.new에 연결하는 3단계
- 프로젝트를 생성하고 컨텍스트를 로드합니다. MemoryLake에 로그인하고, 프로젝트 관리 열고, 프로젝트 생성 클릭 후 "Bolt — 랜딩 페이지 재구성"과 같은 이름을 지정합니다. 사양, 브랜드 가이드라인, 컴포넌트 목록 및 이전 Bolt 채팅 기록을 문서 드라이브를 통해 업로드합니다. 하드 규칙("Firebase 인증을 절대 사용하지 마세요", "Tailwind만, 스타일드 컴포넌트는 사용하지 마세요")을 기억 탭에 항목으로 추가합니다.
- MCP 서버 엔드포인트를 생성합니다. 프로젝트 내의 MCP 서버 탭을 열고, MCP 서버 추가 클릭 후 "Bolt 통합"이라는 이름을 지정하고 생성 클릭합니다. MemoryLake는 API 키 ID, 비밀 및 엔드포인트 URL을 반환합니다. 비밀은 한 번만 표시되므로 즉시 복사합니다.
- Bolt.new에 연결합니다. Bolt는 아직 MCP를 기본적으로 지원하지 않으므로, Bearer 토큰으로 MemoryLake REST API를 호출하여 간결한 프로젝트 요약을 가져온 후, 새로운 세션 시작 시 Bolt의 채팅에 그 요약을 붙여넣습니다. 개발자는 Python SDK를 프리 프롬프트 훅에 연결하여 모든 새로운 Bolt 프로젝트가 동일한 진실의 출처로 열리도록 할 수 있습니다.