@aalis/plugin-tool-session 0.11.0 → 0.13.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 CHANGED
@@ -1,13 +1,3 @@
1
- import type { Context } from '@aalis/core';
2
- import type { ConfigSchema } from '@aalis/schema-config';
3
- export declare const name = "@aalis/plugin-tool-session";
4
- export declare const displayName = "\u4F1A\u8BDD\u5DE5\u5177";
5
- export declare const subsystem = "session";
6
- export declare const provides: string[];
7
- export declare const inject: {
8
- optional: string[];
9
- };
10
- export declare const configSchema: ConfigSchema;
11
1
  /**
12
2
  * 把一个时间值解析为毫秒时间戳。接受:
13
3
  * - number:直接当毫秒时间戳(有限值)。
@@ -33,5 +23,16 @@ export declare function resolveTimeRange(args: {
33
23
  } | {
34
24
  error: string;
35
25
  } | null;
36
- export declare function apply(ctx: Context, config: Record<string, unknown>): void;
26
+ declare const _default: import("@aalis/core").PluginDefinition<{
27
+ tools: import("@aalis/core").OptionalUse<import("@aalis/api-tools").ToolService, import("@aalis/api-tools").BoundTools>;
28
+ events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
29
+ hooks: import("@aalis/core").ServiceDescriptor<import("@aalis/api-hooks").HookRegistry, import("@aalis/api-hooks").Hooks>;
30
+ logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
31
+ config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
32
+ provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
33
+ memory: import("@aalis/core").OptionalUse<import("@aalis/api-memory").MemoryService, import("@aalis/core").ServiceRef<import("@aalis/api-memory").MemoryService>>;
34
+ platform: import("@aalis/core").OptionalUse<import("@aalis/api-platform").PlatformAdapter, import("@aalis/core").ServiceRef<import("@aalis/api-platform").PlatformAdapter>>;
35
+ persona: import("@aalis/core").OptionalUse<import("@aalis/api-persona").PersonaService, import("@aalis/core").ServiceRef<import("@aalis/api-persona").PersonaService>>;
36
+ }>;
37
+ export default _default;
37
38
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAiIzD,eAAO,MAAM,IAAI,+BAA+B,CAAC;AACjD,eAAO,MAAM,WAAW,6BAAS,CAAC;AAClC,eAAO,MAAM,SAAS,YAAY,CAAC;AACnC,eAAO,MAAM,QAAQ,UAAsB,CAAC;AAC5C,eAAO,MAAM,MAAM;;CAElB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,YA4C1B,CAAC;AA8BF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAc5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EACpE,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAmC7D;AA0oBD,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAYzE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkMA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAc5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EACpE,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAmC7D;;;;;;;;;;;;AA+qBD,wBAmBG"}
package/dist/index.js CHANGED
@@ -1,48 +1,22 @@
1
- import { resolvePlatformBySession } from '@aalis/api-platform';
2
- import { useToolService } from '@aalis/api-tools';
1
+ import { hooks } from '@aalis/api-hooks';
2
+ import { memory } from '@aalis/api-memory';
3
+ import { persona } from '@aalis/api-persona';
4
+ import { platform, resolvePlatformBySession } from '@aalis/api-platform';
5
+ import { sessionHistory, } from '@aalis/api-session-history';
6
+ import { tools } from '@aalis/api-tools';
7
+ import { config, definePlugin, events, logger, optional, provide } from '@aalis/core';
3
8
  // ===== 跨会话委派:回合深度防雪崩 =====
4
9
  // 防止 A→B→C→... 无限链。深度随消息走(IncomingMessage.proactiveDepth),不按会话计时:
5
10
  // 由委派消息驱动的那一个回合内禁止再委派,回合结束(agent:turn:after)即解除;
6
11
  // 该会话之后由下一条不带 proactiveDepth 的入站消息(真人消息、idle/interval 自动触发都算)
7
12
  // 驱动的回合不受影响。
8
13
  const PROACTIVE_DEPTH_MAX = 1;
9
- /** sessionId → 该会话当前回合的入站消息所带 proactiveDepth(非委派回合不在表内)。 */
10
- const turnProactiveDepth = new Map();
11
- /**
12
- * 登记「当前回合由深度 N 的委派消息驱动」。
13
- *
14
- * 登记点在 `agent:input:before`——回合真正开始的那一刻,且是所有投递方式的汇合处:
15
- * 经 `inbound:message` 事件进来的和直接调 `gateway.ingressMessage()` 的都要过这道钩子,
16
- * 登记因而必然早于本回合的任何工具调用。
17
- *
18
- * 入站即写、回合结束(`agent:turn:after`)即清;下一条不带 proactiveDepth 的入站消息
19
- * (真人消息、idle/interval 自动触发都算)会覆盖清除该会话的登记,所以即使某轮没等到
20
- * turn:after(被中间件吞、进程重启前残留),这样的下一条消息也能立刻解锁——无需任何超时兜底。
21
- *
22
- * 锁按 sessionId 记,是「会话近似回合」:同会话不同 source 的并行回合共用同一把锁,
23
- * 后开始的那个会覆盖前一个的登记、先结束的那个会替所有人解锁。
24
- */
25
- function trackProactiveTurnDepth(ctx) {
26
- ctx.middleware('agent:input:before', async (data, next) => {
27
- const depth = typeof data.message.proactiveDepth === 'number' ? data.message.proactiveDepth : 0;
28
- if (depth > 0)
29
- turnProactiveDepth.set(data.message.sessionId, depth);
30
- else
31
- turnProactiveDepth.delete(data.message.sessionId);
32
- await next();
33
- });
34
- ctx.middleware('agent:turn:after', async (data, next) => {
35
- await next();
36
- turnProactiveDepth.delete(data.sessionId);
37
- });
38
- }
39
14
  // ===== 跨会话委派:近期派发记录(提醒型,不硬挡) =====
