@scotthuang/engram 0.9.9 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/settle.js CHANGED
@@ -270,28 +270,49 @@ export async function updateProfile(opts, date = new Date().toISOString().split(
270
270
  logger.info(`[engram:settle] Step3: loaded profile with ${existingTagCount} existing tags across ${Object.keys(profile.tags).length} dimensions`);
271
271
  const systemPrompt = `你是一个用户画像分析助手。从以下记忆中抽取用户标签,更新画像。
272
272
 
273
- 当前画像:
273
+ 当前画像(仅包含受控维度):
274
274
  ${JSON.stringify(profile.tags, null, 2)}
275
275
 
276
+ 当前位置信息:
277
+ ${JSON.stringify(profile.locations ?? { recent: [] }, null, 2)}
278
+
276
279
  请输出 JSON:
277
280
  {
278
- "added": [{"dimension": "分类", "value": "标签", "layer": "identity|pattern|interest"}],
279
- "removed": [{"dimension": "分类", "value": "标签"}],
281
+ "added": [{"dimension": "受控维度", "value": "标签", "layer": "identity|pattern|interest|event"}],
282
+ "removed": [{"dimension": "受控维度", "value": "标签"}],
283
+ "locations": {
284
+ "primary": "常驻地(工作/长期住址,仅在明确变更时提供,否则省略)",
285
+ "recent": ["最近临时停留地点..."]
286
+ },
280
287
  "reason": "简要说明"
281
288
  }
282
289
 
283
- 三层 layer 定义:
284
- - identity: 核心身份信息,几乎不变(姓名、居住城市、职业、家庭成员、长期技术栈)
285
- - pattern: 行为模式,需要多次观察确认(作息习惯、饮食偏好、工作风格、运动习惯)
286
- - interest: 动态兴趣,短期内关注的(当前项目、近期计划、最近在看的书/股票/技术)
290
+ ## 受控维度(只能从这 7 个里选,不要创造新维度)
291
+ - 身份:姓名、职业、家庭成员、长期角色
292
+ - 作息:睡眠/饮食/运动/出行规律
293
+ - 技术:编程语言、技术栈、工具链、开发偏好
294
+ - 项目:在做的项目名、正在推进的任务主题
295
+ - 兴趣:爱好、关注的话题领域(不是一次性事件)
296
+ - 偏好:交互风格、决策模式、审美偏好
297
+ - 人际:家庭成员、重要同事、长期联系人
287
298
 
288
- 规则:
289
- - 只添加有充分依据的标签(至少 2 条记忆佐证)
290
- - identity 标签要求高置信:用户明确陈述的事实(如"我住在广州"、"我女儿叫 Season")
291
- - pattern 标签要求多次出现:至少在 2 次不同对话中提到的习惯
292
- - interest 标签可以宽松些:当前正在做的事、近期提到的话题
293
- - 如果旧标签与新信息矛盾,放入 removed
294
- - 不要重复添加已有标签
299
+ ## 四层 layer 定义
300
+ - identity: 核心身份信息,几乎不变(姓名、职业、家人)。要求用户明确陈述或多次确认。
301
+ - pattern: 行为模式,需多次观察(作息、饮食、工作风格)。至少 2 次不同场合出现。
302
+ - interest: 动态兴趣,近期关注的话题/项目(当前主线)。
303
+ - event: 一次性事件,7 天内自动归零(排查、bug 修复、超时事件、单次配置修改、单次测试)。
304
+
305
+ ## 重要规则
306
+ 1. **维度必须用受控表中的名字**。如果某个信息不属于任何一个维度,丢弃,不要创造新维度。
307
+ 2. **事件类内容必须用 event 层**:包含"排查/修复/bug/调试/验证/测试/超时/异常/报错/清理/恢复"等字样的都是 event。
308
+ 3. **不要把具体地址或经纬度放进 tags**,改为放入 locations 字段:
309
+ - primary:**只有在用户明确说"我常驻 X""我长期在 X 工作"时**才更新
310
+ - recent:最近临时停留的地点名(不含经纬度),上限由系统自动保持 3 个
311
+ 4. **identity 要求高置信**:用户明确陈述的事实(如"我住在广州"、"我女儿叫 Season")
312
+ 5. **pattern 要求多次出现**:至少在 2 次不同对话中提到的习惯
313
+ 6. **interest 是"长期兴趣"不是"当前在做的事"**:如果是"最近 3 天里第一次做的事",用 event 层
314
+ 7. 如果旧标签与新信息矛盾,放入 removed
315
+ 8. 不要重复添加已有标签
295
316
 
296
317
  只输出 JSON。`;
297
318
  logger.info(`[engram:settle] Step3: calling LLM for profile update (${unsettledContent.length} chars)`);
@@ -325,6 +346,25 @@ ${JSON.stringify(profile.tags, null, 2)}
325
346
  }
326
347
  }
