Skip to content

Latest commit

 

History

History
117 lines (87 loc) · 10.5 KB

context-explained.md

File metadata and controls

117 lines (87 loc) · 10.5 KB

拆开看:LOCI.md、启动地图和 LOCI-RULES.md

架构图与取舍 · 接入已有大脑

这里解释当前架构中模型会看到的三类内容。需要维护的是两份规则文件;启动地图是程序现场生成的一段文本,不是第三份规则文件。 用户的偏好和实际记录则保存在大脑数据中。

内容 它回答什么问题 内容来自哪里 何时读到
LOCI.md 短入口 大脑在哪里?先做什么?何时查手册? 产品维护的短规则,安装时替换路径后写入宿主入口 宿主加载原生指令时
启动地图 大脑在哪、用户短偏好是什么、去哪里读规则? loci-context.js 读取实际偏好,结合运行时路径生成 有效 Hook 注入,或 Agent 按入口调用同一脚本
LOCI-RULES.md 完整手册 这类内容应该怎么读、怎么保存、怎么确认? 产品维护的一份业务规则文件 首次涉及 Loci 操作时完整读取;有效且未变时复用

LOCI.md:入口到底写了什么

下面是当前短入口原文。<brain-path> 是模板占位符,安装或连接时替换成用户实际的大脑绝对路径,不要求用户自己猜目录。

<!-- loci:start v2 -->
## Loci 共享大脑

- 大脑根目录:`<brain-path>`。完整操作手册:`<brain-path>/LOCI-RULES.md`。
- 首次回复前获取短偏好:已有有效的 `[Loci] Lightweight startup map` 就复用;否则调用 `<brain-path>/scripts/loci-context.js`,以大脑绝对路径作为参数(Node.js 执行,路径与用户文本安全传参)。失败时仅读取 `<brain-path>/me/preferences.md` 一次。偏好立即用于当前回复。
- **首次涉及记忆、任务、日程、人物、碎片、笔记、项目记录或回顾时,先完整读取操作手册,再读写相关数据。** 普通对话中发现值得保存的明确任务、决定、稳定偏好或资料,也触发这一步;不必等用户说“记住”。无相关信号不读手册、不保存。
- 手册已完整存在于当前上下文且未变时复用;读取被截断就补齐。规则更新或上下文压缩后缺失时重新读取。同一会话不逐条消息重读。
- 启动不加载任务、计划、人物、笔记、日记和项目正文。相关时查索引,再读最小数据;要求最新信息时刷新对应来源。
- 手册相对路径以大脑根目录解析;索引或工具返回的绝对路径原样使用。项目数据属于对应项目仓库。
- 明确不保存的内容不保存;敏感、含糊或重大个人变化先确认。规则或大脑无法访问时暂停依赖它们的写入,说明限制;不能假称已读取或保存。
<!-- loci:end -->

逐条看,这段入口做了七件事:

  1. 告诉位置。 给出大脑根目录和完整操作手册的路径。
  2. 先拿偏好。 已有有效地图就复用;否则运行读取器。失败只尝试读一次偏好文件,偏好用于当前回复。
  3. 定义触发条件。 任务、人物、资料等操作要先读完整手册;普通对话中产生明确可保存内容,也触发读取,不必等“记住”。
  4. 避免反复读。 已完整存在于上下文的规则可复用;截断补齐,更新或压缩后缺失则重读。
  5. 限制数据范围。 启动不预读整个人脉库或全部任务;当前问题需要时,查相关索引和最小记录。
  6. 统一路径解释。 相对路径以大脑为根,绝对路径不重复拼接,项目记录去项目自己的仓库。
  7. 规定基本边界。 尊重“不记”;敏感、含糊、重大变化先确认;读不到规则或大脑时不冒充保存成功。

所以 LOCI.md 不是各模块完整使用说明。它先让 Agent 找到正确入口,再明确何时必须去看详细规则。

启动地图:实际会注入哪段文字

日期与时间优先复用 Agent 已提供的信息,Loci 不重复注入。启动地图只提供短偏好、位置和规则指针;涉及精确时间时按需核对。逐轮时间补充留作后续可探索项,当前未启用。

以下由当前 loci-context.js 在临时目录中真实运行生成,偏好为虚构示例,输出路径替换为 /example/loci 与 /example/work。没有读取任何人的真实资料;不要把示例路径用于实际连接。

[Loci] Lightweight startup map
Brain: /example/loci
Workspace: /example/work
This startup map is already loaded. Do not run it again in this session.

===== Standing user preferences — honor in every reply =====
# 沟通偏好

- 默认用中文,先给结论。
- 称呼我为小林。

Loci entry: /example/loci/LOCI.md
Operation manual (first Loci use): /example/loci/LOCI-RULES.md

