@aalis/schema-message 0.9.1 → 0.10.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 +206 -31
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +114 -7
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -14,7 +14,8 @@ export interface ToolCall {
|
|
|
14
14
|
* 内容时间线分段(按到达顺序记录助手输出的真实结构)。
|
|
15
15
|
* - text:正常对话文本
|
|
16
16
|
* - reasoning_text:思考/推理文本(部分模型如 DeepSeek-R1、Ollama thinking 会产出)
|
|
17
|
-
* - tool_call:工具调用片段(startTime/endTime
|
|
17
|
+
* - tool_call:工具调用片段(startTime/endTime 用于时长展示;callId 同这次调用的 ToolCallContext.callId,
|
|
18
|
+
* 历史里的工具卡据它与实时推送对上,参数没解析成、没有执行的调用没有)
|
|
18
19
|
*
|
|
19
20
|
* 该数组若存在则为渲染顺序的真相;同时 message.content / reasoningContent
|
|
20
21
|
* 仍保留为派生镜像,供 LLM API 与历史压缩等纯文本消费者使用。
|
|
@@ -32,6 +33,7 @@ export type ContentSegment = {
|
|
|
32
33
|
result?: string;
|
|
33
34
|
startTime?: number;
|
|
34
35
|
endTime?: number;
|
|
36
|
+
callId?: string;
|
|
35
37
|
};
|
|
36
38
|
/**
|
|
37
39
|
* 标准 LLM role(OpenAI / DeepSeek / Ollama 等 chat 协议直接接受的四种)。
|
|
@@ -59,9 +61,10 @@ export interface Message {
|
|
|
59
61
|
* - 让所有 role 共用同一个子类入口,避免 system.name / notice.metadata.noticeType / assistant.metadata.kind 三套互不相通的"伪子分类"。
|
|
60
62
|
* - 统一过滤/渲染判断:`m.kind === 'event-marker'` 这种写法跨 role 通用。
|
|
61
63
|
*
|
|
62
|
-
* 约定的语义类(详见 `WellKnownKinds` / `CONTROL_KINDS`):
|
|
64
|
+
* 约定的语义类(详见 `WellKnownKinds` / `CONTROL_KINDS` / `DIRECTIVE_KINDS`):
|
|
63
65
|
* - `'event-marker'` :system 控制类标记(如压缩分隔条),不应进入 LLM 上下文。
|
|
64
|
-
* - `'cross-session-delegation'` :notice
|
|
66
|
+
* - `'cross-session-delegation'` :notice 子类——系统代发的任务指令(triggerType 为 proactive,如 workflow 的 agent 节点)。
|
|
67
|
+
* - `'host-notice'` :notice 子类——宿主撰写的事件通知(入站消息带 hostNotice)。
|
|
65
68
|
* - `'outbound-image'` :assistant 子类——agent 已发出的图片。
|
|
66
69
|
* - notice 的平台事件类型 :`'poke' | 'group_recall' | 'group_increase' | ...`(取自 OneBot 等适配器)。
|
|
67
70
|
*
|
|
@@ -91,7 +94,10 @@ export interface Message {
|
|
|
91
94
|
export interface MessageAttachment {
|
|
92
95
|
/** 媒介类型 */
|
|
93
96
|
kind: 'image' | 'audio' | 'video' | 'file';
|
|
94
|
-
/**
|
|
97
|
+
/**
|
|
98
|
+
* 内容:base64 data URL / http(s) URL / file:// URI / storage URI(`<根>:/路径`,如 `data:/images/…`,经 storage 服务读取;
|
|
99
|
+
* 与 data URL 以有无 `;base64,` 区分);下游决定如何解析
|
|
100
|
+
*/
|
|
95
101
|
data: string;
|
|
96
102
|
/** MIME 类型,尽量提供以便分发 */
|
|
97
103
|
mimeType?: string;
|
|
@@ -128,7 +134,7 @@ export interface IncomingMessage {
|
|
|
128
134
|
nickname?: string;
|
|
129
135
|
/**
|
|
130
136
|
* 平台侧消息 ID(如 OneBot 的 message_id)。
|
|
131
|
-
*
|
|
137
|
+
* 由适配器填充;归档插件写进元数据的 {@link WellKnownMetadataKeys}.MessageId,供"引用回复"反查归档原文以保留图片描述等富信息。
|
|
132
138
|
*/
|
|
133
139
|
messageId?: string;
|
|
134
140
|
/**
|
|
@@ -142,17 +148,22 @@ export interface IncomingMessage {
|
|
|
142
148
|
* 由 plugin-media 写入。
|
|
143
149
|
*/
|
|
144
150
|
_attachmentDescriptions?: Array<string | undefined>;
|
|
145
|
-
/** 会话类型:群聊、私聊、频道等 */
|
|
146
|
-
sessionType?: 'group' | 'private' | 'channel';
|
|
147
151
|
/**
|
|
148
|
-
*
|
|
152
|
+
* 平台类型名:适配器在 PlatformAdapter.sessionTypes 里声明的类型之一(如 OneBot 的 group、private、channel)。
|
|
153
|
+
* 不带时,平台声明了多方类型的按多方,没声明或只有一对一类型的按 private、一对一(api-platform 的 resolveSessionType)
|
|
154
|
+
*/
|
|
155
|
+
sessionType?: string;
|
|
156
|
+
/** 收到这条消息的机器人账号(平台给出时由适配器填,如 OneBot 的 self_id) */
|
|
157
|
+
selfId?: string;
|
|
158
|
+
/**
|
|
159
|
+
* 系统侧注入者的来源标识(如 'idle-trigger'、'scheduler'、'workflow:<id>')。
|
|
149
160
|
* 平台适配器投递真人消息**不设置**此字段:带 source 的消息被视为内部注入——不经触发策略、
|
|
150
161
|
* 不过回复后冷却(禁言与限速照常生效)。同时用于并发隔离:同一 session 不同来源互不打断。
|
|
151
162
|
*/
|
|
152
163
|
source?: string;
|
|
153
164
|
/** 群名称(仅群聊时可用) */
|
|
154
165
|
groupName?: string;
|
|
155
|
-
/**
|
|
166
|
+
/** 多方聊天窗口的 id,由适配器填(如 OneBot 的群号,频道为 `<guild>:<channel>`) */
|
|
156
167
|
groupId?: string;
|
|
157
168
|
/**
|
|
158
169
|
* 群聊中发送者在群内的角色:owner=群主, admin=管理员, member=普通成员。
|
|
@@ -177,6 +188,8 @@ export interface IncomingMessage {
|
|
|
177
188
|
};
|
|
178
189
|
/** 通知子类型(如 poke、group_upload 等非消息事件) */
|
|
179
190
|
noticeType?: string;
|
|
191
|
+
/** 通知动作是否指向机器人;poke 为 false 时按未点名互动判断,省略沿用戳机器人的语义。 */
|
|
192
|
+
noticeTargetIsSelf?: boolean;
|
|
180
193
|
/**
|
|
181
194
|
* 触发类型(下游插件可据此区分主发言者语义)。真人消息由 inbound:trigger 相位生效的触发插件写入
|
|
182
195
|
* (immediate / interval),平台适配器不设置;内部注入由注入方自带(idle、proactive)。flow 相位对
|
|
@@ -186,13 +199,13 @@ export interface IncomingMessage {
|
|
|
186
199
|
* - 'immediate' 群聊中被 @/名字主动触发(userId 是主发言者)
|
|
187
200
|
* - 'interval' 群聊中因消息频率/活跃度被动触发(无明确主发言者,userId 仅为最后一条消息发送者)
|
|
188
201
|
* - 'idle' 空闲自动触发(无 userId / 无主发言者)
|
|
189
|
-
* - 'proactive'
|
|
202
|
+
* - 'proactive' 系统代发给 agent 的任务指令,如 workflow 的 agent 节点(content 是任务描述而非用户消息)
|
|
190
203
|
* 未设置时下游插件按 'direct' 兼容处理。
|
|
191
204
|
*/
|
|
192
205
|
triggerType?: 'direct' | 'immediate' | 'interval' | 'idle' | 'proactive';
|
|
193
206
|
/**
|
|
194
207
|
* 代理身份(与 platform/userId 解耦):当本条消息并非由人类直接发送,而是由 scheduler、
|
|
195
|
-
* idle-trigger、
|
|
208
|
+
* idle-trigger、workflow 等系统侧触发器投递时,记录"AI 应代谁执行"。
|
|
196
209
|
*
|
|
197
210
|
* 与 platform/userId 的区别:
|
|
198
211
|
* - platform/userId 表示消息的物理来源(路由+发言者标识),写归档、做用户档案/关系;
|
|
@@ -211,11 +224,49 @@ export interface IncomingMessage {
|
|
|
211
224
|
userId: string;
|
|
212
225
|
};
|
|
213
226
|
/**
|
|
214
|
-
*
|
|
215
|
-
*
|
|
216
|
-
*
|
|
227
|
+
* 宿主撰写的事件通知(不是任何人的发言)。带这个字段的消息:
|
|
228
|
+
* - 注入方必须同时设 `source`;不设 userId、nickname、sessionType、triggerType;
|
|
229
|
+
* - actor:不延续某次调用的通知用 {@link selfInitiatedActor}、不设 `callerUserId`;延续某次工具调用的(如后台任务
|
|
230
|
+
* 结束通知),platform 同那次调用,actor 取那次调用的有效授权身份 `actor ?? { platform, userId }`(都没有时仍为
|
|
231
|
+
* selfInitiatedActor),并设 `callerUserId`。延续身份的注入方要在 `test/architecture/host-notice-identity.test.ts` 登记;
|
|
232
|
+
* - agent 渲染为 system 通知,归档为 role 'notice'、kind {@link WellKnownKinds}.HostNotice;
|
|
233
|
+
* - 不进向量记忆、抽取与记忆扩窗。
|
|
234
|
+
*
|
|
235
|
+
* `kind` 是通知的子类(如 'paper-task'),`id` 是注入方生成的通知标识(日志与账本对位用,存档记下;含义随 kind,
|
|
236
|
+
* 如后台任务结束通知的是任务 id)。
|
|
237
|
+
* `untrusted` 是注入方已用 wrapUntrustedContent 包好的不可信段:只在当轮渲染时接在正文之后,
|
|
238
|
+
* 不归档、不进任何存储。宿主撰写的行一律放在 content 里。
|
|
217
239
|
*/
|
|
218
|
-
|
|
240
|
+
hostNotice?: {
|
|
241
|
+
kind: string;
|
|
242
|
+
id?: string;
|
|
243
|
+
untrusted?: string;
|
|
244
|
+
/**
|
|
245
|
+
* 仅转述状态:保留人设、提供本轮结果,不续跑历史工具链,不提供或执行工具。
|
|
246
|
+
* 误调用工具、空回复或遗漏正文链接与格式纠正共用重试预算(至少一次);用尽才由注入方兜底。
|
|
247
|
+
* 客户端只收到校验后的正文,不流出生成中或失败轮的原文。
|
|
248
|
+
* 模型错误只记日志并报告 agent:turn:after(error),
|
|
249
|
+
* 不向会话发通用错误提示;注入方负责根据回合结果派发固定正文或保留待发。
|
|
250
|
+
* 需要 Agent 后续行动的通知不设置此项。
|
|
251
|
+
*/
|
|
252
|
+
reportOnly?: boolean;
|
|
253
|
+
/**
|
|
254
|
+
* 通知延续某次工具调用时,那次调用的 ToolCallContext.userId。plugin-agent 只用它填本轮工具调用上下文的 userId
|
|
255
|
+
* (工具眼里是谁在调)与 inbound.callerUserId(执行守卫据此判这一轮是不是 owner 链的延续),并让这位发言者在同一会话的
|
|
256
|
+
* 消息打断这一轮;不当作发言者:归档、用户档案、关系与提示词钩子都不看它。须与 actor 取自同一次调用;不延续某次调用的通知不设。
|
|
257
|
+
*/
|
|
258
|
+
callerUserId?: string;
|
|
259
|
+
/**
|
|
260
|
+
* 回复这条通知时引用哪条消息:平台消息 id,取自起那次调用的入站消息(ToolCallContext.inbound.messageId)。
|
|
261
|
+
* plugin-agent 回复时把它带进出站消息的 {@link OutgoingMessage.replyTo};入站消息没有平台消息 id 的不设
|
|
262
|
+
*/
|
|
263
|
+
replyTo?: string;
|
|
264
|
+
/**
|
|
265
|
+
* 给界面的事实:扁平的键值,键由定义这个 kind 的契约约定(如 api-tools 的后台任务结束通知)。界面据此把通知画成状态,
|
|
266
|
+
* 写给模型的 content 不给人看;不进模型的上下文,存档按 {@link WellKnownMetadataKeys}.HostNoticeFacts 记下
|
|
267
|
+
*/
|
|
268
|
+
facts?: Record<string, string | number>;
|
|
269
|
+
};
|
|
219
270
|
}
|
|
220
271
|
/**
|
|
221
272
|
* AI 自发回合的授权身份:无主体。
|
|
@@ -226,20 +277,58 @@ export interface IncomingMessage {
|
|
|
226
277
|
* 执行。契约(triggerType 注释)与 prompt 侧特判都把 interval 当无主发言者,授权轴应一致。
|
|
227
278
|
*
|
|
228
279
|
* userId 取空串而非缺省:`actor?.userId ?? userId` 回退链遇空串不回退(?? 只认 null/undefined),
|
|
229
|
-
*
|
|
280
|
+
* 由此派生的定时任务/子任务保持匿名,不会漂回物理发言者;authority 的等级查表以空
|
|
230
281
|
* userId 为无键 → 默认等级,owner 判定永不命中空串。
|
|
231
282
|
*/
|
|
232
283
|
export declare function selfInitiatedActor(platform: string): {
|
|
233
284
|
platform: string;
|
|
234
285
|
userId: string;
|
|
235
286
|
};
|
|
287
|
+
/**
|
|
288
|
+
* 传输端确认已接受消息,不代表收件人已阅读;失败也 resolve,避免无人等待时产生拒绝。
|
|
289
|
+
* 失败分支的 unconfirmed 表示请求已经发出、只是没等到平台确认(如 OneBot 文件上传超时),消息可能已经送达:
|
|
290
|
+
* 发起方不得自动重发,也不得劝模型重发。没有这个标记的失败才是确定没送达。
|
|
291
|
+
*/
|
|
292
|
+
export type OutboundDeliveryResult = {
|
|
293
|
+
ok: true;
|
|
294
|
+
} | {
|
|
295
|
+
ok: false;
|
|
296
|
+
error: string;
|
|
297
|
+
unconfirmed?: true;
|
|
298
|
+
};
|
|
299
|
+
/**
|
|
300
|
+
* 发起方等待传输确认的上限。适配器自身的重试窗口可能更长(如 OneBot 单个附件最坏约 150 秒),
|
|
301
|
+
* 超过上限时发起方应报「未确认、请勿重发」而不是失败;上限只为不带回合中止信号的调用方
|
|
302
|
+
* (mcp-server、workflow)不至于一等两三分钟。
|
|
303
|
+
*/
|
|
304
|
+
export declare const DELIVERY_WAIT_MS = 90000;
|
|
305
|
+
/**
|
|
306
|
+
* 等 {@link OutgoingMessage.delivery} 结算;signal 中止(回合 latest-wins、手动 abort、插件停机)或到 timeoutMs
|
|
307
|
+
* (缺省 {@link DELIVERY_WAIT_MS})时不再等,返回 undefined。适配器的发送不随之取消,所以 undefined 只能当
|
|
308
|
+
* 「未确认」,不能当「未发送」。
|
|
309
|
+
*/
|
|
310
|
+
export declare function awaitDelivery<T>(delivery: Promise<T>, signal?: AbortSignal, timeoutMs?: number): Promise<T | undefined>;
|
|
311
|
+
/** 发往平台的回复:只带要发出去的正文与附件。思考与工具时间线在存档的 Message 上,客户端经会话协议拿 */
|
|
236
312
|
export interface OutgoingMessage {
|
|
237
313
|
content: string;
|
|
238
314
|
sessionId: string;
|
|
239
315
|
platform?: string;
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
316
|
+
/**
|
|
317
|
+
* 仅进程内:目标适配器在出站监听器中同步认领并填写,发起方 await emit 后可等待它。
|
|
318
|
+
* 不存在表示没有适配器提供确认,不能当作发送成功。旁观/镜像客户端不得认领其他平台的消息。
|
|
319
|
+
* 所有发送分支都须结算;不序列化、不持久化,也不把事件广播完成当成投递完成。
|
|
320
|
+
*/
|
|
321
|
+
delivery?: Promise<OutboundDeliveryResult>;
|
|
322
|
+
/** 宿主通知的最终转述或宿主正文兜底;用于关联通知派发,不给回合中的工具消息附带此标记。 */
|
|
323
|
+
hostNotice?: {
|
|
324
|
+
kind: string;
|
|
325
|
+
id?: string;
|
|
326
|
+
};
|
|
327
|
+
/**
|
|
328
|
+
* 引用回复:被引用消息的平台消息 id。支持引用的适配器把引用加在这条消息的第一条分条前,不支持的忽略。
|
|
329
|
+
* 现在只有回复宿主通知时带(IncomingMessage.hostNotice.replyTo)
|
|
330
|
+
*/
|
|
331
|
+
replyTo?: string;
|
|
243
332
|
/**
|
|
244
333
|
* 助手要附带发送的多模态附件(图片/音频/视频/文件)。
|
|
245
334
|
* 适配器(OneBot / WebUI 等)应优先发结构化 attachments,把远程 URL 主动下载为本地文件后用 file:// 形式发送。
|
|
@@ -248,31 +337,41 @@ export interface OutgoingMessage {
|
|
|
248
337
|
attachments?: MessageAttachment[];
|
|
249
338
|
/** 消息来源:agent = AI 回复(可分条延迟发送),其他来源默认立即整条发送 */
|
|
250
339
|
source?: 'agent' | 'system' | 'command';
|
|
251
|
-
/**
|
|
340
|
+
/** 由工具调用发出的消息:那次调用的 id(ToolCallContext.callId),会话的客户端据此把消息挂到对应的工具卡上 */
|
|
341
|
+
callId?: string;
|
|
342
|
+
/** agent 一轮的回复:这一轮的 id。适配器记投递失败时带上它,回看历史时据此标出这一轮的回复没发出 */
|
|
343
|
+
turnId?: string;
|
|
344
|
+
/**
|
|
345
|
+
* 本条回复的 LLM 元数据(agent 存档时同一份写进这条 assistant 消息元数据的 {@link WellKnownMetadataKeys}.ModelInfo),
|
|
346
|
+
* 只在进程内;会话服务取其中的模型与这一轮的 token 标在实时推送的回复上,与历史里还原的一致
|
|
347
|
+
*/
|
|
252
348
|
modelInfo?: {
|
|
253
349
|
provider?: string;
|
|
254
350
|
model?: string;
|
|
255
351
|
promptTokens?: number;
|
|
256
352
|
completionTokens?: number;
|
|
257
|
-
totalTokens?: number;
|
|
258
|
-
elapsedMs?: number;
|
|
259
353
|
};
|
|
260
354
|
}
|
|
261
355
|
/** 流式消息片段 */
|
|
262
356
|
export interface StreamChunkMessage {
|
|
263
357
|
sessionId: string;
|
|
358
|
+
/** 所在回合的 id(agent 在回合开始时生成,同一轮的工具调用、用量与回合结束带同一个) */
|
|
359
|
+
turnId: string;
|
|
264
360
|
platform?: string;
|
|
265
361
|
contentDelta?: string;
|
|
266
362
|
reasoningDelta?: string;
|
|
267
363
|
/**
|
|
268
|
-
*
|
|
269
|
-
*
|
|
270
|
-
*
|
|
364
|
+
* 工具调用的生成进度:模型生成工具调用的参数时,provider 每收到一段增量上报一次(api-llm 的 ToolCallProgress),
|
|
365
|
+
* agent 转发时带上这次调用的 callId,与之后执行它时 tool:execute 的 callId 相同,界面据此在参数生成期间就画出它的
|
|
366
|
+
* 工具卡。同一个调用的多次进度 callId 相同;只是提示,不影响最终的工具调用
|
|
271
367
|
*/
|
|
272
368
|
toolCallProgress?: {
|
|
369
|
+
/** 这一次模型回复里的第几个工具调用 */
|
|
273
370
|
index: number;
|
|
274
371
|
name: string;
|
|
372
|
+
/** 已生成的参数字数 */
|
|
275
373
|
charsAccumulated: number;
|
|
374
|
+
callId: string;
|
|
276
375
|
};
|
|
277
376
|
done?: boolean;
|
|
278
377
|
/** 当工具调用次数达到上限时为 true,前端可据此提示用户继续 */
|
|
@@ -302,6 +401,8 @@ declare module '@aalis/core' {
|
|
|
302
401
|
archivedMessage: Message;
|
|
303
402
|
}];
|
|
304
403
|
'outbound:message': [message: OutgoingMessage];
|
|
404
|
+
/** 传输端确认后的消息快照;attachments 只包含成功的附件,供归档等旁观者使用。 */
|
|
405
|
+
'outbound:delivered': [message: OutgoingMessage];
|
|
305
406
|
'outbound:stream': [chunk: StreamChunkMessage];
|
|
306
407
|
}
|
|
307
408
|
}
|
|
@@ -309,10 +410,15 @@ declare module '@aalis/core' {
|
|
|
309
410
|
* 已知的 Message.kind 语义常量。第三方插件可使用新值;本表仅作为框架内的契约。
|
|
310
411
|
*
|
|
311
412
|
* - `EventMarker`:纯 UI/控制标记(如对话压缩分隔条)。LLM 出口与抽取均应排除。
|
|
312
|
-
* - `CrossSessionDelegation
|
|
413
|
+
* - `CrossSessionDelegation`:代发任务——triggerType 为 proactive 的入站消息(如 workflow 的 agent 节点)归档时标的 kind。
|
|
313
414
|
* - `OutboundImage`:assistant 已发出的图片占位(content 为 attachment ref 标签)。
|
|
314
|
-
* - `OutboundAudio`:assistant
|
|
415
|
+
* - `OutboundAudio`:assistant 已发出的音频占位。
|
|
315
416
|
* - `OutboundVideo`:assistant 已发出的视频占位。
|
|
417
|
+
* - `OutboundFile`:assistant 已发出的文件占位(描述位是文件名)。
|
|
418
|
+
* - `HostNotice`:宿主撰写的事件通知——带 `hostNotice` 的入站消息归档时标的 kind(role 为 notice)。
|
|
419
|
+
* - `OutboundDeliveryFailed`:平台适配器记下的投递失败(role 为 system):她发出的消息平台没收下或结果未知,进下一轮的上下文,
|
|
420
|
+
* 让她知道刚才那条没送达。metadata 带 {@link WellKnownMetadataKeys} 的 `DeliveryError`(与投递结果同一句原因),以及那条
|
|
421
|
+
* 消息的 `TurnId`(一轮的回复)或 `CallId`(经工具发出的)。
|
|
316
422
|
*/
|
|
317
423
|
export declare const WellKnownKinds: {
|
|
318
424
|
readonly EventMarker: "event-marker";
|
|
@@ -320,18 +426,82 @@ export declare const WellKnownKinds: {
|
|
|
320
426
|
readonly OutboundImage: "outbound-image";
|
|
321
427
|
readonly OutboundAudio: "outbound-audio";
|
|
322
428
|
readonly OutboundVideo: "outbound-video";
|
|
429
|
+
readonly OutboundFile: "outbound-file";
|
|
430
|
+
readonly HostNotice: "host-notice";
|
|
431
|
+
readonly OutboundDeliveryFailed: "outbound-delivery-failed";
|
|
323
432
|
};
|
|
324
433
|
export type WellKnownKind = (typeof WellKnownKinds)[keyof typeof WellKnownKinds];
|
|
325
434
|
/**
|
|
326
|
-
*
|
|
435
|
+
* 发出的图片、音频、视频与文件在会话历史里的记法:一条 assistant 消息,kind 为 OutboundImage / OutboundAudio /
|
|
436
|
+
* OutboundVideo / OutboundFile,正文是附件引用占位符({@link formatAttachmentRef})。归档方一律用它,memory_recall 与
|
|
437
|
+
* 会话服务回看历史才能按同一格式命中、还原。文件的 desc 记文件名。时间戳与 metadata 由调用方补上。
|
|
438
|
+
*/
|
|
439
|
+
export declare function outboundMediaMessage(kind: MessageAttachment['kind'], ref: string, desc?: string): Message;
|
|
440
|
+
/** 存档里提问带的一个附件({@link WellKnownMetadataKeys}.Attachments 的一项) */
|
|
441
|
+
export interface ArchivedAttachment {
|
|
442
|
+
kind: MessageAttachment['kind'];
|
|
443
|
+
/** 入站附件带的文件名 */
|
|
444
|
+
name?: string;
|
|
445
|
+
/** 地址:存储地址(`<根>:/路径`)或网址;入站附件的 data 不是地址(内联数据、本机路径、预处理器的私有引用)、预处理器也没给出引用的没有 */
|
|
446
|
+
ref?: string;
|
|
447
|
+
}
|
|
448
|
+
/**
|
|
449
|
+
* 跨插件约定的 `Message.metadata` 键。metadata 是开放字典,本表登记由一方写入、另一方读取的键:写方与读方都引用这里的
|
|
450
|
+
* 常量,第三方的 agent、存档与适配器照着写,读历史与记忆的一方(会话服务回看历史、向量记忆、用户档案与关系等)才还原得出
|
|
451
|
+
* 说话人、群、文件、回复的模型与 token、工具卡的归组。
|
|
327
452
|
*
|
|
328
453
|
* - `VisibleContent`:assistant 消息的可见正文(字符串)。回复经结构化输出(persona 的 outputFormat)
|
|
329
454
|
* 时,`content` 存整串 JSON 信封(保持历史 few-shot 的格式),用户实际看到的是其中的回复字段。
|
|
330
455
|
* agent 落库时把解码后的正文写进这个键,只在它与 `content` 不同时写入;缺省即 `content` 本身就是
|
|
331
456
|
* 可见正文。检索、摘要等按语义消费历史的一方应优先读它,读不到再退回 `content`。
|
|
457
|
+
* - `SpokenContent`:提问里发言人自己写的话(字符串,可以是空串),即入站消息的 `content`。存档的 `content` 是给模型看的
|
|
458
|
+
* 归档文本({@link buildIncomingContent}:发送者前缀、引用与附件描述),存档只在两者不同时写这个键;缺省即 `content`。
|
|
459
|
+
* 会话服务据此给出提问条目的正文。
|
|
460
|
+
* - `Attachments`:提问带的附件清单({@link ArchivedAttachment} 的数组,按入站顺序),存档写;会话服务据此把文件还原成卡片、
|
|
461
|
+
* 图片等按地址显示。没有附件时不写。
|
|
462
|
+
* - `Platform`、`UserId`、`Nickname`:说话人的平台、用户 id 与昵称(字符串)。存档写入站消息的;agent 给她自己的回复写
|
|
463
|
+
* 这一轮的平台与她在那里的账号、昵称。会话服务据此标出说话人与是不是 owner,向量记忆、用户档案与关系等也读。
|
|
464
|
+
* - `GroupId`、`GroupName`、`SessionType`:说话所在的群号、群名与会话类型(字符串,即入站消息的 `groupId`、`groupName`、
|
|
465
|
+
* `sessionType`)。存档写入站消息的,agent 给她自己的回复写这一轮的;向量记忆与最近消息据此写出说话的位置,关系插件据此
|
|
466
|
+
* 判断是不是群聊。
|
|
467
|
+
* - `MessageId`:平台侧的消息 id(字符串,即入站消息的 `messageId`),存档写;存档按它反查被引用的原文,关系插件据此把
|
|
468
|
+
* 引用与回复对回消息。
|
|
469
|
+
* - `Source`:这条记录的来源(字符串):入站消息是它的 `source`(内部注入的来源,真人发言没有);插件自己写的记录(发出的
|
|
470
|
+
* 附件、投递失败)写插件的名字。会话服务据此标出提问是不是内部注入的。
|
|
471
|
+
* - `HostNoticeKind`、`HostNoticeId`、`HostNoticeFacts`:宿主通知的子类(`hostNotice.kind`)、id(`hostNotice.id`)与给界面的
|
|
472
|
+
* 事实(`hostNotice.facts`),存档写;会话服务据此给出通知条目的种类、id 与事实。
|
|
473
|
+
* - `TurnId`:所在回合的 id(字符串)。agent 写在这一轮落库的回复与工具结果上,平台适配器写在一轮回复的投递失败记录上;
|
|
474
|
+
* 会话服务据此把存档归回回合、标出哪一轮的回复没发出。
|
|
475
|
+
* - `CallId`:工具调用的 id(字符串,即 `ToolCallContext.callId`)。agent 写在工具结果上,平台适配器写在经工具发出的
|
|
476
|
+
* 消息的投递失败记录上;会话服务据此把历史里的工具卡对回实时推送。
|
|
477
|
+
* - `ModelInfo`:一轮回复的模型与这一轮的 token,与 {@link OutgoingMessage}.modelInfo 同形;agent 写在这一轮最后的回复上,
|
|
478
|
+
* 会话服务标在回复条目上。
|
|
479
|
+
* - `SentRef`、`SentName`:发出的附件(`outboundMediaMessage` 记的那条)原样的地址与文件名(字符串):占位符里的地址遇到
|
|
480
|
+
* 「]」会截断、描述位的「]」「|」换成了全角。归档发出附件的一方写,会话服务优先取它们还原附件。
|
|
481
|
+
* - `DeliveryError`:投递失败记录({@link WellKnownKinds}.OutboundDeliveryFailed)里与投递结果同一句的原因(字符串),平台
|
|
482
|
+
* 适配器写;会话服务据此写出回复为什么没发出。
|
|
332
483
|
*/
|
|
333
484
|
export declare const WellKnownMetadataKeys: {
|
|
334
485
|
readonly VisibleContent: "visibleContent";
|
|
486
|
+
readonly SpokenContent: "spokenContent";
|
|
487
|
+
readonly Attachments: "attachments";
|
|
488
|
+
readonly Platform: "platform";
|
|
489
|
+
readonly UserId: "userId";
|
|
490
|
+
readonly Nickname: "nickname";
|
|
491
|
+
readonly GroupId: "groupId";
|
|
492
|
+
readonly GroupName: "groupName";
|
|
493
|
+
readonly SessionType: "sessionType";
|
|
494
|
+
readonly MessageId: "messageId";
|
|
495
|
+
readonly Source: "source";
|
|
496
|
+
readonly HostNoticeKind: "hostNoticeKind";
|
|
497
|
+
readonly HostNoticeId: "hostNoticeId";
|
|
498
|
+
readonly HostNoticeFacts: "hostNoticeFacts";
|
|
499
|
+
readonly TurnId: "turnId";
|
|
500
|
+
readonly CallId: "callId";
|
|
501
|
+
readonly ModelInfo: "modelInfo";
|
|
502
|
+
readonly SentRef: "ref";
|
|
503
|
+
readonly SentName: "name";
|
|
504
|
+
readonly DeliveryError: "error";
|
|
335
505
|
};
|
|
336
506
|
/**
|
|
337
507
|
* 平台无关的 well-known `noticeType` 值。
|
|
@@ -342,9 +512,8 @@ export declare const WellKnownMetadataKeys: {
|
|
|
342
512
|
*/
|
|
343
513
|
export declare const WellKnownNoticeTypes: {
|
|
344
514
|
/**
|
|
345
|
-
*
|
|
346
|
-
* adapter
|
|
347
|
-
* 私聊场景全部转入(不校验目标)。
|
|
515
|
+
* "戳/逗弄"类互动动作(QQ 戳一戳等)。
|
|
516
|
+
* adapter 把群友互戳与戳机器人都转为 inbound,并用 noticeTargetIsSelf 区分是否点名机器人。
|
|
348
517
|
*/
|
|
349
518
|
readonly Poke: "poke";
|
|
350
519
|
};
|
|
@@ -354,6 +523,12 @@ export type WellKnownNoticeType = (typeof WellKnownNoticeTypes)[keyof typeof Wel
|
|
|
354
523
|
* 仅用于 UI / 内部状态。LLM 出口、信息抽取等流程默认应排除。
|
|
355
524
|
*/
|
|
356
525
|
export declare const CONTROL_KINDS: ReadonlyArray<string>;
|
|
526
|
+
/**
|
|
527
|
+
* 宿主或系统撰写、不是任何人发言的指令类 kind。
|
|
528
|
+
* - 归档消息的 kind 属于它:抽取(用户事实、指令、关系)与记忆扩窗一律跳过;
|
|
529
|
+
* - 请求期消息的 metadata.injector 属于它:是本轮的指令块(turn-context、turn-hint 落在它之前;DeepSeek 不把它改成 user)。
|
|
530
|
+
*/
|
|
531
|
+
export declare const DIRECTIVE_KINDS: ReadonlyArray<string>;
|
|
357
532
|
/**
|
|
358
533
|
* 把 Aalis 内部 role 转译为 LLM 协议接受的 WellKnownRole。
|
|
359
534
|
* 未知 role 一律回落为 'system',避免任何漏网造成 provider 报错。
|
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":"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"}
|
package/dist/index.js
CHANGED
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
// 依赖:@aalis/core(类型锚点)+ @aalis/util-text-normalize(prepareLLMMessages 的 UTF-16 规整)。
|
|
24
24
|
// ============================================================
|
|
25
25
|
import { toWellFormedText } from '@aalis/util-text-normalize';
|
|
26
|
+
import { AttachmentRefKind, formatAttachmentRef } from './attachment-ref.js';
|
|
26
27
|
/**
|
|
27
28
|
* AI 自发回合的授权身份:无主体。
|
|
28
29
|
*
|
|
@@ -32,12 +33,38 @@ import { toWellFormedText } from '@aalis/util-text-normalize';
|
|
|
32
33
|
* 执行。契约(triggerType 注释)与 prompt 侧特判都把 interval 当无主发言者,授权轴应一致。
|
|
33
34
|
*
|
|
34
35
|
* userId 取空串而非缺省:`actor?.userId ?? userId` 回退链遇空串不回退(?? 只认 null/undefined),
|
|
35
|
-
*
|
|
36
|
+
* 由此派生的定时任务/子任务保持匿名,不会漂回物理发言者;authority 的等级查表以空
|
|
36
37
|
* userId 为无键 → 默认等级,owner 判定永不命中空串。
|
|
37
38
|
*/
|
|
38
39
|
export function selfInitiatedActor(platform) {
|
|
39
40
|
return { platform, userId: '' };
|
|
40
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* 发起方等待传输确认的上限。适配器自身的重试窗口可能更长(如 OneBot 单个附件最坏约 150 秒),
|
|
44
|
+
* 超过上限时发起方应报「未确认、请勿重发」而不是失败;上限只为不带回合中止信号的调用方
|
|
45
|
+
* (mcp-server、workflow)不至于一等两三分钟。
|
|
46
|
+
*/
|
|
47
|
+
export const DELIVERY_WAIT_MS = 90_000;
|
|
48
|
+
/**
|
|
49
|
+
* 等 {@link OutgoingMessage.delivery} 结算;signal 中止(回合 latest-wins、手动 abort、插件停机)或到 timeoutMs
|
|
50
|
+
* (缺省 {@link DELIVERY_WAIT_MS})时不再等,返回 undefined。适配器的发送不随之取消,所以 undefined 只能当
|
|
51
|
+
* 「未确认」,不能当「未发送」。
|
|
52
|
+
*/
|
|
53
|
+
export function awaitDelivery(delivery, signal, timeoutMs = DELIVERY_WAIT_MS) {
|
|
54
|
+
if (signal?.aborted)
|
|
55
|
+
return Promise.resolve(undefined);
|
|
56
|
+
return new Promise((resolve, reject) => {
|
|
57
|
+
const settle = (finish) => {
|
|
58
|
+
clearTimeout(timer);
|
|
59
|
+
signal?.removeEventListener('abort', stop);
|
|
60
|
+
finish();
|
|
61
|
+
};
|
|
62
|
+
const stop = () => settle(() => resolve(undefined));
|
|
63
|
+
const timer = setTimeout(stop, timeoutMs);
|
|
64
|
+
signal?.addEventListener('abort', stop, { once: true });
|
|
65
|
+
delivery.then(value => settle(() => resolve(value)), error => settle(() => reject(error)));
|
|
66
|
+
});
|
|
67
|
+
}
|
|
41
68
|
// ============================================================
|
|
42
69
|
// LLM 出口工具:自定义 role → WellKnownRole 转译
|
|
43
70
|
// ============================================================
|
|
@@ -45,10 +72,15 @@ export function selfInitiatedActor(platform) {
|
|
|
45
72
|
* 已知的 Message.kind 语义常量。第三方插件可使用新值;本表仅作为框架内的契约。
|
|
46
73
|
*
|
|
47
74
|
* - `EventMarker`:纯 UI/控制标记(如对话压缩分隔条)。LLM 出口与抽取均应排除。
|
|
48
|
-
* - `CrossSessionDelegation
|
|
75
|
+
* - `CrossSessionDelegation`:代发任务——triggerType 为 proactive 的入站消息(如 workflow 的 agent 节点)归档时标的 kind。
|
|
49
76
|
* - `OutboundImage`:assistant 已发出的图片占位(content 为 attachment ref 标签)。
|
|
50
|
-
* - `OutboundAudio`:assistant
|
|
77
|
+
* - `OutboundAudio`:assistant 已发出的音频占位。
|
|
51
78
|
* - `OutboundVideo`:assistant 已发出的视频占位。
|
|
79
|
+
* - `OutboundFile`:assistant 已发出的文件占位(描述位是文件名)。
|
|
80
|
+
* - `HostNotice`:宿主撰写的事件通知——带 `hostNotice` 的入站消息归档时标的 kind(role 为 notice)。
|
|
81
|
+
* - `OutboundDeliveryFailed`:平台适配器记下的投递失败(role 为 system):她发出的消息平台没收下或结果未知,进下一轮的上下文,
|
|
82
|
+
* 让她知道刚才那条没送达。metadata 带 {@link WellKnownMetadataKeys} 的 `DeliveryError`(与投递结果同一句原因),以及那条
|
|
83
|
+
* 消息的 `TurnId`(一轮的回复)或 `CallId`(经工具发出的)。
|
|
52
84
|
*/
|
|
53
85
|
export const WellKnownKinds = {
|
|
54
86
|
EventMarker: 'event-marker',
|
|
@@ -56,17 +88,83 @@ export const WellKnownKinds = {
|
|
|
56
88
|
OutboundImage: 'outbound-image',
|
|
57
89
|
OutboundAudio: 'outbound-audio',
|
|
58
90
|
OutboundVideo: 'outbound-video',
|
|
91
|
+
OutboundFile: 'outbound-file',
|
|
92
|
+
HostNotice: 'host-notice',
|
|
93
|
+
OutboundDeliveryFailed: 'outbound-delivery-failed',
|
|
94
|
+
};
|
|
95
|
+
/** 出站附件归档时的消息 kind 与占位符 kind */
|
|
96
|
+
const OUTBOUND_MEDIA = {
|
|
97
|
+
image: { kind: WellKnownKinds.OutboundImage, ref: AttachmentRefKind.Image },
|
|
98
|
+
audio: { kind: WellKnownKinds.OutboundAudio, ref: AttachmentRefKind.Audio },
|
|
99
|
+
video: { kind: WellKnownKinds.OutboundVideo, ref: AttachmentRefKind.Video },
|
|
100
|
+
file: { kind: WellKnownKinds.OutboundFile, ref: AttachmentRefKind.File },
|
|
59
101
|
};
|
|
60
102
|
/**
|
|
61
|
-
*
|
|
103
|
+
* 发出的图片、音频、视频与文件在会话历史里的记法:一条 assistant 消息,kind 为 OutboundImage / OutboundAudio /
|
|
104
|
+
* OutboundVideo / OutboundFile,正文是附件引用占位符({@link formatAttachmentRef})。归档方一律用它,memory_recall 与
|
|
105
|
+
* 会话服务回看历史才能按同一格式命中、还原。文件的 desc 记文件名。时间戳与 metadata 由调用方补上。
|
|
106
|
+
*/
|
|
107
|
+
export function outboundMediaMessage(kind, ref, desc) {
|
|
108
|
+
const media = OUTBOUND_MEDIA[kind];
|
|
109
|
+
return { role: 'assistant', kind: media.kind, content: formatAttachmentRef({ kind: media.ref, desc, ref }) };
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* 跨插件约定的 `Message.metadata` 键。metadata 是开放字典,本表登记由一方写入、另一方读取的键:写方与读方都引用这里的
|
|
113
|
+
* 常量,第三方的 agent、存档与适配器照着写,读历史与记忆的一方(会话服务回看历史、向量记忆、用户档案与关系等)才还原得出
|
|
114
|
+
* 说话人、群、文件、回复的模型与 token、工具卡的归组。
|
|
62
115
|
*
|
|
63
116
|
* - `VisibleContent`:assistant 消息的可见正文(字符串)。回复经结构化输出(persona 的 outputFormat)
|
|
64
117
|
* 时,`content` 存整串 JSON 信封(保持历史 few-shot 的格式),用户实际看到的是其中的回复字段。
|
|
65
118
|
* agent 落库时把解码后的正文写进这个键,只在它与 `content` 不同时写入;缺省即 `content` 本身就是
|
|
66
119
|
* 可见正文。检索、摘要等按语义消费历史的一方应优先读它,读不到再退回 `content`。
|
|
120
|
+
* - `SpokenContent`:提问里发言人自己写的话(字符串,可以是空串),即入站消息的 `content`。存档的 `content` 是给模型看的
|
|
121
|
+
* 归档文本({@link buildIncomingContent}:发送者前缀、引用与附件描述),存档只在两者不同时写这个键;缺省即 `content`。
|
|
122
|
+
* 会话服务据此给出提问条目的正文。
|
|
123
|
+
* - `Attachments`:提问带的附件清单({@link ArchivedAttachment} 的数组,按入站顺序),存档写;会话服务据此把文件还原成卡片、
|
|
124
|
+
* 图片等按地址显示。没有附件时不写。
|
|
125
|
+
* - `Platform`、`UserId`、`Nickname`:说话人的平台、用户 id 与昵称(字符串)。存档写入站消息的;agent 给她自己的回复写
|
|
126
|
+
* 这一轮的平台与她在那里的账号、昵称。会话服务据此标出说话人与是不是 owner,向量记忆、用户档案与关系等也读。
|
|
127
|
+
* - `GroupId`、`GroupName`、`SessionType`:说话所在的群号、群名与会话类型(字符串,即入站消息的 `groupId`、`groupName`、
|
|
128
|
+
* `sessionType`)。存档写入站消息的,agent 给她自己的回复写这一轮的;向量记忆与最近消息据此写出说话的位置,关系插件据此
|
|
129
|
+
* 判断是不是群聊。
|
|
130
|
+
* - `MessageId`:平台侧的消息 id(字符串,即入站消息的 `messageId`),存档写;存档按它反查被引用的原文,关系插件据此把
|
|
131
|
+
* 引用与回复对回消息。
|
|
132
|
+
* - `Source`:这条记录的来源(字符串):入站消息是它的 `source`(内部注入的来源,真人发言没有);插件自己写的记录(发出的
|
|
133
|
+
* 附件、投递失败)写插件的名字。会话服务据此标出提问是不是内部注入的。
|
|
134
|
+
* - `HostNoticeKind`、`HostNoticeId`、`HostNoticeFacts`:宿主通知的子类(`hostNotice.kind`)、id(`hostNotice.id`)与给界面的
|
|
135
|
+
* 事实(`hostNotice.facts`),存档写;会话服务据此给出通知条目的种类、id 与事实。
|
|
136
|
+
* - `TurnId`:所在回合的 id(字符串)。agent 写在这一轮落库的回复与工具结果上,平台适配器写在一轮回复的投递失败记录上;
|
|
137
|
+
* 会话服务据此把存档归回回合、标出哪一轮的回复没发出。
|
|
138
|
+
* - `CallId`:工具调用的 id(字符串,即 `ToolCallContext.callId`)。agent 写在工具结果上,平台适配器写在经工具发出的
|
|
139
|
+
* 消息的投递失败记录上;会话服务据此把历史里的工具卡对回实时推送。
|
|
140
|
+
* - `ModelInfo`:一轮回复的模型与这一轮的 token,与 {@link OutgoingMessage}.modelInfo 同形;agent 写在这一轮最后的回复上,
|
|
141
|
+
* 会话服务标在回复条目上。
|
|
142
|
+
* - `SentRef`、`SentName`:发出的附件(`outboundMediaMessage` 记的那条)原样的地址与文件名(字符串):占位符里的地址遇到
|
|
143
|
+
* 「]」会截断、描述位的「]」「|」换成了全角。归档发出附件的一方写,会话服务优先取它们还原附件。
|
|
144
|
+
* - `DeliveryError`:投递失败记录({@link WellKnownKinds}.OutboundDeliveryFailed)里与投递结果同一句的原因(字符串),平台
|
|
145
|
+
* 适配器写;会话服务据此写出回复为什么没发出。
|
|
67
146
|
*/
|
|
68
147
|
export const WellKnownMetadataKeys = {
|
|
69
148
|
VisibleContent: 'visibleContent',
|
|
149
|
+
SpokenContent: 'spokenContent',
|
|
150
|
+
Attachments: 'attachments',
|
|
151
|
+
Platform: 'platform',
|
|
152
|
+
UserId: 'userId',
|
|
153
|
+
Nickname: 'nickname',
|
|
154
|
+
GroupId: 'groupId',
|
|
155
|
+
GroupName: 'groupName',
|
|
156
|
+
SessionType: 'sessionType',
|
|
157
|
+
MessageId: 'messageId',
|
|
158
|
+
Source: 'source',
|
|
159
|
+
HostNoticeKind: 'hostNoticeKind',
|
|
160
|
+
HostNoticeId: 'hostNoticeId',
|
|
161
|
+
HostNoticeFacts: 'hostNoticeFacts',
|
|
162
|
+
TurnId: 'turnId',
|
|
163
|
+
CallId: 'callId',
|
|
164
|
+
ModelInfo: 'modelInfo',
|
|
165
|
+
SentRef: 'ref',
|
|
166
|
+
SentName: 'name',
|
|
167
|
+
DeliveryError: 'error',
|
|
70
168
|
};
|
|
71
169
|
/**
|
|
72
170
|
* 平台无关的 well-known `noticeType` 值。
|
|
@@ -77,9 +175,8 @@ export const WellKnownMetadataKeys = {
|
|
|
77
175
|
*/
|
|
78
176
|
export const WellKnownNoticeTypes = {
|
|
79
177
|
/**
|
|
80
|
-
*
|
|
81
|
-
* adapter
|
|
82
|
-
* 私聊场景全部转入(不校验目标)。
|
|
178
|
+
* "戳/逗弄"类互动动作(QQ 戳一戳等)。
|
|
179
|
+
* adapter 把群友互戳与戳机器人都转为 inbound,并用 noticeTargetIsSelf 区分是否点名机器人。
|
|
83
180
|
*/
|
|
84
181
|
Poke: 'poke',
|
|
85
182
|
};
|
|
@@ -88,6 +185,15 @@ export const WellKnownNoticeTypes = {
|
|
|
88
185
|
* 仅用于 UI / 内部状态。LLM 出口、信息抽取等流程默认应排除。
|
|
89
186
|
*/
|
|
90
187
|
export const CONTROL_KINDS = [WellKnownKinds.EventMarker];
|
|
188
|
+
/**
|
|
189
|
+
* 宿主或系统撰写、不是任何人发言的指令类 kind。
|
|
190
|
+
* - 归档消息的 kind 属于它:抽取(用户事实、指令、关系)与记忆扩窗一律跳过;
|
|
191
|
+
* - 请求期消息的 metadata.injector 属于它:是本轮的指令块(turn-context、turn-hint 落在它之前;DeepSeek 不把它改成 user)。
|
|
192
|
+
*/
|
|
193
|
+
export const DIRECTIVE_KINDS = [
|
|
194
|
+
WellKnownKinds.CrossSessionDelegation,
|
|
195
|
+
WellKnownKinds.HostNotice,
|
|
196
|
+
];
|
|
91
197
|
/** 自定义 role 转译为 LLM 接受的 WellKnownRole 的默认映射。 */
|
|
92
198
|
const CUSTOM_ROLE_MAP = {
|
|
93
199
|
notice: 'system',
|
|
@@ -102,6 +208,7 @@ const CUSTOM_ROLE_PREFIX = {
|
|
|
102
208
|
*/
|
|
103
209
|
const KIND_PREFIX = {
|
|
104
210
|
[WellKnownKinds.CrossSessionDelegation]: '[跨会话委派]',
|
|
211
|
+
[WellKnownKinds.HostNotice]: '[宿主通知]',
|
|
105
212
|
};
|
|
106
213
|
/**
|
|
107
214
|
* 把 Aalis 内部 role 转译为 LLM 协议接受的 WellKnownRole。
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,gCAAgC;AAChC,EAAE;AACF,6BAA6B;AAC7B,EAAE;AACF,sCAAsC;AACtC,qEAAqE;AACrE,qEAAqE;AACrE,wDAAwD;AACxD,EAAE;AACF,0BAA0B;AAC1B,4DAA4D;AAC5D,gCAAgC;AAChC,mDAAmD;AACnD,EAAE;AACF,kDAAkD;AAClD,wBAAwB;AACxB,iCAAiC;AACjC,mCAAmC;AACnC,yBAAyB;AACzB,wBAAwB;AACxB,EAAE;AACF,oFAAoF;AACpF,+DAA+D;AAK/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/schema-message",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,10 +24,10 @@
|
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/node": "^22.0.0",
|
|
26
26
|
"typescript": "^5.7.0",
|
|
27
|
-
"@aalis/core": "0.
|
|
27
|
+
"@aalis/core": "0.20.0"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
|
-
"@aalis/core": ">=0.
|
|
30
|
+
"@aalis/core": ">=0.20.0 <1.0.0"
|
|
31
31
|
},
|
|
32
32
|
"keywords": [
|
|
33
33
|
"aalis",
|