327
348
  }
349
+ // 处理 locations(方案 4:位置独立字段)
350
+ if (changes.locations && typeof changes.locations === "object") {
351
+ if (!profile.locations)
352
+ profile.locations = { recent: [] };
353
+ if (typeof changes.locations.primary === "string" && changes.locations.primary.trim()) {
354
+ const newPrimary = changes.locations.primary.trim();
355
+ if (profile.locations.primary !== newPrimary) {
356
+ logger.info(`[engram:settle] Step3: locations.primary: "${profile.locations.primary ?? ""}" → "${newPrimary}"`);
357
+ profile.locations.primary = newPrimary;
358
+ }
359
+ }
360
+ if (Array.isArray(changes.locations.recent)) {
361
+ for (const place of changes.locations.recent) {
362
+ if (typeof place === "string" && place.trim()) {
363
+ profileManager.updateRecentLocation(profile, place.trim());
364
+ }
365
+ }
366
+ }
367
+ }
328
368
  if (changes.reason) {
329
369
  logger.info(`[engram:settle] Step3: reason="${changes.reason}"`);
330
370
  }
@@ -351,16 +391,33 @@ export async function generateProfileSummary(opts) {
351
391
  const profileManager = new ProfileManager(opts.workspaceDir);
352
392
  const profile = await profileManager.load();
353
393
  const allTags = Object.entries(profile.tags)
354
- .map(([dim, tags]) => `${dim}: ${tags.map(t => t.value).join(", ")}`)
394
+ .map(([dim, tags]) => {
395
+ // summary 不包含 event 层(一次性事件不代表长期画像)
396
+ const stableTags = tags.filter(t => (t.layer ?? "interest") !== "event");
397
+ if (stableTags.length === 0)
398
+ return "";
399
+ return `${dim}: ${stableTags.map(t => t.value).join(", ")}`;
400
+ })
401
+ .filter(Boolean)
355
402
  .join("\n");
356
- if (!allTags) {
403
+ const locationLine = profile.locations?.primary
404
+ ? `常驻地: ${profile.locations.primary}`
405
+ : "";
406
+ const tagsAndLocation = [allTags, locationLine].filter(Boolean).join("\n");
407
+ if (!tagsAndLocation) {
357
408
  logger.info(`[engram:settle] Step4: no tags to summarize`);
358
409
  return "No tags to summarize.";
359
410
  }
360
411
  const systemPrompt = `将以下用户画像标签压缩为一段 100 字以内的中文摘要,用于 AI 检索时快速理解用户特征。
361
412
 
413
+ 要求:
414
+ - 突出用户的身份、长期技术方向、行为模式
415
+ - 不要罗列具体事件(如"排查 XX")
416
+ - 不要写经纬度
417
+ - 语言自然流畅,一段话
418
+
362
419
  标签:
363
- ${allTags}
420
+ ${tagsAndLocation}
364
421
 
365
422
  只输出摘要文本,不要其他内容。`;
366
423
  try {
@@ -553,25 +610,55 @@ export async function runMonthlySettle(opts, promotionMode = "core") {
553
610
  const phase2Result = await pruneStaleMemories(opts);
554
611
  results.push(phase2Result);
555
612
  logger.info(`[engram:settle] Phase2 (prune) took ${Date.now() - phase2Start}ms: ${phase2Result}`);
556
- // ---- Phase 3: Profile 维度归一化 ----
613
+ // ---- Phase 3: Profile 维度归一化 + LLM 自审 + Embedding 去重 ----
557
614
  const phase3Start = Date.now();
558
615
  try {
559
616
  const profileManager = new ProfileManager(opts.workspaceDir);
560
617
  const profile = await profileManager.reload();
561
- const { merged, deduped, emptied } = profileManager.normalizeDimensions(profile);
562
- if (merged > 0 || deduped > 0 || emptied > 0) {
618
+ // 3a. 静态规则归一化
619
+ const { merged, deduped, emptied, demotedToEvent } = profileManager.normalizeDimensions(profile);
620
+ // 3b. embedding 去重(可选,仅在有 embedder 时运行)
621
+ let embedMerged = 0;
622
+ if (opts.embedder) {
623
+ try {
624
+ const r = await profileManager.dedupByEmbedding(profile, opts.embedder);
625
+ embedMerged = r.merged;
626
+ }
627
+ catch (err) {
628
+ logger.error(`[engram:settle] Phase3 embedding-dedup failed: ${err}`);
629
+ }
630
+ }
631
+ // 3c. LLM 自审(可选,仅在有 llmCall 时运行)
632
+ let auditMerged = 0;
633
+ let auditDemoted = 0;
634
+ let auditCoreRewritten = false;
635
+ if (opts.llmCall) {
636
+ try {
637
+ const r = await profileManager.llmSelfAudit(profile, opts.llmCall);
638
+ auditMerged = r.mergedGroups;
639
+ auditDemoted = r.demoted;
640
+ auditCoreRewritten = r.coreTagsRewritten;
641
+ }
642
+ catch (err) {
643
+ logger.error(`[engram:settle] Phase3 llm-self-audit failed: ${err}`);
644
+ }
645
+ }
646
+ // 3d. 最终衰减 + TTL 清理(event 层 7 天过期的会被裁掉)
647
+ profileManager.decayTags(profile);
648
+ const totalChanges = merged + deduped + emptied + demotedToEvent + embedMerged + auditMerged + auditDemoted;
649
+ if (totalChanges > 0 || auditCoreRewritten) {
563
650
  await profileManager.save(profile);
564
- const phase3Result = `Profile normalized: merged=${merged} deduped=${deduped} emptied=${emptied}`;
651
+ const phase3Result = `Profile normalized: static(merged=${merged} dropped=${deduped} emptied=${emptied} →event=${demotedToEvent}) embed(merged=${embedMerged}) audit(merged=${auditMerged} demoted=${auditDemoted} coreTagsRewritten=${auditCoreRewritten})`;
565
652
  results.push(phase3Result);
566
- logger.info(`[engram:settle] Phase3 (normalize) took ${Date.now() - phase3Start}ms: ${phase3Result}`);
653
+ logger.info(`[engram:settle] Phase3 (normalize+audit) took ${Date.now() - phase3Start}ms: ${phase3Result}`);
567
654
  }
568
655
  else {
569
656
  results.push("Profile already normalized.");
570
- logger.info(`[engram:settle] Phase3 (normalize) took ${Date.now() - phase3Start}ms: no changes needed`);
657
+ logger.info(`[engram:settle] Phase3 (normalize+audit) took ${Date.now() - phase3Start}ms: no changes needed`);
571
658
  }
572
659
  }
573
660
  catch (err) {
574
- logger.error(`[engram:settle] Phase3 (normalize) failed: ${err}`);
661
+ logger.error(`[engram:settle] Phase3 (normalize+audit) failed: ${err}`);
575
662
  results.push(`Profile normalize failed: ${err}`);
576
663
  }
577
664
  logger.info(`[engram:settle] ====== Monthly Settlement DONE (total ${Date.now() - startTime}ms) ======`);
@@ -664,64 +751,93 @@ async function monthlyExtractAndVectorize(opts, promotionMode) {
664
751
  if (eligible.length === 0) {
665
752
  return "No short-term memories meet promotion criteria.";
666
753
  }
667
- // 3. 读取对应的短期记忆文件内容
754
+ // 3. 从 recall-hits 直接获取候选条目的原文(v4 条目级追踪)
668
755
  const shortTermDir = join(opts.workspaceDir, "memory-engram", "short-term");
669
756
  const contentParts = [];
670
- const processedFiles = [];
757
+ const processedKeys = [];
671
758
  for (const candidate of eligible) {
672
- const fileName = candidate.key;
673
- const filePath = join(shortTermDir, fileName);
674
- try {
675
- const rawContent = await fs.readFile(filePath, "utf-8");
676
- if (!rawContent.trim())
677
- continue;
678
- // 过滤掉新闻摘要段落(不进入长期记忆)
679
- const content = rawContent
680
- .split(/(?=^### )/m)
681
- .filter(s => !s.includes(NEWS_DIGEST_MARKER))
682
- .join("\n");
683
- if (content.trim()) {
684
- contentParts.push(`--- ${fileName} (score=${candidate.score.toFixed(3)}, signals=${candidate.signalCount}) ---\n${content}`);
685
- processedFiles.push(fileName);
686
- logger.info(`[engram:settle] monthlyExtractAndVectorize: loaded ${fileName} (${content.length} chars after filtering news-digest, score=${candidate.score.toFixed(3)})`);
759
+ const key = candidate.key;
760
+ // v4 格式 key: "fileName::textHash" — 直接从 hits 里拿 text
761
+ if (key.includes("::")) {
762
+ const entry = hits[key];
763
+ const text = entry?.text;
764
+ if (text && text.trim().length >= 10) {
765
+ contentParts.push(`--- ${key} (score=${candidate.score.toFixed(3)}, recalls=${candidate.recallCount}, avgScore=${candidate.avgScore.toFixed(3)}) ---\n${text}`);
766
+ processedKeys.push(key);
767
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: entry-level candidate ${key} (${text.length} chars, score=${candidate.score.toFixed(3)})`);
687
768
  }
688
769
  }
689
- catch {
690
- logger.info(`[engram:settle] monthlyExtractAndVectorize: file ${fileName} not found, skipping`);
770
+ else {
771
+ // 兼容 v3 文件级 key:从文件读取全文(旧行为)
772
+ const filePath = join(shortTermDir, key);
773
+ try {
774
+ const rawContent = await fs.readFile(filePath, "utf-8");
775
+ if (!rawContent.trim())
776
+ continue;
777
+ // 过滤掉新闻摘要段落
778
+ const content = rawContent
779
+ .split(/(?=^### )/m)
780
+ .filter(s => !s.includes(NEWS_DIGEST_MARKER))
781
+ .join("\n");
782
+ if (content.trim()) {
783
+ contentParts.push(`--- ${key} (score=${candidate.score.toFixed(3)}, signals=${candidate.signalCount}) ---\n${content}`);
784
+ processedKeys.push(key);
785
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: file-level candidate ${key} (${content.length} chars, score=${candidate.score.toFixed(3)})`);
786
+ }
787
+ }
788
+ catch {
789
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: file ${key} not found, skipping`);
790
+ }
691
791
  }
692
792
  }
693
793
  if (contentParts.length === 0) {
694
794
  return "All candidate files missing or empty.";
695
795
  }
696
796
  const allContent = contentParts.join("\n\n");
697
- logger.info(`[engram:settle] monthlyExtractAndVectorize: total content ${allContent.length} chars from ${processedFiles.length} files`);
698
- // 4. 调用 LLM 提取值得长期保留的条目
699
- const systemPrompt = `你是一个信息筛选助手。从以下短期记忆中筛选出值得长期保留的条目。
797
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: total content ${allContent.length} chars from ${processedKeys.length} entries`);
798
+ // 4. 调用 LLM 终审 + 提取值得长期保留的条目
799
+ const systemPrompt = `你是一个严格的记忆质量终审官。以下是用户最近一段时间的短期记忆(已通过初步评分筛选),请从中挑选**真正值得写入长期记忆**的条目。
700
800
 
701
- 这些短期记忆已经被多次召回命中,说明它们有持续价值。请提炼出核心信息。
801
+ ## 核心判断原则
702
802
 
703
- 保留标准:
704
- - 包含用户偏好、决策、重要事件、具体信息(地点、金额、人名)
705
- - 包含用户行为模式和生活习惯(作息时间、运动习惯、饮食规律等)
706
- - 包含技术决策、项目配置、工作流程等持续有用的信息
707
- - 合并同一主题的多次记录为一条精炼表述
708
- - 去掉纯闲聊、临时信息、已过时的内容
803
+ **只保留「稳固记忆」**——即使过了 6 个月,用户仍可能需要查阅的信息。
709
804
 
710
- 对每条保留的条目,输出 JSON 数组,每条包含:
711
- - text: 条目摘要(精炼、信息密度高)
712
- - category: 分类
713
- - importance: 重要度评分 0-1,标准如下:
714
- - 0.9-1.0: 关键决策、重要事件(搬家、换工作、关系变化)
715
- - 0.7-0.8: 明确偏好、项目里程碑、具体计划
716
- - 0.4-0.6: 一般性讨论、技术问答
717
- - 0.1-0.3: 日常闲聊、低价值内容
718
- - triggers: 检索触发词数组(5-15个),用于提升口语化查询的召回率,包含:
719
- - 用户可能用什么口语化表达来查找这条记忆
720
- - 关键实体的同义词、缩写、口语说法
721
- - 相关的动作词
805
+ ### 应该保留的(稳固记忆):
806
+ - 用户的身份事实:家庭成员、工作单位、常驻地址、重要人际关系
807
+ - 明确的长期偏好和决策:技术选型、工作流配置、交互偏好
808
+ - 项目里程碑:v1.0 发布、重大架构变更、核心功能上线
809
+ - 将来会被反复查阅的关键信息:账号配置、API 地址、重要日期
722
810
 
723
- 只输出 JSON,不要其他内容。`;
724
- logger.info(`[engram:settle] monthlyExtractAndVectorize: calling LLM for extraction (${allContent.length} chars)`);
811
+ ### ❌ 不应该保留的(短暂记忆):
812
+ - 某次调试/排查过程(即使花了很长时间)
813
+ - 某天执行了某个脚本/命令的记录
814
+ - cron 任务执行日志
815
+ - 某次配置修改的细节(除非是长期生效的最终配置)
816
+ - 一次性的问题解答(如"怎么安装 X")
817
+ - 短期旅行的流水账(除非是重要的生活事件)
818
+ - 新闻摘要、股票行情等时效性信息
819
+
820
+ ### ⚠️ 需要判断的灰色地带:
821
+ - 如果是"最终决策"→ 保留;如果是"中间过程"→ 丢弃
822
+ - 如果是"持续生效的配置"→ 保留;如果是"某次临时修改"→ 丢弃
823
+ - 如果是"用户明确表达的偏好"→ 保留;如果只是"某天碰巧做了"→ 丢弃
824
+
825
+ ## 输出要求
826
+
827
+ 输出 JSON 数组(**严格控制在 5 条以内**,宁缺毋滥),每条:
828
+ - text: 提炼后的一句话摘要(信息密度高,去除时间戳和流水细节)
829
+ - category: 分类标签
830
+ - importance: 0-1 评分
831
+ - 0.9-1.0: 核心身份/重大人生事件
832
+ - 0.7-0.8: 长期偏好/项目里程碑/稳定配置
833
+ - 0.5-0.6: 有一定参考价值但非必须
834
+ - triggers: 口语化检索触发词(5-10个)
835
+ - reason: 一句话说明为什么这条值得长期保留
836
+
837
+ **如果所有候选都不够稳固,输出空数组 []。宁可不晋升,也不要塞入低质量记忆。**
838
+
839
+ 只输出 JSON。`;
840
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: calling LLM for extraction+审核 (${allContent.length} chars)`);
725
841
  const result = await opts.llmCall(allContent, systemPrompt);
726
842
  logger.info(`[engram:settle] monthlyExtractAndVectorize: LLM returned ${result.length} chars`);
727
843
  let items;
@@ -755,15 +871,15 @@ async function monthlyExtractAndVectorize(opts, promotionMode) {
755
871
  }
756
872
  }
757
873
  // 6. 标记 settled: true + promotedAt
758
- for (const fileName of processedFiles) {
759
- if (hits[fileName]) {
760
- hits[fileName].settled = true;
761
- hits[fileName].promotedAt = new Date().toISOString();
874
+ for (const key of processedKeys) {
875
+ if (hits[key]) {
876
+ hits[key].settled = true;
877
+ hits[key].promotedAt = new Date().toISOString();
762
878
  }
763
879
  }
764
880
  await fs.writeFile(recallHitsPath, JSON.stringify(hits, null, 2), "utf-8");
765
- logger.info(`[engram:settle] monthlyExtractAndVectorize: marked ${processedFiles.length} files as promoted`);
766
- const summary = `Monthly settle: ${stored} items stored (${duplicates} dup, ${skippedInvalid} invalid) from ${processedFiles.length} files.`;
881
+ logger.info(`[engram:settle] monthlyExtractAndVectorize: marked ${processedKeys.length} entries as promoted`);
882
+ const summary = `Monthly settle: ${stored} items stored (${duplicates} dup, ${skippedInvalid} invalid) from ${processedKeys.length} entries.`;
767
883
  logger.info(`[engram:settle] monthlyExtractAndVectorize: done. ${summary}`);
768
884
  return summary;
769
885
  }
@@ -1 +1 @@
1
- {"version":3,"file":"settle.js","sourceRoot":"","sources":["../../src/settle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settle.js","sourceRoot":"","sources":["../../src/settle.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  "name": "Engram (Semantic)",
4
4
  "kind": "memory",
5
5
  "description": "分层语义记忆系统:短期记忆(BM25) + 画像沉淀 + 向量检索 + 自动遗忘",
6
- "version": "0.9.9",
6
+ "version": "0.10.1",
7
7
  "activation": {
8
8
  "onStartup": true
9
9
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scotthuang/engram",
3
- "version": "0.9.9",
3
+ "version": "0.10.1",
4
4
  "description": "分层语义记忆系统 - OpenClaw Plugin",
5
5
  "type": "module",
6
6
  "openclaw": {