@zhin.js/core 1.0.37 → 1.0.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +57 -3
  3. package/lib/adapter.d.ts +11 -0
  4. package/lib/adapter.d.ts.map +1 -1
  5. package/lib/adapter.js +61 -0
  6. package/lib/adapter.js.map +1 -1
  7. package/lib/ai/index.d.ts +3 -39
  8. package/lib/ai/index.d.ts.map +1 -1
  9. package/lib/ai/index.js +2 -44
  10. package/lib/ai/index.js.map +1 -1
  11. package/lib/ai/providers/anthropic.d.ts.map +1 -1
  12. package/lib/ai/providers/anthropic.js +2 -0
  13. package/lib/ai/providers/anthropic.js.map +1 -1
  14. package/lib/ai/providers/openai.d.ts.map +1 -1
  15. package/lib/ai/providers/openai.js +8 -0
  16. package/lib/ai/providers/openai.js.map +1 -1
  17. package/lib/ai/types.d.ts +5 -3
  18. package/lib/ai/types.d.ts.map +1 -1
  19. package/lib/built/ai-trigger.js.map +1 -1
  20. package/lib/built/common-adapter-tools.d.ts +55 -0
  21. package/lib/built/common-adapter-tools.d.ts.map +1 -0
  22. package/lib/built/common-adapter-tools.js +158 -0
  23. package/lib/built/common-adapter-tools.js.map +1 -0
  24. package/lib/built/dispatcher.d.ts.map +1 -1
  25. package/lib/built/dispatcher.js +50 -46
  26. package/lib/built/dispatcher.js.map +1 -1
  27. package/lib/built/skill.d.ts.map +1 -1
  28. package/lib/built/skill.js +0 -1
  29. package/lib/built/skill.js.map +1 -1
  30. package/lib/built/tool.d.ts +3 -3
  31. package/lib/built/tool.d.ts.map +1 -1
  32. package/lib/built/tool.js.map +1 -1
  33. package/lib/feature.d.ts +16 -1
  34. package/lib/feature.d.ts.map +1 -1
  35. package/lib/feature.js +41 -2
  36. package/lib/feature.js.map +1 -1
  37. package/lib/index.d.ts +1 -0
  38. package/lib/index.d.ts.map +1 -1
  39. package/lib/index.js +2 -0
  40. package/lib/index.js.map +1 -1
  41. package/lib/plugin.d.ts +38 -1
  42. package/lib/plugin.d.ts.map +1 -1
  43. package/lib/plugin.js +73 -22
  44. package/lib/plugin.js.map +1 -1
  45. package/lib/scheduler/scheduler.js +1 -1
  46. package/lib/scheduler/scheduler.js.map +1 -1
  47. package/lib/types.d.ts +43 -28
  48. package/lib/types.d.ts.map +1 -1
  49. package/lib/utils.d.ts +12 -3
  50. package/lib/utils.d.ts.map +1 -1
  51. package/lib/utils.js +64 -54
  52. package/lib/utils.js.map +1 -1
  53. package/package.json +5 -5
  54. package/src/adapter.ts +85 -5
  55. package/src/ai/index.ts +8 -186
  56. package/src/ai/providers/anthropic.ts +1 -0
  57. package/src/ai/providers/openai.ts +5 -1
  58. package/src/ai/types.ts +6 -4
  59. package/src/built/ai-trigger.ts +2 -2
  60. package/src/built/common-adapter-tools.ts +207 -0
  61. package/src/built/dispatcher.ts +51 -52
  62. package/src/built/skill.ts +3 -4
  63. package/src/built/tool.ts +3 -3
  64. package/src/feature.ts +45 -2
  65. package/src/index.ts +2 -0
  66. package/src/plugin.ts +92 -31
  67. package/src/scheduler/scheduler.ts +1 -1
  68. package/src/types.ts +39 -28
  69. package/src/utils.ts +63 -52
  70. package/tests/ai/setup.ts +2 -2
  71. package/tests/utils.test.ts +1 -3
  72. package/lib/ai/agent.d.ts +0 -130
  73. package/lib/ai/agent.d.ts.map +0 -1
  74. package/lib/ai/agent.js +0 -702
  75. package/lib/ai/agent.js.map +0 -1
  76. package/lib/ai/bootstrap.d.ts +0 -91
  77. package/lib/ai/bootstrap.d.ts.map +0 -1
  78. package/lib/ai/bootstrap.js +0 -243
  79. package/lib/ai/bootstrap.js.map +0 -1
  80. package/lib/ai/builtin-tools.d.ts +0 -59
  81. package/lib/ai/builtin-tools.d.ts.map +0 -1
  82. package/lib/ai/builtin-tools.js +0 -777
  83. package/lib/ai/builtin-tools.js.map +0 -1
  84. package/lib/ai/compaction.d.ts +0 -132
  85. package/lib/ai/compaction.d.ts.map +0 -1
  86. package/lib/ai/compaction.js +0 -370
  87. package/lib/ai/compaction.js.map +0 -1
  88. package/lib/ai/context-manager.d.ts +0 -213
  89. package/lib/ai/context-manager.d.ts.map +0 -1
  90. package/lib/ai/context-manager.js +0 -313
  91. package/lib/ai/context-manager.js.map +0 -1
  92. package/lib/ai/conversation-memory.d.ts +0 -181
  93. package/lib/ai/conversation-memory.d.ts.map +0 -1
  94. package/lib/ai/conversation-memory.js +0 -581
  95. package/lib/ai/conversation-memory.js.map +0 -1
  96. package/lib/ai/cron-engine.d.ts +0 -92
  97. package/lib/ai/cron-engine.d.ts.map +0 -1
  98. package/lib/ai/cron-engine.js +0 -278
  99. package/lib/ai/cron-engine.js.map +0 -1
  100. package/lib/ai/follow-up.d.ts +0 -131
  101. package/lib/ai/follow-up.d.ts.map +0 -1
  102. package/lib/ai/follow-up.js +0 -265
  103. package/lib/ai/follow-up.js.map +0 -1
  104. package/lib/ai/hooks.d.ts +0 -143
  105. package/lib/ai/hooks.d.ts.map +0 -1
  106. package/lib/ai/hooks.js +0 -108
  107. package/lib/ai/hooks.js.map +0 -1
  108. package/lib/ai/init.d.ts +0 -30
  109. package/lib/ai/init.d.ts.map +0 -1
  110. package/lib/ai/init.js +0 -686
  111. package/lib/ai/init.js.map +0 -1
  112. package/lib/ai/output.d.ts +0 -93
  113. package/lib/ai/output.d.ts.map +0 -1
  114. package/lib/ai/output.js +0 -176
  115. package/lib/ai/output.js.map +0 -1
  116. package/lib/ai/rate-limiter.d.ts +0 -38
  117. package/lib/ai/rate-limiter.d.ts.map +0 -1
  118. package/lib/ai/rate-limiter.js +0 -86
  119. package/lib/ai/rate-limiter.js.map +0 -1
  120. package/lib/ai/service.d.ts +0 -88
  121. package/lib/ai/service.d.ts.map +0 -1
  122. package/lib/ai/service.js +0 -285
  123. package/lib/ai/service.js.map +0 -1
  124. package/lib/ai/session.d.ts +0 -186
  125. package/lib/ai/session.d.ts.map +0 -1
  126. package/lib/ai/session.js +0 -443
  127. package/lib/ai/session.js.map +0 -1
  128. package/lib/ai/subagent.d.ts +0 -50
  129. package/lib/ai/subagent.d.ts.map +0 -1
  130. package/lib/ai/subagent.js +0 -144
  131. package/lib/ai/subagent.js.map +0 -1
  132. package/lib/ai/tone-detector.d.ts +0 -19
  133. package/lib/ai/tone-detector.d.ts.map +0 -1
  134. package/lib/ai/tone-detector.js +0 -72
  135. package/lib/ai/tone-detector.js.map +0 -1
  136. package/lib/ai/tools.d.ts +0 -45
  137. package/lib/ai/tools.d.ts.map +0 -1
  138. package/lib/ai/tools.js +0 -206
  139. package/lib/ai/tools.js.map +0 -1
  140. package/lib/ai/user-profile.d.ts +0 -56
  141. package/lib/ai/user-profile.d.ts.map +0 -1
  142. package/lib/ai/user-profile.js +0 -130
  143. package/lib/ai/user-profile.js.map +0 -1
  144. package/lib/ai/zhin-agent/builtin-tools.d.ts +0 -17
  145. package/lib/ai/zhin-agent/builtin-tools.d.ts.map +0 -1
  146. package/lib/ai/zhin-agent/builtin-tools.js +0 -220
  147. package/lib/ai/zhin-agent/builtin-tools.js.map +0 -1
  148. package/lib/ai/zhin-agent/config.d.ts +0 -54
  149. package/lib/ai/zhin-agent/config.d.ts.map +0 -1
  150. package/lib/ai/zhin-agent/config.js +0 -76
  151. package/lib/ai/zhin-agent/config.js.map +0 -1
  152. package/lib/ai/zhin-agent/exec-policy.d.ts +0 -20
  153. package/lib/ai/zhin-agent/exec-policy.d.ts.map +0 -1
  154. package/lib/ai/zhin-agent/exec-policy.js +0 -71
  155. package/lib/ai/zhin-agent/exec-policy.js.map +0 -1
  156. package/lib/ai/zhin-agent/index.d.ts +0 -70
  157. package/lib/ai/zhin-agent/index.d.ts.map +0 -1
  158. package/lib/ai/zhin-agent/index.js +0 -404
  159. package/lib/ai/zhin-agent/index.js.map +0 -1
  160. package/lib/ai/zhin-agent/prompt.d.ts +0 -21
  161. package/lib/ai/zhin-agent/prompt.d.ts.map +0 -1
  162. package/lib/ai/zhin-agent/prompt.js +0 -111
  163. package/lib/ai/zhin-agent/prompt.js.map +0 -1
  164. package/lib/ai/zhin-agent/tool-collector.d.ts +0 -22
  165. package/lib/ai/zhin-agent/tool-collector.d.ts.map +0 -1
  166. package/lib/ai/zhin-agent/tool-collector.js +0 -218
  167. package/lib/ai/zhin-agent/tool-collector.js.map +0 -1
  168. package/src/ai/agent.ts +0 -831
  169. package/src/ai/bootstrap.ts +0 -309
  170. package/src/ai/builtin-tools.ts +0 -849
  171. package/src/ai/compaction.ts +0 -529
  172. package/src/ai/context-manager.ts +0 -440
  173. package/src/ai/conversation-memory.ts +0 -774
  174. package/src/ai/cron-engine.ts +0 -337
  175. package/src/ai/follow-up.ts +0 -357
  176. package/src/ai/hooks.ts +0 -223
  177. package/src/ai/init.ts +0 -762
  178. package/src/ai/output.ts +0 -261
  179. package/src/ai/rate-limiter.ts +0 -129
  180. package/src/ai/service.ts +0 -331
  181. package/src/ai/session.ts +0 -544
  182. package/src/ai/subagent.ts +0 -209
  183. package/src/ai/tone-detector.ts +0 -89
  184. package/src/ai/tools.ts +0 -218
  185. package/src/ai/user-profile.ts +0 -181
  186. package/src/ai/zhin-agent/builtin-tools.ts +0 -247
  187. package/src/ai/zhin-agent/config.ts +0 -113
  188. package/src/ai/zhin-agent/exec-policy.ts +0 -78
  189. package/src/ai/zhin-agent/index.ts +0 -512
  190. package/src/ai/zhin-agent/prompt.ts +0 -131
  191. package/src/ai/zhin-agent/tool-collector.ts +0 -243
  192. package/tests/ai/agent.test.ts +0 -614
  193. package/tests/ai/context-manager.test.ts +0 -413
  194. package/tests/ai/conversation-memory.test.ts +0 -128
  195. package/tests/ai/follow-up.test.ts +0 -175
  196. package/tests/ai/integration.test.ts +0 -584
  197. package/tests/ai/output.test.ts +0 -128
  198. package/tests/ai/rate-limiter.test.ts +0 -108
  199. package/tests/ai/session.test.ts +0 -375
  200. package/tests/ai/subagent.test.ts +0 -270
  201. package/tests/ai/tone-detector.test.ts +0 -80
  202. package/tests/ai/tools-builtin.test.ts +0 -346
  203. package/tests/ai/user-profile.test.ts +0 -73
  204. package/tests/ai/zhin-agent.test.ts +0 -177
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/core",
3
- "version": "1.0.37",
3
+ "version": "1.0.39",
4
4
  "description": "Zhin机器人核心框架",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -34,12 +34,12 @@
