## 0. 核心公理 (Core Axioms - 最高优先级) 1. **行动验证原则 (Action-Verified Only)** * **定义**:任何写入 L1/L2/L3 的信息,必须源自**成功的工具调用结果**(如 `shell` 执行成功、`file_read` 确认内容存在、代码运行通过)。 * **禁止**:严禁将模型的“固有知识”、“推理猜测”、“未执行的计划”或“未验证的假设”作为事实写入。 * **口号**:**No Execution, No Memory. (无行动,不记忆)** 2. **神圣不可删改性 (Sanctity of Verified Data)** * **定义**:凡是经过行动验证的有效配置、避坑指南、关键路径,在重构(Refactoring/GC)时**严禁丢弃**。 * **操作**:可以压缩文字、可以迁移层级(从 L2 移到 L3),但绝不能丢失信息的准确性和可追溯性。 3. **禁止存储易变状态 (No Volatile State)** * **定义**:严禁存储随时间/会话高频变化的数据。 * **示例**:当前时间戳、临时 Session ID、正在运行的 PID、某个具体绝对路径、连接的设备信息 --- ## 记忆层级架构 ``` L1: global_mem_insight.txt (极简索引层 - 严格控制 ≤30 行) ↓ 导航指向 (Pointer) L2: global_mem.txt (事实库层 - 现短但会膨胀) ↓ 详细引用 (Reference) L3: ../memory/ (记录库层 - 包含 .md/.py 等各类文件) ``` --- ## 各层职责与原则 ### L1:全局内存索引 (global_mem_insight.txt) **职责**:为 L2 和 L3 提供极简导航索引。 **特征**: 体积限制:≤ 30 行(硬约束) - 内容:TOPICS、LESSONS_LEARNED - 更新:L2 有新增/删除事实时同步;当发现通用且极其重要的规律时,追加 LESSONS。修改时请极度小心,不允许overwrite或code run。只能少量patch,改不动宁愿不改。 **禁止**:严禁在此层直接写入 IP、密码、完整路径、API Key。L1 只能是索引指针,不能是数据容器。不写 "How to" 或详细解释。严禁包含特定任务的技术细节(特定任务细节应该在L3)。更加严禁写入日志记录! --- ### L2:全局事实库 (global_mem.txt) **职责**:存储全局环境性事实(路径、凭证、配置、常量等)。 **特征**: - 趋势:随环境扩展而膨胀(可接受) - 内容:按 `## [SECTION]` 组织的事实条目 - 同步:变化时更新 L1 的相应 TOPIC 导航行 **禁止**:禁止存储易变状态、禁止存储猜测、严禁存储大模型可推理的通用常识 --- ### L3:任务级精简记录库 (../memory/) 职责:补充 L1/L2 无法容纳、但对**特定任务**未来复用至关重要的少量详细信息。内容必须在满足复用需求的前提下**尽可能短**。 原则: - 只记录:跨会话仍重要、且难以通过少量 file_read / web_scan / 简单脚本快速重建的要点。 - 优先写:该任务特有的隐藏前置条件、典型易踩坑点,一旦遗忘会导致高成本重试的信息。 - 不记录:普通操作步骤、可在几步探测中重新获得的路径或状态信息。 形式: - SOP(*_sop.md):为单一任务或小类任务保留极简的「关键前置 + 典型坑」清单,避免长篇教程。 - 工具脚本(*.py):仅封装高复用、逻辑相对复杂且不希望每次都重新推理的处理流程。 --- ## L1 ↔ L2 同步规则 | L2 操作 | L1 同步 | |---------|--------| | 新增事实 | 在 TOPICS.GLOBAL_MEM 添加导航行 | | 删除事实 | 在 TOPICS.GLOBAL_MEM 删除导航行 | | 修改值 | 保持导航行不变 | --- ## 信息分类快速决策树 ``` "这条信息该放哪层?" 是『环境特异性事实』? (IP、非标路径、凭证、ID、API 密钥等,大模型 Zero-shot 无法生成准确) ├─ YES → L2 (global_mem.txt) │ 然后 → L1 [TOPICS.GLOBAL_MEM] 添加导航行 │ └─ NO ↓ 是『通用操作规律』? (全局性避坑指南、排查方法、不针对特定任务的通用准则) ├─ YES → L1 [LESSONS_LEARNED] (仅限 1-2 句脱水准则) │ └─ NO ↓ 是『特定任务技术』? (艰难尝试才能成功,且未来还能用到的任务,如:微信解析参数、特定游戏坐标、临时工具配置) ├─ YES → L3 (../memory/ 专项 SOP 或脚本) │ └─ NO → 判定为『通用常识』或『冗余信息』: 严禁存储,直接丢弃 ```