@zhin.js/core 1.2.0 → 1.2.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.
Files changed (130) hide show
  1. package/README.md +9 -9
  2. package/lib/adapter.d.ts +16 -14
  3. package/lib/adapter.d.ts.map +1 -1
  4. package/lib/adapter.js +50 -32
  5. package/lib/adapter.js.map +1 -1
  6. package/lib/agent-prompt.d.ts +3 -3
  7. package/lib/agent-prompt.d.ts.map +1 -1
  8. package/lib/built/adapter-process.d.ts +5 -4
  9. package/lib/built/adapter-process.d.ts.map +1 -1
  10. package/lib/built/adapter-process.js +6 -5
  11. package/lib/built/adapter-process.js.map +1 -1
  12. package/lib/built/agent-preset.d.ts +1 -1
  13. package/lib/built/agent-preset.d.ts.map +1 -1
  14. package/lib/built/agent-preset.js +1 -1
  15. package/lib/built/agent-preset.js.map +1 -1
  16. package/lib/built/ai-trigger.d.ts +13 -13
  17. package/lib/built/ai-trigger.d.ts.map +1 -1
  18. package/lib/built/ai-trigger.js +37 -49
  19. package/lib/built/ai-trigger.js.map +1 -1
  20. package/lib/built/authorization.d.ts +11 -0
  21. package/lib/built/authorization.d.ts.map +1 -0
  22. package/lib/built/authorization.js +49 -0
  23. package/lib/built/authorization.js.map +1 -0
  24. package/lib/built/common-adapter-tools.d.ts +21 -14
  25. package/lib/built/common-adapter-tools.d.ts.map +1 -1
  26. package/lib/built/common-adapter-tools.js +58 -41
  27. package/lib/built/common-adapter-tools.js.map +1 -1
  28. package/lib/built/connect-endpoint-instance.d.ts +18 -0
  29. package/lib/built/connect-endpoint-instance.d.ts.map +1 -0
  30. package/lib/built/connect-endpoint-instance.js +41 -0
  31. package/lib/built/connect-endpoint-instance.js.map +1 -0
  32. package/lib/built/database.d.ts +4 -0
  33. package/lib/built/database.d.ts.map +1 -1
  34. package/lib/built/database.js +8 -0
  35. package/lib/built/database.js.map +1 -1
  36. package/lib/built/dispatcher.d.ts.map +1 -1
  37. package/lib/built/dispatcher.js +3 -0
  38. package/lib/built/dispatcher.js.map +1 -1
  39. package/lib/built/endpoint-lifecycle.d.ts +28 -0
  40. package/lib/built/endpoint-lifecycle.d.ts.map +1 -0
  41. package/lib/built/endpoint-lifecycle.js +36 -0
  42. package/lib/built/endpoint-lifecycle.js.map +1 -0
  43. package/lib/built/login-assist.d.ts +4 -4
  44. package/lib/built/login-assist.d.ts.map +1 -1
  45. package/lib/built/login-assist.js +5 -5
  46. package/lib/built/login-assist.js.map +1 -1
  47. package/lib/built/message-enrich.d.ts +40 -0
  48. package/lib/built/message-enrich.d.ts.map +1 -0
  49. package/lib/built/message-enrich.js +84 -0
  50. package/lib/built/message-enrich.js.map +1 -0
  51. package/lib/built/message-filter.d.ts +4 -4
  52. package/lib/built/message-filter.d.ts.map +1 -1
  53. package/lib/built/message-filter.js +4 -4
  54. package/lib/built/message-filter.js.map +1 -1
  55. package/lib/built/permission.d.ts +3 -2
  56. package/lib/built/permission.d.ts.map +1 -1
  57. package/lib/built/permission.js +38 -45
  58. package/lib/built/permission.js.map +1 -1
  59. package/lib/built/permit-check.d.ts +8 -0
  60. package/lib/built/permit-check.d.ts.map +1 -0
  61. package/lib/built/permit-check.js +36 -0
  62. package/lib/built/permit-check.js.map +1 -0
  63. package/lib/built/permit-parse.d.ts +17 -0
  64. package/lib/built/permit-parse.d.ts.map +1 -0
  65. package/lib/built/permit-parse.js +33 -0
  66. package/lib/built/permit-parse.js.map +1 -0
  67. package/lib/built/platform-permit.d.ts +21 -0
  68. package/lib/built/platform-permit.d.ts.map +1 -0
  69. package/lib/built/platform-permit.js +67 -0
  70. package/lib/built/platform-permit.js.map +1 -0
  71. package/lib/built/prepend-quote-context.d.ts +2 -2
  72. package/lib/built/prepend-quote-context.d.ts.map +1 -1
  73. package/lib/built/prepend-quote-context.js +11 -11
  74. package/lib/built/prepend-quote-context.js.map +1 -1
  75. package/lib/built/queue-im-field-contract.d.ts +1 -1
  76. package/lib/built/queue-im-field-contract.d.ts.map +1 -1
  77. package/lib/built/queue-im-field-contract.js +3 -3
  78. package/lib/built/queue-im-field-contract.js.map +1 -1
  79. package/lib/built/roles.d.ts +4 -4
  80. package/lib/built/roles.d.ts.map +1 -1
  81. package/lib/built/roles.js +4 -4
  82. package/lib/built/roles.js.map +1 -1
  83. package/lib/built/tool.d.ts +12 -12
  84. package/lib/built/tool.d.ts.map +1 -1
  85. package/lib/built/tool.js +38 -22
  86. package/lib/built/tool.js.map +1 -1
  87. package/lib/command.d.ts.map +1 -1
  88. package/lib/command.js +11 -2
  89. package/lib/command.js.map +1 -1
  90. package/lib/endpoint-capabilities.d.ts +45 -0
  91. package/lib/endpoint-capabilities.d.ts.map +1 -0
  92. package/lib/endpoint-capabilities.js +56 -0
  93. package/lib/endpoint-capabilities.js.map +1 -0
  94. package/lib/endpoint.d.ts +15 -0
  95. package/lib/endpoint.d.ts.map +1 -0
  96. package/lib/endpoint.js +2 -0
  97. package/lib/endpoint.js.map +1 -0
  98. package/lib/errors.d.ts +2 -2
  99. package/lib/errors.d.ts.map +1 -1
  100. package/lib/errors.js +4 -4
  101. package/lib/errors.js.map +1 -1
  102. package/lib/index.d.ts +13 -2
  103. package/lib/index.d.ts.map +1 -1
  104. package/lib/index.js +10 -2
  105. package/lib/index.js.map +1 -1
  106. package/lib/message.d.ts +3 -3
  107. package/lib/message.d.ts.map +1 -1
  108. package/lib/notice.d.ts +4 -3
  109. package/lib/notice.d.ts.map +1 -1
  110. package/lib/notice.js.map +1 -1
  111. package/lib/plugin.d.ts +5 -2
  112. package/lib/plugin.d.ts.map +1 -1
  113. package/lib/plugin.js +4 -0
  114. package/lib/plugin.js.map +1 -1
  115. package/lib/prompt.d.ts.map +1 -1
  116. package/lib/prompt.js +8 -4
  117. package/lib/prompt.js.map +1 -1
  118. package/lib/request.d.ts +3 -3
  119. package/lib/request.d.ts.map +1 -1
  120. package/lib/tool-zod.d.ts +3 -2
  121. package/lib/tool-zod.d.ts.map +1 -1
  122. package/lib/tool-zod.js +3 -3
  123. package/lib/tool-zod.js.map +1 -1
  124. package/lib/types.d.ts +19 -59
  125. package/lib/types.d.ts.map +1 -1
  126. package/package.json +6 -6
  127. package/lib/bot.d.ts +0 -38
  128. package/lib/bot.d.ts.map +0 -1
  129. package/lib/bot.js +0 -2
  130. package/lib/bot.js.map +0 -1
