| name | investigation-memory |
| description | 调查场景记忆系统 — 案件过程中非结构化信息的底层归档,记录讨论分支、灵感、犹豫、思考过程,形成可查询的考察档案,支撑复盘与定向检索,但不干扰案件推进与方法论执行 |
| origin | cc-investigation |
调查场景记忆系统
一个低噪音、可回溯的调查过程底层档案——记录那些"重要但不构成证据"的信息,在不增加用户负担、不污染证据链的前提下,积累可复盘、可搜索的考察材料。
设计原则
三条红线(不可突破)
- 不污染证据链 — memory 条目不得进入
evidence_registry.json,不被视为案件事实依据,不参与可采性评估
- 不增加用户操作负担 — 记录在后台完成,不弹出提问框,不打断用户的分析流程
- 不干扰方法论执行 — memory 不能改变案件阶段推进、门禁检查、调查方案设计等核心工作流
四条准入标准
AI 在调查过程中遇到以下四类信息时,应考虑写入 memory:
| # | 类型 | 判断条件 | 示例 |
|---|
| 1 | 讨论分支 | 探索过但未深入、若有进一步证据可能影响案件走向的路径 | "考虑过张三可能是内部配合,但缺少交易数据支撑" |
| 2 | 犹豫与不确定性 | 分析过程中感觉异常但现有证据无法证实或排除的疑虑 | "境外付款这条线感觉有异常,但目前证据链不完整" |
| 3 | 灵感与直觉 | 基于模式识别或经验产生的推测性想法,尚未验证 | "这个模式理论上也可能出现在华南大区" |
| 4 | 非正式观察 | 不在调查计划内、但值得留意的行为信号或环境信息 | "访谈中 C 某提到竞争对手时有异常停顿" |
一个排除标准
以下信息不写入 memory:
- 已经正式登记在
evidence_registry.json 中的证据
- 已经写入工作底稿(
working_papers/)的分析结论
- 与案件完全无关的闲聊或环境噪音
- 单纯的操作记录("我调用了某个工具")——除非该操作产生有价值的发现
存储架构
目录结构
memory 存放在案件目录下的独立子目录,与正式证据和底稿严格隔离:
cases/CASE-YYYY-NNN/
├── evidence_registry.json ← 正式证据(不动)
├── working_papers/ ← 正式底稿(不动)
└── case_memory/ ← ★ 新增:记忆目录
├── INDEX.md ← 索引,AI 维护
├── 2026-06-14_discuss_supplier-overlap.md
├── 2026-06-15_hesitate_overseas-payment.md
├── 2026-06-16_insight_interviewee-body-language.md
└── ...
文件命名规范
<YYYY-MM-DD>_<type>_<short-kebab-slug>.md
类型标签(type):
| 标签 | 含义 |
|---|
discuss | 讨论分支 — 探索过但未深入的路径 |
hesitate | 犹豫/不确定性 — 疑虑待验证 |
insight | 灵感/直觉 — 推测性想法 |
observe | 非正式观察 — 行为信号 |
think | 思考过程 — 推理路径记录 |
文件名示例:
2026-06-14_discuss_supplier-overlap.md
2026-06-15_hesitate_overseas-payment.md
2026-06-16_insight_dealer-behavior-pattern.md
2026-06-17_observe_withdrawal-during-phonecall.md
2026-06-17_think_why-hypothesis-2-was-rejected.md
单条 Memory 条目结构
每一条 memory 条目遵循以下格式:
# [简洁标题 — 见名知意]
**类型**: discuss | hesitate | insight | observe | think
**日期**: YYYY-MM-DD
**关联证据**: E-编号, E-编号(可选,链接到 evidence_registry 中的条目)
**关联假设**: H-编号(可选,链接到调查假设)
## 记录
[内容主体 — 3-5 句话讲清楚背景、观察和分析]
## 后续状态
- [ ] 已纳入(已转化为新的调查方向或假设)
- [x] 存档待查(当前证据不足,暂缓推进)
- [ ] 已排除(已找到合理解释或反证)
## 关联文件
- [文件名](相对路径) — 产生此 memory 的具体交互文件的引用
索引维护
case_memory/INDEX.md 由 AI 自动维护,格式如下:
# Case Memory Index — CASE-YYYY-NNN
**案件**: [案件名称]
**时间段**: YYYY-MM-DD ~ YYYY-MM-DD
| 日期 | 类型 | 摘要 | 关联证据 | 状态 |
|------|------|------|---------|------|
| 2026-06-14 | discuss | 供应商重叠的探索路径 | E-007 | 存档待查 |
| 2026-06-15 | hesitate | 境外付款路线证据不足 | — | 存档待查 |
| 2026-06-16 | insight | 访谈对象体态语言异常 | E-012 | 已纳入 |
**维护规则:**
- 新增 memory 条目 → 在 INDEX.md 中添加一行
- 状态变更 → 更新对应行的状态列
- 条目已清理 → 删除对应行
生命周期管理
条目存活周期
条目伴随案件生命周期存在。案件结案归档时执行一次清理:
| 最终状态 | 处理方式 |
|---|
| 已纳入(转化为有效调查方向) | 保留,纳入复盘输入 |
| 存档待查(有潜在价值) | 选择性保留,AI+用户评估后决定 |
| 已排除(有反证) | 可压缩为一行摘要或直接清除 |
| 低价值(确认是噪音) | 清除,不在 INDEX.md 中保留 |
归档规则
结案归档时:
- 标记各条目的最终状态
- 将 INDEX.md 中状态为"已纳入"的条目列表附加到复盘报告的输入中
- 清除确认无价值的条目
- 最终的 INDEX.md 连同精简后的条目留在
case_memory/ 中作为案件完整档案的一部分
查询与复盘
检索方式
memory 的检索没有独立命令层,通过以下方式被访问:
场景 1:AI 复盘时
├── 加载 INDEX.md 获取全貌
├── 按类型筛选(如 "所有 hesitate 条目")
└── 按关联证据/假设筛选
场景 2:用户主动查询
└── 通过自然语言: "之前讨论过供应商方面有什么犹豫点?"
→ AI 读取 INDEX.md + 相关条目文件后回答
场景 3:跨案件检索(结案归档后)
└── 通过 grep 搜索各 case_memory/ 目录下的内容
复盘时的角色
在 case-retrospective 技能执行时,memory 提供以下维度的输入:
| memory 类型 | 复盘维度 | 价值 |
|---|
| 犹豫与不确定性 | 推理质量、直觉准确度 | 验证——我当初的直觉对吗? |
| 讨论分支 | 覆盖宽度、决策效率 | 评估——我们是否过早放弃了某个方向? |
| 灵感 | 模式识别能力 | 复盘——哪些凭经验的判断得到了验证? |
| 非正式观察 | 信息敏感度 | 回顾——那些旁支信息是否本应更早纳入主线? |
| 思考过程 | 推理逻辑一致性 | 检查——推理路径是否有跳跃或断裂? |
行为约束(给 AI 的操作指令)
写入判断流程
遇到调查过程中的非正式信息
├── 是否已登记在 evidence_registry.json? → 是 → 不写
├── 是否已记录在工作底稿中? → 是 → 不写
├── 是否属于四类准入标准之一? → 否 → 不写
└── 是 → 创建 memory 条目
├── 写入前检查 case_memory/ 目录是否存在
│ ├── 不存在 → 创建目录和 INDEX.md
│ └── 存在 → 继续
├── 写入条目文件(按命名规范)
└── 更新 INDEX.md(追加一行或更新状态)
噪音防控要求
- 一个案件的全周期 memory 条目建议控制在 10-30 条——超出 30 条应做一次主动清理
- 同一条目不重复更新——必要的时候创建新条目并关联已有的
- 如果 AI 无法确定是否应该写入,倾向于不写(宁可少记,不可滥记)
- 写入操作不打断用户——在生成其他输出的同时完成
写入即忘原则
AI 创建 memory 条目后,不需要在回复中向用户报告"我已记录了一条 memory"——除非用户明确询问。memory 的设计理念是"写入即忘":写完之后,AI 继续当前的分析工作,memory 只在复盘或查询时被重新提起。
与其他技能的关系
investigation-memory(工具赋能类)
│
├── 输入 ← 所有技能的"讨论过程中产生的非结构化信息"
│ 来源包括:investigation-foundation(推理过程中的分支)、
│ interview-analysis(非正式观察)、
│ data-analysis(异常信号的直觉判断)
│
├── 输出 → case-retrospective(复盘时的"犹豫"和"灵感"数据源)
│
├── 守护 ← evidence-management
│ memory 条目绝不进入 evidence_registry
│ memory 条目不受证据可采性规则约束
│
└── 守护 ← writing-reporting
memory 内容不直接引入正式调查报告
复盘报告可以引用 memory 作为"调查过程"而非"调查结论"的材料
When to Activate
- 案件正在推进中,AI 与用户进行调查分析和讨论时
- 用户表达犹豫、推测、直觉判断时
- 发现一个值得标记但不构成证据的信号时
- 探索某个调查方向后决定暂缓时
- 案件复盘前,需要加载 INDEX.md 以提供输入
- 用户明确询问"之前关于 X 有什么记录"时