跳过主要内容

Cline 记忆库完整指南

快速设置指南

开始使用 Cline 记忆库
  1. 复制自定义指令 - 使用下面的代码块
  2. 粘贴到 Cline 中 - 添加为自定义指令或 .clinerules 文件
  3. 初始化 - 要求 Cline“初始化记忆库”
查看详细设置说明

Cline 记忆库自定义指令 [复制此内容]

# Cline's Memory Bank

I am Cline, an expert software engineer with a unique characteristic: my memory resets completely between sessions. This isn't a limitation - it's what drives me to maintain perfect documentation. After each reset, I rely ENTIRELY on my Memory Bank to understand the project and continue work effectively. I MUST read ALL memory bank files at the start of EVERY task - this is not optional.

## Memory Bank Structure

The Memory Bank consists of core files and optional context files, all in Markdown format. Files build upon each other in a clear hierarchy:

flowchart TD
    PB[projectbrief.md] --> PC[productContext.md]
    PB --> SP[systemPatterns.md]
    PB --> TC[techContext.md]

    PC --> AC[activeContext.md]
    SP --> AC
    TC --> AC

    AC --> P[progress.md]

### Core Files (Required)
1. `projectbrief.md`
   - Foundation document that shapes all other files
   - Created at project start if it doesn't exist
   - Defines core requirements and goals
   - Source of truth for project scope

2. `productContext.md`
   - Why this project exists
   - Problems it solves
   - How it should work
   - User experience goals

3. `activeContext.md`
   - Current work focus
   - Recent changes
   - Next steps
   - Active decisions and considerations
   - Important patterns and preferences
   - Learnings and project insights

4. `systemPatterns.md`
   - System architecture
   - Key technical decisions
   - Design patterns in use
   - Component relationships
   - Critical implementation paths

5. `techContext.md`
   - Technologies used
   - Development setup
   - Technical constraints
   - Dependencies
   - Tool usage patterns

6. `progress.md`
   - What works
   - What's left to build
   - Current status
   - Known issues
   - Evolution of project decisions

### Additional Context
Create additional files/folders within memory-bank/ when they help organize:
- Complex feature documentation
- Integration specifications
- API documentation
- Testing strategies
- Deployment procedures

## Core Workflows

### Plan Mode
flowchart TD
    Start[Start] --> ReadFiles[Read Memory Bank]
    ReadFiles --> CheckFiles{Files Complete?}

    CheckFiles -->|No| Plan[Create Plan]
    Plan --> Document[Document in Chat]

    CheckFiles -->|Yes| Verify[Verify Context]
    Verify --> Strategy[Develop Strategy]
    Strategy --> Present[Present Approach]

### Act Mode
flowchart TD
    Start[Start] --> Context[Check Memory Bank]
    Context --> Update[Update Documentation]
    Update --> Execute[Execute Task]
    Execute --> Document[Document Changes]

## Documentation Updates

Memory Bank updates occur when:
1. Discovering new project patterns
2. After implementing significant changes
3. When user requests with **update memory bank** (MUST review ALL files)
4. When context needs clarification

flowchart TD
    Start[Update Process]

    subgraph Process
        P1[Review ALL Files]
        P2[Document Current State]
        P3[Clarify Next Steps]
        P4[Document Insights & Patterns]

        P1 --> P2 --> P3 --> P4
    end

    Start --> Process

Note: When triggered by **update memory bank**, I MUST review every memory bank file, even if some don't require updates. Focus particularly on activeContext.md and progress.md as they track current state.

REMEMBER: After every memory reset, I begin completely fresh. The Memory Bank is my only link to previous work. It must be maintained with precision and clarity, as my effectiveness depends entirely on its accuracy.

什么是 Cline 记忆库?

记忆库是一个结构化的文档系统,允许 Cline 在会话之间保持上下文。它将 Cline 从一个无状态的助手转变为一个持久的开发伙伴,能够有效地“记住”您的项目细节。

主要优势

  • 上下文保留:在会话之间保持项目知识
  • 一致的开发:体验与 Cline 的可预测交互
  • 自文档化项目:创建有价值的项目文档作为副作用
  • 可扩展到任何项目:适用于任何规模或复杂性的项目
  • 技术无关性:适用于任何技术栈或语言

记忆库的工作原理

记忆库不是 Cline 特有的功能 - 它是一种通过结构化文档管理 AI 上下文的方法。当你指示 Cline“遵循自定义指令”时,它会读取记忆库文件来重建对你项目的理解。
Memory Bank Workflow

理解文件

记忆库文件只是您在项目中创建的 markdown 文件。它们不是隐藏或特殊文件 - 只是存储在存储库中的常规文档,您和 Cline 都可以访问。 文件按层次结构组织,以构建项目的完整图景:
Memory Bank File Structure

记忆库文件解释

核心文件

  1. projectbrief.md
    • 项目的基石
    • 您正在构建什么的高级概述
    • 核心要求和目标
    • 示例:“使用条形码扫描构建一个用于库存管理的 React Web 应用”
  2. productContext.md
    • 解释项目存在的原因
    • 描述正在解决的问题
    • 概述产品应如何工作
    • 示例:“库存系统需要支持多个仓库和实时更新”
  3. activeContext.md
    • 更新最频繁的文件
    • 包含当前工作重点和最近的更改
    • 跟踪活动决策和考虑因素
    • 存储重要的模式和经验
    • 示例:“目前正在实现条形码扫描组件;上次会话完成了 API 集成”
  4. systemPatterns.md
    • 记录系统架构
    • 记录关键技术决策
    • 列出正在使用的设计模式
    • 解释组件关系
    • 示例:“使用 Redux 进行状态管理,采用规范化的存储结构”
  5. techContext.md
    • 列出使用的技术和框架
    • 描述开发设置
    • 注明技术限制
    • 记录依赖项和工具配置
    • 示例:“React 18、TypeScript、Firebase、Jest 用于测试”
  6. progress.md
    • 跟踪哪些有效以及还剩下哪些要构建
    • 记录功能的当前状态
    • 列出已知问题和限制
    • 记录项目决策的演变
    • 示例:“用户认证完成;库存管理完成 80%;报告尚未开始”