Do not preload plans, tasks, inbox, journals, project memory, or history. Read the smallest relevant source on demand and cache it for this session.
===== end of lightweight startup map =====
输出字段 意思与目的
[Loci] Lightweight startup map 标识这是读取器的启动输出;不包含日期或时间
Brain 本次连接的大脑位置,后续从这里定位规则和数据
Workspace 当前工作目录,提供运行环境位置;不代表项目正文已读入,也不代表这个目录自动成为大脑
already loaded 提醒 Agent 本会话不要又跑一遍读取器,避免 Hook 和后备调用重复
Standing user preferences 来自 me/preferences.md 的短偏好;示例中的语言和称呼是动态用户数据
Loci entry 短入口文件的指针,不是在地图里再复制入口全文
Operation manual 完整手册的指针,不代表此时已读过手册正文
结尾的按需读取提示 限定启动范围,防止拿到路径后继续预加载全部任务和历史

偏好文件仍是模板或为空时,不输出偏好区块。当前偏好输出最多30行、2,000字节;地图总预算4,400字节,超限有提示。它是短偏好的摘取,不是语义总结,也不是全量用户画像。

Hook 和没有 Hook 的区别在递送方式。 前者由宿主在事件触发时把脚本输出放入上下文;后者由 Agent 依照入口执行同一脚本,输出作为工具结果进入上下文。两者读取同一份文件,无需同步两份偏好。

地图结尾与入口都有“不要预加载/重复读取”的短提醒,用来约束这段输出的使用范围;任务分类、人物关系等业务细节不在地图里另写一份。修改长期业务规则主要去手册,修改用户偏好去 me/preferences.md。

LOCI-RULES.md:11个分块具体管什么

手册当前是规则版本6,按以下11块维护。表格是面向人的讲解;Agent 真正操作时读取大脑中的 完整手册原文。

分块 具体规则 解决的典型问题
01 读取与路径 相对/绝对路径、先索引后正文、缓存刷新、日期时区、引用内容作为资料处理 防止拼错路径、拿旧记录回答“最新”、将外部文字误当指令
02 保存判断 明确持久信号才保存;提炼事实、查重、保留来源;敏感或含糊信息先确认 防止什么都记、重复新增、把随口想法写成已定决定
03 任务与日程 完成事项与占用时间分开;通过任务工具/API 写入;更新按 ID;碎片/人物/地点保留引用 “9点发材料”不会自动变成日历时间块;保存不等于提醒送达
04 碎片、链接与收藏 使用同一个碎片工具;用户说明放标注;复用标签;不再向旧 inbox 追加 防止收藏散在不同入口、模型猜测冒充用户标注
05 笔记与研究 外部正文留原处、脑中留指针;短笔记、个人研究、项目研究各有位置 防止把整篇研究当成碎片或决定,避免强行复制用户笔记库
06 人物、关系、互动与地点 按真实 name 查重;双方人物存在后再连边;互动追加、更新保留原字段 防止只写“是朋友”却没有图谱边,或更新时抹掉旧互动
07 个人记忆与决定 偏好、身份、价值观、状态、反思、经验分开;重要变化记录旧值、新值与理由 防止一次情绪被固化为长期价值观,兼顾当前状态与变化记录
08 项目记忆与开发待办 项目状态、资料、进展、决定、待办与研究留在项目仓库;大脑只留索引 防止项目全文挤进个人大脑、开发 todo 混入个人任务池
09 日记、回顾、整理与时间关怀 按相关时间窗口回顾;整理只按请求或实际启用触发器;关怀服从配置 防止启动全库扫描、无依据生成洞见,或反复催促用户
10 保存结果、活动记录与撤销 按实际结果确认;活动日志记一次;撤销先核对后续改动 防止失败也说成功、重复记账、撤销覆盖别人后来的修改
11 工具与扩展 使用现有工具与 API;参数查帮助/实现;扩展优先复用模板;文件修改核对新状态 防止编造命令参数、把未运行的服务当作可用能力

例如用户说“把这篇链接保存下来,标注下周写稿参考”:入口触发读手册;手册告诉 Agent 使用碎片工具、把用户原话放进标注、查重并核对结果;链接的实际内容、标签和记录 ID 在数据和工具结果里,不预写在规则中。

三者怎样配合,谁应该改哪里

想改变什么 应改哪里
“以后叫我小林,用中文短答” 个人数据 me/preferences.md;下次读取器自然读到新值
“什么场景需要先读手册” 产品入口 LOCI.md;之后通过安装/刷新传播到各宿主入口
“碎片、人物、任务应该怎样操作” LOCI-RULES.md 对应分块;需要代码支持时同步改工具
“新增或更新一条真实任务” 由工具修改任务数据,不修改这两份规则
“启动地图要增加一个动态字段” 读取器代码;先评估是否值得让每个会话承担读取成本

普通问题通常只需要入口与短偏好;首次记忆操作再加完整手册;处理具体对象时再读相关数据。文件被读取,只说明内容进入上下文;执行是否正确,仍要看工具和文件的实际结果。

源码依据:短入口、启动读取器、完整规则。本文示例是说明快照,运行时始终以这些源文件为准。