用途:Lore UL 按概念而非代码位置组织知识,通过共享词汇表让用户与智能体互相校验措辞,并为 lore-guard 提供名称检查依据。使用前需先阅读 ${CLAUDE_PLUGIN_ROOT}/reference/lore-spec.md,其 Glossary 部分定义文件位置、条目元数据、冲突处理与拆分规则。
适用时机:对话出现模糊或过载术语(如 account 指 Customer 还是 User);用户措辞与代码命名不一致;同一词指代两件事;项目尚无词汇表需要初始化;用户明确要求定义、对齐或清理术语。较早的软信号也值得启动对齐,例如用户反复使用词汇表没有的词、悄悄改写你的说法、同一约束反复出现却只散落在代码 if 检查中。
两种模式:解析词汇表来源,缺失或为空则进入 bootstrap 模式,否则为 alignment 模式。bootstrap 只创建 docs/lore/glossary.md;若存在外部 CONTEXT.md,则由其自身流程原地生长,不另行初始化。
alignment 模式:一次只处理一个歧义,并附上推荐答案。可锐化模糊词、对照词汇表挑战用法、用具体场景探测边界、交叉核对代码、挖掘别扭与矛盾。术语一旦确定立即逐条写入 glossary.md,不批量处理;被否决的候选写入获胜条目的 not: 列表。
bootstrap 模式:扫描 README、lore 区域与主要类型/模型名,候选词上限约 10 个,逐个与用户确认;首个术语确定后,从 ${CLAUDE_PLUGIN_ROOT}/reference/templates/glossary.md.tmpl 创建 docs/lore/glossary.md,并在 docs/lore/README.md 的 Optional 部分添加一行。
冲突与拆分:跨区域冲突保留在全局文件,用区域限定标题(如 ## Customer (billing))且两条目均须 area:;同一区域内冲突则须拆成两个不同名称的术语。某区域术语达约 10 个以上且经用户确认后,才建议迁移到 <area>/terms.md。
反馈与限制:按 lore-spec 的反馈日志记录 surfaced 事件并归类为 heeded、redundant 或 ignored,日志不得阻塞会话。术语只对齐不生成,每条须经用户确认;词汇表只存语言(定义、边界、示例),不含实现细节、规格或计划。缓存策略、重试循环、工作池等机制名不属于词汇表术语,只有领域语言才可收录。