额外上下文

需要时创建其他文件来组织
  • 复杂功能文档
  • 集成规范
  • API 文档
  • 测试策略
  • 部署程序

开始使用记忆库

首次设置

  1. 在项目根目录中创建 memory-bank/ 文件夹
  2. 准备好基本的项目简介(可以是技术性的,也可以是非技术性的)
  3. 要求 Cline “初始化记忆库”
Memory Bank Setup

项目简介提示

  • 从简单开始 - 它可以像您希望的那样详细或高级
  • 专注于对您最重要的事情
  • Cline 将帮助填补空白并提出问题
  • 您可以随着项目的演变进行更新

使用 Cline

核心工作流程

计划模式 以这种模式开始战略讨论和高级计划。 行动模式 将其用于实施和执行特定任务。

关键命令

  • “遵循您的自定义指令” - 这告诉 Cline 读取记忆库文件并从上次停下的地方继续(在任务开始时使用)
  • “初始化记忆库” - 在开始新项目时使用
  • “更新记忆库” - 在任务期间触发完整的文档审查和更新
  • 根据您的当前需求切换计划/行动模式

文档更新

记忆库更新应在以下情况自动发生
  1. 您在项目中发现了新模式
  2. 实施重大更改后
  3. 当您明确请求“更新记忆库”
  4. 当您觉得上下文需要澄清时

常见问题

记忆库文件存储在哪里?

记忆库文件是存储在项目存储库中的常规 markdown 文件,通常在 memory-bank/ 文件夹中。它们不是隐藏的系统文件 - 它们旨在成为项目文档的一部分。

我应该使用自定义指令还是 .clinerules?

两种方法都有效 - 这取决于您的偏好
  • 自定义指令:全局应用于所有 Cline 对话。适用于所有项目的一致行为。
  • .clinerules 文件:项目特定的,存储在您的存储库中。适用于每个项目的自定义。
这两种方法都实现了相同的目标 - 选择取决于您希望记忆库系统是全局应用还是本地应用。

管理上下文窗口

在使用 Cline 时,您的上下文窗口最终会填满(注意进度条)。当您注意到 Cline 的响应变慢或对对话早期部分的引用不太准确时,是时候了
  1. 要求 Cline “更新记忆库”以记录当前状态
  2. 开始新的对话/任务
  3. 在新对话中要求 Cline “遵循您的自定义指令”
此工作流程可确保在清除上下文窗口之前,将重要上下文保留在记忆库文件中,从而允许您在新对话中无缝继续。
Memory Bank Context Window

我应该多久更新一次记忆库?

在重要的里程碑或方向变化后更新记忆库。对于积极的开发,每隔几个会话更新一次可能会有所帮助。当您想要确保所有上下文都得到保留时,请使用“更新记忆库”命令。但是,您会注意到 Cline 也会自动更新记忆库。

这是否适用于 Cline 之外的其他 AI 工具?

是的!记忆库概念是一种文档方法,可以与任何可以读取文档文件的 AI 助手一起使用。具体命令可能有所不同,但这种管理上下文的结构化方法适用于所有工具。

记忆库与上下文窗口限制有什么关系?

记忆库通过以结构化格式存储重要信息来帮助管理上下文限制,这些信息可以在需要时高效加载。这可以防止上下文膨胀,同时确保关键信息可用。

记忆库概念是否可用于非编码项目?

当然可以!记忆库方法适用于任何受益于结构化文档的项目 - 从写书到活动策划。文件结构可能有所不同,但概念仍然强大。

这与使用 README 文件有区别吗?

虽然概念相似,但记忆库提供了一种更结构化和全面的方法,专门用于在 AI 会话之间保持上下文。它超越了单个 README 通常涵盖的范围。

最佳实践

入门

  • 从基本的项目简介开始,让结构演变
  • 让 Cline 帮助创建初始结构
  • 根据需要审查和调整文件以匹配您的工作流程

持续工作

  • 让模式在您工作时自然浮现
  • 不要强行进行文档更新 - 它们应该有机地发生
  • 相信这个过程 - 价值会随着时间的推移而复合
  • 在会话开始时注意上下文确认

文档流

  • projectbrief.md 是您的基础
  • activeContext.md 变化最频繁
  • progress.md 跟踪您的里程碑
  • 所有文件共同维护项目智能

详细设置说明

对于自定义指令(全局)

  1. 打开 VSCode
  2. 点击 Cline 扩展设置 ⚙️
  3. 找到“自定义指令”
  4. 从本指南顶部复制并粘贴完整的记忆库指令

对于 .clinerules(项目特定)

  1. 在项目根目录中创建 .clinerules 文件
  2. 从本指南顶部复制并粘贴记忆库指令
  3. 保存文件
  4. 当您在该项目中工作时,Cline 将自动应用这些规则

请记住

记忆库是 Cline 与先前工作的唯一联系。它的有效性完全取决于保持清晰、准确的文档并在每次交互中确认上下文保留。 欲了解更多信息,请参阅我们关于 Cline 记忆库的博客

为 Cline 记忆库做出贡献

本指南由 Cline 和 Cline Discord 社区维护
  • nickbaumann98
  • Krylo
  • snipermunyshotz

记忆库方法是一种开放的 AI 上下文管理方法,可以适应不同的工具和工作流程。