@aalis/plugin-agent 0.14.0 → 0.15.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/helpers.d.ts CHANGED
@@ -6,6 +6,8 @@
6
6
  * - 让 index.ts 主类聚焦在编排/状态管理,而不是 token 估算细节
7
7
  * - 让纯函数可被 vitest 单独覆盖(无需搭出一次激活)
8
8
  */
9
+ import type { PersonaSessionOptions } from '@aalis/api-persona';
10
+ import type { SessionConfig } from '@aalis/api-session-manager';
9
11
  import type { IncomingMessage, Message } from '@aalis/schema-message';
10
12
  /**
11
13
  * 将时间戳格式化为可读的时间标签:同年 `M/D HH:mm`,跨年 `YYYY/M/D HH:mm`。
@@ -61,10 +63,20 @@ export declare function isSameMessage(a: Message, b: Message): boolean;
61
63
  *
62
64
  * @param available 当前满足所需能力的 entry contextId 列表(`<包名>/<模型名>`)
63
65
  * @param wanted 配置解析出的 ref;未配置则为空
64
- * @param erroredProviders 激活失败(error 态)且声明提供 llm 的插件描述,用于在「一个模型都没有」时点名病因
66
+ * @param erroredProviders 激活失败(error 态)且声明提供 llm 的插件实例名,用于在「一个模型都没有」时点名病因
65
67
  */
66
68
  export declare function describeLLMFailure(available: readonly string[], wanted?: {
67
69
  provider?: string;
68
70
  model?: string;
69
71
  }, erroredProviders?: readonly string[]): string;