34
34
  },
35
35
  "dependencies": {
36
36
  "croner": "^9.1.0",
37
- "segment-matcher": "latest",
37
+ "segment-matcher": "^1.0.5",
38
38
  "smol-toml": "^1.6.0",
39
39
  "yaml": "^2.3.4",
40
- "@zhin.js/database": "1.0.24",
41
- "@zhin.js/logger": "0.1.21",
42
- "@zhin.js/schema": "1.0.21"
40
+ "@zhin.js/database": "1.0.26",
41
+ "@zhin.js/logger": "0.1.23",
42
+ "@zhin.js/schema": "1.0.23"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@types/node": "^24.3.0",
package/src/adapter.ts CHANGED
@@ -2,15 +2,29 @@ import { Bot } from "./bot.js";
2
2
  import { Plugin } from "./plugin.js";
3
3
  import { EventEmitter } from "events";
4
4
  import { Message } from "./message.js";
5
- import { BeforeSendHandler, SendOptions, Tool, ToolContext } from "./types.js";
5
+ import { BeforeSendHandler, SendOptions, Tool, ToolContext, ToolScope } from "./types.js";
6
6
  import { segment } from "./utils.js";
7
7
  import { ZhinTool, isZhinTool, type ToolInput } from "./built/tool.js";
8
8
  import type { Skill, SkillFeature } from "./built/skill.js";
9
+ import {
10
+ type IGroupManagement,
11
+ GROUP_METHOD_SPECS,
12
+ GROUP_MANAGEMENT_SKILL_DESCRIPTION,
13
+ GROUP_MANAGEMENT_SKILL_TAGS,
14
+ GROUP_MANAGEMENT_SKILL_KEYWORDS,
15
+ buildMethodArgs,
16
+ } from "./built/common-adapter-tools.js";
9
17
  /**
10
18
  * Adapter类:适配器抽象,管理多平台Bot实例。
11
19
  * 负责根据配置启动/关闭各平台机器人,统一异常处理。
12
- *
20
+ *
13
21
  * 适配器可以提供 AI 工具,供 AI 服务调用。
22
+ *
23
+ * 群管理能力:
24
+ * Adapter 基类声明了 IGroupManagement 中的可选方法规范,
25
+ * 具体适配器(ICQQ/Discord/Telegram 等)选择性覆写。
26
+ * 调用 registerGroupManagementSkill() 后,基类自动检测
27
+ * 哪些方法已被实现,生成对应的 Tool 并注册为 "群聊管理" Skill。
14
28
  */
15
29
  export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.Lifecycle> {
16
30
  /** 当前适配器下所有Bot实例,key为bot名称 */
@@ -40,7 +54,7 @@ export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.
40
54
  this.logger.info(`${message.$bot} recv ${message.$channel.type}(${message.$channel.id}):${segment.raw(message.$content)}`);
41
55
  const rootPlugin = this.plugin?.root || this.plugin;
42
56
  // 优先使用 MessageDispatcher(新架构),回退到旧中间件链(兼容)
43
- const dispatcher = rootPlugin?.inject('dispatcher' as any) as any;
57
+ const dispatcher = rootPlugin?.inject('dispatcher') as { dispatch?: (msg: Message) => Promise<void> } | undefined;
44
58
  if (dispatcher && typeof dispatcher.dispatch === 'function') {
45
59
  void dispatcher.dispatch(message).catch((err: unknown) => {
46
60
  this.logger.error('dispatcher.dispatch(message) failed', err);
@@ -87,6 +101,8 @@ export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.
87
101
  this.bots.set(bot.$id, bot);
88
102
  }
89
103
  this.logger.debug(`adapter ${this.name} started`);
104
+
105
+ this._autoDetectGroupManagement();
90
106
  }
91
107
  /**
92
108
  * 停止适配器,断开并移除所有Bot实例
@@ -145,7 +161,7 @@ export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.
145
161
 
146
162
  // 同步到全局 ToolFeature(如果可用),使适配器工具出现在插件 features 统计中
147
163
  let globalDispose: (() => void) | undefined;
148
- const toolFeature = this.plugin?.root?.inject('tool' as any) as any;
164
+ const toolFeature = this.plugin?.root?.inject('tool') as { addTool?: (tool: Tool, name: string, gen: boolean) => () => void } | undefined;
149
165
  if (toolFeature && typeof toolFeature.addTool === 'function') {
150
166
  const adapterPluginName = this.plugin?.name || `adapter:${this.name}`;
151
167
  globalDispose = toolFeature.addTool(toolWithSource, adapterPluginName, false);
@@ -191,7 +207,7 @@ export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.
191
207
  tags?: string[];
192
208
  conventions?: string;
193
209
  }): void {
194
- const skillFeature = this.plugin?.root?.inject('skill' as any) as SkillFeature | undefined;
210
+ const skillFeature = this.plugin?.root?.inject('skill') as SkillFeature | undefined;
195
211
  if (!skillFeature) {
196
212
  this.logger.debug(`declareSkill: SkillFeature 不可用,跳过 Skill 注册`);
197
213
  return;
@@ -305,6 +321,70 @@ export abstract class Adapter<R extends Bot = Bot> extends EventEmitter<Adapter.
305
321
  },
306
322
  });
307
323
  }
324
+
325
+ // ==========================================================================
326
+ // 群管理自动检测 — start() 结束时自动执行
327
+ // ==========================================================================
328
+
329
+ /**
330
+ * 遍历 GROUP_METHOD_SPECS,检测子类是否覆写了对应方法。
331
+ * 对每个已实现的方法生成 Tool 并注册,最后聚合为 "群聊管理" Skill。
332
+ */
333
+ private _autoDetectGroupManagement(): void {
334
+ const self = this as unknown as IGroupManagement;
335
+ const prefix = this.name as string;
336
+ const generatedTools: Tool[] = [];
337
+
338
+ for (const spec of GROUP_METHOD_SPECS) {
339
+ const fn = self[spec.method];
340
+ if (typeof fn !== 'function') continue;
341
+
342
+ const boundFn: (...args: any[]) => Promise<any> = fn.bind(self);
343
+
344
+ const properties: Record<string, any> = {
345
+ bot_id: { type: 'string', description: 'Bot ID', contextKey: 'botId' },
346
+ scene_id: { type: 'string', description: '群/服务器 ID', contextKey: 'sceneId' },
347
+ };
348
+ const required: string[] = ['bot_id', 'scene_id'];
349
+
350
+ for (const [name, schema] of Object.entries(spec.extraParams)) {
351
+ properties[name] = schema;
352
+ }
353
+ if (spec.extraRequired) {
354
+ required.push(...spec.extraRequired);
355
+ }
356
+
357
+ const tool: Tool = {
358
+ name: `${prefix}_${spec.toolSuffix}`,
359
+ description: `${spec.description} (${prefix})`,
360
+ parameters: { type: 'object' as const, properties, required },
361
+ execute: async (args: Record<string, any>) => {
362
+ const { bot_id, scene_id, ...rest } = args;
363
+ return boundFn(...buildMethodArgs(spec.method, bot_id, scene_id, rest));
364
+ },
365
+ tags: ['group', 'management', prefix],
366
+ keywords: spec.keywords,
367
+ permissionLevel: spec.permissionLevel,
368
+ scopes: ['group', 'channel'] as ToolScope[],
369
+ preExecutable: spec.preExecutable,
370
+ };
371
+
372
+ this.addTool(tool);
373
+ generatedTools.push(tool);
374
+ }
375
+
376
+ if (generatedTools.length === 0) return;
377
+
378
+ this.declareSkill({
379
+ description: GROUP_MANAGEMENT_SKILL_DESCRIPTION,
380
+ keywords: GROUP_MANAGEMENT_SKILL_KEYWORDS,
381
+ tags: GROUP_MANAGEMENT_SKILL_TAGS,
382
+ });
383
+
384
+ this.logger.debug(
385
+ `自动检测到 ${generatedTools.length} 个群管理方法 → 已注册 Skill`,
386
+ );
387
+ }
308
388
  }
309
389
  export interface Adapters {}
310
390
  export namespace Adapter {
package/src/ai/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
- * @zhin.js/core — AI 模块
2
+ * @zhin.js/core — AI 模块(仅基础类型与 Provider)
3
3
  *
4
- * @zhin.js/ai 包已合并至此,所有 AI 能力内置在 core 中。
4
+ * Agent 循环、会话、ZhinAgent 等已迁至 @zhin.js/agent。
5
5
  */
6
6
 
7
7
  // ── 类型定义 ──
@@ -21,131 +21,14 @@ export type {
21
21
  AgentTool,
22
22
  AgentConfig,
23
23
  AgentResult,
24
+ Usage,
25
+ ToolFilterOptions,
26
+ SessionConfig,
27
+ Session,
28
+ ToolDefinition as ChatToolDefinition,
29
+ JsonSchema,
24
30
  } from './types.js';
25
31
 
26
- // ── AI Service ──
27
- export { AIService } from './service.js';
28
-
29
- // ── Agent ──
30
- export { Agent, createAgent, formatToolTitle } from './agent.js';
31
-
32
- // ── Session ──
33
- export {
34
- SessionManager,
35
- createMemorySessionManager,
36
- createDatabaseSessionManager,
37
- AI_SESSION_MODEL,
38
- } from './session.js';
39
-
40
- // ── Context Manager ──
41
- export {
42
- createContextManager,
43
- CHAT_MESSAGE_MODEL,
44
- CONTEXT_SUMMARY_MODEL,
45
- } from './context-manager.js';
46
- export type {
47
- ContextManager,
48
- ContextConfig,
49
- MessageRecord,
50
- } from './context-manager.js';
51
-
52
- // ── ZhinAgent ──
53
- export { ZhinAgent } from './zhin-agent/index.js';
54
- export type { ZhinAgentConfig, OnChunkCallback } from './zhin-agent/index.js';
55
-
56
- // ── ZhinAgent sub-modules (for advanced consumers) ──
57
- export { PERM_MAP, DEFAULT_CONFIG as ZHIN_AGENT_DEFAULT_CONFIG, SECTION_SEP } from './zhin-agent/config.js';
58
- export { checkExecPolicy, applyExecPolicyToTools, resolveExecAllowlist, EXEC_PRESETS } from './zhin-agent/exec-policy.js';
59
- export { collectRelevantTools, toAgentTool } from './zhin-agent/tool-collector.js';
60
- export { buildRichSystemPrompt, buildContextHint, buildEnhancedPersona, buildUserMessageWithHistory, contentToText } from './zhin-agent/prompt.js';
61
- export type { RichSystemPromptContext } from './zhin-agent/prompt.js';
62
- export { createChatHistoryTool, createUserProfileTool, createScheduleFollowUpTool, createSpawnTaskTool } from './zhin-agent/builtin-tools.js';
63
-
64
- // ── Conversation Memory ──
65
- export {
66
- ConversationMemory,
67
- AI_MESSAGE_MODEL,
68
- AI_SUMMARY_MODEL,
69
- } from './conversation-memory.js';
70
- export type { ConversationMemoryConfig } from './conversation-memory.js';
71
-
72
- // ── User Profile ──
73
- export {
74
- UserProfileStore,
75
- AI_USER_PROFILE_MODEL,
76
- } from './user-profile.js';
77
-
78
- // ── Rate Limiter ──
79
- export { RateLimiter } from './rate-limiter.js';
80
- export type { RateLimitConfig, RateLimitResult } from './rate-limiter.js';
81
-
82
- // ── Follow-Up ──
83
- export { FollowUpManager, AI_FOLLOWUP_MODEL } from './follow-up.js';
84
- export type { FollowUpRecord, FollowUpSender } from './follow-up.js';
85
-
86
- // ── Subagent ──
87
- export { SubagentManager } from './subagent.js';
88
- export type {
89
- SubagentOrigin,
90
- SubagentResultSender,
91
- SpawnOptions,
92
- SubagentManagerOptions,
93
- } from './subagent.js';
94
-
95
- // ── 持久化定时任务引擎 ──
96
- export {
97
- PersistentCronEngine,
98
- readCronJobsFile,
99
- writeCronJobsFile,
100
- getCronJobsFilePath,
101
- generateCronJobId,
102
- createCronTools,
103
- setCronManager,
104
- getCronManager,
105
- CRON_JOBS_FILENAME,
106
- } from './cron-engine.js';
107
- export type {
108
- CronJobRecord,
109
- CronRunner,
110
- AddCronFn,
111
- PersistentCronEngineOptions,
112
- CronManager,
113
- } from './cron-engine.js';
114
-
115
- // ── Tone Detector ──
116
- export { detectTone } from './tone-detector.js';
117
- export type { Tone } from './tone-detector.js';
118
-
119
- // ── 多模态输出 ──
120
- export {
121
- parseOutput,
122
- renderToPlainText,
123
- renderToSatori,
124
- } from './output.js';
125
- export type {
126
- OutputElement,
127
- TextElement,
128
- ImageElement,
129
- AudioElement,
130
- VideoElement,
131
- CardElement,
132
- FileElement,
133
- CardField,
134
- CardButton,
135
- } from './output.js';
136
-
137
- // ── 内置工具 ──
138
- export {
139
- calculatorTool,
140
- timeTool,
141
- searchTool,
142
- codeRunnerTool,
143
- httpTool,
144
- memoryTool,
145
- getBuiltinTools,
146
- getAllBuiltinTools,
147
- } from './tools.js';
148
-
149
32
  // ── Providers ──
150
33
  export {
151
34
  BaseProvider,
@@ -161,64 +44,3 @@ export type {
161
44
  AnthropicConfig,
162
45
  OllamaConfig,
163
46
  } from './providers/index.js';
164
-
165
- // ── 初始化 ──
166
- export { initAIModule } from './init.js';
167
-
168
- // ── Hook 系统 (借鉴 OpenClaw) ──
169
- export {
170
- registerAIHook,
171
- unregisterAIHook,
172
- triggerAIHook,
173
- createAIHookEvent,
174
- clearAIHooks,
175
- getRegisteredAIHookKeys,
176
- } from './hooks.js';
177
- export type {
178
- AIHookEvent,
179
- AIHookEventType,
180
- AIHookHandler,
181
- MessageReceivedEvent,
182
- MessageSentEvent,
183
- SessionCompactEvent,
184
- SessionNewEvent,
185
- AgentBootstrapEvent,
186
- ToolCallEvent,
187
- } from './hooks.js';
188
-
189
- // ── 会话压缩 (借鉴 OpenClaw) ──
190
- export {
191
- estimateTokens,
192
- estimateMessagesTokens,
193
- splitMessagesByTokenShare,
194
- chunkMessagesByMaxTokens,
195
- computeAdaptiveChunkRatio,
196
- resolveContextWindowTokens,
197
- evaluateContextWindowGuard,
198
- summarizeWithFallback,
199
- summarizeInStages,
200
- pruneHistoryForContext,
201
- compactSession,
202
- DEFAULT_CONTEXT_TOKENS,
203
- } from './compaction.js';
204
- export type {
205
- ContextWindowSource,
206
- ContextWindowInfo,
207
- ContextWindowGuardResult,
208
- PruneResult,
209
- } from './compaction.js';
210
-
211
- // ── 引导文件管理 (借鉴 OpenClaw) ──
212
- export {
213
- loadBootstrapFiles,
214
- buildContextFiles,
215
- buildBootstrapContextSection,
216
- loadSoulPersona,
217
- loadToolsGuide,
218
- loadAgentsMemory,
219
- clearBootstrapCache,
220
- } from './bootstrap.js';
221
- export type {
222
- BootstrapFile,
223
- ContextFile,
224
- } from './bootstrap.js';
@@ -189,6 +189,7 @@ export class AnthropicProvider extends BaseProvider {
189
189
  this.contextWindow = config.contextWindow ?? 200000;
190
190
  this.baseUrl = config.baseUrl || 'https://api.anthropic.com';
191
191
  this.anthropicVersion = config.anthropicVersion || '2023-06-01';
192
+ if (config.models?.length) this.models = config.models;
192
193
  }
193
194
 
194
195
  protected async fetch<T>(url: string, options: RequestInit & { json?: any } = {}): Promise<T> {
@@ -37,7 +37,8 @@ export class OpenAIProvider extends BaseProvider {
37
37
  super(config);
38
38
  this.contextWindow = config.contextWindow ?? 128000;
39
39
  this.baseUrl = config.baseUrl || 'https://api.openai.com/v1';
40
-
40
+ if (config.models?.length) this.models = config.models;
41
+
41
42
  if (config.organization) {
42
43
  this.config.headers = {
43
44
  ...this.config.headers,
@@ -114,6 +115,7 @@ export class DeepSeekProvider extends OpenAIProvider {
114
115
  ...config,
115
116
  baseUrl: config.baseUrl || 'https://api.deepseek.com/v1',
116
117
  });
118
+ if (config.models?.length) this.models = config.models;
117
119
  }
118
120
 
119
121
  async listModels(): Promise<string[]> {
@@ -137,6 +139,7 @@ export class MoonshotProvider extends OpenAIProvider {
137
139
  ...config,
138
140
  baseUrl: config.baseUrl || 'https://api.moonshot.cn/v1',
139
141
  });
142
+ if (config.models?.length) this.models = config.models;
140
143
  }
141
144
 
142
145
  async listModels(): Promise<string[]> {
@@ -162,6 +165,7 @@ export class ZhipuProvider extends OpenAIProvider {
162
165
  ...config,
163
166
  baseUrl: config.baseUrl || 'https://open.bigmodel.cn/api/paas/v4',
164
167
  });
168
+ if (config.models?.length) this.models = config.models;
165
169
  }
166
170
 
167
171
  async listModels(): Promise<string[]> {
package/src/ai/types.ts CHANGED
@@ -51,10 +51,11 @@ export interface JsonSchema {
51
51
  properties?: Record<string, JsonSchema>;
52
52
  required?: string[];
53
53
  items?: JsonSchema;
54
- enum?: any[];
54
+ enum?: unknown[];
55
55
  description?: string;
56
- default?: any;
57
- [key: string]: any;
56
+ default?: unknown;
57
+ /** JSON Schema allows arbitrary extension properties */
58
+ [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any -- JSON Schema spec requires open index
58
59
  }
59
60
 
60
61
  // ============================================================================
@@ -141,6 +142,7 @@ export interface ProviderConfig {
141
142
  apiKey?: string;
142
143
  baseUrl?: string;
143
144
  defaultModel?: string;
145
+ models?: string[];
144
146
  timeout?: number;
145
147
  maxRetries?: number;
146
148
  headers?: Record<string, string>;
@@ -183,7 +185,7 @@ export interface AgentTool {
183
185
  name: string;
184
186
  description: string;
185
187
  parameters: JsonSchema;
186
- execute: (args: Record<string, any>) => Promise<any>;
188
+ execute: (args: Record<string, any>) => Promise<unknown>;
187
189
  /** 工具标签,用于分类和快速匹配 */
188
190
  tags?: string[];
189
191
  /** 触发关键词,用户消息包含这些词时优先选择此工具 */
@@ -171,12 +171,12 @@ export function inferSenderPermissions<T extends object>(
171
171
 
172
172
  const isGroupOwner = senderPermissions.includes('owner') ||
173
173
  senderPermissions.includes('group_owner') ||
174
- (message as any).$sender?.role === 'owner';
174
+ message.$sender?.role === 'owner';
175
175
 
176
176
  const isGroupAdmin = isGroupOwner ||
177
177
  senderPermissions.includes('admin') ||
178
178
  senderPermissions.includes('group_admin') ||
179
- (message as any).$sender?.role === 'admin';
179
+ message.$sender?.role === 'admin';
180
180
 
181
181
  let permissionLevel: ToolPermissionLevel = 'user';
182
182
  if (isOwner) permissionLevel = 'owner';