@zaofan/dsh-qqbot 1.4.5 → 1.4.7

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.
Files changed (90) hide show
  1. package/README.md +158 -535
  2. package/README_EN.md +66 -0
  3. package/client/qqbot-settings.js +161 -14
  4. package/dist/channel-tools.d.ts.map +1 -1
  5. package/dist/channel-tools.js +106 -1
  6. package/dist/channel-tools.js.map +1 -1
  7. package/dist/config.js +1 -1
  8. package/dist/config.js.map +1 -1
  9. package/dist/features/agg-score.d.ts +73 -0
  10. package/dist/features/agg-score.d.ts.map +1 -0
  11. package/dist/features/agg-score.js +63 -0
  12. package/dist/features/agg-score.js.map +1 -0
  13. package/dist/features/attitude.d.ts +132 -0
  14. package/dist/features/attitude.d.ts.map +1 -0
  15. package/dist/features/attitude.js +318 -0
  16. package/dist/features/attitude.js.map +1 -0
  17. package/dist/features/bot-reply-memo.d.ts +8 -0
  18. package/dist/features/bot-reply-memo.d.ts.map +1 -0
  19. package/dist/features/bot-reply-memo.js +34 -0
  20. package/dist/features/bot-reply-memo.js.map +1 -0
  21. package/dist/features/emo-samples.d.ts +27 -0
  22. package/dist/features/emo-samples.d.ts.map +1 -0
  23. package/dist/features/emo-samples.js +116 -0
  24. package/dist/features/emo-samples.js.map +1 -0
  25. package/dist/features/four-source.d.ts +114 -0
  26. package/dist/features/four-source.d.ts.map +1 -0
  27. package/dist/features/four-source.js +260 -0
  28. package/dist/features/four-source.js.map +1 -0
  29. package/dist/features/image-url-ledger.d.ts +2 -0
  30. package/dist/features/image-url-ledger.d.ts.map +1 -1
  31. package/dist/features/image-url-ledger.js +23 -0
  32. package/dist/features/image-url-ledger.js.map +1 -1
  33. package/dist/features/intimacy-ledger.d.ts +31 -0
  34. package/dist/features/intimacy-ledger.d.ts.map +1 -0
  35. package/dist/features/intimacy-ledger.js +113 -0
  36. package/dist/features/intimacy-ledger.js.map +1 -0
  37. package/dist/features/local-embed.js +3 -3
  38. package/dist/features/local-embed.js.map +1 -1
  39. package/dist/features/local-signals.d.ts +130 -0
  40. package/dist/features/local-signals.d.ts.map +1 -0
  41. package/dist/features/local-signals.js +445 -0
  42. package/dist/features/local-signals.js.map +1 -0
  43. package/dist/features/people-memo.d.ts +52 -0
  44. package/dist/features/people-memo.d.ts.map +1 -0
  45. package/dist/features/people-memo.js +239 -0
  46. package/dist/features/people-memo.js.map +1 -0
  47. package/dist/features/quote-cache.d.ts +19 -0
  48. package/dist/features/quote-cache.d.ts.map +1 -0
  49. package/dist/features/quote-cache.js +67 -0
  50. package/dist/features/quote-cache.js.map +1 -0
  51. package/dist/features/self-disclosure.d.ts +28 -0
  52. package/dist/features/self-disclosure.d.ts.map +1 -0
  53. package/dist/features/self-disclosure.js +60 -0
  54. package/dist/features/self-disclosure.js.map +1 -0
  55. package/dist/features/tendency-samples.d.ts +22 -0
  56. package/dist/features/tendency-samples.d.ts.map +1 -0
  57. package/dist/features/tendency-samples.js +194 -0
  58. package/dist/features/tendency-samples.js.map +1 -0
  59. package/dist/features/thinking-log.d.ts +22 -0
  60. package/dist/features/thinking-log.d.ts.map +1 -0
  61. package/dist/features/thinking-log.js +70 -0
  62. package/dist/features/thinking-log.js.map +1 -0
  63. package/dist/features/xlsx.d.ts +28 -0
  64. package/dist/features/xlsx.d.ts.map +1 -0
  65. package/dist/features/xlsx.js +159 -0
  66. package/dist/features/xlsx.js.map +1 -0
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +20 -1
  69. package/dist/index.js.map +1 -1
  70. package/dist/session/session-manager.d.ts.map +1 -1
  71. package/dist/session/session-manager.js +25 -3
  72. package/dist/session/session-manager.js.map +1 -1
  73. package/dist/transport/events.d.ts +12 -0
  74. package/dist/transport/events.d.ts.map +1 -1
  75. package/dist/transport/events.js +15 -2
  76. package/dist/transport/events.js.map +1 -1
  77. package/dist/transport/inbound.d.ts.map +1 -1
  78. package/dist/transport/inbound.js +344 -20
  79. package/dist/transport/inbound.js.map +1 -1
  80. package/dist/transport/outbound-buffer.d.ts.map +1 -1
  81. package/dist/transport/outbound-buffer.js +8 -0
  82. package/dist/transport/outbound-buffer.js.map +1 -1
  83. package/dist/transport/outbound.d.ts +12 -0
  84. package/dist/transport/outbound.d.ts.map +1 -1
  85. package/dist/transport/outbound.js +170 -5
  86. package/dist/transport/outbound.js.map +1 -1
  87. package/docs/USER-GUIDE.md +429 -0
  88. package/package.json +2 -1
  89. package/scripts/download-model.mjs +3 -1
  90. package/settings-host.js +154 -0