72
+ /**
73
+ * 会话解析结果 → persona 的会话选项。真实回合与 token:request 快照共用这一份构造,
74
+ * 快照里 persona 那一桶才会按会话实际人设与额外提示估算。无 session-manager 时给 undefined(全局默认)。
75
+ */
76
+ export declare function toPersonaOptions(resolved: Omit<SessionConfig, 'sessionDefaults'> | undefined): PersonaSessionOptions | undefined;
77
+ /**
78
+ * 调试日志里的工具参数。参数经 `agent:tool:before` 钩子后可能含 JSON 序列化不了的值(BigInt、循环引用),
79
+ * 序列化失败时回落为说明文字:日志不能让工具调用失败。
80
+ */
81
+ export declare function formatToolArgsForLog(args: unknown): string;
70
82
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACtE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAW/D;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QASlB,CAAC;AAEb;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,GAAG,IAAI,CAoB5E;AAWD,iCAAiC;AACjC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBvD;AAMD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAQtD;AAED,uBAAuB;AACvB,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAI1D;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAO7D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9C,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,GACnC,MAAM,CAsBR"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACtE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAW/D;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QASlB,CAAC;AAEb;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,GAAG,IAAI,CAoB5E;AAWD,iCAAiC;AACjC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBvD;AAMD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAQtD;AAED,uBAAuB;AACvB,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAI1D;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAO7D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9C,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,GACnC,MAAM,CAsBR;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,SAAS,GAC3D,qBAAqB,GAAG,SAAS,CAQnC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAM1D"}
package/dist/helpers.js CHANGED
@@ -142,14 +142,14 @@ export function isSameMessage(a, b) {
142
142
  *
143
143
  * @param available 当前满足所需能力的 entry contextId 列表(`<包名>/<模型名>`)
144
144
  * @param wanted 配置解析出的 ref;未配置则为空
145
- * @param erroredProviders 激活失败(error 态)且声明提供 llm 的插件描述,用于在「一个模型都没有」时点名病因
145
+ * @param erroredProviders 激活失败(error 态)且声明提供 llm 的插件实例名,用于在「一个模型都没有」时点名病因
146
146
  */
147
147
  export function describeLLMFailure(available, wanted, erroredProviders) {
148
148
  if (available.length === 0) {
149
- // 最常见的成因是 LLM 插件装了也启用了、只是缺 apiKey 而激活失败。这条文案会**发进聊天**,
150
- // 而 error 只出现在终端日志与 /doctor 里——跨了界面。能点名就点名,省掉用户一轮空转。
149
+ // 最常见的成因是 LLM 插件装了也启用了、只是缺 apiKey 而激活失败。能点名就点名,省掉用户一轮空转;
150
+ // 这条文案会**发进聊天**,只点名实例,原因指向 /doctor。/doctor 是受限指令,收到提示的人不一定能用,故注明要权限。
151
151
  if (erroredProviders && erroredProviders.length > 0) {
152
- return `未找到任何具备 chat 能力的 LLM —— 以下 LLM 插件激活失败:${erroredProviders.join(';')}。改好配置后重启即可,详情见 /doctor。`;
152
+ return `未找到任何具备 chat 能力的 LLM —— 以下 LLM 插件激活失败:${erroredProviders.join('、')}。可用 /doctor 查看原因(需要相应权限)。`;
153
153
  }
154
154
  return '未找到任何具备 chat 能力的 LLM —— 请确认已安装并启用至少一个 LLM 提供者插件(如 @aalis/plugin-llm-deepseek)。';
155
155
  }
@@ -167,4 +167,30 @@ export function describeLLMFailure(available, wanted, erroredProviders) {
167
167
  // 注销),**不是**「没有可用 entry」。文案要说这个,别谎称都不可用。
168
168
  return `LLM 解析失败:能力过滤后有 ${available.length} 个可用 entry,但解析时一个都没取到(服务可能正在装卸中,稍后重试)。`;
169
169
  }
170
+ /**
171
+ * 会话解析结果 → persona 的会话选项。真实回合与 token:request 快照共用这一份构造,
172
+ * 快照里 persona 那一桶才会按会话实际人设与额外提示估算。无 session-manager 时给 undefined(全局默认)。
173
+ */
174
+ export function toPersonaOptions(resolved) {
175
+ if (!resolved)
176
+ return undefined;
177
+ return {
178
+ persona: resolved.persona,
179
+ disableOutputFormat: resolved.disableOutputFormat,
180
+ clientSideJsonRendering: resolved.clientSideJsonRendering,
181
+ systemPromptExtra: resolved.systemPromptExtra,
182
+ };
183
+ }
184
+ /**
185
+ * 调试日志里的工具参数。参数经 `agent:tool:before` 钩子后可能含 JSON 序列化不了的值(BigInt、循环引用),
186
+ * 序列化失败时回落为说明文字:日志不能让工具调用失败。
187
+ */
188
+ export function formatToolArgsForLog(args) {
189
+ try {
190
+ return JSON.stringify(args);
191
+ }
192
+ catch (err) {
193
+ return `(无法序列化:${err instanceof Error ? err.message : '未知原因'})`;
194
+ }
195
+ }
170
196
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,23 +4,23 @@ declare const _default: import("@aalis/core").PluginDefinition<{
4
4
  logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Logger, Logger>;
5
5
  config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
6
6
  events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
7
- hooks: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Hooks, import("@aalis/core").Hooks>;
8
- contributions: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Contributions, import("@aalis/core").Contributions>;
7
+ hooks: import("@aalis/core").ServiceDescriptor<import("@aalis/api-hooks").HookRegistry, import("@aalis/api-hooks").Hooks>;
8
+ contributions: import("@aalis/core").ServiceDescriptor<import("@aalis/api-contributions").ContributionRegistry, import("@aalis/api-contributions").Contributions>;
9
9
  lifecycle: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").LifecycleCap, import("@aalis/core").LifecycleCap>;
10
10
  provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
11
11
  services: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Services, import("@aalis/core").Services>;
12
- commands: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-commands").CommandService, import("@aalis/api-commands").BoundCommands>;
13
- tools: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-tools").ToolService, import("@aalis/api-tools").BoundTools>;
14
- llm: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<LLMModel, import("@aalis/core").ServiceRef<LLMModel>>;
15
- memory: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-memory").MemoryService, import("@aalis/core").ServiceRef<import("@aalis/api-memory").MemoryService>>;
16
- persona: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-persona").PersonaService, import("@aalis/core").ServiceRef<import("@aalis/api-persona").PersonaService>>;
17
- messageArchive: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-message-archive").MessageArchiveService, import("@aalis/core").ServiceRef<import("@aalis/api-message-archive").MessageArchiveService>>;
18
- sessionManager: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-session-manager").SessionManagerService, import("@aalis/core").ServiceRef<import("@aalis/api-session-manager").SessionManagerService>>;
19
- platform: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-platform").PlatformAdapter, import("@aalis/core").ServiceRef<import("@aalis/api-platform").PlatformAdapter>>;
20
- media: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-media").MediaService, import("@aalis/core").ServiceRef<import("@aalis/api-media").MediaService>>;
21
- storage: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-storage").StorageService, import("@aalis/core").ServiceRef<import("@aalis/api-storage").StorageService>>;
22
- gateway: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-gateway").GatewayService, import("@aalis/core").ServiceRef<import("@aalis/api-gateway").GatewayService>>;
23
- plugins: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/core").PluginManagerService, import("@aalis/core").ServiceRef<import("@aalis/core").PluginManagerService>>;
12
+ commands: import("@aalis/core").OptionalUse<import("@aalis/api-commands").CommandService, import("@aalis/api-commands").BoundCommands>;
13
+ tools: import("@aalis/core").OptionalUse<import("@aalis/api-tools").ToolService, import("@aalis/api-tools").BoundTools>;
14
+ llm: import("@aalis/core").OptionalUse<LLMModel, import("@aalis/core").ServiceRef<LLMModel>>;
15
+ memory: import("@aalis/core").OptionalUse<import("@aalis/api-memory").MemoryService, import("@aalis/core").ServiceRef<import("@aalis/api-memory").MemoryService>>;
16
+ persona: import("@aalis/core").OptionalUse<import("@aalis/api-persona").PersonaService, import("@aalis/core").ServiceRef<import("@aalis/api-persona").PersonaService>>;
17
+ messageArchive: import("@aalis/core").OptionalUse<import("@aalis/api-message-archive").MessageArchiveService, import("@aalis/core").ServiceRef<import("@aalis/api-message-archive").MessageArchiveService>>;
18
+ sessionManager: import("@aalis/core").OptionalUse<import("@aalis/api-session-manager").SessionManagerService, import("@aalis/core").ServiceRef<import("@aalis/api-session-manager").SessionManagerService>>;
19
+ platform: import("@aalis/core").OptionalUse<import("@aalis/api-platform").PlatformAdapter, import("@aalis/core").ServiceRef<import("@aalis/api-platform").PlatformAdapter>>;
20
+ media: import("@aalis/core").OptionalUse<import("@aalis/api-media").MediaService, import("@aalis/core").ServiceRef<import("@aalis/api-media").MediaService>>;
21
+ storage: import("@aalis/core").OptionalUse<import("@aalis/api-storage").StorageService, import("@aalis/core").ServiceRef<import("@aalis/api-storage").StorageService>>;
22
+ gateway: import("@aalis/core").OptionalUse<import("@aalis/api-gateway").GatewayService, import("@aalis/core").ServiceRef<import("@aalis/api-gateway").GatewayService>>;
23
+ plugins: import("@aalis/core").OptionalUse<import("@aalis/core").PluginManagerService, import("@aalis/core").ServiceRef<import("@aalis/core").PluginManagerService>>;
24
24
  }>;
25
25
  export default _default;
26
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAkC,QAAQ,EAAiB,MAAM,gBAAgB,CAAC;AAe9F,OAAO,EAOL,KAAK,MAAM,EAOZ,MAAM,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;AA2tErB,wBAQG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAkC,QAAQ,EAAiB,MAAM,gBAAgB,CAAC;AAe9F,OAAO,EAKL,KAAK,MAAM,EAOZ,MAAM,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;AA+wErB,wBAQG"}
package/dist/index.js CHANGED
@@ -1,7 +1,9 @@
1
1
  import { Buffer } from 'node:buffer';
2
2
  import { agent as agentService, } from '@aalis/api-agent';
3
3
  import { commands as commandsService } from '@aalis/api-commands';
4
+ import { contributions } from '@aalis/api-contributions';
4
5
  import { gateway as gatewayService } from '@aalis/api-gateway';
6
+ import { hooks } from '@aalis/api-hooks';
5
7
  import { listLLMModels, llm as llmService, resolveLLMModel } from '@aalis/api-llm';
6
8
  import { media as mediaService } from '@aalis/api-media';
7
9
  import { memory as memoryService } from '@aalis/api-memory';
@@ -9,12 +11,12 @@ import { messageArchive as messageArchiveService } from '@aalis/api-message-arch
9
11
  import { persona as personaService } from '@aalis/api-persona';
10
12
  import { getPlatformSelfIdentity, platform as platformService } from '@aalis/api-platform';
11
13
  import { sessionManager as sessionManagerService } from '@aalis/api-session-manager';
12
- import { storage as storageService } from '@aalis/api-storage';
13
- import { asToolExecutionResult, tools as toolsService, } from '@aalis/api-tools';
14
- import { config as configCap, contributions, definePlugin, events, hooks, lifecycle, logger as loggerCap, optional, pluginsService, provide, services, } from '@aalis/core';
15
- import { CONTROL_KINDS, getMessageName, getSenderLabel, WellKnownKinds } from '@aalis/schema-message';
14
+ import { createStorageGateway, storage as storageService } from '@aalis/api-storage';
15
+ import { tools as toolsService, } from '@aalis/api-tools';
16
+ import { config as configCap, definePlugin, events, lifecycle, logger as loggerCap, optional, pluginsService, provide, services, } from '@aalis/core';
17
+ import { CONTROL_KINDS, getMessageName, getSenderLabel, WellKnownKinds, WellKnownMetadataKeys, } from '@aalis/schema-message';
16
18
  import { normalizeAssistantContent, stripLeakedSpecialTokens, truncateChars } from '@aalis/util-text-normalize';
17
- import { buildFocusGuidance, describeLLMFailure, estimateMsgTokens, estimateTextTokens, estimateTokens, formatTimeLabel, INPUT_CONVENTIONS, isSameMessage, } from './helpers.js';
19
+ import { buildFocusGuidance, describeLLMFailure, estimateMsgTokens, estimateTextTokens, estimateTokens, formatTimeLabel, formatToolArgsForLog, INPUT_CONVENTIONS, isSameMessage, toPersonaOptions, } from './helpers.js';
18
20
  import { assemblePromptContributions, VOLATILE_INJECTOR } from './prompt-assembly.js';
19
21
  // ===== 能力声明 =====
20
22
  //
@@ -97,7 +99,7 @@ class DefaultAgent {
97
99
  * 与 token:usage 事件共用同一份 breakdown 数据,零额外计算。
98
100
  */
99
101
  tokenLogState = new Map();
100
- /** 已注册的预处理器(name → { priority, dispose }) */
102
+ /** 已注册的预处理器(name → { dispose }) */
101
103
  preprocessors = new Map();
102
104
  constructor(caps) {
103
105
  this.caps = caps;
@@ -142,18 +144,17 @@ class DefaultAgent {
142
144
  const wanted = sm && sessionId ? sm.resolveConfig(sessionId, platform).llm : undefined;
143
145
  return describeLLMFailure(available, wanted, this.erroredLLMPlugins());
144
146
  }
145
- /** 激活失败且声明提供 llm 的插件——「一个模型都没有」时,病因通常就在它们身上(多为缺 apiKey)。 */
147
+ /** 激活失败且声明提供 llm 的插件实例名——「一个模型都没有」时,病因通常就在它们身上(多为缺 apiKey)。 */
146
148
  erroredLLMPlugins() {
147
149
  const pm = this.caps.plugins.current;
148
150
  if (!pm)
149
151
  return [];
150
- // 这串会拼进**发到聊天**的文案里,原因文本来自插件自抛的 error,长度不可控:
151
- // 与同文件 describeLLMFailure 对模型列表设 LIST_MAX 同理,这里也要封顶。
152
+ // 只取实例名:这串会拼进**发到聊天**(含群聊)的文案里,error 原文可能带内网地址与端口等部署细节,
153
+ // 原因留在日志、WebUI 与 /doctor
152
154
  return pm
153
155
  .getStatus()
154
156
  .filter(p => p.state === 'error' && p.provides?.includes('llm'))
155
- .slice(0, 3)
156
- .map(p => (p.error ? `${p.instanceId}(${truncateChars(p.error, 120)})` : p.instanceId));
157
+ .map(p => p.instanceId);
157
158
  }
158
159
  /** 生成 lane key:同 session + 同 source 共用一个 lane */ laneKey(sessionId, source) {
159
160
  return `${sessionId}::${source ?? 'user'}`;
@@ -198,6 +199,10 @@ class DefaultAgent {
198
199
  return;
199
200
  await Promise.allSettled([...this.inflightTurns]);
200
201
  }
202
+ /** 会话删除时丢弃其节流日志状态(订阅见 run() 的 session:deleted)。 */
203
+ dropTokenLogState(sessionId) {
204
+ this.tokenLogState.delete(sessionId);
205
+ }
201
206
  /**
202
207
  * 注册输入预处理器(如图片识别、文件读取、用户画像等)。
203
208
  * 多个预处理器按注册顺序串行执行(Koa-style 洋葱模型)。
@@ -257,7 +262,7 @@ class DefaultAgent {
257
262
  * 同时构建本轮调用的 segments 时间线(按 chunk 到达顺序记录 text / reasoning_text,
258
263
  * 相邻同类合并)——用于上层将多轮调用 + 工具执行交错拼接成统一时间线。
259
264
  */
260
- async consumeStream(llm, request, sessionId, platform, signal) {
265
+ async consumeStream(llm, request, sessionId, platform) {
261
266
  let content = '';
262
267
  let reasoningContent = '';
263
268
  let toolCalls;
@@ -274,7 +279,7 @@ class DefaultAgent {
274
279
  };
275
280
  for await (const chunk of llm.chatStream(request)) {
276
281
  // 检查中止信号
277
- if (signal?.aborted) {
282
+ if (request.signal?.aborted) {
278
283
  throw new DOMException('Generation aborted', 'AbortError');
279
284
  }
280
285
  if (chunk.contentDelta) {
@@ -488,12 +493,9 @@ class DefaultAgent {
488
493
  // 默认 provider 全局窗口与会话实际 model 不一致的偏差(Bug F 结构性修复)。
489
494
  const maxTokens = getModelMaxOutput(llm);
490
495
  const contextLength = llm.contextLength;
491
- // 预留 token 预算 = 上下文长度 × trimThresholdRatio - 最大输出 token - 安全余量
492
- // trimThresholdRatio < 1 可提前触发裁剪,默认 1.0 = 用满扣除输出预留后的可用窗口
493
- const tokenBudget = Math.max(1024, Math.floor(contextLength * this.trimThresholdRatio) - maxTokens - 512);
494
- // Bug B 防回溯:本回合中通过工具循环写入到 memory 的 (assistant+toolCalls + tool 结果) 消息时间戳。
495
- // 用户中途点「停止生成」时,这些条目要从历史中删除——否则下一条消息发出后,agent 会再次
496
- // 看到上一轮被中断的工具调用 + 半截 assistant 文本,导致「假回退」。
496
+ const tokenBudget = this.computeTokenBudget(contextLength, maxTokens);
497
+ // 本回合经工具循环写入 memory 的 (assistant+toolCalls + tool 结果) 消息时间戳。
498
+ // 只用于中止日志里的条数:中止时这些已完成的工具调用记录保留不回滚(见下方 catch 分支)。
497
499
  const turnPersistedTimestamps = [];
498
500
  try {
499
501
  // 统一解析 session 配置(一次解析,多处复用)
@@ -507,13 +509,7 @@ class DefaultAgent {
507
509
  ? sessionMaxIter
508
510
  : this.maxToolIterations;
509
511
  // 构建 persona 会话选项(从 resolved config 中提取,传给 persona 服务)
510
- const personaOpts = resolved
511
- ? {
512
- persona: resolved.persona,
513
- disableOutputFormat: resolved.disableOutputFormat,
514
- clientSideJsonRendering: resolved.clientSideJsonRendering,
515
- }
516
- : undefined;
512
+ const personaOpts = toPersonaOptions(resolved);
517
513
  // 会话级 thinking 覆盖(/session.set -t on|off):未设置则不带 think 字段,
518
514
  // 由各 provider 按自己的全局配置决定(ollama thinking / deepseek thinkingMode)。
519
515
  const thinkOverride = resolved?.think;
@@ -570,7 +566,7 @@ class DefaultAgent {
570
566
  // 本轮初始时间与累加用量,用于最终 assistant 消息的 modelInfo 元数据。
571
567
  const turnStartTs = t0;
572
568
  // 注:缓存命中量(usage.cachedPromptTokens)不进这里——本对象只喂
573
- // assistant 消息的 modelInfo,而其字段是逐个挑的(见下方 :896 附近),
569
+ // assistant 消息的 modelInfo,而其字段是逐个挑的(见下方 turnModelInfo),
574
570
  // 加进来也不会流到下游。命中率的观测出口是 LLM 响应日志那一行。
575
571
  const turnUsageAcc = { promptTokens: 0, completionTokens: 0, totalTokens: 0 };
576
572
  const accUsage = (u) => {
@@ -592,7 +588,7 @@ class DefaultAgent {
592
588
  maxTokens,
593
589
  signal,
594
590
  ...(thinkOverride !== undefined ? { think: thinkOverride } : {}),
595
- }, incoming.sessionId, incoming.platform, signal);
591
+ }, incoming.sessionId, incoming.platform);
596
592
  accUsage(firstResult.usage);
597
593
  // 维护本轮(一次完整对话回合)的统一时间线 segments:
598
594
  // 多次 LLM 调用 + 工具执行的输出按到达顺序拼接,保留模型原本的"思考/回答/工具/思考/回答"交错。
@@ -661,52 +657,89 @@ class DefaultAgent {
661
657
  }
662
658
  // Hook: agent:tool:before — 插件可以拦截或修改工具调用
663
659
  const toolBeforeData = { name: toolCall.function.name, args, toolCallContext: toolCtx };
664
- await this.caps.hooks.run('agent:tool:before', toolBeforeData);
665
- // 通知平台:工具开始执行
666
- await this.caps.events.emit('tool:execute', {
667
- sessionId: incoming.sessionId,
668
- platform: incoming.platform,
669
- toolName: toolBeforeData.name,
670
- args: toolBeforeData.args,
671
- phase: 'start',
672
- });
673
- this.logger.debug(`工具执行: ${toolBeforeData.name} 参数=${JSON.stringify(toolBeforeData.args)}`);
674
- const toolT0 = Date.now();
675
- const executed = asToolExecutionResult(await (this.caps.tools.current?.execute(toolBeforeData.name, toolBeforeData.args, toolCtx) ??
676
- Promise.resolve({ content: JSON.stringify({ error: 'tools 服务不可用' }) })));
677
- let result = executed.content;
678
- // 工具交给主模型看的图:只随本回合的 tool 消息走(出口由 prepareLLMMessages 编码),
679
- // 不进钩子/事件/时间线(那些面都是文本),也不落库(见 saveToolCallGroup)。
680
- const resultImages = executed.images;
681
- // Hook: agent:tool:after — 插件可以处理工具执行结果
682
- const toolAfterData = { name: toolBeforeData.name, result, toolCallContext: toolCtx };
683
- await this.caps.hooks.run('agent:tool:after', toolAfterData);
684
- result = toolAfterData.result;
685
- // 工具结果截断:按上下文窗口比例限制单条工具结果长度
686
- if (result.length > toolResultMaxChars) {
687
- this.logger.info(`工具结果过长 (${result.length} 字符),截断至 ${toolResultMaxChars} 字符: ${toolBeforeData.name}`);
688
- result = truncateChars(result, toolResultMaxChars, `\n... [工具输出已截断,原始长度 ${result.length} 字符]`);
660
+ // 单个工具的链路异常(钩子 / 守卫 / 结果处理抛错)只算该工具失败,转成它自己的错误结果:
661
+ // 整批照常落定、整组落库,兄弟工具已发生的副作用不会因连坐而从历史里消失。
662
+ // executeDone 区分失败发生在执行前还是执行后——后者须明说「已执行」,免得模型重做有副作用的操作。
663
+ let executeDone = false;
664
+ let toolT0;
665
+ try {
666
+ await this.caps.hooks.run('agent:tool:before', toolBeforeData);
667
+ // 通知平台:工具开始执行
668
+ await this.caps.events.emit('tool:execute', {
669
+ sessionId: incoming.sessionId,
670
+ platform: incoming.platform,
671
+ toolName: toolBeforeData.name,
672
+ args: toolBeforeData.args,
673
+ phase: 'start',
674
+ });
675
+ // 紧随 start 赋值:catch 据此判断 start 已发出、要补发配对的 end
676
+ toolT0 = Date.now();
677
+ this.logger.debug(`工具执行: ${toolBeforeData.name} 参数=${formatToolArgsForLog(toolBeforeData.args)}`);
678
+ const executed = await (this.caps.tools.current?.execute(toolBeforeData.name, toolBeforeData.args, toolCtx) ?? Promise.resolve({ content: JSON.stringify({ error: 'tools 服务不可用' }) }));
679
+ executeDone = true;
680
+ let result = executed.content;
681
+ // 工具交给主模型看的图:只随本回合的 tool 消息走(出口由 prepareLLMMessages 编码),
682
+ // 不进钩子/事件/时间线(那些面都是文本),也不落库(见 saveToolCallGroup)。
683
+ const resultImages = executed.images;
684
+ // Hook: agent:tool:after — 插件可以处理工具执行结果
685
+ const toolAfterData = { name: toolBeforeData.name, result, toolCallContext: toolCtx };
686
+ await this.caps.hooks.run('agent:tool:after', toolAfterData);
687
+ result = toolAfterData.result;
688
+ // 工具结果截断:按上下文窗口比例限制单条工具结果长度
689
+ if (result.length > toolResultMaxChars) {
690
+ this.logger.info(`工具结果过长 (${result.length} 字符),截断至 ${toolResultMaxChars} 字符: ${toolBeforeData.name}`);
691
+ result = truncateChars(result, toolResultMaxChars, `\n... [工具输出已截断,原始长度 ${result.length} 字符]`);
692
+ }
693
+ const toolEndTime = Date.now();
694
+ this.logger.debug(`工具完成: ${toolBeforeData.name} (${toolEndTime - toolT0}ms) 结果=${result}`);
695
+ // 通知平台:工具执行完成
696
+ await this.caps.events.emit('tool:execute', {
697
+ sessionId: incoming.sessionId,
698
+ platform: incoming.platform,
699
+ toolName: toolBeforeData.name,
700
+ args: toolBeforeData.args,
701
+ phase: 'end',
702
+ result,
703
+ });
704
+ return {
705
+ toolCall,
706
+ result,
707
+ resultImages,
708
+ toolName: toolBeforeData.name,
709
+ toolArgs: toolBeforeData.args,
710
+ startTime: toolT0,
711
+ endTime: toolEndTime,
712
+ };
713
+ }
714
+ catch (err) {
715
+ // 执行后的失败不回退到原始结果(fail-closed):after 钩子可能是脱敏钩子,失败时原始输出不能漏给模型
716
+ const reason = err instanceof Error ? err.message : String(err);
717
+ this.logger.warn(`工具${executeDone ? '已执行,但结果处理' : '调用'}失败: ${toolBeforeData.name} (${reason})`);
718
+ const failedAt = Date.now();
719
+ const result = JSON.stringify({
720
+ error: executeDone ? `工具已执行,但结果处理失败:${reason}` : `工具调用失败:${reason}`,
721
+ });
722
+ // start 已发出就补发配对的 end(emit 恒 resolve):否则 WebUI 流式缓冲里这一段一直显示执行中
723
+ if (toolT0 !== undefined) {
724
+ await this.caps.events.emit('tool:execute', {
725
+ sessionId: incoming.sessionId,
726
+ platform: incoming.platform,
727
+ toolName: toolBeforeData.name,
728
+ args: toolBeforeData.args,
729
+ phase: 'end',
730
+ result,
731
+ });
732
+ }
733
+ return {
734
+ toolCall,
735
+ result,
736
+ resultImages: undefined,
737
+ toolName: toolBeforeData.name,
738
+ toolArgs: toolBeforeData.args,
739
+ startTime: toolT0 ?? failedAt,
740
+ endTime: failedAt,
741
+ };
689
742
  }
690
- const toolEndTime = Date.now();
691
- this.logger.debug(`工具完成: ${toolBeforeData.name} (${toolEndTime - toolT0}ms) 结果=${result}`);
692
- // 通知平台:工具执行完成
693
- await this.caps.events.emit('tool:execute', {
694
- sessionId: incoming.sessionId,
695
- platform: incoming.platform,
696
- toolName: toolBeforeData.name,
697
- args: toolBeforeData.args,
698
- phase: 'end',
699
- result,
700
- });
701
- return {
702
- toolCall,
703
- result,
704
- resultImages,
705
- toolName: toolBeforeData.name,
706
- toolArgs: toolBeforeData.args,
707
- startTime: toolT0,
708
- endTime: toolEndTime,
709
- };
710
743
  }));
711
744
  // 工具交出的图只服务紧接着的这一次请求:上一轮工具结果里的图在这里剥掉,否则多轮
712
745
  // 工具迭代会让图片在上下文里累积(每张数百 token,且不受文本裁剪约束)。
@@ -766,7 +799,7 @@ class DefaultAgent {
766
799
  maxTokens,
767
800
  signal,
768
801
  ...(thinkOverride !== undefined ? { think: thinkOverride } : {}),
769
- }, incoming.sessionId, incoming.platform, signal);
802
+ }, incoming.sessionId, incoming.platform);
770
803
  turnSegments.push(...nextResult.segments);
771
804
  response = nextResult;
772
805
  accUsage(response.usage);
@@ -786,6 +819,8 @@ class DefaultAgent {
786
819
  // 保留原始 LLM 输出,用于存入 memory(避免纯文本历史污染 few-shot 示例)
787
820
  let rawLlmContent = response.content ?? '';
788
821
  let replyContent = rawLlmContent;
822
+ // Hook: agent:reply:before — 插件可以修改最终回复
823
+ // JSON 解析/修复统一由 persona 的 agent:reply:before 钩子处理
789
824
  const responseData = {
790
825
  content: replyContent,
791
826
  sessionId: incoming.sessionId,
@@ -798,12 +833,14 @@ class DefaultAgent {
798
833
  // 重试循环:当 hook(如 persona 的 outputFormat 解析)报告 retryRequested 时,
799
834
  // 把失败的 assistant 输出 + 系统反馈追加到消息列表,重新请求 LLM;最多按 maxRetries 次。
800
835
  // maxRetries 由 hook 端写入(plugin-persona 从 outputFormat.retries 读取,默认 1)。
836
+ // 上游吐空流同样会被判不合格:此时没有可回放的失败输出,只追加系统反馈再请求一次。
801
837
  const maxRetries = Math.max(0, responseData.maxRetries ?? 0);
802
838
  let attempt = 0;
803
- while (responseData.retryRequested && attempt < maxRetries && rawLlmContent.length > 0) {
839
+ while (responseData.retryRequested && attempt < maxRetries) {
804
840
  attempt++;
805
841
  this.logger.debug(`agent:reply:before 请求重试 (attempt=${attempt}/${maxRetries}, session=${incoming.sessionId}): ${responseData.retryFeedback ?? '(无反馈)'}`);
806
- llmBeforeData.messages.push({ role: 'assistant', content: rawLlmContent });
842
+ if (rawLlmContent.length > 0)
843
+ llmBeforeData.messages.push({ role: 'assistant', content: rawLlmContent });
807
844
  llmBeforeData.messages.push({
808
845
  role: 'system',
809
846
  content: responseData.retryFeedback ?? '上一次回复未能通过格式校验,请严格按照系统提示中规定的格式重新输出。',
@@ -815,7 +852,7 @@ class DefaultAgent {
815
852
  maxTokens,
816
853
  signal,
817
854
  ...(thinkOverride !== undefined ? { think: thinkOverride } : {}),
818
- }, incoming.sessionId, incoming.platform, signal);
855
+ }, incoming.sessionId, incoming.platform);
819
856
  turnSegments.push(...retryResult.segments);
820
857
  response = retryResult;
821
858
  accUsage(response.usage);
@@ -825,6 +862,7 @@ class DefaultAgent {
825
862
  // 用新输出再次跑 hook;hook 端根据 attempt 决定继续重试或走兜底(静默丢弃)
826
863
  responseData.content = rawLlmContent;
827
864
  responseData.archiveContent = undefined;
865
+ responseData.visibleContent = undefined;
828
866
  responseData.retryRequested = false;
829
867
  responseData.retryFeedback = undefined;
830
868
  responseData.attempt = attempt;
@@ -839,6 +877,7 @@ class DefaultAgent {
839
877
  }
840
878
  replyContent = responseData.content;
841
879
  const archiveContent = responseData.archiveContent ?? rawLlmContent;
880
+ const visibleContent = responseData.visibleContent ?? replyContent;
842
881
  // 重复检测:如果回复与最近一条 assistant 消息完全相同,视为模型"卡壳",静默跳过。
843
882
  // 比的是 archiveContent(与落库同源口径)——启用 outputFormat 时历史里存的是整串 JSON,
844
883
  // 拿解码后的纯文本去比永远不成立。
@@ -847,6 +886,10 @@ class DefaultAgent {
847
886
  this.logger.warn(`检测到重复回复,跳过发送 (session=${incoming.sessionId})`);
848
887
  replyContent = '';
849
888
  }
889
+ // 提交点:此后的流结束标记、落库与外发成组执行。流结束后到这里之间(llm:after / 工具循环退出 /
890
+ // reply:before / 重试)被 latest-wins、手动停止或拆卸掐掉的回合,走下方 AbortError 收尾,不落库、不外发。
891
+ if (signal.aborted)
892
+ throw new DOMException('Generation aborted', 'AbortError');
850
893
  // 发出流结束标记
851
894
  await this.caps.events.emit('outbound:stream', {
852
895
  sessionId: incoming.sessionId,
@@ -874,6 +917,10 @@ class DefaultAgent {
874
917
  ...(assistantMetadata ?? {}),
875
918
  modelInfo: turnModelInfo,
876
919
  };
920
+ // 落库的是信封(如 outputFormat 的整串 JSON)时,另带解码后的可见正文,供检索、摘要等按语义读历史的一方用
921
+ if (visibleContent !== archiveContent) {
922
+ finalAssistantMetadata[WellKnownMetadataKeys.VisibleContent] = visibleContent;
923
+ }
877
924
  // 保存最终 assistant 回复:优先存 persona 修复/规范化后的 JSON,保持格式完整,
878
925
  // 避免坏 JSON 或解码后纯文本污染历史 few-shot 示例导致模型不再遵守 outputFormat
879
926
  await this.saveToMemory(incoming.sessionId, {
@@ -910,9 +957,9 @@ class DefaultAgent {
910
957
  //
911
958
  // 历史教训:早期版本会用 turnPersistedTimestamps 把"本轮已持久化的中间消息"全部删掉,
912
959
  // 注释里写的是防"半截 assistant 内容 / 假回退"。但实际审计 saveToolCallGroup(见下方)发现:
913
- // 1. saveToolCallGroup 只在并行工具全部执行完毕后整组写入(assistant tool_call + 所有
914
- // tool result 一次性 push),catch 路径根本进不来;turnPersistedTimestamps 里只
915
- // 可能是"已完成、副作用已发生"的工具调用对。
960
+ // 1. saveToolCallGroup 只在并行工具全部落定后整组写入(assistant tool_call + 所有
961
+ // tool result 一次性 push;单个工具的异常已在闭包内转成它自己的错误结果),不存在
962
+ // 写了一半的组;turnPersistedTimestamps 里只可能是"已落定、副作用已发生"的工具调用对。
916
963
  // 2. 删除这些 = 让 agent 忘记自己刚刚做过的有副作用的事(戳一戳/发送消息/调度任务/…),
917
964
  // 下一轮 LLM 看不到自己的行为,会重复调用,外部观察就是"agent 一直以为戳不了"。
918
965
  // 3. 真正的 orphan 风险(assistant tool_calls 缺 tool result)由 sanitizeToolCallHistory
@@ -1113,6 +1160,14 @@ class DefaultAgent {
1113
1160
  messages.push(userMessage);
1114
1161
  return messages;
1115
1162
  }
1163
+ /**
1164
+ * 裁剪预算 = 上下文长度 × trimThresholdRatio − 最大输出 token − 512 安全余量(下限 1024)。
1165
+ * trimThresholdRatio < 1 可提前触发裁剪,默认 1.0 = 用满扣除输出预留后的可用窗口。
1166
+ * 真实回合与 token:request 快照共用,两处的预算口径因此一致。
1167
+ */
1168
+ computeTokenBudget(contextLength, maxTokens) {
1169
+ return Math.max(1024, Math.floor(contextLength * this.trimThresholdRatio) - maxTokens - 512);
1170
+ }
1116
1171
  /**
1117
1172
  * 构建系统提示词
1118
1173
  */
@@ -1178,14 +1233,12 @@ class DefaultAgent {
1178
1233
  subtaskTokens += t;
1179
1234
  }
1180
1235
  else if (source === 'persona' || !source) {
1181
- // persona 消息可能被 skills/subtask/toolPriority 追加了内容
1236
+ // persona 消息可能被 subtask 追加内容
1182
1237
  if (contributions) {
1183
1238
  let contributionTokens = 0;
1184
1239
  for (const [key, charCount] of Object.entries(contributions)) {
1185
1240
  const ct = estimateTextTokens('x'.repeat(charCount));
1186
- if (key === 'skills')
1187
- skillsTokens += ct;
1188
- else if (key === 'subtask')
1241
+ if (key === 'subtask')
1189
1242
  subtaskTokens += ct;
1190
1243
  else
1191
1244
  systemOtherTokens += ct;
@@ -1277,9 +1330,9 @@ class DefaultAgent {
1277
1330
  const rel = t.match(/^data\/((?:images|videos|audios|files)\/.+)$/);
1278
1331
  if (!rel)
1279
1332
  return t;
1280
- const storage = this.caps.storage.current;
1281
- if (!storage)
1282
- return null;
1333
+ // 经网关按 URI 路由:storage 按根逐条提供,胜者只是其中一个根(多根时通常是 workspace),
1334
+ // 读不了 data:/。缺 data 根(含 storage 整体缺席)时网关抛错,落到下面的 catch
1335
+ const storage = createStorageGateway(this.caps.storage);
1283
1336
  try {
1284
1337
  const raw = (await storage.readFile(`data:/${rel[1]}`));
1285
1338
  // mime 优先取附件自带的 mimeType;缺省按 basename 扩展名推断(适配器落盘只产
@@ -1692,7 +1745,7 @@ const configSchema = {
1692
1745
  type: 'number',
1693
1746
  label: '长期记忆预留 Token',
1694
1747
  default: 4096,
1695
- description: '为长期记忆注入的 system 消息预留的 token 额度,截断时不会删除这些消息',
1748
+ description: '为注入的 system 消息预留的 token 额度:超出时先按比例缩减,极端情况下(最后阶段)仍会删除',
1696
1749
  },
1697
1750
  historyLimit: {
1698
1751
  type: 'number',
@@ -1735,9 +1788,11 @@ function run(caps) {
1735
1788
  caps.lifecycle.onDrain(() => agentImpl.abortInflightAndSettle(), '中止在飞回合');
1736
1789
  // 清理段再 abort 一次:drain 超时或未走到收尾时的兜底,表空则空操作。
1737
1790
  caps.lifecycle.onDispose(() => agentImpl.abortAll(), '中止在飞回合(兜底)');
1791
+ // 会话删除:丢弃该会话的 token 日志节流状态(与 todo-list / file-reader 走同一条会话清理路径)
1792
+ caps.events.on('session:deleted', sessionId => agentImpl.dropTokenLogState(sessionId));
1738
1793
  const agent = agentImpl;
1739
1794
  // 全局默认 LLM:通过 ServicePreference 锁定 llm 服务的首选 entry。
1740
- // 偏好持久化由 core 配置层负责(servicePreferences 字段);这里只是开机时按 agent
1795
+ // 偏好的持久化在宿主配置文档(servicePreferences 字段,WebUI 切换时写入);这里只是开机时按 agent
1741
1796
  // 自己的 cfg.defaultLLM 覆写一次,便于纯文件配置流(无 webui 干预)也能生效。
1742
1797
  const defaultLLM = caps.config.defaultLLM;
1743
1798
  if (defaultLLM?.provider && defaultLLM?.model) {
@@ -1968,12 +2023,15 @@ function run(caps) {
1968
2023
  const llm = resolved.instance;
1969
2024
  const contextLength = llm.contextLength;
1970
2025
  const maxTokens = getModelMaxOutput(llm);
1971
- const tokenBudget = Math.max(1024, contextLength - maxTokens - 512);
2026
+ const tokenBudget = agent.computeTokenBudget(contextLength, maxTokens);
2027
+ // 与真实回合同一份会话解析:人设覆盖、结构化输出开关、额外提示都影响系统提示长度
2028
+ const sm = caps.sessionManager.current;
2029
+ const sessionResolved = sm ? sm.resolveConfig(data.sessionId, platform) : undefined;
1972
2030
  // 获取历史消息并构建基础消息列表
1973
2031
  const memory = caps.memory.current;
1974
2032
  const messages = [];
1975
2033
  // 系统提示
1976
- const systemPrompt = agent.buildSystemPrompt();
2034
+ const systemPrompt = agent.buildSystemPrompt(toPersonaOptions(sessionResolved));
1977
2035
  messages.push({ role: 'system', content: systemPrompt, metadata: { injector: 'persona' } });
1978
2036
  // 历史消息
1979
2037
  if (memory) {
@@ -1982,8 +2040,6 @@ function run(caps) {
1982
2040
  }
1983
2041
  // 与真实回合同序:先组装 agent:prompt 贡献(摘要/向量记忆/档案等物化为 system 块),
1984
2042
  // 再跑 agent:llm:before(工具搜索层过滤等拦截职责),使快照贴近实际送入 LLM 的形态
1985
- const sm = caps.sessionManager.current;
1986
- const sessionResolved = sm ? sm.resolveConfig(data.sessionId, platform) : undefined;
1987
2043
  const enabledGroups = sessionResolved?.enabledToolGroups?.length ? sessionResolved.enabledToolGroups : undefined;
1988
2044
  const tools = caps.tools.current?.getDefinitions(enabledGroups ? { groups: enabledGroups } : undefined) ?? [];
1989
2045
  const llmBeforeData = {
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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"}
@@ -1,5 +1,6 @@
1
1
  import type { PromptContributionView } from '@aalis/api-agent';
2
- import type { Contributions, Logger } from '@aalis/core';
2
+ import type { Contributions } from '@aalis/api-contributions';
3
+ import type { Logger } from '@aalis/core';
3
4
  import { type Message } from '@aalis/schema-message';
4
5
  /**
5
6
  * 组装器要的能力只有两样:枚举 agent:prompt 的交付、把缺席与非法锚位记成日志。
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembly.d.ts","sourceRoot":"","sources":["../src/prompt-assembly.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAoC,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,KAAK,OAAO,EAAkB,MAAM,uBAAuB,CAAC;AAKrE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AA6FpD;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE;IACJ,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,EACD,IAAI,CAAC,EAAE;IACL;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GACA,OAAO,CAAC,IAAI,CAAC,CAwEf"}
1
+ {"version":3,"file":"prompt-assembly.d.ts","sourceRoot":"","sources":["../src/prompt-assembly.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAoC,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,KAAK,OAAO,EAAkB,MAAM,uBAAuB,CAAC;AAKrE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC9C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AA6FpD;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE;IACJ,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,EACD,IAAI,CAAC,EAAE;IACL;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GACA,OAAO,CAAC,IAAI,CAAC,CAwEf"}
@@ -1,7 +1,7 @@
1
1
  // ============================================================
2
2
  // prompt-assembly.ts — agent:prompt 贡献点的组装器(收集方策略)
3
3
  //
4
- // 内核贡献原语只管注册与确定性枚举;如何执行 build(并行、错误隔离、
4
+ // 贡献点服务(@aalis/api-contributions)只管登记与确定性枚举;如何执行 build(并行、错误隔离、
5
5
  // 幂等重跑、锚位排布、物化形态)全在这里——这是贡献点 owner 的策略层。
6
6
  //
7
7
  // 每次 LLM 调用前运行(含工具循环各轮)。幂等靠全局键:messages 中已带
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../src/prompt-assembly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../src/prompt-assembly.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-agent",
3
- "version": "0.14.0",
3
+ "version": "0.15.1",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,29 +24,31 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@aalis/api-agent": ">=0.8.0 <1.0.0",
28
- "@aalis/api-commands": ">=0.6.0 <1.0.0",
29
- "@aalis/api-gateway": ">=0.6.0 <1.0.0",
30
- "@aalis/api-llm": ">=0.11.0 <1.0.0",
31
- "@aalis/api-media": ">=0.10.0 <1.0.0",
32
- "@aalis/api-memory": ">=0.6.0 <1.0.0",
33
- "@aalis/api-message-archive": ">=0.6.0 <1.0.0",
34
- "@aalis/api-persona": ">=0.7.0 <1.0.0",
35
- "@aalis/api-platform": ">=0.7.0 <1.0.0",
36
- "@aalis/api-session-manager": ">=0.9.0 <1.0.0",
37
- "@aalis/api-storage": ">=0.6.0 <1.0.0",
38
- "@aalis/api-tools": ">=0.9.0 <1.0.0",
39
- "@aalis/schema-config": ">=0.12.0 <1.0.0",
40
- "@aalis/schema-message": ">=0.8.0 <1.0.0",
41
- "@aalis/util-text-normalize": ">=0.5.1 <1.0.0"
27
+ "@aalis/api-agent": ">=0.9.0 <1.0.0",
28
+ "@aalis/api-commands": ">=0.7.0 <1.0.0",
29
+ "@aalis/api-gateway": ">=0.7.0 <1.0.0",
30
+ "@aalis/api-llm": ">=0.12.0 <1.0.0",
31
+ "@aalis/api-media": ">=0.11.0 <1.0.0",
32
+ "@aalis/api-memory": ">=0.7.0 <1.0.0",
33
+ "@aalis/api-message-archive": ">=0.7.0 <1.0.0",
34
+ "@aalis/api-persona": ">=0.8.0 <1.0.0",
35
+ "@aalis/api-platform": ">=0.8.0 <1.0.0",
36
+ "@aalis/api-session-manager": ">=0.10.0 <1.0.0",
37
+ "@aalis/api-storage": ">=0.7.0 <1.0.0",
38
+ "@aalis/api-tools": ">=0.10.0 <1.0.0",
39
+ "@aalis/schema-config": ">=0.13.0 <1.0.0",
40
+ "@aalis/schema-message": ">=0.9.0 <1.0.0",
41
+ "@aalis/util-text-normalize": ">=0.5.2 <1.0.0",
42
+ "@aalis/api-hooks": ">=0.1.0 <1.0.0",
43
+ "@aalis/api-contributions": ">=0.1.0 <1.0.0"
42
44
  },
43
45
  "devDependencies": {
44
46
  "@types/node": "^22.0.0",
45
47
  "typescript": "^5.7.0",
46
- "@aalis/core": "0.17.0"
48
+ "@aalis/core": "0.19.0"
47
49
  },
48
50
  "peerDependencies": {
49
- "@aalis/core": ">=0.17.0 <1.0.0"
51
+ "@aalis/core": ">=0.18.0 <1.0.0"
50
52
  },
51
53
  "aalis": {
52
54
  "service": {