@aalis/plugin-message-archive 0.12.2 → 0.14.0
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/index.d.ts +10 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +262 -75
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts +7 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/en.js +7 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/texts.d.ts +13 -0
- package/dist/texts.d.ts.map +1 -0
- package/dist/texts.js +15 -0
- package/dist/texts.js.map +1 -0
- package/package.json +16 -9
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
declare const _default: import("@aalis/core").PluginDefinition<{
|
|
2
|
-
memory: import("@aalis/core").ServiceDescriptor<import("@aalis/api-memory").MemoryService, import("@aalis/
|
|
3
|
-
media: import("@aalis/core").OptionalUse<import("@aalis/api-media").MediaService, import("@aalis/
|
|
2
|
+
memory: import("@aalis/core").ServiceDescriptor<import("@aalis/api-memory").MemoryService, import("@aalis/api-memory").MemoryService>;
|
|
3
|
+
media: import("@aalis/core").OptionalUse<import("@aalis/api-media").MediaService, import("@aalis/api-media").MediaService>;
|
|
4
|
+
storage: import("@aalis/core").OptionalUse<import("@aalis/api-storage").StorageService, import("@aalis/api-storage").BoundStorage>;
|
|
5
|
+
/**
|
|
6
|
+
* 认出子会话:它的出站没人认领时由这里认领;入站的发送者前缀按根会话的房间类别给(speakerOf)。不在时判不出,不认领,
|
|
7
|
+
* 入站一律写这条消息自己的说话人
|
|
8
|
+
*/
|
|
9
|
+
sessionManager: import("@aalis/core").OptionalUse<import("@aalis/api-session-manager").SessionManagerService, import("@aalis/api-session-manager").SessionManagerService>;
|
|
10
|
+
/** 发送者前缀判谁是 owner、取 owner 在房间所在平台登记的账号;不在时没有人是 owner */
|
|
11
|
+
authority: import("@aalis/core").OptionalUse<import("@aalis/api-authority").AuthorityService, import("@aalis/api-authority").AuthorityService>;
|
|
4
12
|
events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
|
|
5
13
|
logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
|
|
6
14
|
config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;IAyHE;;;OAGG;;IAEH,wDAAwD;;;;;;;AAS1D,wBA2BG"}
|
package/dist/index.js
CHANGED
|
@@ -1,73 +1,221 @@
|
|
|
1
|
+
import { authority } from '@aalis/api-authority';
|
|
1
2
|
import { media } from '@aalis/api-media';
|
|
2
3
|
import { memory } from '@aalis/api-memory';
|
|
3
|
-
import { messageArchive } from '@aalis/api-message-archive';
|
|
4
|
+
import { messageArchive, outboundAddress, speakerOf, unaddressedText } from '@aalis/api-message-archive';
|
|
5
|
+
import { sessionManager } from '@aalis/api-session-manager';
|
|
6
|
+
import { isStorageUri, isWebUrl, parseUriRoot, storage } from '@aalis/api-storage';
|
|
4
7
|
import { config, definePlugin, events, logger, optional, provide } from '@aalis/core';
|
|
5
8
|
import { defineConfig, parseConfig } from '@aalis/schema-config';
|
|
6
|
-
import {
|
|
9
|
+
import { isTextRef, textOf, toSource, truncateParams } from '@aalis/schema-i18n';
|
|
10
|
+
import { buildIncomingContent, extractMentions, getMessageName, getSenderLabel, outboundMarkerMessage, outboundMediaMessage, WellKnownKinds, WellKnownMetadataKeys, } from '@aalis/schema-message';
|
|
11
|
+
import { t } from './texts.js';
|
|
7
12
|
const configSchema = defineConfig({
|
|
8
13
|
debugLogs: {
|
|
9
14
|
type: 'boolean',
|
|
10
|
-
label: '
|
|
15
|
+
label: t('debugLogsLabel'),
|
|
11
16
|
default: true,
|
|
12
|
-
description: '
|
|
17
|
+
description: t('debugLogsDescription'),
|
|
13
18
|
},
|
|
14
19
|
});
|
|
15
|
-
/**
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
/**
|
|
21
|
+
* 能当地址的写法:网址,以及根在存储服务根表里的存储地址。预处理器换上的私有引用(形似存储地址、根不存在)与相对路径
|
|
22
|
+
* 不算
|
|
23
|
+
*/
|
|
24
|
+
function addressOf(value, roots) {
|
|
25
|
+
if (!value)
|
|
26
|
+
return undefined;
|
|
27
|
+
if (isWebUrl(value))
|
|
28
|
+
return value;
|
|
29
|
+
return isStorageUri(value) && roots.has(parseUriRoot(value)) ? value : undefined;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 入站附件的清单:地址取附件的 data;data 不是地址(内联数据、本机路径、预处理器的私有引用)时,取预处理器写在附件 ref 上的
|
|
33
|
+
* 落盘地址(如媒体识别把上传的图片落盘后、文件读取把 data 换成文件引用前写的)。不从附件描述里取:描述里有群友起的文件名,
|
|
34
|
+
* 媒体判据把这份清单当作系统记下的引用
|
|
35
|
+
*/
|
|
36
|
+
function attachmentList(incoming, roots) {
|
|
37
|
+
return (incoming.attachments ?? []).map(({ kind, name, data, ref: landed }) => {
|
|
38
|
+
const ref = addressOf(data, roots) ?? addressOf(landed, roots);
|
|
39
|
+
return { kind, ...(name ? { name } : {}), ...(ref ? { ref } : {}) };
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
/** 给人看的那句记进 metadata:参数截到 200 字(同其余落盘方);截完退成字符串的不记,读历史的一方照旧显示正文 */
|
|
43
|
+
function recordText(meta, text) {
|
|
44
|
+
const cut = text && truncateParams(text, 200);
|
|
45
|
+
if (isTextRef(cut))
|
|
46
|
+
meta[WellKnownMetadataKeys.Text] = cut;
|
|
47
|
+
}
|
|
48
|
+
/** 她发的网址图片与视频补描述时等识图的上限:视频要抽帧加转写,放得更宽 */
|
|
49
|
+
const DESCRIBE_TIMEOUT_MS = { image: 25_000, video: 30_000 };
|
|
50
|
+
/** 出站消息在会话历史里的各条,记法见 api-message-archive 的 recordOutbound */
|
|
51
|
+
function outboundRecords(msg) {
|
|
52
|
+
const marker = outboundMarkerMessage(msg);
|
|
53
|
+
const records = marker ? [{ message: marker }] : [];
|
|
54
|
+
for (const att of msg.attachments ?? []) {
|
|
55
|
+
const address = outboundAddress(att);
|
|
56
|
+
if (address === undefined) {
|
|
57
|
+
const text = unaddressedText(att);
|
|
58
|
+
const metadata = {};
|
|
59
|
+
recordText(metadata, text);
|
|
60
|
+
records.push({
|
|
61
|
+
message: { role: 'system', kind: WellKnownKinds.EventMarker, content: toSource(text), metadata },
|
|
62
|
+
});
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
const file = att.kind === 'file';
|
|
66
|
+
const message = {
|
|
67
|
+
...outboundMediaMessage(att.kind, address, { desc: file ? att.name : att.description, source: msg.source }),
|
|
68
|
+
metadata: {
|
|
69
|
+
[WellKnownMetadataKeys.SentRef]: address,
|
|
70
|
+
...(file && att.name ? { [WellKnownMetadataKeys.SentName]: att.name } : {}),
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
const { kind } = att;
|
|
74
|
+
const later = msg.source === 'agent' && (kind === 'image' || kind === 'video') && !att.description;
|
|
75
|
+
records.push(later && isWebUrl(address) ? { message, pending: { kind, url: address } } : { message });
|
|
27
76
|
}
|
|
28
|
-
|
|
77
|
+
// 每条记录的元数据带出站的来源、回合 id 与调用 id,都是有才记
|
|
78
|
+
const facts = {
|
|
79
|
+
...(msg.source ? { [WellKnownMetadataKeys.Source]: msg.source } : {}),
|
|
80
|
+
...(msg.turnId ? { [WellKnownMetadataKeys.TurnId]: msg.turnId } : {}),
|
|
81
|
+
...(msg.callId ? { [WellKnownMetadataKeys.CallId]: msg.callId } : {}),
|
|
82
|
+
};
|
|
83
|
+
return records.map(({ message, pending }) => {
|
|
84
|
+
const metadata = { ...facts, ...message.metadata };
|
|
85
|
+
return { message: Object.keys(metadata).length > 0 ? { ...message, metadata } : message, pending };
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
/** work 在 ms 内没有结果就以「超时」拒绝 */
|
|
89
|
+
function withTimeout(work, ms) {
|
|
90
|
+
let timer;
|
|
91
|
+
const timeout = new Promise((_, reject) => {
|
|
92
|
+
timer = setTimeout(() => reject(new Error(`识图超时(${ms / 1000} 秒)`)), ms);
|
|
93
|
+
});
|
|
94
|
+
return Promise.race([work, timeout]).finally(() => clearTimeout(timer));
|
|
29
95
|
}
|
|
30
|
-
const uses = {
|
|
96
|
+
const uses = {
|
|
97
|
+
memory,
|
|
98
|
+
media: optional(media),
|
|
99
|
+
storage: optional(storage),
|
|
100
|
+
/**
|
|
101
|
+
* 认出子会话:它的出站没人认领时由这里认领;入站的发送者前缀按根会话的房间类别给(speakerOf)。不在时判不出,不认领,
|
|
102
|
+
* 入站一律写这条消息自己的说话人
|
|
103
|
+
*/
|
|
104
|
+
sessionManager: optional(sessionManager),
|
|
105
|
+
/** 发送者前缀判谁是 owner、取 owner 在房间所在平台登记的账号;不在时没有人是 owner */
|
|
106
|
+
authority: optional(authority),
|
|
107
|
+
events,
|
|
108
|
+
logger,
|
|
109
|
+
config,
|
|
110
|
+
provide,
|
|
111
|
+
};
|
|
31
112
|
export default definePlugin({
|
|
32
113
|
name: '@aalis/plugin-message-archive',
|
|
33
|
-
displayName: '
|
|
114
|
+
displayName: t('displayName'),
|
|
34
115
|
subsystem: 'message',
|
|
35
116
|
configSchema,
|
|
36
117
|
provides: [messageArchive],
|
|
37
118
|
uses,
|
|
38
119
|
apply(caps) {
|
|
39
|
-
const cfg = parseConfig(configSchema, caps.config, caps.logger);
|
|
40
|
-
|
|
120
|
+
const cfg = parseConfig(configSchema, caps.config.use, caps.logger.use);
|
|
121
|
+
const archive = createArchiveService(caps, cfg.debugLogs);
|
|
122
|
+
caps.provide.use(messageArchive, archive);
|
|
123
|
+
// 适配器送达之后发的快照记进会话历史;不等它写完,免得拖住同一事件的其它监听
|
|
124
|
+
caps.events.use.on('outbound:delivered', msg => {
|
|
125
|
+
archive
|
|
126
|
+
.recordOutbound(msg)
|
|
127
|
+
.catch(err => caps.logger.use.warn('[message-archive] 出站消息没能记进会话历史:', err));
|
|
128
|
+
});
|
|
129
|
+
// 子会话没有窗口,任何适配器都不认领它的出站:还没人认领的由这里认领,记进子会话自己的历史即算送达
|
|
130
|
+
caps.events.use.on('outbound:message', msg => {
|
|
131
|
+
if (msg.delivery || !caps.sessionManager.present)
|
|
132
|
+
return;
|
|
133
|
+
if (!caps.sessionManager.use.getSession(msg.sessionId)?.parentId)
|
|
134
|
+
return;
|
|
135
|
+
msg.delivery = archive.recordOutbound(msg).then(() => ({ ok: true }), error => ({ ok: false, error: textOf(error) }));
|
|
136
|
+
});
|
|
41
137
|
},
|
|
42
138
|
});
|
|
43
|
-
function createArchiveService({ memory, media, events, logger }, debugLogs) {
|
|
44
|
-
//
|
|
45
|
-
//
|
|
139
|
+
function createArchiveService({ memory, media, storage, sessionManager, authority, events, logger }, debugLogs) {
|
|
140
|
+
// 经 memory 的业务句柄调用:一次激活内胜者也可能换人(偏好变更、更高优先级的提供者登场),
|
|
141
|
+
// 句柄每次调用都打到当时选中的那一家。
|
|
142
|
+
async function saveMessage(sessionId, message, options) {
|
|
143
|
+
await memory.use.saveMessage(sessionId, message);
|
|
144
|
+
void announce(sessionId, message);
|
|
145
|
+
if (debugLogs && options?.debugLabel) {
|
|
146
|
+
logger.use.debug(options.debugLabel);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* 落库之后通知监听者,回这次派发(落库的一方不等它)。只发 assistant「对外可见的回复」(memory-vector 据此索引 AI 自身发言):
|
|
151
|
+
* 带 toolCalls 的行是工具调用回合的内部前言(「我来查一下」),从未发给任何人,不该进语义记忆;tool/摘要等其他 saveMessage
|
|
152
|
+
* 用途同理不发。core 的 emit 恒 resolve(per-handler try/catch),无需 catch。
|
|
153
|
+
*/
|
|
154
|
+
function announce(sessionId, message) {
|
|
155
|
+
if (message.role !== 'assistant' || !message.content?.trim() || message.toolCalls?.length)
|
|
156
|
+
return Promise.resolve();
|
|
157
|
+
return events.use.emit('assistant:message:archived', { sessionId, message });
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* 她发的网址图片与视频记完之后补描述:识图拿到描述就把这一条正文里的附件引用换成带描述的(只改这个会话里最近一条含它的),
|
|
161
|
+
* 改到了发 memory:messages-rewritten。记忆后端不支持改写或媒体服务不在时不补;识图超时或失败记一条 warn,这一条保持不带描述
|
|
162
|
+
*/
|
|
163
|
+
async function describeLater(sessionId, record, { kind, url }) {
|
|
164
|
+
const mem = memory.use;
|
|
165
|
+
if (!mem.updateMessageContent || !media.present)
|
|
166
|
+
return;
|
|
167
|
+
const service = media.use;
|
|
168
|
+
const described = kind === 'image' ? service.describeImage(url) : service.describeVideo(url);
|
|
169
|
+
const desc = (await withTimeout(described, DESCRIBE_TIMEOUT_MS[kind])).trim();
|
|
170
|
+
if (!desc)
|
|
171
|
+
return;
|
|
172
|
+
const before = outboundMediaMessage(kind, url, { source: 'agent' }).content;
|
|
173
|
+
const { content } = outboundMediaMessage(kind, url, { desc, source: 'agent' });
|
|
174
|
+
if ((await mem.updateMessageContent(sessionId, before, content, 1)) === 0)
|
|
175
|
+
return;
|
|
176
|
+
await events.use.emit('memory:messages-rewritten', { sessionId, messages: [{ ...record, content }] });
|
|
177
|
+
}
|
|
178
|
+
/** 上次出站记录用掉的时间戳:同一毫秒里的几次出站往后错开,同一会话里的出站记录时间戳各不相同 */
|
|
179
|
+
let lastOutboundAt = 0;
|
|
46
180
|
return {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
//
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
181
|
+
saveMessage,
|
|
182
|
+
async recordOutbound(msg) {
|
|
183
|
+
// 要记的内容在第一次等待之前取走(契约:调用之后对消息的改写不算)
|
|
184
|
+
const { sessionId } = msg;
|
|
185
|
+
const at = Math.max(Date.now(), lastOutboundAt + 1);
|
|
186
|
+
const records = outboundRecords(msg).map(({ message, pending }, i) => ({
|
|
187
|
+
message: { ...message, timestamp: at + i },
|
|
188
|
+
pending,
|
|
189
|
+
}));
|
|
190
|
+
lastOutboundAt = Math.max(lastOutboundAt, at + records.length - 1);
|
|
191
|
+
const announced = [];
|
|
192
|
+
for (const { message } of records) {
|
|
193
|
+
await memory.use.saveMessage(sessionId, message);
|
|
194
|
+
announced.push(announce(sessionId, message));
|
|
58
195
|
}
|
|
196
|
+
// 补描述等这一条的落库通知派发完再开始:改写通知赶在它前面到的话,收录它的一方(memory-vector)删不到还没收录的旧条目
|
|
197
|
+
records.forEach(({ message, pending }, i) => {
|
|
198
|
+
if (!pending)
|
|
199
|
+
return;
|
|
200
|
+
announced[i]
|
|
201
|
+
.then(() => describeLater(sessionId, message, pending))
|
|
202
|
+
.catch(err => logger.use.warn('[message-archive] 发出的附件没能补上描述,这一条不带描述:', err));
|
|
203
|
+
});
|
|
59
204
|
},
|
|
60
|
-
async archiveIncoming(incoming) {
|
|
205
|
+
async archiveIncoming(incoming, turn) {
|
|
206
|
+
// 空闲开话题的提示是写给模型的话,不是谁的发言,也不是要留档的事件:不落档、不发 inbound:message:archived
|
|
207
|
+
if (incoming.triggerType === 'idle')
|
|
208
|
+
return undefined;
|
|
61
209
|
// 调用 plugin-media 一站式处理(识别 attachments 并写回 _attachmentDescriptions)
|
|
62
210
|
// 仅在 preprocessor 尚未运行(_attachmentDescriptions 未预设)时才调用,避免重复识别。
|
|
63
211
|
// 对传入的消息对象调用(识别结果随之写回入参):processMessage 按消息对象只处理一次,
|
|
64
212
|
// 触发判定已启动的识别在这里命中(在途则等它),对拷贝调用会再识别一遍
|
|
65
213
|
if (incoming.attachments && incoming.attachments.length > 0 && !incoming._attachmentDescriptions) {
|
|
66
|
-
const mediaSvc = media.
|
|
214
|
+
const mediaSvc = media.present ? media.use : undefined;
|
|
67
215
|
if (mediaSvc) {
|
|
68
216
|
const report = await mediaSvc.processMessage(incoming);
|
|
69
217
|
if (debugLogs && report.total > 0) {
|
|
70
|
-
logger.debug(`附件识别完成: ${report.successCount}/${report.total} 个成功 | ${incoming.content}`);
|
|
218
|
+
logger.use.debug(`附件识别完成: ${report.successCount}/${report.total} 个成功 | ${incoming.content}`);
|
|
71
219
|
}
|
|
72
220
|
}
|
|
73
221
|
}
|
|
@@ -78,65 +226,103 @@ function createArchiveService({ memory, media, events, logger }, debugLogs) {
|
|
|
78
226
|
? [...incoming._attachmentDescriptions]
|
|
79
227
|
: incoming._attachmentDescriptions,
|
|
80
228
|
};
|
|
81
|
-
const
|
|
229
|
+
const speaker = speakerOf(working, {
|
|
230
|
+
sessionManager: sessionManager.present ? sessionManager.use : undefined,
|
|
231
|
+
authority: authority.present ? authority.use : undefined,
|
|
232
|
+
});
|
|
233
|
+
const content = buildIncomingContent(working, speaker);
|
|
82
234
|
// 把会话身份信息存入 metadata,供向量检索/上下文渲染等场景使用
|
|
83
235
|
const meta = {};
|
|
84
236
|
if (working.userId)
|
|
85
|
-
meta.
|
|
237
|
+
meta[WellKnownMetadataKeys.UserId] = working.userId;
|
|
86
238
|
if (working.nickname)
|
|
87
|
-
meta.
|
|
239
|
+
meta[WellKnownMetadataKeys.Nickname] = working.nickname;
|
|
88
240
|
if (working.platform)
|
|
89
|
-
meta.
|
|
241
|
+
meta[WellKnownMetadataKeys.Platform] = working.platform;
|
|
90
242
|
if (working.groupId)
|
|
91
|
-
meta.
|
|
243
|
+
meta[WellKnownMetadataKeys.GroupId] = working.groupId;
|
|
92
244
|
if (working.groupName)
|
|
93
|
-
meta.
|
|
245
|
+
meta[WellKnownMetadataKeys.GroupName] = working.groupName;
|
|
94
246
|
if (working.sessionType)
|
|
95
|
-
meta.
|
|
247
|
+
meta[WellKnownMetadataKeys.SessionType] = working.sessionType;
|
|
96
248
|
// 平台侧消息 ID(如 OneBot message_id),用于"引用回复"反查归档原文
|
|
97
249
|
if (working.messageId)
|
|
98
|
-
meta.
|
|
99
|
-
//
|
|
100
|
-
//
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
if (
|
|
104
|
-
meta.
|
|
250
|
+
meta[WellKnownMetadataKeys.MessageId] = working.messageId;
|
|
251
|
+
// 发言人写的话、附件清单与转发:归档正文拼进了发送者前缀、转发的展开、引用与附件描述(给模型看),读历史给人看的一方取
|
|
252
|
+
// 这三样;转发只记 id 与事实,展开已在归档正文里
|
|
253
|
+
if (working.content !== content)
|
|
254
|
+
meta[WellKnownMetadataKeys.SpokenContent] = working.content;
|
|
255
|
+
if (working.forwards?.length) {
|
|
256
|
+
meta[WellKnownMetadataKeys.Forwards] = working.forwards.map(({ id, facts }) => facts ? { id, facts } : { id });
|
|
105
257
|
}
|
|
106
|
-
//
|
|
258
|
+
// 加了发送者前缀时记下用的标签:把归档正文重排给模型或界面看的一方按它去掉这一层
|
|
259
|
+
const label = speaker && getSenderLabel(speaker.nickname, speaker.userId);
|
|
260
|
+
if (label)
|
|
261
|
+
meta[WellKnownMetadataKeys.SenderLabel] = label;
|
|
262
|
+
const roots = new Set(storage.present ? storage.use.listRoots().map(root => root.name) : []);
|
|
263
|
+
const attachments = attachmentList(working, roots);
|
|
264
|
+
if (attachments.length > 0)
|
|
265
|
+
meta[WellKnownMetadataKeys.Attachments] = attachments;
|
|
266
|
+
// 触发与来源溯源:用于区分真实用户消息 vs proactive 代发任务/调度等系统注入,会话服务据此标出被点名与插话,
|
|
107
267
|
// 也方便事后审计"agent 在 X 群做过什么"
|
|
108
268
|
if (working.triggerType)
|
|
109
|
-
meta.
|
|
269
|
+
meta[WellKnownMetadataKeys.TriggerType] = working.triggerType;
|
|
110
270
|
if (working.source)
|
|
111
|
-
meta.
|
|
112
|
-
|
|
271
|
+
meta[WellKnownMetadataKeys.Source] = working.source;
|
|
272
|
+
// 进了哪一轮、怎么进的:会话服务据此把它归回回合,连对话回滚据此只删这一轮的
|
|
273
|
+
if (turn) {
|
|
274
|
+
meta[WellKnownMetadataKeys.TurnId] = turn.turnId;
|
|
275
|
+
meta[WellKnownMetadataKeys.TurnEntry] = turn.entry;
|
|
276
|
+
}
|
|
277
|
+
// 平台事件合成的入站给人看的那句:读历史的一方据此把它画成通知
|
|
278
|
+
recordText(meta, working.text);
|
|
279
|
+
// 被 @ 的人只从发言人自己写的话里取:引用、附件描述与转发里别人 @ 的不算
|
|
280
|
+
const mentions = extractMentions(working.content);
|
|
113
281
|
if (mentions.length > 0)
|
|
114
|
-
meta.
|
|
115
|
-
// proactive
|
|
116
|
-
// 与 plugin-agent 的 buildMessages
|
|
282
|
+
meta[WellKnownMetadataKeys.Mentions] = mentions;
|
|
283
|
+
// proactive 代发任务(如 workflow agent 节点):作为 notice 角色 + kind='cross-session-delegation' 落盘,
|
|
284
|
+
// 与 plugin-agent 的 buildMessages 保持一致,避免目标会话下次回看历史时
|
|
117
285
|
// 把派发任务误读为「曾经有用户说过这个」。
|
|
118
|
-
|
|
286
|
+
//
|
|
287
|
+
// 宿主通知同样落成 notice,kind='host-notice'。只归档宿主正文:注入方包好的不可信段
|
|
288
|
+
// (hostNotice.untrusted)不写进消息也不写进 metadata——归档的 notice 出口转成 system,
|
|
289
|
+
// 之后这个房间每一轮都看得到它,不可信段只能在当轮出现。子类、id、给界面的事实与给人看的文字另记,读历史的一方据此画通知
|
|
290
|
+
if (working.hostNotice) {
|
|
291
|
+
const { kind, id, facts, text } = working.hostNotice;
|
|
292
|
+
meta[WellKnownMetadataKeys.HostNoticeKind] = kind;
|
|
293
|
+
if (id)
|
|
294
|
+
meta[WellKnownMetadataKeys.HostNoticeId] = id;
|
|
295
|
+
if (facts)
|
|
296
|
+
meta[WellKnownMetadataKeys.HostNoticeFacts] = facts;
|
|
297
|
+
recordText(meta, text);
|
|
298
|
+
}
|
|
299
|
+
const directive = working.hostNotice
|
|
300
|
+
? WellKnownKinds.HostNotice
|
|
301
|
+
: working.triggerType === 'proactive'
|
|
302
|
+
? WellKnownKinds.CrossSessionDelegation
|
|
303
|
+
: undefined;
|
|
304
|
+
// 平台事件转成的入站(如戳一戳)仍是 user 消息,子类(noticeType)记成 kind,读历史的一方据此给出通知的种类
|
|
119
305
|
const message = {
|
|
120
|
-
role:
|
|
121
|
-
kind:
|
|
306
|
+
role: directive ? 'notice' : 'user',
|
|
307
|
+
kind: directive ?? working.noticeType,
|
|
122
308
|
content,
|
|
123
|
-
name:
|
|
309
|
+
name: directive ? undefined : getMessageName(working.userId),
|
|
124
310
|
timestamp: Date.now(),
|
|
125
311
|
metadata: Object.keys(meta).length > 0 ? meta : undefined,
|
|
126
312
|
};
|
|
127
|
-
await memory.
|
|
313
|
+
await memory.use.saveMessage(working.sessionId, message);
|
|
128
314
|
if (debugLogs && working.attachments?.length) {
|
|
129
|
-
logger.debug(`附件消息已写入记忆: session=${working.sessionId}, attachments=${working.attachments.length} | ${content}`);
|
|
315
|
+
logger.use.debug(`附件消息已写入记忆: session=${working.sessionId}, attachments=${working.attachments.length} | ${content}`);
|
|
130
316
|
}
|
|
131
317
|
// 通知监听者:入站消息已落库(用于触发用户档案事实提取等后台任务)
|
|
132
|
-
// 与 agent
|
|
133
|
-
events
|
|
318
|
+
// 与 agent 是否回复无关,落了档的入站都会发出
|
|
319
|
+
events.use
|
|
134
320
|
.emit('inbound:message:archived', {
|
|
135
321
|
sessionId: working.sessionId,
|
|
136
322
|
incoming: working,
|
|
137
323
|
archivedMessage: message,
|
|
138
324
|
})
|
|
139
|
-
.catch(err => logger.debug(`inbound:message:archived 事件分发失败: ${err}`));
|
|
325
|
+
.catch(err => logger.use.debug(`inbound:message:archived 事件分发失败: ${err}`));
|
|
140
326
|
return {
|
|
141
327
|
message,
|
|
142
328
|
content,
|
|
@@ -150,17 +336,18 @@ function createArchiveService({ memory, media, events, logger }, debugLogs) {
|
|
|
150
336
|
if (opts.subType)
|
|
151
337
|
metadata.subType = opts.subType;
|
|
152
338
|
if (opts.platform)
|
|
153
|
-
metadata.
|
|
339
|
+
metadata[WellKnownMetadataKeys.Platform] = opts.platform;
|
|
154
340
|
if (opts.userId)
|
|
155
|
-
metadata.
|
|
341
|
+
metadata[WellKnownMetadataKeys.UserId] = opts.userId;
|
|
156
342
|
if (opts.targetId)
|
|
157
343
|
metadata.targetId = opts.targetId;
|
|
158
344
|
if (opts.groupId)
|
|
159
|
-
metadata.
|
|
345
|
+
metadata[WellKnownMetadataKeys.GroupId] = opts.groupId;
|
|
160
346
|
if (opts.operatorId)
|
|
161
347
|
metadata.operatorId = opts.operatorId;
|
|
162
348
|
if (opts.data)
|
|
163
349
|
Object.assign(metadata, opts.data);
|
|
350
|
+
recordText(metadata, opts.text);
|
|
164
351
|
const message = {
|
|
165
352
|
role: 'notice',
|
|
166
353
|
kind: opts.noticeType,
|
|
@@ -168,9 +355,9 @@ function createArchiveService({ memory, media, events, logger }, debugLogs) {
|
|
|
168
355
|
timestamp: opts.timestamp ?? Date.now(),
|
|
169
356
|
metadata: Object.keys(metadata).length > 0 ? metadata : undefined,
|
|
170
357
|
};
|
|
171
|
-
await memory.
|
|
358
|
+
await memory.use.saveMessage(opts.sessionId, message);
|
|
172
359
|
if (debugLogs) {
|
|
173
|
-
logger.debug(`[notice 入档] session=${opts.sessionId} type=${opts.noticeType}${opts.subType ? `/${opts.subType}` : ''} | ${text}`);
|
|
360
|
+
logger.use.debug(`[notice 入档] session=${opts.sessionId} type=${opts.noticeType}${opts.subType ? `/${opts.subType}` : ''} | ${text}`);
|
|
174
361
|
}
|
|
175
362
|
return message;
|
|
176
363
|
},
|
|
@@ -180,11 +367,11 @@ function createArchiveService({ memory, media, events, logger }, debugLogs) {
|
|
|
180
367
|
// 缺省 100;撤回反查按需显式传大窗(见 onebot 撤回处)。不把缺省抬到 500:
|
|
181
368
|
// 引用回填热路径也调本方法并按 maxDepth 递归,抬缺省会让它每层多扫 400 条。
|
|
182
369
|
const limit = Math.max(1, Math.min(500, Math.floor(scanLimit ?? 100)));
|
|
183
|
-
const history = await memory.
|
|
370
|
+
const history = await memory.use.getHistory(sessionId, limit);
|
|
184
371
|
// 从最新往旧找:引用通常指向最近发的消息
|
|
185
372
|
for (let i = history.length - 1; i >= 0; i -= 1) {
|
|
186
373
|
const m = history[i];
|
|
187
|
-
const mid = m.metadata?.
|
|
374
|
+
const mid = m.metadata?.[WellKnownMetadataKeys.MessageId];
|
|
188
375
|
if (mid != null && String(mid) === messageId)
|
|
189
376
|
return m;
|
|
190
377
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
readonly displayName: "Message archive";
|
|
3
|
+
readonly debugLogsLabel: "Archive debug logs";
|
|
4
|
+
readonly debugLogsDescription: "Log debug lines such as image descriptions completing and messages being written to memory.";
|
|
5
|
+
};
|
|
6
|
+
export default _default;
|
|
7
|
+
//# sourceMappingURL=en.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":";;;;;AAGA,wBAIG"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { defineLocale } from '@aalis/schema-i18n';
|
|
2
|
+
export default defineLocale()({
|
|
3
|
+
displayName: 'Message archive',
|
|
4
|
+
debugLogsLabel: 'Archive debug logs',
|
|
5
|
+
debugLogsDescription: 'Log debug lines such as image descriptions completing and messages being written to memory.',
|
|
6
|
+
});
|
|
7
|
+
//# sourceMappingURL=en.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,eAAe,YAAY,EAAU,CAAC;IACpC,WAAW,EAAE,iBAAiB;IAC9B,cAAc,EAAE,oBAAoB;IACpC,oBAAoB,EAAE,6FAA6F;CACpH,CAAC,CAAC"}
|
package/dist/texts.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
declare const SOURCE: {
|
|
2
|
+
readonly displayName: "消息归档";
|
|
3
|
+
readonly debugLogsLabel: "归档调试日志";
|
|
4
|
+
readonly debugLogsDescription: "记录图片解释完成和消息写入记忆等调试日志。";
|
|
5
|
+
};
|
|
6
|
+
export type Source = typeof SOURCE;
|
|
7
|
+
export declare const t: import("@aalis/schema-i18n").TextFactory<{
|
|
8
|
+
readonly displayName: "消息归档";
|
|
9
|
+
readonly debugLogsLabel: "归档调试日志";
|
|
10
|
+
readonly debugLogsDescription: "记录图片解释完成和消息写入记忆等调试日志。";
|
|
11
|
+
}>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=texts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,MAAM;;;;CAIF,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC,eAAO,MAAM,CAAC;;;;EAKZ,CAAC"}
|
package/dist/texts.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// 本插件自己的原文字典:显示名与配置项
|
|
2
|
+
import { defineTexts } from '@aalis/schema-i18n';
|
|
3
|
+
import en from './locales/en.js';
|
|
4
|
+
const SOURCE = {
|
|
5
|
+
displayName: '消息归档',
|
|
6
|
+
debugLogsLabel: '归档调试日志',
|
|
7
|
+
debugLogsDescription: '记录图片解释完成和消息写入记忆等调试日志。',
|
|
8
|
+
};
|
|
9
|
+
export const t = defineTexts({
|
|
10
|
+
ns: '@aalis/plugin-message-archive',
|
|
11
|
+
language: 'zh-CN',
|
|
12
|
+
source: SOURCE,
|
|
13
|
+
locales: { en },
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=texts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.js","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEjC,MAAM,MAAM,GAAG;IACb,WAAW,EAAE,MAAM;IACnB,cAAc,EAAE,QAAQ;IACxB,oBAAoB,EAAE,uBAAuB;CACrC,CAAC;AAGX,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;IAC3B,EAAE,EAAE,+BAA+B;IACnC,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,EAAE,EAAE,EAAE;CAChB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-message-archive",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,19 +24,23 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/schema-
|
|
29
|
-
"@aalis/
|
|
30
|
-
"@aalis/api-
|
|
31
|
-
"@aalis/api-
|
|
27
|
+
"@aalis/schema-config": ">=0.16.0 <1.0.0",
|
|
28
|
+
"@aalis/schema-i18n": ">=0.1.0 <1.0.0",
|
|
29
|
+
"@aalis/schema-message": ">=0.11.0 <1.0.0",
|
|
30
|
+
"@aalis/api-authority": ">=0.12.0 <1.0.0",
|
|
31
|
+
"@aalis/api-media": ">=0.13.0 <1.0.0",
|
|
32
|
+
"@aalis/api-memory": ">=0.9.0 <1.0.0",
|
|
33
|
+
"@aalis/api-message-archive": ">=0.9.0 <1.0.0",
|
|
34
|
+
"@aalis/api-session-manager": ">=0.12.0 <1.0.0",
|
|
35
|
+
"@aalis/api-storage": ">=0.9.0 <1.0.0"
|
|
32
36
|
},
|
|
33
37
|
"devDependencies": {
|
|
34
38
|
"@types/node": "^22.0.0",
|
|
35
39
|
"typescript": "^5.7.0",
|
|
36
|
-
"@aalis/core": "0.
|
|
40
|
+
"@aalis/core": "0.21.0"
|
|
37
41
|
},
|
|
38
42
|
"peerDependencies": {
|
|
39
|
-
"@aalis/core": ">=0.
|
|
43
|
+
"@aalis/core": ">=0.21.0 <1.0.0"
|
|
40
44
|
},
|
|
41
45
|
"aalis": {
|
|
42
46
|
"service": {
|
|
@@ -48,7 +52,10 @@
|
|
|
48
52
|
"provide"
|
|
49
53
|
],
|
|
50
54
|
"optional": [
|
|
51
|
-
"
|
|
55
|
+
"authority",
|
|
56
|
+
"media",
|
|
57
|
+
"session-manager",
|
|
58
|
+
"storage"
|
|
52
59
|
],
|
|
53
60
|
"provides": [
|
|
54
61
|
"message-archive"
|