@@ -31,8 +31,8 @@ export const DEFAULT_AI_TRIGGER_CONFIG = {
31
31
  // ============================================================================
32
32
  // 工具函数
33
33
  // ============================================================================
34
- function normalizeAtIds(botAtIds) {
35
- const ids = botAtIds?.length ? botAtIds : [];
34
+ function normalizeAtIds(endpointAtIds) {
35
+ const ids = endpointAtIds?.length ? endpointAtIds : [];
36
36
  return [...new Set(ids.map((id) => String(id)).filter(Boolean))];
37
37
  }
38
38
  function segmentAtUserId(seg) {
@@ -43,33 +43,33 @@ function segmentAtUserId(seg) {
43
43
  const raw = record.user_id ?? record.qq ?? record.id;
44
44
  return raw == null ? '' : String(raw);
45
45
  }
46
- function isAtSegmentForBot(seg, botIds) {
46
+ function isAtSegmentForEndpoint(seg, endpointIds) {
47
47
  if (seg.type !== 'at' && seg.type !== 'mention')
48
48
  return false;
49
49
  const uid = segmentAtUserId(seg);
50
- return uid !== '' && botIds.includes(uid);
50
+ return uid !== '' && endpointIds.includes(uid);
51
51
  }
52
- function textMentionsBot(text, botIds) {
53
- for (const id of botIds) {
52
+ function textMentionsEndpoint(text, endpointIds) {
53
+ for (const id of endpointIds) {
54
54
  const re = new RegExp(`@${id.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}(?:\\s|$|[\\u200b\\uFEFF])`);
55
55
  if (re.test(text))
56
56
  return true;
57
57
  }
58
58
  return false;
59
59
  }
60
- function stripTextAtBot(text, botIds) {
60
+ function stripTextAtEndpoint(text, endpointIds) {
61
61
  let result = text;
62
- for (const id of botIds) {
62
+ for (const id of endpointIds) {
63
63
  const re = new RegExp(`@${id.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}(?:\\s|[\\u200b\\uFEFF])?`, 'g');
64
64
  result = result.replace(re, '');
65
65
  }
66
66
  return result;
67
67
  }
68
68
  /**
69
- * 收集用于 @ 匹配的 bot 标识符
69
+ * 收集用于 @ 匹配的 Endpoint 标识符
70
70
  */
71
- export function collectBotAtIds(message, extraIds) {
72
- const ids = new Set([String(message.$bot)]);
71
+ export function collectEndpointAtIds(message, extraIds) {
72
+ const ids = new Set([String(message.$endpoint)]);
73
73
  for (const id of extraIds ?? []) {
74
74
  if (id)
75
75
  ids.add(String(id));
@@ -77,15 +77,15 @@ export function collectBotAtIds(message, extraIds) {
77
77
  return [...ids];
78
78
  }
79
79
  /**
80
- * 检查消息是否 @ 了机器人
80
+ * 检查消息是否 @ 了 Endpoint
81
81
  */
82
- export function isAtBot(message, botAtIds) {
83
- const botIds = normalizeAtIds(botAtIds?.length ? botAtIds : collectBotAtIds(message));
84
- if (message.$content.some((seg) => isAtSegmentForBot(seg, botIds))) {
82
+ export function isAtEndpoint(message, endpointAtIds) {
83
+ const endpointIds = normalizeAtIds(endpointAtIds?.length ? endpointAtIds : collectEndpointAtIds(message));
84
+ if (message.$content.some((seg) => isAtSegmentForEndpoint(seg, endpointIds))) {
85
85
  return true;
86
86
  }
87
87
  for (const seg of message.$content) {
88
- if (seg.type === 'text' && seg.data?.text && textMentionsBot(seg.data.text, botIds)) {
88
+ if (seg.type === 'text' && seg.data?.text && textMentionsEndpoint(seg.data.text, endpointIds)) {
89
89
  return true;
90
90
  }
91
91
  }
@@ -118,23 +118,23 @@ export function parseRichMediaContent(content) {
118
118
  }
119
119
  }
120
120
  /**
121
- * 移除 @ 机器人的部分
121
+ * 移除 @ Endpoint 的部分
122
122
  */
123
- export function removeAtBot(message, botAtIds) {
124
- const botIds = normalizeAtIds(botAtIds?.length ? botAtIds : collectBotAtIds(message));
123
+ export function removeAtEndpoint(message, endpointAtIds) {
124
+ const endpointIds = normalizeAtIds(endpointAtIds?.length ? endpointAtIds : collectEndpointAtIds(message));
125
125
  return message.$content
126
- .filter((seg) => !isAtSegmentForBot(seg, botIds))
126
+ .filter((seg) => !isAtSegmentForEndpoint(seg, endpointIds))
127
127
  .map((seg) => {
128
128
  if (seg.type !== 'text' || !seg.data?.text)
129
129
  return seg;
130
- const stripped = stripTextAtBot(seg.data.text, botIds).trim();
130
+ const stripped = stripTextAtEndpoint(seg.data.text, endpointIds).trim();
131
131
  if (!stripped)
132
132
  return null;
133
133
  return { ...seg, data: { ...seg.data, text: stripped } };
134
134
  })
135
135
  .filter((seg) => seg != null);
136
136
  }
137
- function normalizeBotIdList(input) {
137
+ function normalizeEndpointIdList(input) {
138
138
  if (Array.isArray(input))
139
139
  return input.map((v) => String(v)).filter(Boolean);
140
140
  if (typeof input === 'string') {
@@ -142,15 +142,15 @@ function normalizeBotIdList(input) {
142
142
  }
143
143
  return [];
144
144
  }
145
- function collectBotTrustedIds(botConfig) {
146
- if (!botConfig)
145
+ function collectEndpointTrustedIds(endpointConfig) {
146
+ if (!endpointConfig)
147
147
  return [];
148
- return normalizeBotIdList(botConfig.trusted);
148
+ return normalizeEndpointIdList(endpointConfig.trusted);
149
149
  }
150
150
  /**
151
- * 解析发送者角色集合(IM 群角色 + trigger + bots[].$config)
151
+ * 解析发送者角色集合(IM 群角色 + trigger + endpoints[].$config)
152
152
  */
153
- export function resolveSenderRoles(message, config, botConfig) {
153
+ export function resolveSenderRoles(message, config, endpointConfig) {
154
154
  const scope = message.$channel?.type || 'private';
155
155
  // process 适配器(stdin/本机 CLI):操作者即宿主用户,恒为 master
156
156
  if (message.$adapter === 'process') {
@@ -160,36 +160,24 @@ export function resolveSenderRoles(message, config, botConfig) {
160
160
  };
161
161
  }
162
162
  const senderId = String(message.$sender.id);
163
- const senderPermissions = message.$sender.permissions || [];
164
163
  const roles = [];
165
164
  const masters = config.masters || [];
166
165
  const globalTrusted = config.trusted || [];
167
- const cfg = botConfig;
168
- const botMaster = cfg?.master != null ? String(cfg.master) : undefined;
169
- const botTrustedIds = collectBotTrustedIds(cfg);
170
- if (masters.includes(senderId) || (botMaster != null && senderId === botMaster)) {
166
+ const cfg = endpointConfig;
167
+ const endpointMaster = cfg?.master != null ? String(cfg.master) : undefined;
168
+ const endpointTrustedIds = collectEndpointTrustedIds(cfg);
169
+ if (masters.includes(senderId) || (endpointMaster != null && senderId === endpointMaster)) {
171
170
  roles.push('master');
172
171
  }
173
- else if (globalTrusted.includes(senderId) || botTrustedIds.includes(senderId)) {
172
+ else if (globalTrusted.includes(senderId) || endpointTrustedIds.includes(senderId)) {
174
173
  roles.push('trusted');
175
174
  }
176
- const isGroupOwner = senderPermissions.includes('owner')
177
- || senderPermissions.includes('group_owner')
178
- || message.$sender?.role === 'owner';
179
- const isGroupAdmin = isGroupOwner
180
- || senderPermissions.includes('admin')
181
- || senderPermissions.includes('group_admin')
182
- || message.$sender?.role === 'admin';
183
- if (isGroupOwner)
184
- roles.push('group_owner');
185
- else if (isGroupAdmin)
186
- roles.push('group_admin');
187
175
  return {
188
176
  scope,
189
177
  roles: normalizeSenderRoles(roles),
190
178
  };
191
179
  }
192
- /** 从 IM 消息生成 sessionId(platform:botId:type:sceneId) */
180
+ /** 从 IM 消息生成 sessionId(platform:endpointId:type:sceneId) */
193
181
  export function resolveIMSessionIdFromMessage(message) {
194
182
  const scope = (message.$channel?.type || 'private');
195
183
  const sceneId = scope === 'private'
@@ -197,7 +185,7 @@ export function resolveIMSessionIdFromMessage(message) {
197
185
  : String(message.$channel?.id || message.$sender.id);
198
186
  return resolveIMSessionId({
199
187
  platform: message.$adapter,
200
- botId: message.$bot,
188
+ endpointId: message.$endpoint,
201
189
  scope,
202
190
  sceneId,
203
191
  });
@@ -207,7 +195,7 @@ export function resolveIMSessionIdFromMessage(message) {
207
195
  */
208
196
  export function shouldTriggerAI(message, config, options) {
209
197
  const fullConfig = { ...DEFAULT_AI_TRIGGER_CONFIG, ...config };
210
- const botAtIds = collectBotAtIds(message, options?.botAtIds);
198
+ const endpointAtIds = collectEndpointAtIds(message, options?.endpointAtIds);
211
199
  if (!fullConfig.enabled) {
212
200
  return { triggered: false, content: '' };
213
201
  }
@@ -229,8 +217,8 @@ export function shouldTriggerAI(message, config, options) {
229
217
  }
230
218
  }
231
219
  // 2. 检查 @ 触发(群/频道主路径;仅 @ 无正文时也触发,由 Agent 处理空输入)
232
- if (fullConfig.respondToAt && isAtBot(message, botAtIds)) {
233
- const content = removeAtBot(message, botAtIds);
220
+ if (fullConfig.respondToAt && isAtEndpoint(message, endpointAtIds)) {
221
+ const content = removeAtEndpoint(message, endpointAtIds);
234
222
  return {
235
223
  triggered: true,
236
224
  content: content.length ? segment.toString(content).trim() : '',
@@ -1 +1 @@
1
- {"version":3,"file":"ai-trigger.js","sourceRoot":"","sources":["../../src/built/ai-trigger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-trigger.js","sourceRoot":"","sources":["../../src/built/ai-trigger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 授权重算 — ConfigFeature + Message 为单一真相源($sender.isMaster/isTrusted 为 enrich 快照)
3
+ */
4
+ import type { Plugin } from '../plugin.js';
5
+ import type { Message } from '../message.js';
6
+ import { type SenderRolesResult } from './ai-trigger.js';
7
+ /**
8
+ * 从 ConfigFeature + Message 重算发送者角色(含群角色与 master/trusted)
9
+ */
10
+ export declare function resolveSubjectRoles(plugin: Plugin, message: Message<any>): SenderRolesResult;
11
+ //# sourceMappingURL=authorization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization.d.ts","sourceRoot":"","sources":["../../src/built/authorization.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AAiEzB;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAI5F"}
@@ -0,0 +1,49 @@
1
+ import { mergeAITriggerConfig, resolveSenderRoles, } from './ai-trigger.js';
2
+ function findEndpointEntryFromConfig(config, adapter, endpointId) {
3
+ const endpoints = config.endpoints;
4
+ if (!Array.isArray(endpoints))
5
+ return undefined;
6
+ return endpoints.find((b) => b.context === adapter && String(b.name) === endpointId);
7
+ }
8
+ function readTriggerConfig(plugin) {
9
+ const root = plugin.root ?? plugin;
10
+ try {
11
+ const ai = root.inject('ai');
12
+ if (ai?.getTriggerConfig)
13
+ return ai.getTriggerConfig();
14
+ }
15
+ catch {
16
+ // ai 未就绪时回退 yaml
17
+ }
18
+ try {
19
+ const configSvc = root.inject('config');
20
+ const primary = configSvc?.getPrimary?.();
21
+ return primary?.ai?.trigger ?? {};
22
+ }
23
+ catch {
24
+ return {};
25
+ }
26
+ }
27
+ function readEndpointConfig(plugin, message) {
28
+ const root = plugin.root ?? plugin;
29
+ try {
30
+ const configSvc = root.inject('config');
31
+ const primary = configSvc?.getPrimary?.();
32
+ if (!primary)
33
+ return undefined;
34
+ const entry = findEndpointEntryFromConfig(primary, String(message.$adapter), String(message.$endpoint));
35
+ return entry;
36
+ }
37
+ catch {
38
+ return undefined;
39
+ }
40
+ }
41
+ /**
42
+ * 从 ConfigFeature + Message 重算发送者角色(含群角色与 master/trusted)
43
+ */
44
+ export function resolveSubjectRoles(plugin, message) {
45
+ const triggerConfig = mergeAITriggerConfig(readTriggerConfig(plugin));
46
+ const endpointConfig = readEndpointConfig(plugin, message);
47
+ return resolveSenderRoles(message, triggerConfig, endpointConfig);
48
+ }
49
+ //# sourceMappingURL=authorization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../../src/built/authorization.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GAGnB,MAAM,iBAAiB,CAAC;AAezB,SAAS,2BAA2B,CAClC,MAAqB,EACrB,OAAe,EACf,UAAkB;IAElB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,OAAO,SAAS,CAAC,IAAI,CACnB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,UAAU,CAC9D,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACvC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAA6D,CAAC;QACzF,IAAI,EAAE,EAAE,gBAAgB;YAAE,OAAO,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAEzB,CAAC;QACd,MAAM,OAAO,GAAG,SAAS,EAAE,UAAU,EAAE,EAA+B,CAAC;QACvE,OAAO,OAAO,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc,EAAE,OAAqB;IAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAEzB,CAAC;QACd,MAAM,OAAO,GAAG,SAAS,EAAE,UAAU,EAAE,EAA+B,CAAC;QACvE,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,MAAM,KAAK,GAAG,2BAA2B,CACvC,OAAO,EACP,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EACxB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAC1B,CAAC;QACF,OAAO,KAA4C,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,OAAqB;IACvE,MAAM,aAAa,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,OAAO,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;AACpE,CAAC"}
@@ -12,29 +12,29 @@
12
12
  * tools.forEach(t => this.addTool(t));
13
13
  * // 另:包内 skills/<name>/SKILL.md 供 Agent 发现
14
14
  */
15
- import type { Tool, SenderRole } from '../types.js';
15
+ import type { Tool } from '../types.js';
16
16
  /**
17
17
  * 群管理能力接口。
18
18
  * Adapter 基类通过此接口声明方法签名,子类选择性覆写。
19
19
  */
20
20
  export interface IGroupManagement {
21
- kickMember?(botId: string, sceneId: string, userId: string): Promise<any>;
22
- muteMember?(botId: string, sceneId: string, userId: string, duration?: number): Promise<any>;
23
- setMemberNickname?(botId: string, sceneId: string, userId: string, nickname: string): Promise<any>;
24
- setAdmin?(botId: string, sceneId: string, userId: string, enable?: boolean): Promise<any>;
25
- listMembers?(botId: string, sceneId: string): Promise<any>;
26
- banMember?(botId: string, sceneId: string, userId: string, reason?: string): Promise<any>;
27
- unbanMember?(botId: string, sceneId: string, userId: string): Promise<any>;
28
- setGroupName?(botId: string, sceneId: string, name: string): Promise<any>;
29
- muteAll?(botId: string, sceneId: string, enable?: boolean): Promise<any>;
30
- getGroupInfo?(botId: string, sceneId: string): Promise<any>;
21
+ kickMember?(endpointId: string, sceneId: string, userId: string): Promise<any>;
22
+ muteMember?(endpointId: string, sceneId: string, userId: string, duration?: number): Promise<any>;
23
+ setMemberNickname?(endpointId: string, sceneId: string, userId: string, nickname: string): Promise<any>;
24
+ setAdmin?(endpointId: string, sceneId: string, userId: string, enable?: boolean): Promise<any>;
25
+ listMembers?(endpointId: string, sceneId: string): Promise<any>;
26
+ banMember?(endpointId: string, sceneId: string, userId: string, reason?: string): Promise<any>;
27
+ unbanMember?(endpointId: string, sceneId: string, userId: string): Promise<any>;
28
+ setGroupName?(endpointId: string, sceneId: string, name: string): Promise<any>;
29
+ muteAll?(endpointId: string, sceneId: string, enable?: boolean): Promise<any>;
30
+ getGroupInfo?(endpointId: string, sceneId: string): Promise<any>;
31
31
  }
32
32
  export interface GroupMethodSpec {
33
33
  method: keyof IGroupManagement;
34
34
  toolSuffix: string;
35
35
  description: string;
36
36
  keywords: string[];
37
- requiredAnyRole?: SenderRole[];
37
+ permit?: string;
38
38
  extraParams: Record<string, {
39
39
  type: string;
40
40
  description: string;
@@ -49,7 +49,14 @@ export declare const GROUP_MANAGEMENT_SKILL_KEYWORDS: string[];
49
49
  export interface GroupManagementToolFactory<T> {
50
50
  (spec: GroupMethodSpec, prefix: string, execute: (args: Record<string, any>) => Promise<any>): T;
51
51
  }
52
- export declare function createGroupManagementTools(adapter: IGroupManagement, prefix: string): Tool[];
52
+ export declare function defaultQqGroupPermitResolver(adapterPrefix: string): (logicalPerm: string) => string;
53
+ export interface CreateGroupManagementToolsOptions {
54
+ /** 将 GROUP_METHOD_SPECS 逻辑 perm(group_admin/group_owner)映射为 platform(...) 字符串 */
55
+ permitResolver?: (logicalPerm: string) => string | undefined;
56
+ /** 是否注册默认 QQ 系 group checker(默认 true) */
57
+ registerChecker?: boolean;
58
+ }
59
+ export declare function createGroupManagementTools(adapter: IGroupManagement, prefix: string, options?: CreateGroupManagementToolsOptions): Tool[];
53
60
  export declare function createGroupManagementToolsRaw<T>(adapter: IGroupManagement, prefix: string, factory: GroupManagementToolFactory<T>): T[];
54
- export declare function buildMethodArgs(method: keyof IGroupManagement, botId: string, sceneId: string, rest: Record<string, any>): any[];
61
+ export declare function buildMethodArgs(method: keyof IGroupManagement, endpointId: string, sceneId: string, rest: Record<string, any>): any[];
55
62
  //# sourceMappingURL=common-adapter-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-adapter-tools.d.ts","sourceRoot":"","sources":["../../src/built/common-adapter-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-adapter-tools.d.ts","sourceRoot":"","sources":["../../src/built/common-adapter-tools.ts"],"names":[],"mappings":"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"}
@@ -12,13 +12,14 @@
12
12
  * tools.forEach(t => this.addTool(t));
13
13
  * // 另:包内 skills/<name>/SKILL.md 供 Agent 发现
14
14
  */
15
+ import { registerDefaultGroupPlatformPermitChecker } from './platform-permit.js';
15
16
  export const GROUP_METHOD_SPECS = [
16
17
  {
17
18
  method: 'kickMember',
18
19
  toolSuffix: 'kick_member',
19
20
  description: '将成员踢出群/服务器。适用于严重违规、广告号等需要移除的场景。踢出后该成员将无法再进入群聊(部分平台可重新邀请)。如果只需要用户名而没有 user_id,请先调用 list_members 查询',
20
21
  keywords: ['踢', 'kick', '移除', '踢出'],
21
- requiredAnyRole: ['group_admin'],
22
+ permit: 'group_admin',
22
23
  extraParams: {
23
24
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
24
25
  },
@@ -29,7 +30,7 @@ export const GROUP_METHOD_SPECS = [
29
30
  toolSuffix: 'mute_member',
30
31
  description: '禁言或解除禁言群成员。适用于违规发言、刷屏、骚扰他人等需要临时限制发言的场景。duration 单位为秒,传 0 表示解除禁言。默认禁言 10 分钟(600秒)。如果只有昵称而没有 user_id,请先调用 list_members 查询',
31
32
  keywords: ['禁言', 'mute', '静音', '解除禁言', '解禁', '闭嘴'],
32
- requiredAnyRole: ['group_admin'],
33
+ permit: 'group_admin',
33
34
  extraParams: {
34
35
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
35
36
  duration: { type: 'number', description: '禁言时长(秒),0=解除禁言,默认600(10分钟)。常用值:60=1分钟, 600=10分钟, 3600=1小时, 86400=1天', default: 600 },
@@ -41,7 +42,7 @@ export const GROUP_METHOD_SPECS = [
41
42
  toolSuffix: 'set_nickname',
42
43
  description: '设置群成员的群昵称/名片。仅修改群内显示名称,不影响用户的全局昵称。如果只有昵称而没有 user_id,请先调用 list_members 查询',
43
44
  keywords: ['昵称', '名片', 'nickname', 'card', '改名片'],
44
- requiredAnyRole: ['group_admin'],
45
+ permit: 'group_admin',
45
46
  extraParams: {
46
47
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
47
48
  nickname: { type: 'string', description: '新的群昵称/名片' },
@@ -53,7 +54,7 @@ export const GROUP_METHOD_SPECS = [
53
54
  toolSuffix: 'set_admin',
54
55
  description: '设置或取消群管理员。注意:此操作需要群主权限,普通管理员无法执行。enable=true 为设置管理员,enable=false 为取消管理员。如果只有昵称而没有 user_id,请先调用 list_members 查询',
55
56
  keywords: ['管理员', 'admin', '设置管理', '取消管理', '提升管理', '撤销管理'],
56
- requiredAnyRole: ['group_owner'],
57
+ permit: 'group_owner',
57
58
  extraParams: {
58
59
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
59
60
  enable: { type: 'boolean', description: 'true=设置为管理员,false=取消管理员身份', default: true },
@@ -73,7 +74,7 @@ export const GROUP_METHOD_SPECS = [
73
74
  toolSuffix: 'ban_member',
74
75
  description: '永久封禁成员(拉入黑名单)。与踢人(kick)不同,封禁后该成员无法再加入群聊。适用于恶意用户、严重违规等需要永久禁止的场景。如果只有昵称而没有 user_id,请先调用 list_members 查询',
75
76
  keywords: ['封禁', 'ban', '拉黑', '黑名单'],
76
- requiredAnyRole: ['group_admin'],
77
+ permit: 'group_admin',
77
78
  extraParams: {
78
79
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
79
80
  reason: { type: 'string', description: '封禁原因(将记录在封禁日志中)' },
@@ -85,7 +86,7 @@ export const GROUP_METHOD_SPECS = [
85
86
  toolSuffix: 'unban_member',
86
87
  description: '解除封禁,将成员从黑名单中移除。解除后该成员可以重新加入群聊。如果只有昵称而没有 user_id,请先调用 list_members 查询',
87
88
  keywords: ['解封', 'unban', '解除封禁', '移出黑名单'],
88
- requiredAnyRole: ['group_admin'],
89
+ permit: 'group_admin',
89
90
  extraParams: {
90
91
  user_id: { type: 'string', description: '目标用户 ID(如果只有昵称,先用 list_members 查询获取)' },
91
92
  },
@@ -96,7 +97,7 @@ export const GROUP_METHOD_SPECS = [
96
97
  toolSuffix: 'set_group_name',
97
98
  description: '修改群/服务器名称。修改后所有成员立即可见新群名',
98
99
  keywords: ['群名', '改名', 'group name', '修改群名'],
99
- requiredAnyRole: ['group_admin'],
100
+ permit: 'group_admin',
100
101
  extraParams: {
101
102
  name: { type: 'string', description: '新群名称' },
102
103
  },
@@ -107,7 +108,7 @@ export const GROUP_METHOD_SPECS = [
107
108
  toolSuffix: 'mute_all',
108
109
  description: '开启或关闭全员禁言。开启后除管理员外所有成员都无法发言。适用于紧急维护、重要通知、聊天秩序混乱等场景。enable=true 开启,enable=false 解除',
109
110
  keywords: ['全员禁言', 'mute all', '全体禁言', '全体解禁'],
110
- requiredAnyRole: ['group_admin'],
111
+ permit: 'group_admin',
111
112
  extraParams: {
112
113
  enable: { type: 'boolean', description: 'true=开启全员禁言,false=解除全员禁言', default: true },
113
114
  },
@@ -129,26 +130,42 @@ export const GROUP_MANAGEMENT_SKILL_KEYWORDS = [
129
130
  '群管理', '踢人', '禁言', '封禁', '管理员', '群名',
130
131
  '成员', 'kick', 'mute', 'ban', 'admin', 'members',
131
132
  ];
132
- export function createGroupManagementTools(adapter, prefix) {
133
- return createGroupManagementToolsRaw(adapter, prefix, (spec, prefix, execute) => ({
134
- name: `${prefix}_${spec.toolSuffix}`,
135
- description: `${spec.description} (${prefix})`,
136
- parameters: {
137
- type: 'object',
138
- properties: {
139
- bot_id: { type: 'string', description: 'Bot ID', contextKey: 'botId' },
140
- scene_id: { type: 'string', description: '群/服务器 ID', contextKey: 'sceneId' },
141
- ...Object.fromEntries(Object.entries(spec.extraParams)),
133
+ export function defaultQqGroupPermitResolver(adapterPrefix) {
134
+ return (logicalPerm) => `platform(${adapterPrefix},${logicalPerm})`;
135
+ }
136
+ function resolveSpecPermit(specPerm, prefix, permitResolver) {
137
+ if (!specPerm)
138
+ return undefined;
139
+ const resolved = permitResolver(specPerm);
140
+ return resolved ? [resolved] : undefined;
141
+ }
142
+ export function createGroupManagementTools(adapter, prefix, options = {}) {
143
+ const permitResolver = options.permitResolver ?? defaultQqGroupPermitResolver(prefix);
144
+ if (options.registerChecker !== false) {
145
+ registerDefaultGroupPlatformPermitChecker(prefix);
146
+ }
147
+ return createGroupManagementToolsRaw(adapter, prefix, (spec, prefix, execute) => {
148
+ const specPermissions = resolveSpecPermit(spec.permit, prefix, permitResolver);
149
+ return {
150
+ name: `${prefix}_${spec.toolSuffix}`,
151
+ description: `${spec.description} (${prefix})`,
152
+ parameters: {
153
+ type: 'object',
154
+ properties: {
155
+ endpoint_id: { type: 'string', description: 'Endpoint ID', contextKey: 'endpointId' },
156
+ scene_id: { type: 'string', description: '群/服务器 ID', contextKey: 'sceneId' },
157
+ ...Object.fromEntries(Object.entries(spec.extraParams)),
158
+ },
159
+ required: ['endpoint_id', 'scene_id', ...(spec.extraRequired ?? [])],
142
160
  },
143
- required: ['bot_id', 'scene_id', ...(spec.extraRequired ?? [])],
144
- },
145
- execute,
146
- tags: ['group', 'management', prefix],
147
- keywords: spec.keywords,
148
- ...(spec.requiredAnyRole?.length ? { requiredAnyRole: spec.requiredAnyRole } : {}),
149
- scopes: ['group', 'channel'],
150
- preExecutable: spec.preExecutable,
151
- }));
161
+ execute,
162
+ tags: ['group', 'management', prefix],
163
+ keywords: spec.keywords,
164
+ ...(specPermissions ? { permissions: specPermissions } : {}),
165
+ scopes: ['group', 'channel'],
166
+ preExecutable: spec.preExecutable,
167
+ };
168
+ });
152
169
  }
153
170
  export function createGroupManagementToolsRaw(adapter, prefix, factory) {
154
171
  const tools = [];
@@ -158,8 +175,8 @@ export function createGroupManagementToolsRaw(adapter, prefix, factory) {
158
175
  continue;
159
176
  const boundFn = fn.bind(adapter);
160
177
  const execute = async (args) => {
161
- const { bot_id, scene_id, ...rest } = args;
162
- const methodArgs = buildMethodArgs(spec.method, bot_id, scene_id, rest);
178
+ const { endpoint_id, scene_id, ...rest } = args;
179
+ const methodArgs = buildMethodArgs(spec.method, endpoint_id, scene_id, rest);
163
180
  return boundFn.apply(adapter, methodArgs);
164
181
  };
165
182
  tools.push(factory(spec, prefix, execute));
@@ -169,19 +186,19 @@ export function createGroupManagementToolsRaw(adapter, prefix, factory) {
169
186
  // ============================================================================
170
187
  // 参数映射(method → 有序参数列表)
171
188
  // ============================================================================
172
- export function buildMethodArgs(method, botId, sceneId, rest) {
189
+ export function buildMethodArgs(method, endpointId, sceneId, rest) {
173
190
  switch (method) {
174
- case 'kickMember': return [botId, sceneId, rest.user_id];
175
- case 'muteMember': return [botId, sceneId, rest.user_id, rest.duration ?? 600];
176
- case 'setMemberNickname': return [botId, sceneId, rest.user_id, rest.nickname];
177
- case 'setAdmin': return [botId, sceneId, rest.user_id, rest.enable ?? true];
178
- case 'listMembers': return [botId, sceneId];
179
- case 'banMember': return [botId, sceneId, rest.user_id, rest.reason];
180
- case 'unbanMember': return [botId, sceneId, rest.user_id];
181
- case 'setGroupName': return [botId, sceneId, rest.name];
182
- case 'muteAll': return [botId, sceneId, rest.enable ?? true];
183
- case 'getGroupInfo': return [botId, sceneId];
184
- default: return [botId, sceneId, ...Object.values(rest)];
191
+ case 'kickMember': return [endpointId, sceneId, rest.user_id];
192
+ case 'muteMember': return [endpointId, sceneId, rest.user_id, rest.duration ?? 600];
193
+ case 'setMemberNickname': return [endpointId, sceneId, rest.user_id, rest.nickname];
194
+ case 'setAdmin': return [endpointId, sceneId, rest.user_id, rest.enable ?? true];
195
+ case 'listMembers': return [endpointId, sceneId];
196
+ case 'banMember': return [endpointId, sceneId, rest.user_id, rest.reason];
197
+ case 'unbanMember': return [endpointId, sceneId, rest.user_id];
198
+ case 'setGroupName': return [endpointId, sceneId, rest.name];
199
+ case 'muteAll': return [endpointId, sceneId, rest.enable ?? true];
200
+ case 'getGroupInfo': return [endpointId, sceneId];
201
+ default: return [endpointId, sceneId, ...Object.values(rest)];
185
202
  }
186
203
  }
187
204
  //# sourceMappingURL=common-adapter-tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-adapter-tools.js","sourceRoot":"","sources":["../../src/built/common-adapter-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-adapter-tools.js","sourceRoot":"","sources":["../../src/built/common-adapter-tools.ts"],"names":[],"mappings":"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"}