本机认知读取与应用
固定边界
- 用宿主原生方式展开当前用户主目录一次,将
<主目录>/.agent-knowledge/作为唯一数据根;不要相对当前工作目录解析,也不要改用其他目录。 - 只读取
knowledge/active/和experience/active/中不超过 1 MiB 的 regular*.md;跳过 symlink、junction 和 reparse point。不要读取candidates/、archive/,不要访问网络。 - 保持完全只读:不创建、修改、移动或删除文件,不记录使用次数,不触发写入 Skill。
快速查询
-
逐级检查数据根、根
README.md、两个active/目录是否存在且可读。README 缺失或不可读时原样报告后仍按固定目录查询;仅数据根无法访问、路径非法或两个活动目录均不可用时停止本次认知查询。一个活动目录缺失、不可读或权限失败时,原样报告路径与错误以及“检索不完整”,继续查询另一个可用目录。不要创建、换目录或联网补救。 -
预检只统计两个活动目录顶层的 regular
*.md、超过 1 MiB 的文件及 symlink、junction、reparse point,不跟随链接。跳过项只报告分类计数和各类前 10 个路径,并标记“检索不完整”;不要把枚举文件列表作为查询参数。 -
从当前问题提取 1–4 个内容关键词。查询值必须作为字面量;通过宿主原生参数数组把每个值作为独立
-e参数传入,不拼接命令字符串或正则。多个-e表示 OR 召回;scope 和 tag 不作为 OR 查询词。优先执行:rg -i -F -l --max-depth 1 --glob '*.md' --max-filesize 1M -e "<关键词1>" -e "<关键词2>" -- <可用的 active 目录...>只传实际存在的关键词和最多两个可用活动目录,不传空参数;
rg默认不跟随链接。流式消费去重后的候选文件名,不输出命中正文;保留到 50 个即终止查询或停止消费并标记“检索不完整”,避免输出或命令行无界。若rg不可用,宿主原生只读固定字符串检索也遵守相同目录、文件、大小、输出和流式数量限制。 -
对最多 50 个候选只读 frontmatter,按
scope和tags精确过滤,再按文件名、标题和关键词覆盖度选择最相关的 1–5 个打开正文。若用户明确按 scope 或 tag 浏览,则跳过内容查询,只枚举合格文件并读取 frontmatter 精确过滤。 -
无匹配时明确说明未找到相关活动条目,继续当前业务并说明本次未采用认知。单个文件不可读、编码异常或权限失败时报告路径与错误;超限、截断或 reparse 跳过只报告分类计数和前 10 个路径,均标记“检索不完整”。仍可采用其他已完整读回的条目;没有完整可用条目时说明本次未采用认知。
应用与报告
- 仅使用
global或与当前上下文明确匹配的 scope;不要猜测工作区或客户。 - 将 knowledge 用于事实、定义和稳定约束,将 experience 用于做法、适用条件和失败护栏。
- 版本、价格、地址、人员、状态、数量或日期等易变事实必须从当前权威来源重新核对。
- 条目冲突时展示冲突并降低结论强度,不自行改写;无法判断适用范围时不采用。
- 只报告实际影响本次结论或做法的条目,列出其
id、source、learned_at。不要把仅命中、打开或排除的条目说成已采用。
极简示例
- 该查:准备修复重复出现的构建失败;以错误短语和工具名做字面量 OR 查询,再按 workspace scope 精确过滤,采用已验证的失败护栏。
- 该查但未采用:用户要求回忆偏好,但两个活动目录无匹配;说明“未找到,本次未采用认知”,再根据当前信息继续。
- 不适用:只问一个不受历史偏好或踩坑影响的简单换算;不为形式完整而查询。
