简短答案
Lovable 忘记你的之前提示是因为每次生成使用的是最近聊天的滑动窗口加上项目知识块,因此你输入的许多组件的指令会滚出视野。大约在 15-20 个组件后,损失变得明显。解决方法是将你基于提示的规则存储为持久记忆,让 Lovable 在每次生成时提取它们。
为什么 Lovable 会忘记之前的提示
Lovable 是一个情感编码应用构建器,其中对话既是规范也是真相来源。该模型中的三个设计选择使得早期提示失效:
1. 聊天窗口是有限的。 每次生成都是由最近的消息和可见代码组成。第一周的提示——即使是重要的提示——在滚出窗口时不会被检索。
2. 项目知识是一个文本块,而不是提示日志。 你可以将现有规则粘贴到项目知识区域,但它是一个单一字段,与其他所有内容竞争注意力。它不是“用户曾经给出的每条指令”的结构化记录。
3. 提示被视为临时输入,而不是记忆。 Lovable 不会自动将“始终在 AppLayout 中包装页面”转换为持久规则。除非你将其转录到项目知识或固定文件中,否则该指令仅在聊天窗口中存在的时间内有效。官方的 Lovable 文档在 docs.lovable.dev 中描述了项目知识模型及其限制。
结果是:指令在少数几次生成中有效,一旦聊天继续,便会悄然停止应用。
当 Lovable 忘记之前的提示时你会失去什么
提示丢失在三个具体方面造成损失:
- 重复。 “使用命名导出。使用设计令牌。绝不要使用
useEffect进行数据获取。”你每隔一天就要重新输入同样的五条规则。 - 生成代码的漂移。 新组件忽略现有规则,因为模型在这一轮中从未见过它们。你花时间对齐差异与之前请求的内容。
- 丢失产品指令。 “试用用户不能邀请团队成员”是第一周的产品规则。到第二个月,新生成内容重新引入了被禁止的流程。
解决方法不是“让聊天更长”——而是将规则从聊天中提取到模型自动读取的记忆中。
Lovable 的内置解决方法
Lovable 提供了三种方法来使指令保持有效。没有一种方法能够干净地扩展。
项目知识 是现有规则的官方存放地。它在每次生成中应用,作为一个文本块。对于“前 10 条规则”很有用,但对于你积累的产品、领域和风格方向的长尾则不太有用。
固定文件 保持特定源文件的上下文。对规范示例很有帮助——“遵循 AppLayout.tsx 中的模式”——并受到你可以固定多少文件而不拥挤窗口的限制。
在每个提示中重新陈述规则 是手动的备用方案。它有效,但这是持久记忆应该消除的工作。
Lovable 的内置记忆不足之处
更深层次的问题是,提示是项目的口头合同。它们会累积,应该干净地分层,并且应该可以按生成检索。Lovable 的项目知识字段是全局文本——它无法适应模型正在生成的组件,也没有版本控制。
基于提示的规则需要存储在构建器上方的结构化记忆中。
MemoryLake 如何修复 Lovable 忘记之前的提示
MemoryLake 是一个跨模型的记忆层,Lovable 通过 REST 读取。你可以将提示存储为记忆,而不是将规则粘贴和重新粘贴到项目知识中,让检索引擎在每次生成时提取相关的提示。
- 提示作为可查询的记忆。 “在
AppLayout中包装页面”,“使用 TanStack Query”,“绝不要使用 useEffect 进行获取”每个都作为结构化的记忆存在,你可以列出、编辑和版本化。 - 按生成检索,而不是全局文本块。 模型获得的正是适用于当前组件的规则,而不是一个包含所有内容的巨大文本字段。
- 10,000 倍的原始提示检索范围。 MemoryLake 从数十亿个项目记忆的标记中读取,仅返回与正在生成的文件相关的提示,因此你的规则能够存活于组件漂移中。
MemoryLake 在 LoCoMo 长上下文基准测试中得分 94.03%,是截至 2026 年的最高已发布结果,具有毫秒级检索和 AES-256 端到端加密。
在 3 个步骤中将 MemoryLake 连接到 Lovable
- 创建项目并加载上下文。 登录 MemoryLake,打开项目管理,点击创建项目,并将其命名为“Lovable — Acme 提示库”。通过文档驱动上传你之前的聊天导出、PRD 和规则文档。将每条现有规则——“始终在 AppLayout 中包装页面”,“不使用 useEffect 进行获取”——作为其自己的记忆添加到记忆选项卡中。
- 生成 MCP 服务器端点。 在项目内打开 MCP 服务器选项卡,点击添加 MCP 服务器,命名为“Lovable 提示记忆”,然后点击生成。MemoryLake 返回一个 API 密钥 ID、密钥和端点 URL。立即复制 Bearer 令牌——它只显示一次。
- 通过 REST 连接 Lovable。 Lovable 还不支持原生 MCP,因此使用 REST API。要么将合并的规则集粘贴到 Lovable 的项目知识区域,并在更改时从 MemoryLake 刷新它,要么运行一个设置脚本,通过你的 Bearer 令牌调用 MemoryLake 的 REST 端点,并在每次发布前更新项目知识。现在每次新生成时,模型面前已经有你的规则。