40
15
  // 记录每个 (target_session_id, task) 最近一次派发状态。
41
16
  // 下一次同目标派发时,在拼装给 target agent 的 task 前注入 META 提醒,
42
17
  // 让 target agent 自主判断是否需要重发。不防止派发本身。
43
18
  const RECENT_DELEGATION_TTL_MS = 60 * 1000;
44
19
  const RECENT_DELEGATION_MAX = 256; // 防止无限增长
45
- const recentDelegations = new Map();
46
20
  function recentDelegationKey(targetSessionId, taskHash) {
47
21
  return `${targetSessionId}::${taskHash}`;
48
22
  }
@@ -55,23 +29,23 @@ function hashTask(task) {
55
29
  }
56
30
  return (h >>> 0).toString(16).padStart(8, '0');
57
31
  }
58
- function pruneRecentDelegations(now) {
59
- for (const [key, entry] of recentDelegations) {
32
+ function pruneRecentDelegations(store, now) {
33
+ for (const [key, entry] of store) {
60
34
  if (entry.expiresAt <= now)
61
- recentDelegations.delete(key);
35
+ store.delete(key);
62
36
  }
63
37
  // 超上限时删最早的
64
- if (recentDelegations.size > RECENT_DELEGATION_MAX) {
65
- const oldest = [...recentDelegations.entries()].sort((a, b) => a[1].firedAt - b[1].firedAt);
38
+ if (store.size > RECENT_DELEGATION_MAX) {
39
+ const oldest = [...store.entries()].sort((a, b) => a[1].firedAt - b[1].firedAt);
66
40
  for (let i = 0; i < oldest.length - RECENT_DELEGATION_MAX; i++) {
67
- recentDelegations.delete(oldest[i][0]);
41
+ store.delete(oldest[i][0]);
68
42
  }
69
43
  }
70
44
  }
71
- function findRecentDelegationsForTarget(targetSessionId, now) {
45
+ function findRecentDelegationsForTarget(store, targetSessionId, now) {
72
46
  const prefix = `${targetSessionId}::`;
73
47
  const list = [];
74
- for (const [key, entry] of recentDelegations) {
48
+ for (const [key, entry] of store) {
75
49
  if (entry.expiresAt <= now)
76
50
  continue;
77
51
  if (!key.startsWith(prefix))
@@ -81,8 +55,7 @@ function findRecentDelegationsForTarget(targetSessionId, now) {
81
55
  list.sort((a, b) => b.firedAt - a.firedAt);
82
56
  return list;
83
57
  }
84
- function buildDelegationMetaBlock(sourceSessionId, targetSessionId, task, recents, now) {
85
- void targetSessionId;
58
+ function buildDelegationMetaBlock(sourceSessionId, task, recents, now) {
86
59
  const lines = [];
87
60
  lines.push('[跨会话委派 META]');
88
61
  lines.push(`· 来源会话:${sourceSessionId}`);
@@ -103,15 +76,8 @@ function buildDelegationMetaBlock(sourceSessionId, targetSessionId, task, recent
103
76
  lines.push(task);
104
77
  return lines.join('\n');
105
78
  }
106
- // ===== 插件元数据 =====
107
- export const name = '@aalis/plugin-tool-session';
108
- export const displayName = '会话工具';
109
- export const subsystem = 'session';
110
- export const provides = ['session-history'];
111
- export const inject = {
112
- optional: ['memory'],
113
- };
114
- export const configSchema = {
79
+ // ===== 插件元数据与能力声明 =====
80
+ const configSchema = {
115
81
  enabled: { type: 'boolean', label: '启用会话历史读取工具', default: true },
116
82
  maxLimit: {
117
83
  type: 'number',
@@ -155,6 +121,17 @@ export const configSchema = {
155
121
  description: 'delegate_to_session 在未显式指定 timeout_seconds 时使用的等待上限。',
156
122
  },
157
123
  };
124
+ const uses = {
125
+ tools: optional(tools),
126
+ events,
127
+ hooks,
128
+ logger,
129
+ config,
130
+ provide,
131
+ memory: optional(memory),
132
+ platform: optional(platform),
133
+ persona: optional(persona),
134
+ };
158
135
  /** 无原生区间查询的后端:区间检索退回扫描历史的最大条数(best-effort 上界,防 OOM) */
159
136
  const RANGE_FALLBACK_SCAN = 5000;
160
137
  // ===== 时间区间解析(纯函数,单测覆盖见 test/plugins/session-history-range.test.ts) =====
@@ -291,7 +268,7 @@ function canReadSessionHistory(currentSessionId, targetSessionId, currentPlatfor
291
268
  }
292
269
  return { ok: true };
293
270
  }
294
- function createSessionHistoryService(ctx, cfg) {
271
+ function createSessionHistoryService({ memory, logger }, cfg) {
295
272
  const checkers = [];
296
273
  return {
297
274
  registerAccessChecker(checker) {
@@ -303,8 +280,8 @@ function createSessionHistoryService(ctx, cfg) {
303
280
  };
304
281
  },
305
282
  async getHistory(options, callCtx) {
306
- const memory = ctx.getService('memory');
307
- if (!memory)
283
+ const store = memory.current;
284
+ if (!store)
308
285
  return { error: 'memory 服务不可用' };
309
286
  const targetSessionId = String(options.sessionId ?? '').trim();
310
287
  if (!targetSessionId)
@@ -324,17 +301,17 @@ function createSessionHistoryService(ctx, cfg) {
324
301
  let ranged;
325
302
  // 区间后端(getMessagesBySessionRange)天然含归档;仅当退化到 getHistory 时才是「仅活跃」。
326
303
  let includesArchived = true;
327
- if (memory.getMessagesBySessionRange) {
328
- ranged = await memory.getMessagesBySessionRange(targetSessionId, fromTs, toTs);
304
+ if (store.getMessagesBySessionRange) {
305
+ ranged = await store.getMessagesBySessionRange(targetSessionId, fromTs, toTs);
329
306
  }
330
307
  else {
331
308
  // 后端不支持原生区间查询:退回扫描历史 + 客户端按时间过滤(best-effort,很早的窗口可能不全)。
332
309
  let base;
333
- if (memory.getFullHistory) {
334
- base = await memory.getFullHistory(targetSessionId, RANGE_FALLBACK_SCAN);
310
+ if (store.getFullHistory) {
311
+ base = await store.getFullHistory(targetSessionId, RANGE_FALLBACK_SCAN);
335
312
  }
336
313
  else {
337
- base = await memory.getHistory(targetSessionId, RANGE_FALLBACK_SCAN);
314
+ base = await store.getHistory(targetSessionId, RANGE_FALLBACK_SCAN);
338
315
  includesArchived = false; // getHistory 不含归档,诚实回显
339
316
  }
340
317
  ranged = base.filter(m => {
@@ -359,34 +336,34 @@ function createSessionHistoryService(ctx, cfg) {
359
336
  };
360
337
  return result;
361
338
  }
362
- const history = includeArchived && memory.getFullHistory
363
- ? await memory.getFullHistory(targetSessionId, limit)
364
- : await memory.getHistory(targetSessionId, limit);
339
+ const history = includeArchived && store.getFullHistory
340
+ ? await store.getFullHistory(targetSessionId, limit)
341
+ : await store.getHistory(targetSessionId, limit);
365
342
  const result = {
366
343
  ok: true,
367
344
  sessionId: targetSessionId,
368
345
  count: history.length,
369
346
  limit,
370
- includeArchived: includeArchived && !!memory.getFullHistory,
347
+ includeArchived: includeArchived && !!store.getFullHistory,
371
348
  messages: history.map((message, index) => formatHistoryMessage(message, index + 1, cfg.perMessageMaxChars)),
372
349
  };
373
350
  return result;
374
351
  }
375
352
  catch (err) {
376
353
  const message = err instanceof Error ? err.message : String(err);
377
- ctx.logger.warn(`session-history 读取失败 (${targetSessionId}): ${message}`);
354
+ logger.warn(`session-history 读取失败 (${targetSessionId}): ${message}`);
378
355
  return { error: `读取会话历史失败: ${message}` };
379
356
  }
380
357
  },
381
358
  };
382
359
  }
383
- function registerSessionHistoryTools(ctx, historyService, cfg) {
384
- useToolService(ctx).registerGroup({
360
+ function registerSessionHistoryTools({ tools, logger }, historyService, cfg) {
361
+ tools.registerGroup({
385
362
  name: 'session-history',
386
363
  label: '会话历史读取',
387
364
  description: '按 Aalis sessionId 读取近期会话历史,用于核实跨会话上下文',
388
365
  });
389
- useToolService(ctx).register({
366
+ tools.register({
390
367
  groups: ['session-history'],
391
368
  definition: {
392
369
  type: 'function',
@@ -451,10 +428,48 @@ function registerSessionHistoryTools(ctx, historyService, cfg) {
451
428
  return JSON.stringify(result);
452
429
  },
453
430
  });
454
- ctx.logger.info('会话历史读取工具已注册');
431
+ logger.info('会话历史读取工具已注册');
432
+ }
433
+ /**
434
+ * 登记「当前回合由深度 N 的委派消息驱动」。
435
+ *
436
+ * 登记点在 `agent:input:before`——回合真正开始的那一刻,且是所有投递方式的汇合处:
437
+ * 经 `inbound:message` 事件进来的和直接调 `gateway.ingressMessage()` 的都要过这道钩子,
438
+ * 登记因而必然早于本回合的任何工具调用。
439
+ *
440
+ * 入站即写、回合结束(`agent:turn:after`)即清;下一条不带 proactiveDepth 的入站消息
441
+ * (真人消息、idle/interval 自动触发都算)会覆盖清除该会话的登记,所以即使某轮没等到
442
+ * turn:after(被中间件吞、进程重启前残留),这样的下一条消息也能立刻解锁——无需任何超时兜底。
443
+ *
444
+ * 锁按 sessionId 记,是「会话近似回合」:同会话不同 source 的并行回合共用同一把锁,
445
+ * 后开始的那个会覆盖前一个的登记、先结束的那个会替所有人解锁。
446
+ */
447
+ function trackProactiveTurnDepth(hooks, turnProactiveDepth) {
448
+ hooks.middleware('agent:input:before', async (data, next) => {
449
+ const depth = typeof data.message.proactiveDepth === 'number' ? data.message.proactiveDepth : 0;
450
+ if (depth > 0)
451
+ turnProactiveDepth.set(data.message.sessionId, depth);
452
+ else
453
+ turnProactiveDepth.delete(data.message.sessionId);
454
+ await next();
455
+ });
456
+ hooks.middleware('agent:turn:after', async (data, next) => {
457
+ await next();
458
+ turnProactiveDepth.delete(data.sessionId);
459
+ });
455
460
  }
456
- function registerCrossSessionTools(ctx, cfg) {
457
- useToolService(ctx).registerGroup({
461
+ function registerCrossSessionTools(caps, cfg) {
462
+ const { tools, logger, events, hooks, memory, platform, persona } = caps;
463
+ /**
464
+ * sessionId → 该会话当前回合的入站消息所带 proactiveDepth(非委派回合不在表内)。
465
+ * 随这次激活存亡:锁由本次激活的 `agent:input:before` 中间件写入、由本次激活注册的工具读取,
466
+ * 插件重载后旧锁必须一并消失,否则新激活会拿着没有对应回合的残留锁拒绝委派。
467
+ */
468
+ const turnProactiveDepth = new Map();
469
+ /** (目标会话, task) → 最近一次派发状态;同样随激活存亡(60s 提醒窗,跨重载无保留价值) */
470
+ const recentDelegations = new Map();
471
+ trackProactiveTurnDepth(hooks, turnProactiveDepth);
472
+ tools.registerGroup({
458
473
  name: 'session-delegate',
459
474
  label: '跨会话派发',
460
475
  description: '向已存在的其他会话(如另一个群、另一个 QQ 好友、另一个平台)派发任务并可选等待结果。',
@@ -462,7 +477,7 @@ function registerCrossSessionTools(ctx, cfg) {
462
477
  // ---- list_known_sessions ----
463
478
  // 列出最近活跃的会话(按平台/最近活跃时间),供 agent 在 delegate 前发现可派发目标,
464
479
  // 避免凭空拼接 sessionId 出错。基于 memory 的 getRecentMessagesAcrossSessions 能力。
465
- useToolService(ctx).register({
480
+ tools.register({
466
481
  groups: ['session-delegate'],
467
482
  definition: {
468
483
  type: 'function',
@@ -503,8 +518,8 @@ function registerCrossSessionTools(ctx, cfg) {
503
518
  },
504
519
  },
505
520
  handler: async (args, callCtx) => {
506
- const memory = ctx.getService('memory');
507
- if (!memory?.getRecentMessagesAcrossSessions) {
521
+ const store = memory.current;
522
+ if (!store?.getRecentMessagesAcrossSessions) {
508
523
  return JSON.stringify({
509
524
  error: '当前 memory 服务不支持 getRecentMessagesAcrossSessions 能力',
510
525
  });
@@ -514,7 +529,7 @@ function registerCrossSessionTools(ctx, cfg) {
514
529
  const platformFilter = typeof args.platform === 'string' && args.platform.trim().length > 0 ? args.platform.trim() : undefined;
515
530
  const sinceTs = Date.now() - sinceHours * 3600 * 1000;
516
531
  // 多取一些消息再按 session 聚合,确保 limit 个会话能凑齐
517
- const records = await memory.getRecentMessagesAcrossSessions({
532
+ const records = await store.getRecentMessagesAcrossSessions({
518
533
  limit: Math.max(limit * 10, 200),
519
534
  sinceTs,
520
535
  platform: platformFilter,
@@ -528,12 +543,12 @@ function registerCrossSessionTools(ctx, cfg) {
528
543
  if (!existing || ts > existing.lastTs) {
529
544
  const content = typeof rec.message.content === 'string' ? rec.message.content : '';
530
545
  const preview = content.length > 80 ? `${content.slice(0, 80)}...` : content;
531
- const platform = rec.message.metadata?.platform != null
546
+ const platformName = rec.message.metadata?.platform != null
532
547
  ? String(rec.message.metadata.platform)
533
548
  : rec.sessionId.split(':')[0] || undefined;
534
549
  bySession.set(rec.sessionId, {
535
550
  sessionId: rec.sessionId,
536
- platform,
551
+ platform: platformName,
537
552
  lastTs: ts,
538
553
  preview,
539
554
  });
@@ -558,7 +573,7 @@ function registerCrossSessionTools(ctx, cfg) {
558
573
  // ---- delegate_to_session ----
559
574
  // 向已存在的目标会话派发一次任务,目标会话的 agent 在自己原本的人设/记忆/工具集下完整推理;
560
575
  // 与 create_subtask 不同:目标不是新建的"子会话",而是任意已知 sessionId(如群聊、私聊、跨平台)。
561
- useToolService(ctx).register({
576
+ tools.register({
562
577
  groups: ['session-delegate'],
563
578
  definition: {
564
579
  type: 'function',
@@ -661,7 +676,7 @@ function registerCrossSessionTools(ctx, cfg) {
661
676
  // 解析目标平台,应用可选限速闸门
662
677
  let platformName;
663
678
  try {
664
- const adapter = await resolvePlatformBySession(ctx, targetSessionId);
679
+ const adapter = await resolvePlatformBySession(platform, targetSessionId, logger);
665
680
  if (adapter) {
666
681
  platformName = adapter.platform;
667
682
  const gate = adapter.checkAndRecordProactiveSend;
@@ -674,26 +689,25 @@ function registerCrossSessionTools(ctx, cfg) {
674
689
  }
675
690
  }
676
691
  catch (err) {
677
- ctx.logger.warn(`[delegate] 解析目标平台失败 (${targetSessionId}): ${err}`);
692
+ logger.warn(`[delegate] 解析目标平台失败 (${targetSessionId}): ${err}`);
678
693
  }
679
694
  // ===== 注入 META 提示(提醒型,不挡派发) =====
680
695
  const now = Date.now();
681
- pruneRecentDelegations(now);
696
+ pruneRecentDelegations(recentDelegations, now);
682
697
  const taskHash = hashTask(task);
683
698
  const dedupKey = recentDelegationKey(targetSessionId, taskHash);
684
- const recents = findRecentDelegationsForTarget(targetSessionId, now);
685
- const taskWithMeta = buildDelegationMetaBlock(callCtx.sessionId, targetSessionId, task, recents, now);
699
+ const recents = findRecentDelegationsForTarget(recentDelegations, targetSessionId, now);
700
+ const taskWithMeta = buildDelegationMetaBlock(callCtx.sessionId, task, recents, now);
686
701
  const entry = {
687
702
  firedAt: now,
688
703
  expiresAt: now + RECENT_DELEGATION_TTL_MS,
689
704
  sourceSessionId: callCtx.sessionId,
690
705
  taskPreview: task.length > 80 ? `${task.slice(0, 80)}...` : task,
691
- taskHash,
692
706
  status: waitForResult ? 'pending' : 'fired-no-wait',
693
707
  };
694
708
  recentDelegations.set(dedupKey, entry);
695
709
  if (recents.length > 0) {
696
- ctx.logger.info(`[delegate] META 提醒已注入:${targetSessionId} 在 60s 内已收到 ${recents.length} 次同/近期任务`);
710
+ logger.info(`[delegate] META 提醒已注入:${targetSessionId} 在 60s 内已收到 ${recents.length} 次同/近期任务`);
697
711
  }
698
712
  const incoming = {
699
713
  content: taskWithMeta,
@@ -713,12 +727,12 @@ function registerCrossSessionTools(ctx, cfg) {
713
727
  if (delegateActor)
714
728
  incoming.actor = delegateActor;
715
729
  const taskPreview = task.length > 80 ? `${task.slice(0, 80)}... (+${task.length - 80}字,全文已完整传递给目标会话)` : task;
716
- ctx.logger.info(`[delegate] from=${callCtx.sessionId} -> ${targetSessionId} depth=${targetDepth} wait=${waitForResult} task="${taskPreview}"`);
730
+ logger.info(`[delegate] from=${callCtx.sessionId} -> ${targetSessionId} depth=${targetDepth} wait=${waitForResult} task="${taskPreview}"`);
717
731
  if (!waitForResult) {
718
- ctx.emit('inbound:message', incoming).catch(err => {
719
- ctx.logger.warn(`[delegate] 派发失败 (${targetSessionId}): ${err}`);
732
+ events.emit('inbound:message', incoming).catch(err => {
733
+ logger.warn(`[delegate] 派发失败 (${targetSessionId}): ${err}`);
720
734
  });
721
- ctx.logger.info(`[delegate] return -> ${callCtx.sessionId} wait=false (fire-and-forget)`);
735
+ logger.info(`[delegate] return -> ${callCtx.sessionId} wait=false (fire-and-forget)`);
722
736
  return JSON.stringify({
723
737
  delegated: true,
724
738
  targetSessionId,
@@ -733,7 +747,7 @@ function registerCrossSessionTools(ctx, cfg) {
733
747
  const waitPromise = new Promise(resolve => {
734
748
  resolveWait = resolve;
735
749
  });
736
- const dispose = ctx.middleware('agent:turn:after', async (data, next) => {
750
+ const dispose = hooks.middleware('agent:turn:after', async (data, next) => {
737
751
  await next();
738
752
  if (captured)
739
753
  return;
@@ -746,7 +760,7 @@ function registerCrossSessionTools(ctx, cfg) {
746
760
  });
747
761
  const timeoutHandle = setTimeout(() => resolveWait?.(), timeoutMs);
748
762
  try {
749
- await ctx.emit('inbound:message', incoming);
763
+ await events.emit('inbound:message', incoming);
750
764
  await waitPromise;
751
765
  }
752
766
  finally {
@@ -754,7 +768,7 @@ function registerCrossSessionTools(ctx, cfg) {
754
768
  dispose();
755
769
  }
756
770
  if (!captured) {
757
- ctx.logger.warn(`[delegate] return -> ${callCtx.sessionId} timedOut=true wait=${timeoutSec}s (未捕获 agent:turn:after)`);
771
+ logger.warn(`[delegate] return -> ${callCtx.sessionId} timedOut=true wait=${timeoutSec}s (未捕获 agent:turn:after)`);
758
772
  return JSON.stringify({
759
773
  delegated: true,
760
774
  targetSessionId,
@@ -768,7 +782,6 @@ function registerCrossSessionTools(ctx, cfg) {
768
782
  const entryAfter = recentDelegations.get(dedupKey);
769
783
  if (entryAfter) {
770
784
  entryAfter.status = 'replied';
771
- entryAfter.lastOutcome = captured.outcome;
772
785
  const r = captured.reply ?? '';
773
786
  entryAfter.lastReplyPreview =
774
787
  r.length > 60 ? `${r.slice(0, 60).replace(/\n/g, ' ')}...` : r.replace(/\n/g, ' ');
@@ -780,8 +793,7 @@ function registerCrossSessionTools(ctx, cfg) {
780
793
  // 不挂载或未产出时不放该字段,避免上游对「persona 一定存在」做假设。
781
794
  let personaState;
782
795
  try {
783
- const personaService = ctx.getService('persona');
784
- const state = personaService?.getSessionState?.(targetSessionId);
796
+ const state = persona.current?.getSessionState?.(targetSessionId);
785
797
  if (state && Object.keys(state).length > 0) {
786
798
  personaState = state;
787
799
  }
@@ -805,23 +817,30 @@ function registerCrossSessionTools(ctx, cfg) {
805
817
  : captured.reply.length > 60
806
818
  ? `"${captured.reply.slice(0, 60).replace(/\n/g, ' ')}..." (+${captured.reply.length - 60}字)`
807
819
  : `"${captured.reply.replace(/\n/g, ' ')}"`;
808
- ctx.logger.info(`[delegate] return -> ${callCtx.sessionId} outcome=${captured.outcome} reply=${replyPreview}${personaState ? ' personaState=yes' : ''}`);
820
+ logger.info(`[delegate] return -> ${callCtx.sessionId} outcome=${captured.outcome} reply=${replyPreview}${personaState ? ' personaState=yes' : ''}`);
809
821
  return JSON.stringify(payload);
810
822
  },
811
823
  });
812
- ctx.logger.info('跨会话协作工具已注册');
824
+ logger.info('跨会话协作工具已注册');
813
825
  }
814
826
  // ===== 插件入口 =====
815
- export function apply(ctx, config) {
816
- const cfg = resolveConfig(config);
817
- if (!cfg.enabled)
818
- return;
819
- const historyService = createSessionHistoryService(ctx, cfg);
820
- ctx.provide('session-history', historyService, { label: '会话历史读取' });
821
- registerSessionHistoryTools(ctx, historyService, cfg);
822
- if (cfg.crossSessionEnabled) {
823
- trackProactiveTurnDepth(ctx);
824
- registerCrossSessionTools(ctx, cfg);
825
- }
826
- }
827
+ export default definePlugin({
828
+ name: '@aalis/plugin-tool-session',
829
+ displayName: '会话工具',
830
+ subsystem: 'session',
831
+ configSchema,
832
+ provides: [sessionHistory],
833
+ uses,
834
+ apply(caps) {
835
+ const cfg = resolveConfig(caps.config);
836
+ if (!cfg.enabled)
837
+ return;
838
+ const historyService = createSessionHistoryService(caps, cfg);
839
+ caps.provide(sessionHistory, historyService, { label: '会话历史读取' });
840
+ registerSessionHistoryTools(caps, historyService, cfg);
841
+ if (cfg.crossSessionEnabled) {
842
+ registerCrossSessionTools(caps, cfg);
843
+ }
844
+ },
845
+ });
827
846
  //# sourceMappingURL=index.js.map
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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-tool-session",
3
- "version": "0.11.0",
3
+ "version": "0.13.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,29 +24,41 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@aalis/schema-config": ">=0.9.0 <1.0.0",
28
- "@aalis/api-platform": ">=0.5.0 <1.0.0",
29
- "@aalis/api-tools": ">=0.7.0 <1.0.0"
27
+ "@aalis/schema-config": ">=0.13.0 <1.0.0",
28
+ "@aalis/api-memory": ">=0.7.0 <1.0.0",
29
+ "@aalis/api-persona": ">=0.8.0 <1.0.0",
30
+ "@aalis/api-platform": ">=0.8.0 <1.0.0",
31
+ "@aalis/api-session-history": ">=0.1.0 <1.0.0",
32
+ "@aalis/api-tools": ">=0.10.0 <1.0.0",
33
+ "@aalis/api-hooks": ">=0.1.0 <1.0.0"
30
34
  },
31
35
  "devDependencies": {
32
36
  "@types/node": "^22.0.0",
33
37
  "typescript": "^5.7.0",
34
- "@aalis/core": "0.12.1",
35
- "@aalis/api-agent": "0.7.1",
36
- "@aalis/api-memory": "0.5.1",
37
- "@aalis/api-tool-session": "0.5.0",
38
- "@aalis/schema-message": "0.8.1"
38
+ "@aalis/core": "0.18.0",
39
+ "@aalis/api-agent": "0.9.0",
40
+ "@aalis/schema-message": "0.9.0"
39
41
  },
40
42
  "peerDependencies": {
41
- "@aalis/core": ">=0.2.0 <1.0.0"
43
+ "@aalis/core": ">=0.18.0 <1.0.0"
42
44
  },
43
45
  "aalis": {
44
46
  "service": {
45
47
  "optional": [
46
- "memory"
48
+ "tools",
49
+ "memory",
50
+ "platform",
51
+ "persona"
47
52
  ],
48
53
  "provides": [
49
54
  "session-history"
55
+ ],
56
+ "required": [
57
+ "config",
58
+ "events",
59
+ "hooks",
60
+ "logger",
61
+ "provide"
50
62
  ]
51
63
  }
52
64
  },