字数 2735,阅读大约需 14 分钟
AI编程里的记忆银行,超节约tokens资源和时间
编程:AI记忆丢失

AI 助手面临一个根本性的限制:^它们会在会话之间完全重置对话内容^。这种“记忆丢失”意味着每次开始新的对话时,都需要重新解释项目的架构、目标、技术和当前状态。 这造成了一个关键效率困境:AI 模型要么在没有正确理解项目的情况下进行编辑(导致错误和解决方案不一致),要么必须在每个会话中花费大量时间和资源分析整个代码库(^对于大型项目来说,这既昂贵又缓慢^)。
如果没有解决这个记忆问题,AI 助手仍然是强大但无状态的工具,无法真正作为持续的开发伙伴。
解决方案:Memory Bank

启用 Memory Bank 后,Kilo Code 可以更高效地工作,立即理解项目上下文和技术栈。
Memory Bank 是一个结构化文档系统,使 Kilo Code 能够更好地理解你的项目并在编码会话之间保持上下文。它^将你的 AI 助手从无状态工具转变为具有完美项目记忆的持续开发伙伴^。Kilo Code 会在每次开始新会话时自动读取你的 Memory Bank 文件,以重建对项目的理解。
当 Memory Bank 处于活动状态时,Kilo Code 会在每个任务的开始处显示 [Memory Bank: Active],并简要总结你的项目上下文,确保在不重复解释的情况下保持一致性。
记忆银行的好处
- 1. 语言无关:适用于任何编程语言或框架
- 2. 高效的项目理解:帮助AI插件理解项目的用途和技术栈
- 3. 上下文保留:在会话之间维护项目知识,而无需在每个新会话中扫描文件
- 4. 更快的启动:在开始新会话时立即理解你的项目代码上下文
- 5. 自我记录项目:作为副产品创建有价值的文档
Kilo Code Memory Bank 完整指南
概述
Memory Bank 是 Kilo Code AI 编程助手的核心功能,旨在解决 AI 助手在会话间"记忆丢失"的根本性问题。它通过结构化文档系统,使 AI 助手能够在编程会话之间保持项目上下文,从无状态工具转变为具有完美项目记忆的持续开发伙伴。
实施指南
首次设置流程
准备工作
- 1. 创建目录结构```
.kilocode/
└── rules/
├── memory-bank/
│ └── brief.md
└── memory-bank-instructions.md
- 2. 基础配置
- • 编写基本的
brief.md项目摘要 - • 下载并配置
memory-bank-instructions.md,将“kilocode.ai/docs/zh-CN/… - • 切换到 Architect 模式
- • 选择最佳可用 AI 模型(避免轻量级模型)
- • 编写基本的
初始化执行
- 1. 启动命令:
initialize memory bank - 2. AI 分析过程:
- • 详尽分析所有源代码文件及关系
- • 检查配置文件和构建系统设置
- • 分析项目结构和组织模式
- • 解析文档和注释
- • 识别依赖项和外部集成
- • 理解测试框架和模式

- 3. 文件生成:AI 创建完整的 Memory Bank 文件集
- 4. 验证确认:仔细审查生成的文件,确保准确性
项目摘要编写技巧
原则:
- • 从简单开始,可以是任何详细程度
- • 专注于最重要的方面
- • AI 将帮助填补空白并提出问题
- • 可以随项目发展逐步更新
示例提示:
提供此项目的简明而全面的描述,突出其主要目标、关键功能、
使用的技术和重要性。然后,将此描述写入适当命名的文本文件中,
以反映项目内容,确保写作的清晰性和专业性。保持简洁。
日常使用工作流
常规任务执行
任务开始阶段:
- 1. AI 自动读取所有 Memory Bank 文件
- 2. 显示
[Memory Bank: Active]状态确认 - 3. 提供项目理解的简要摘要
- 4. 继续执行请求的任务
任务结束阶段:
- • 如果进行了重大更改,AI 可能建议更新 Memory Bank
- • 使用提示:"Would you like me to update memory bank to reflect these changes?"
Memory Bank 更新机制
自动更新触发条件:
- • 发现新的项目模式
- • 实施重大更改后
- • 上下文需要澄清时
手动更新方法:
- • 使用
update memory bank命令 - • 指定更新范围:
update memory bank using information from @/Makefile
更新执行过程:
- 1. 审查所有项目文件
- 2. 记录当前状态
- 3. 识别新见解和模式
- 4. 根据需要更新所有相关文件
任务工作流记录
记录时机:完成重复性任务后
记录命令:add task 或 store this as a task
记录内容:
- • 任务名称和详细描述
- • 涉及的文件列表
- • 分步操作工作流程
- • 重要注意事项和常见陷阱
- • 具体实现示例
应用场景:后续执行类似任务时,AI 自动遵循已建立的工作流程
关键命令参考
| 命令 | 用途 | 使用场景 |
|---|---|---|
initialize memory bank | 初始化项目记忆库 | 新项目开始时 |
update memory bank | 全面更新项目文档 | 重大变更后 |
update memory bank using information from @/file | 基于特定文件更新 | 针对性更新 |
add task / store this as a task | 记录任务工作流 | 重复任务完成后 |
状态管理
状态指示器含义
- •
[Memory Bank: Active]:文件成功读取并正在使用 - •
[Memory Bank: Missing]:找不到文件或文件为空
上下文窗口管理策略
问题识别:
- • 响应速度变慢
- • 引用准确性下降
解决方案:
- 1. 执行
update memory bank记录当前状态 - 2. 开始新的对话/任务
- 3. AI 在新对话中自动访问更新的 Memory Bank
优势:确保多会话间的连续性,无重要上下文丢失
最佳实践指南
开始使用阶段
- 1. 渐进式发展:从基本项目摘要开始,让结构自然发展
- 2. AI 协助:让 Kilo Code 帮助创建初始结构
- 3. 工作流适配:根据需要调整文件以匹配个人工作流程
- 4. 准确性验证:初始化后务必验证生成文件的准确性
持续工作阶段
- 1. 自然演进:让模式随着工作自然出现,不强制更新
- 2. 有机更新:文档更新应该自然发生,不要过度强制
- 3. 信任过程:价值会随时间复合增长
- 4. 状态确认:会话开始时注意上下文确认和状态指示器
文档流程管理
- 1. 层次结构:
- •
brief.md是项目基础 - •
context.md变化最频繁 - • 所有文件共同维护项目智能
- •
- 2. 更新时机:重大里程碑或方向变化后更新
- 3. 内容组织:使用附加文件处理详细文档,保持核心文件简洁
性能优化策略
- 1. 文件管理:
- • 保持 Memory Bank 文件简洁且重点突出
- • 使用附加文件进行详细文档记录
- • 定期更新但避免过度频繁
- 2. 命令使用:
- • 专注特定方面时使用具体的更新命令
- • 避免不必要的全量更新
- 3. 模型选择:
- • 使用更强大的模型获得更好的 Memory Bank 质量
- • 避免使用轻量级模型处理资源密集型操作
常见问题解答
Q: Memory Bank 文件的存储和访问
A: Memory Bank 文件是存储在项目仓库 .kilocode/rules/memory-bank/ 文件夹中的标准 Markdown 文件。它们是常规文档文件,不是隐藏或专有格式,开发者和 AI 都可以访问。
Q: 更新频率建议
A: 在重大里程碑或方向变化后更新 Memory Bank。对于活跃开发,建议每隔几次会话更新一次。使用 "update memory bank" 命令确保所有上下文得到保留。
Q: 手动编辑权限
A: 可以手动编辑任何 Memory Bank 文件。brief.md 专门设计为手动维护,Kilo Code 会尊重对其他文件的手动编辑。
Q: 文件丢失处理
A: 如果 Memory Bank 文件丢失,Kilo Code 会显示 [Memory Bank: Missing] 状态,并建议重新初始化 Memory Bank。
Q: AI 模型兼容性
A: Memory Bank 适用于所有 AI 模型,但更强大的模型能创建更全面和准确的文件。轻量级模型可能难以处理资源密集型的分析和更新过程。
Q: 多项目支持
A: 每个项目都有独立的 Memory Bank,位于各自的 .kilocode/rules/memory-bank/ 文件夹中。Kilo Code 自动为每个项目使用正确的 Memory Bank。
Q: 上下文窗口占用
A: Memory Bank 确实会占用一些上下文窗口,但这是战略性权衡:
- • 短期成本:初始加载消耗更多 token
- • 长期收益:
- • 消除重复解释
- • 减少来回交流次数
- • 保持一致性理解
- • 更快达到生产性结果
测试表明,虽然初始使用更多 token,但显著减少了总交互次数,最终提高整体效率。
处理异常情况
不一致处理机制
检测:AI 检测到 Memory Bank 文件间的不一致时
处理策略:
- 1. 优先考虑
brief.md中的信息作为真相来源 - 2. 向用户指出任何不一致之处
- 3. 使用最可靠的信息继续工作
保障:即使文档不完美,也能确保 AI 有效工作
故障恢复
- 1. 文件损坏:重新初始化 Memory Bank
- 2. 更新失败:手动编辑关键文件
- 3. 上下文混乱:开始新会话并确认 Memory Bank 状态
总结
Memory Bank 是 Kilo Code 的革命性功能,它解决了 AI 编程助手的根本性限制。通过结构化的文档系统,它实现了:
核心价值
- • 持续性:在会话间保持项目记忆
- • 效率性:减少重复解释,提高工作效率
- • 一致性:确保项目理解的准确性和连贯性
- • 可扩展性:适应项目成长和变化
关键成功因素
- 1. 初始化质量:彻底的初始设置奠定成功基础
- 2. 持续维护:定期更新确保信息准确性
- 3. 合理使用:遵循最佳实践避免过度或不足使用
- 4. 状态监控:注意状态指示器确保功能正常
Memory Bank 将 AI 助手从工具转变为真正的开发伙伴,为现代软件开发带来了新的协作模式。正确使用它,将显著提升编程效率和项目管理质量。
附录:文件详解
.preview-wrapper pre::before { position: absolute; top: 0; right: 0; color: #ccc; text-align: center; font-size: 0.8em; padding: 5px 10px 0; line-height: 15px; height: 15px; font-weight: 600; } .hljs.code__pre > .mac-sign { display: flex; } .code__pre { padding: 0 !important; } .hljs.code__pre code { display: -webkit-box; padding: 0.5em 1em 1em; overflow-x: auto; text-indent: 0; }
本文使用 文章同步助手 同步