@@ -1 +1 @@
1
- {"version":3,"file":"image-url-ledger.js","sourceRoot":"","sources":["../../src/features/image-url-ledger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-url-ledger.js","sourceRoot":"","sources":["../../src/features/image-url-ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /** 保留天数(14 天: 够出"本周"和"上周对比") */
2
+ export declare const KEEP_DAYS = 14;
3
+ export interface DayCell {
4
+ name?: string;
5
+ msgs: number;
6
+ mentions: number;
7
+ replies: number;
8
+ imgs: number;
9
+ }
10
+ /** 记一条(每条群消息调一次): key = `group:<gid>|<senderId>` */
11
+ export declare function touchDaily(dataRoot: string, gid: string, senderId: string, opts?: {
12
+ name?: string;
13
+ mention?: boolean;
14
+ reply?: boolean;
15
+ img?: boolean;
16
+ }): void;
17
+ export interface WeeklyRow {
18
+ key: string;
19
+ name?: string;
20
+ msgs: number;
21
+ mentions: number;
22
+ replies: number;
23
+ imgs: number;
24
+ /** 有互动的天数(体现"常来"还是"来一次爆刷") */
25
+ activeDays: number;
26
+ }
27
+ /** 汇总最近 days 天(默认 7)的每人数据, 按 msgs 降序 */
28
+ export declare function weeklyRows(dataRoot: string, days?: number, now?: number): WeeklyRow[];
29
+ /** 台账文件路径(脚本/面板用) */
30
+ export declare function ledgerPathOf(dataRoot: string): string;
31
+ //# sourceMappingURL=intimacy-ledger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intimacy-ledger.d.ts","sourceRoot":"","sources":["../../src/features/intimacy-ledger.ts"],"names":[],"mappings":"AAmBA,gCAAgC;AAChC,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AA4CD,oDAAoD;AACpD,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9E,IAAI,CAgBN;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wCAAwC;AACxC,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,GAAG,SAAa,GAAG,SAAS,EAAE,CAsBpF;AAED,qBAAqB;AACrB,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * intimacy-ledger.ts — 亲密度**日报台账**(2026-09-13 主人定, 用来出《本周亲密度小报》)
3
+ *
4
+ * 为什么再记一份: `affinity.json` 是**累计**计数(一辈子总和), 出不了"本周"这种窗口;
5
+ * 这里按**天**分桶, 每桶记每人当天的可观测量 → 出小报时按最近 N 天求和即可。
6
+ *
7
+ * 只记**肉眼可核的事实**(不记内容、不记语义, 群里随时能核对):
8
+ * · msgs 当天说了多少条
9
+ * · mentions 当天点名她多少次
10
+ * · replies 当天"接她的话"多少次(本地小模型判定相关度 ≥ 0.6)
11
+ * · imgs 当天发的图/表情包多少张(投喂度)
12
+ *
13
+ * 存储: `{dataRoot}/.qqbot/intimacy-daily.json`
14
+ * `{ "days": { "2026-09-13": { "group:<gid>|<senderId>": { name, msgs, mentions, replies, imgs } } } }`
15
+ * 保留: 最近 {@link KEEP_DAYS} 天(默认 14), 更早的自动丢 —— 文件永远是几十 KB 级别。
16
+ */
17
+ import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
18
+ import { dirname, join } from 'node:path';
19
+ /** 保留天数(14 天: 够出"本周"和"上周对比") */
20
+ export const KEEP_DAYS = 14;
21
+ const cache = new Map();
22
+ function pathOf(dataRoot) {
23
+ return join(dataRoot, '.qqbot', 'intimacy-daily.json');
24
+ }
25
+ function todayKey(now = Date.now()) {
26
+ const d = new Date(now);
27
+ const p = (n) => String(n).padStart(2, '0');
28
+ return `${d.getFullYear()}-${p(d.getMonth() + 1)}-${p(d.getDate())}`;
29
+ }
30
+ function load(dataRoot) {
31
+ const hit = cache.get(dataRoot);
32
+ if (hit)
33
+ return hit;
34
+ let data = { days: {} };
35
+ try {
36
+ const raw = JSON.parse(readFileSync(pathOf(dataRoot), 'utf8'));
37
+ if (raw && typeof raw === 'object' && raw.days && typeof raw.days === 'object')
38
+ data = { days: raw.days };
39
+ }
40
+ catch { /* 首次/损坏 → 空台账 */ }
41
+ cache.set(dataRoot, data);
42
+ return data;
43
+ }
44
+ function prune(data) {
45
+ const keys = Object.keys(data.days).sort();
46
+ if (keys.length <= KEEP_DAYS)
47
+ return;
48
+ for (const k of keys.slice(0, keys.length - KEEP_DAYS))
49
+ delete data.days[k];
50
+ }
51
+ function save(dataRoot, data) {
52
+ try {
53
+ const p = pathOf(dataRoot);
54
+ mkdirSync(dirname(p), { recursive: true });
55
+ writeFileSync(p, JSON.stringify(data), 'utf8');
56
+ }
57
+ catch { /* 记不上不影响主链 */ }
58
+ }
59
+ /** 记一条(每条群消息调一次): key = `group:<gid>|<senderId>` */
60
+ export function touchDaily(dataRoot, gid, senderId, opts = {}) {
61
+ if (!dataRoot || !gid || !senderId)
62
+ return;
63
+ try {
64
+ const data = load(dataRoot);
65
+ const day = todayKey();
66
+ const bucket = (data.days[day] ??= {});
67
+ const key = `group:${gid}|${senderId}`;
68
+ const cell = (bucket[key] ??= { msgs: 0, mentions: 0, replies: 0, imgs: 0 });
69
+ cell.msgs += 1;
70
+ if (opts.mention)
71
+ cell.mentions += 1;
72
+ if (opts.reply)
73
+ cell.replies += 1;
74
+ if (opts.img)
75
+ cell.imgs += 1;
76
+ if (opts.name)
77
+ cell.name = String(opts.name).slice(0, 40);
78
+ prune(data);
79
+ save(dataRoot, data);
80
+ }
81
+ catch { /* ignore */ }
82
+ }
83
+ /** 汇总最近 days 天(默认 7)的每人数据, 按 msgs 降序 */
84
+ export function weeklyRows(dataRoot, days = 7, now = Date.now()) {
85
+ const data = load(dataRoot);
86
+ const dayKeys = [];
87
+ for (let i = 0; i < days; i += 1)
88
+ dayKeys.push(todayKey(now - i * 86400_000));
89
+ const agg = new Map();
90
+ for (const dk of dayKeys) {
91
+ const bucket = data.days[dk];
92
+ if (!bucket)
93
+ continue;
94
+ for (const [key, cell] of Object.entries(bucket)) {
95
+ const cur = agg.get(key) ?? { key, name: cell.name, msgs: 0, mentions: 0, replies: 0, imgs: 0, activeDays: 0, daySet: new Set() };
96
+ cur.msgs += cell.msgs;
97
+ cur.mentions += cell.mentions;
98
+ cur.replies += cell.replies;
99
+ cur.imgs += cell.imgs;
100
+ cur.name = cell.name || cur.name;
101
+ cur.daySet.add(dk);
102
+ agg.set(key, cur);
103
+ }
104
+ }
105
+ return [...agg.values()]
106
+ .map((x) => ({ ...x, activeDays: x.daySet.size }))
107
+ .sort((a, b) => b.msgs - a.msgs);
108
+ }
109
+ /** 台账文件路径(脚本/面板用) */
110
+ export function ledgerPathOf(dataRoot) {
111
+ return pathOf(dataRoot);
112
+ }
113
+ //# sourceMappingURL=intimacy-ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intimacy-ledger.js","sourceRoot":"","sources":["../../src/features/intimacy-ledger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,gCAAgC;AAChC,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAc5B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE5C,SAAS,MAAM,CAAC,QAAgB;IAC9B,OAAO,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAChC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5D,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,IAAI,CAAC,QAAgB;IAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChC,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IACpB,IAAI,IAAI,GAAe,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAe,CAAC;QAC7E,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAC5G,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC7B,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,KAAK,CAAC,IAAgB;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO;IACrC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,IAAI,CAAC,QAAgB,EAAE,IAAgB;IAC9C,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;AAC5B,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,UAAU,CACxB,QAAgB,EAChB,GAAW,EACX,QAAgB,EAChB,OAA6E,EAAE;IAE/E,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ;QAAE,OAAO;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,SAAS,GAAG,IAAI,QAAQ,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QACf,IAAI,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7B,IAAI,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;AAC1B,CAAC;AAaD,wCAAwC;AACxC,MAAM,UAAU,UAAU,CAAC,QAAgB,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IACrE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,IAAI,GAAG,EAA+C,CAAC;IACnE,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,EAAU,EAAE,CAAC;YAC1I,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;YACtB,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;YAC9B,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;YAC5B,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;YACtB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;YACjC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;SACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED,qBAAqB;AACrB,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC"}
@@ -77,13 +77,13 @@ export function createLocalEmbedder(opts = {}) {
77
77
  const name = basename(modelDir);
78
78
  extractor = (await mod.pipeline('feature-extraction', name, { dtype: 'q8' }));
79
79
  loadMs = Date.now() - t0;
80
- logger?.info(`[im-qqbot] 本地小模型就绪: ${name} (${loadMs}ms)`);
80
+ logger?.info(`[im-qqbot] 智能回复(本地小模型)就绪: ${name} (${loadMs}ms)`);
81
81
  return true;
82
82
  }
83
83
  catch (e) {
84
84
  failed = true;
85
85
  failureReason = e instanceof Error ? e.message : String(e);
86
- logger?.warn(`[im-qqbot] 本地小模型不可用(${modelDir}): ${failureReason}`);
86
+ logger?.warn(`[im-qqbot] 智能回复不可用(本地小模型 ${modelDir}): ${failureReason}`);
87
87
  return false;
88
88
  }
89
89
  finally {
@@ -107,7 +107,7 @@ export function createLocalEmbedder(opts = {}) {
107
107
  return arr;
108
108
  }
109
109
  catch (e) {
110
- logger?.warn(`[im-qqbot] 本地小模型推理失败: ${e instanceof Error ? e.message : String(e)}`);
110
+ logger?.warn(`[im-qqbot] 智能回复推理失败: ${e instanceof Error ? e.message : String(e)}`);
111
111
  return undefined;
112
112
  }
113
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local-embed.js","sourceRoot":"","sources":["../../src/features/local-embed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-embed.js","sourceRoot":"","sources":["../../src/features/local-embed.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ import { type EmoLabel } from './emo-samples.js';
2
+ import { type TendencyLabel } from './tendency-samples.js';
3
+ import type { Logger } from '../types.js';
4
+ export interface RelResult {
5
+ /** 当前消息 ↔ 她上一条发言 的余弦(0~1) */
6
+ relReply?: number;
7
+ /** 当前消息 ↔ 群里最近 5 条 的最大余弦(0~1) */
8
+ relHist?: number;
9
+ }
10
+ /**
11
+ * 算相关度。模型不可用/文本为空 → undefined(调用方照常记录其它字段)。
12
+ * @param history 群历史缓冲(`mwState.history`),只取最后 5 条有效文本
13
+ */
14
+ export declare function computeRelevance(opts: {
15
+ gid: string;
16
+ currentText: string;
17
+ history: Array<{
18
+ messageId?: string;
19
+ content?: string;
20
+ }> | undefined;
21
+ modelDir?: string;
22
+ logger?: Logger;
23
+ }): Promise<RelResult | undefined>;
24
+ export interface AffinityEntry {
25
+ /** 最近一次看到的昵称 */
26
+ name?: string;
27
+ /** 消息数 */
28
+ msgs: number;
29
+ /** 被 @ 次数 */
30
+ mentions: number;
31
+ /** "接她的话"次数(相关度 ≥ 0.6 视为在接话) */
32
+ replies: number;
33
+ firstAt: number;
34
+ lastAt: number;
35
+ /** 记忆强度 0~1(2026-09-13 主人定:按记忆曲线遗忘;每次互动=一次复习 → 回满) */
36
+ strength?: number;
37
+ /** 复习次数(= 有效互动次数; 用来抬高遗忘下限、拉长遗忘时间常数) */
38
+ reviews?: number;
39
+ /** 上次复习(= 上次互动)时间戳 */
40
+ lastReview?: number;
41
+ /** 上次复习的**日期**(YYYY-MM-DD): 同一天多次互动只算一次复习(2026-09-13 主人定: 每天就几次复习) */
42
+ lastReviewDay?: string;
43
+ }
44
+ /** 记一次互动(每条群消息调一次; 只统计, 不生效) */
45
+ export declare function touchAffinity(dataRoot: string, key: string, opts?: {
46
+ name?: string;
47
+ mention?: boolean;
48
+ reply?: boolean;
49
+ }): void;
50
+ export declare function effectiveReviews(e: AffinityEntry, now?: number): number;
51
+ export declare function memoryStrength(e: AffinityEntry, now?: number): number;
52
+ /** 档位(滞回:进档门槛高于退档,防止抖动) */
53
+ export declare function memoryTier(strength: number, prevTier?: string): '陌生人' | '眼熟' | '熟人';
54
+ /** 0~100 分(= 记忆强度 × 100;面板与排序沿用它,语义已从"功劳榜"改为"记忆强度") */
55
+ export declare function affinityScore(e: AffinityEntry, now?: number): number;
56
+ /** 取某人的台账条目(好感度聚合要用它的熟识度算阻尼与范围) */
57
+ export declare function getAffinityEntry(dataRoot: string, key: string): AffinityEntry | undefined;
58
+ /** 按熟度排序(面板/工具用) */
59
+ export declare function topAffinity(dataRoot: string, limit?: number): Array<{
60
+ key: string;
61
+ name?: string;
62
+ score: number;
63
+ tier: string;
64
+ reviews: number;
65
+ msgs: number;
66
+ mentions: number;
67
+ replies: number;
68
+ lastAt: number;
69
+ }>;
70
+ /**
71
+ * 用**同一个本地小模型**判"这句话是夸、骂还是中性":
72
+ * 把三组例句各嵌一次(缓存), 新文本嵌入后跟每组求平均相似度, 取最高的那组。
73
+ * ⚠️ 只做**弱信号**: 反讽/互怼/引用会误判 → 观察期只记录, 不参与行为。
74
+ */
75
+ /**
76
+ * 判定打分方式(2026-09-14 主人要求"重新添加样本测试一下"之后的实测结论)。
77
+ *
78
+ * · `centroid` = 每组例句取**平均向量**(原做法)
79
+ * · `knn` = 每组取**最相似的 K 条**,平均相似度(现做法)
80
+ *
81
+ * 为什么换:质心会把一组的几十条例句揉成"平均意思",样本越杂越糊 ——
82
+ * 实测把"没点名我,静默"判成「拒绝」、把 141 字热情卖萌正文判成「冷」、
83
+ * 把工具参数里的「…需回应」判成「拒绝」(这三条都在 m1/eval 里钉成回归样本)。
84
+ * kNN 不做平均,直接看"这句话最像组里的哪几句",边界句不再被离群样本拖走。
85
+ *
86
+ * 回滚:把它改回 `'centroid'` 即可(其余代码一行不用动)。
87
+ * 复跑:`node m1/judge-eval.mjs --kind tendency|emo`(改样本/改门槛后都跑一遍)。
88
+ */
89
+ export declare const CLASSIFY_SCORE_MODE: 'knn' | 'centroid';
90
+ export interface EmoResult {
91
+ label: EmoLabel;
92
+ /** 最高组得分 */
93
+ best: number;
94
+ /** 与第二名的差(越大越有把握) */
95
+ margin: number;
96
+ /** 三组原始得分, 便于观察 */
97
+ scores: Record<string, number>;
98
+ }
99
+ export declare function classifyEmo(text: string, opts?: {
100
+ modelDir?: string;
101
+ logger?: Logger;
102
+ }): Promise<EmoResult | undefined>;
103
+ /**
104
+ * 用途(设计稿 §11): **语言情绪库判对方, 倾向库判她自己** ——
105
+ * 她对某个人的态度不长在情绪词上, 而藏在**选择**里(接不接梗、给不给台阶、愿不愿多花力气),
106
+ * 所以拿 `tendency-samples.ts` 的亲近/拒绝/任务三组例句做质心比对。
107
+ *
108
+ * ⚠️ 语言必须对得上: 中文思考配 zh 库、英文配 en 库; **中英混杂跳过不判**(跨语言比不了, 宁可空着)。
109
+ * ⚠️ 弱信号: 观察期只记录, 不参与行为; 绝不用它冷落谁。
110
+ */
111
+ export interface TendencyResult {
112
+ label: TendencyLabel;
113
+ best: number;
114
+ margin: number;
115
+ scores: Record<string, number>;
116
+ /** 判定所用语言(zh / en) */
117
+ lang: 'zh' | 'en';
118
+ }
119
+ /**
120
+ * 按 CJK 占比判语言: ≥0.6 判中文 / ≤0.25 判英文 / 中间=中英混杂 → undefined(跳过不判)。
121
+ * 只数"汉字"与"拉丁字母", 标点、数字、空格、表情都不参与。
122
+ * 阈值放宽的理由: 她的思考常夹英文术语("先 reply 他"), 只要中文为主仍按中文库判;
123
+ * 真·对半开才跳过 —— 小模型的英文语义质量差, 判了不如空着(设计稿: 不确定就不动分)。
124
+ */
125
+ export declare function detectScript(text: string): 'zh' | 'en' | undefined;
126
+ export declare function classifyTendency(text: string, opts?: {
127
+ modelDir?: string;
128
+ logger?: Logger;
129
+ }): Promise<TendencyResult | undefined>;
130
+ //# sourceMappingURL=local-signals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-signals.d.ts","sourceRoot":"","sources":["../../src/features/local-signals.ts"],"names":[],"mappings":"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"}