@zhin.js/adapter-kook 1.0.24 → 1.0.26

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/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @zhin.js/adapter-kook
2
2
 
3
+ ## 1.0.26
4
+
5
+ ### Patch Changes
6
+
7
+ - 106d357: fix: ai
8
+ - Updated dependencies [106d357]
9
+ - zhin.js@1.0.26
10
+ - @zhin.js/logger@0.1.10
11
+
12
+ ## 1.0.25
13
+
14
+ ### Patch Changes
15
+
16
+ - 26d2942: fix: ai
17
+ - 6b02c41: fix: ai
18
+ - Updated dependencies [26d2942]
19
+ - Updated dependencies [6b02c41]
20
+ - @zhin.js/logger@0.1.9
21
+ - zhin.js@1.0.25
22
+
3
23
  ## 1.0.24
4
24
 
5
25
  ### Patch Changes
package/README.md CHANGED
@@ -92,7 +92,9 @@ export default defineConfig({
92
92
  ### 基础消息处理
93
93
 
94
94
  ```typescript
95
- import { addCommand, MessageCommand } from 'zhin.js'
95
+ import { usePlugin, MessageCommand } from 'zhin.js'
96
+
97
+ const { addCommand } = usePlugin()
96
98
 
97
99
  addCommand(new MessageCommand('hello <name:text>')
98
100
  .action(async (message, result) => {
@@ -145,9 +147,9 @@ addCommand(new MessageCommand('md')
145
147
  addCommand(new MessageCommand('card')
146
148
  .action(async (message) => {
147
149
  logger.info(message);
148
- if (message.$adapter === 'icqq') {
150
+ if (message.$adapter !== 'kook') {
149
151
  return "暂未适配平台!";
150
- } else if (message.$adapter === 'kook') {
152
+ } else {
151
153
  const cardMessage = [{
152
154
  type: 'card',
153
155
  theme: "secondary",
@@ -165,7 +167,7 @@ addCommand(new MessageCommand('card')
165
167
  }];
166
168
  return cardMessage;
167
169
  }
168
- return `当前平台:${message.adapter}`;
170
+ return `当前平台:${message.$adapter}`;
169
171
  })
170
172
  )
171
173
  ```
@@ -206,6 +208,112 @@ await bot.sendPrivateMsg(userId, '消息内容')
206
208
  await bot.$recallMessage(messageId)
207
209
  ```
208
210
 
211
+ ## 🔧 频道管理工具(AI 可调用)
212
+
213
+ 适配器自动注册了一系列频道管理工具,这些工具可以被 AI 调用,实现智能化的频道管理。
214
+
215
+ ### 权限要求
216
+
217
+ | 工具 | 所需权限 | 说明 |
218
+ |------|----------|------|
219
+ | `kook_kick_user` | 管理员 | 踢出用户 |
220
+ | `kook_ban_user` | 管理员 | 将用户加入黑名单 |
221
+ | `kook_unban_user` | 管理员 | 解除用户封禁 |
222
+ | `kook_grant_role` | 管理员 | 授予用户角色 |
223
+ | `kook_revoke_role` | 管理员 | 撤销用户角色 |
224
+ | `kook_set_nickname` | 管理员 | 设置用户昵称 |
225
+ | `kook_list_roles` | 普通用户 | 查看角色列表 |
226
+ | `kook_create_role` | 服务器主人 | 创建新角色 |
227
+ | `kook_delete_role` | 服务器主人 | 删除角色 |
228
+ | `kook_list_members` | 普通用户 | 查看成员列表 |
229
+
230
+ ### 使用示例
231
+
232
+ #### 通过 AI 对话管理频道
233
+
234
+ ```
235
+ 用户(服务器主人):把 @小明 踢出服务器
236
+ AI:已将用户 小明 踢出服务器。
237
+
238
+ 用户(管理员):把 @捣蛋鬼 禁言,他总是发广告
239
+ AI:已将用户 捣蛋鬼 加入黑名单,原因:发布广告。
240
+
241
+ 用户:查看服务器角色列表
242
+ AI:当前服务器有以下角色:
243
+ 1. 管理员 (ID: 123)
244
+ 2. 活跃成员 (ID: 456)
245
+ 3. 新人 (ID: 789)
246
+ ```
247
+
248
+ #### 编程调用
249
+
250
+ ```typescript
251
+ // 获取 KOOK Bot 实例
252
+ const kookAdapter = app.adapters.get('kook')
253
+ const bot = kookAdapter?.bots.get('my-kook-bot')
254
+
255
+ // 踢出用户
256
+ await bot.kickUser(guildId, userId)
257
+
258
+ // 加入黑名单(封禁)
259
+ await bot.addToBlacklist(guildId, userId, '违规发言', 7) // 删除7天内消息
260
+
261
+ // 解除封禁
262
+ await bot.removeFromBlacklist(guildId, userId)
263
+
264
+ // 授予角色
265
+ await bot.grantRole(guildId, userId, roleId)
266
+
267
+ // 撤销角色
268
+ await bot.revokeRole(guildId, userId, roleId)
269
+
270
+ // 设置昵称
271
+ await bot.setNickname(guildId, userId, '新昵称')
272
+
273
+ // 获取角色列表
274
+ const roles = await bot.getRoleList(guildId)
275
+
276
+ // 创建角色
277
+ const newRole = await bot.createRole(guildId, '新角色')
278
+
279
+ // 删除角色
280
+ await bot.deleteRole(guildId, roleId)
281
+
282
+ // 获取成员列表
283
+ const members = await bot.getGuildMembers(guildId)
284
+ ```
285
+
286
+ ### 发送者权限信息
287
+
288
+ 消息中的 `$sender` 现在包含 KOOK 特有的权限信息:
289
+
290
+ ```typescript
291
+ interface KookSenderInfo {
292
+ id: string;
293
+ name: string;
294
+ permission?: KookPermission; // 1=普通, 2=管理员, 4=服务器主人, 5=频道管理员
295
+ roles?: number[]; // 用户角色ID列表
296
+ isGuildOwner?: boolean; // 是否为服务器主人
297
+ isAdmin?: boolean; // 是否为管理员
298
+ }
299
+ ```
300
+
301
+ #### 在插件中检查权限
302
+
303
+ ```typescript
304
+ onMessage(async (message) => {
305
+ const sender = message.$sender as KookSenderInfo;
306
+
307
+ if (sender.isGuildOwner) {
308
+ console.log('这是服务器主人的消息');
309
+ }
310
+
311
+ if (sender.isAdmin) {
312
+ console.log('这是管理员的消息');
313
+ }
314
+ })
315
+ ```
316
+
209
317
  ## WebSocket vs Webhook
210
318
 
211
319
  ### WebSocket 模式(推荐)
package/lib/index.d.ts CHANGED
@@ -1,10 +1,28 @@
1
- import { Client, LogLevel, PrivateMessageEvent, ChannelMessageEvent } from "kook-client";
1
+ import { Client, LogLevel, PrivateMessageEvent, ChannelMessageEvent, User, Guild } from "kook-client";
2
2
  import { Bot, Adapter, Plugin, Message, SendOptions } from "zhin.js";
3
3
  declare module "zhin.js" {
4
4
  interface Adapters {
5
5
  kook: KookAdapter;
6
6
  }
7
7
  }
8
+ export declare enum KookPermission {
9
+ Normal = 1,
10
+ Admin = 2,
11
+ Owner = 4,
12
+ ChannelAdmin = 5
13
+ }
14
+ export interface KookSenderInfo {
15
+ id: string;
16
+ name: string;
17
+ /** KOOK 权限级别 */
18
+ permission?: KookPermission;
19
+ /** 用户角色列表 */
20
+ roles?: number[];
21
+ /** 是否为服务器主人 */
22
+ isGuildOwner?: boolean;
23
+ /** 是否为管理员 */
24
+ isAdmin?: boolean;
25
+ }
8
26
  export interface KookBotConfig {
9
27
  context: "kook";
10
28
  name: string;
@@ -33,6 +51,79 @@ export declare class KookBot extends Client implements Bot<KookBotConfig, KookRa
33
51
  * 将 KOOK 消息转换为标准消息格式
34
52
  */
35
53
  $formatMessage(msg: KookRawMessage): Message<KookRawMessage>;
54
+ /**
55
+ * 获取发送者的详细权限信息
56
+ */
57
+ private getSenderInfo;
58
+ /**
59
+ * 踢出用户
60
+ * @param guildId 服务器ID
61
+ * @param userId 用户ID
62
+ */
63
+ kickUser(guildId: string, userId: string): Promise<boolean>;
64
+ /**
65
+ * 将用户加入黑名单
66
+ * @param guildId 服务器ID
67
+ * @param userId 用户ID
68
+ * @param remark 备注
69
+ * @param delMsgDays 删除消息天数(0-7)
70
+ */
71
+ addToBlacklist(guildId: string, userId: string, remark?: string, delMsgDays?: number): Promise<boolean>;
72
+ /**
73
+ * 将用户从黑名单移除
74
+ * @param guildId 服务器ID
75
+ * @param userId 用户ID
76
+ */
77
+ removeFromBlacklist(guildId: string, userId: string): Promise<boolean>;
78
+ /**
79
+ * 给用户授予角色
80
+ * @param guildId 服务器ID
81
+ * @param userId 用户ID
82
+ * @param roleId 角色ID
83
+ */
84
+ grantRole(guildId: string, userId: string, roleId: string): Promise<boolean>;
85
+ /**
86
+ * 撤销用户角色
87
+ * @param guildId 服务器ID
88
+ * @param userId 用户ID
89
+ * @param roleId 角色ID
90
+ */
91
+ revokeRole(guildId: string, userId: string, roleId: string): Promise<boolean>;
92
+ /**
93
+ * 设置用户昵称
94
+ * @param guildId 服务器ID
95
+ * @param userId 用户ID
96
+ * @param nickname 新昵称
97
+ */
98
+ setNickname(guildId: string, userId: string, nickname: string): Promise<boolean>;
99
+ /**
100
+ * 获取服务器角色列表
101
+ * @param guildId 服务器ID
102
+ */
103
+ getRoleList(guildId: string): Promise<Guild.Role[]>;
104
+ /**
105
+ * 创建角色
106
+ * @param guildId 服务器ID
107
+ * @param name 角色名称
108
+ */
109
+ createRole(guildId: string, name: string): Promise<Guild.Role>;
110
+ /**
111
+ * 删除角色
112
+ * @param guildId 服务器ID
113
+ * @param roleId 角色ID
114
+ */
115
+ deleteRole(guildId: string, roleId: string): Promise<boolean>;
116
+ /**
117
+ * 获取黑名单列表
118
+ * @param guildId 服务器ID
119
+ */
120
+ getBlacklist(guildId: string): Promise<Guild.BlackInfo[]>;
121
+ /**
122
+ * 获取服务器成员列表
123
+ * @param guildId 服务器ID
124
+ * @param channelId 可选的频道ID
125
+ */
126
+ getGuildMembers(guildId: string, channelId?: string): Promise<User.Info[]>;
36
127
  private parseMarkdown;
37
128
  /**
38
129
  * 将 kook-client 的 MessageSegment[] 转换为 Zhin 的 MessageElement[]
@@ -72,6 +163,15 @@ export declare class KookAdapter extends Adapter<KookBot> {
72
163
  createBot(config: KookBotConfig): KookBot;
73
164
  start(): Promise<void>;
74
165
  stop(): Promise<void>;
166
+ /**
167
+ * 注册 KOOK 平台特有的管理工具
168
+ * 这些工具仅在 KOOK 平台可用,且需要相应权限
169
+ */
170
+ private registerKookTools;
171
+ /**
172
+ * 检查执行上下文中的权限
173
+ */
174
+ private checkPermission;
75
175
  }
76
176
  export {};
77
177
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,EAAkB,MAAM,aAAa,CAAC;AAEzG,OAAO,EACL,GAAG,EACH,OAAO,EACP,MAAM,EACN,OAAO,EACP,WAAW,EAMZ,MAAM,SAAS,CAAC;AAGjB,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,QAAQ;QAChB,IAAI,EAAE,WAAW,CAAC;KACnB;CACF;AAGD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAGD,KAAK,cAAc,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAMhE;;GAEG;AACH,qBAAa,OAAQ,SAAQ,MAAO,YAAW,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC;IAQtC,OAAO,EAAE,aAAa;IAP/D,UAAU,EAAE,OAAO,CAAS;IAC5B,OAAO,EAAE,WAAW,CAAC;IAErB,IAAI,GAAG,IAAI,MAAM,CAEhB;gBAEW,OAAO,EAAE,WAAW,EAAS,OAAO,EAAE,aAAa;IAc/D;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0C3B;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAwD5D,OAAO,CAAC,aAAa;IAsFrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8D3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAW/B;;KAEC;IACK,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAWlC;;KAEC;IACK,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BzD;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtD;;;KAGC;IACD,OAAO,CAAC,mBAAmB;CAoE5B;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,OAAO,CAAC,OAAO,CAAC;gBACnC,MAAM,EAAE,MAAM;IAI1B,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;IAMnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAO5B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -1,6 +1,14 @@
1
- import { Client } from "kook-client";
1
+ import { Client, } from "kook-client";
2
2
  import path from "path";
3
3
  import { Adapter, Message, usePlugin, } from "zhin.js";
4
+ // KOOK 用户权限枚举
5
+ export var KookPermission;
6
+ (function (KookPermission) {
7
+ KookPermission[KookPermission["Normal"] = 1] = "Normal";
8
+ KookPermission[KookPermission["Admin"] = 2] = "Admin";
9
+ KookPermission[KookPermission["Owner"] = 4] = "Owner";
10
+ KookPermission[KookPermission["ChannelAdmin"] = 5] = "ChannelAdmin";
11
+ })(KookPermission || (KookPermission = {}));
4
12
  const plugin = usePlugin();
5
13
  const { provide } = plugin;
6
14
  const logger = plugin.logger;
@@ -75,17 +83,31 @@ export class KookBot extends Client {
75
83
  const channelId = msg.message_type === "channel"
76
84
  ? msg.channel_id
77
85
  : msg.author_id;
86
+ // 获取发送者的权限信息
87
+ const senderInfo = this.getSenderInfo(msg);
88
+ // 频道消息需要获取 guild_id
89
+ let guildId;
90
+ if (msg.message_type === "channel") {
91
+ const channelMsg = msg;
92
+ // 尝试从 channel 获取 guild_id
93
+ try {
94
+ const channel = channelMsg.channel;
95
+ guildId = channel?.info?.guild_id;
96
+ }
97
+ catch {
98
+ // 如果获取失败,尝试从缓存中查找
99
+ }
100
+ }
78
101
  const message = Message.from(msg, {
79
102
  $id: msg.message_id.toString(),
80
103
  $adapter: "kook",
81
104
  $bot: this.$id,
82
- $sender: {
83
- id: msg.author_id.toString(),
84
- name: msg.author.info.nickname || msg.author.info.username || "未知用户",
85
- },
105
+ $sender: senderInfo,
86
106
  $channel: {
87
107
  id: channelId.toString(),
88
108
  type: msg.message_type === "channel" ? "channel" : "private",
109
+ // 频道消息包含服务器ID
110
+ ...(guildId ? { guild_id: guildId } : {}),
89
111
  },
90
112
  $content: this.parseMessageContent(msg.message),
91
113
  $raw: msg.raw_message,
@@ -115,6 +137,232 @@ export class KookBot extends Client {
115
137
  });
116
138
  return message;
117
139
  }
140
+ /**
141
+ * 获取发送者的详细权限信息
142
+ */
143
+ getSenderInfo(msg) {
144
+ const authorInfo = msg.author?.info;
145
+ const senderInfo = {
146
+ id: msg.author_id.toString(),
147
+ name: authorInfo?.nickname || authorInfo?.username || "未知用户",
148
+ };
149
+ // 频道消息才有权限信息
150
+ if (msg.message_type === "channel") {
151
+ const channelMsg = msg;
152
+ // 从 author.info 中获取权限信息(如果 kook-client 提供)
153
+ if (authorInfo) {
154
+ // 尝试获取角色列表
155
+ senderInfo.roles = authorInfo.roles || [];
156
+ // 尝试获取 guild_id 并检查是否为服务器主人
157
+ try {
158
+ const channel = channelMsg.channel;
159
+ const guildId = channel?.info?.guild_id;
160
+ if (guildId) {
161
+ const guildInfo = this.guilds?.get(guildId);
162
+ if (guildInfo) {
163
+ senderInfo.isGuildOwner = guildInfo.user_id === msg.author_id;
164
+ }
165
+ }
166
+ }
167
+ catch {
168
+ // 忽略获取失败
169
+ }
170
+ // 根据 permission 字段判断(如果有)
171
+ const permission = authorInfo.permission;
172
+ if (permission !== undefined) {
173
+ senderInfo.permission = permission;
174
+ senderInfo.isAdmin = permission === KookPermission.Admin ||
175
+ permission === KookPermission.Owner ||
176
+ permission === KookPermission.ChannelAdmin;
177
+ senderInfo.isGuildOwner = senderInfo.isGuildOwner || permission === KookPermission.Owner;
178
+ }
179
+ }
180
+ }
181
+ return senderInfo;
182
+ }
183
+ // ==================== 频道管理 API ====================
184
+ /**
185
+ * 踢出用户
186
+ * @param guildId 服务器ID
187
+ * @param userId 用户ID
188
+ */
189
+ async kickUser(guildId, userId) {
190
+ try {
191
+ const guild = this.pickGuild(guildId);
192
+ const result = await guild.kick(userId);
193
+ logger.info(`KOOK Bot ${this.$id} 踢出用户 ${userId} 从服务器 ${guildId}`);
194
+ return result;
195
+ }
196
+ catch (error) {
197
+ logger.error(`KOOK Bot ${this.$id} 踢出用户失败:`, error);
198
+ throw error;
199
+ }
200
+ }
201
+ /**
202
+ * 将用户加入黑名单
203
+ * @param guildId 服务器ID
204
+ * @param userId 用户ID
205
+ * @param remark 备注
206
+ * @param delMsgDays 删除消息天数(0-7)
207
+ */
208
+ async addToBlacklist(guildId, userId, remark, delMsgDays) {
209
+ try {
210
+ const member = this.pickGuildMember(guildId, userId);
211
+ const result = await member.addToBlackList(remark, delMsgDays);
212
+ logger.info(`KOOK Bot ${this.$id} 将用户 ${userId} 加入黑名单(服务器 ${guildId})`);
213
+ return result;
214
+ }
215
+ catch (error) {
216
+ logger.error(`KOOK Bot ${this.$id} 加入黑名单失败:`, error);
217
+ throw error;
218
+ }
219
+ }
220
+ /**
221
+ * 将用户从黑名单移除
222
+ * @param guildId 服务器ID
223
+ * @param userId 用户ID
224
+ */
225
+ async removeFromBlacklist(guildId, userId) {
226
+ try {
227
+ const member = this.pickGuildMember(guildId, userId);
228
+ const result = await member.removeFromBlackList();
229
+ logger.info(`KOOK Bot ${this.$id} 将用户 ${userId} 从黑名单移除(服务器 ${guildId})`);
230
+ return result;
231
+ }
232
+ catch (error) {
233
+ logger.error(`KOOK Bot ${this.$id} 移除黑名单失败:`, error);
234
+ throw error;
235
+ }
236
+ }
237
+ /**
238
+ * 给用户授予角色
239
+ * @param guildId 服务器ID
240
+ * @param userId 用户ID
241
+ * @param roleId 角色ID
242
+ */
243
+ async grantRole(guildId, userId, roleId) {
244
+ try {
245
+ const member = this.pickGuildMember(guildId, userId);
246
+ const result = await member.grant(roleId);
247
+ logger.info(`KOOK Bot ${this.$id} 授予用户 ${userId} 角色 ${roleId}(服务器 ${guildId})`);
248
+ return result;
249
+ }
250
+ catch (error) {
251
+ logger.error(`KOOK Bot ${this.$id} 授予角色失败:`, error);
252
+ throw error;
253
+ }
254
+ }
255
+ /**
256
+ * 撤销用户角色
257
+ * @param guildId 服务器ID
258
+ * @param userId 用户ID
259
+ * @param roleId 角色ID
260
+ */
261
+ async revokeRole(guildId, userId, roleId) {
262
+ try {
263
+ const member = this.pickGuildMember(guildId, userId);
264
+ const result = await member.revoke(roleId);
265
+ logger.info(`KOOK Bot ${this.$id} 撤销用户 ${userId} 角色 ${roleId}(服务器 ${guildId})`);
266
+ return result;
267
+ }
268
+ catch (error) {
269
+ logger.error(`KOOK Bot ${this.$id} 撤销角色失败:`, error);
270
+ throw error;
271
+ }
272
+ }
273
+ /**
274
+ * 设置用户昵称
275
+ * @param guildId 服务器ID
276
+ * @param userId 用户ID
277
+ * @param nickname 新昵称
278
+ */
279
+ async setNickname(guildId, userId, nickname) {
280
+ try {
281
+ const member = this.pickGuildMember(guildId, userId);
282
+ const result = await member.setNickname(nickname);
283
+ logger.info(`KOOK Bot ${this.$id} 设置用户 ${userId} 昵称为 "${nickname}"(服务器 ${guildId})`);
284
+ return result;
285
+ }
286
+ catch (error) {
287
+ logger.error(`KOOK Bot ${this.$id} 设置昵称失败:`, error);
288
+ throw error;
289
+ }
290
+ }
291
+ /**
292
+ * 获取服务器角色列表
293
+ * @param guildId 服务器ID
294
+ */
295
+ async getRoleList(guildId) {
296
+ try {
297
+ const guild = this.pickGuild(guildId);
298
+ return await guild.getRoleList();
299
+ }
300
+ catch (error) {
301
+ logger.error(`KOOK Bot ${this.$id} 获取角色列表失败:`, error);
302
+ throw error;
303
+ }
304
+ }
305
+ /**
306
+ * 创建角色
307
+ * @param guildId 服务器ID
308
+ * @param name 角色名称
309
+ */
310
+ async createRole(guildId, name) {
311
+ try {
312
+ const guild = this.pickGuild(guildId);
313
+ const role = await guild.createRole(name);
314
+ logger.info(`KOOK Bot ${this.$id} 创建角色 "${name}"(服务器 ${guildId})`);
315
+ return role;
316
+ }
317
+ catch (error) {
318
+ logger.error(`KOOK Bot ${this.$id} 创建角色失败:`, error);
319
+ throw error;
320
+ }
321
+ }
322
+ /**
323
+ * 删除角色
324
+ * @param guildId 服务器ID
325
+ * @param roleId 角色ID
326
+ */
327
+ async deleteRole(guildId, roleId) {
328
+ try {
329
+ const guild = this.pickGuild(guildId);
330
+ const result = await guild.deleteRole(roleId);
331
+ logger.info(`KOOK Bot ${this.$id} 删除角色 ${roleId}(服务器 ${guildId})`);
332
+ return result;
333
+ }
334
+ catch (error) {
335
+ logger.error(`KOOK Bot ${this.$id} 删除角色失败:`, error);
336
+ throw error;
337
+ }
338
+ }
339
+ /**
340
+ * 获取黑名单列表
341
+ * @param guildId 服务器ID
342
+ */
343
+ async getBlacklist(guildId) {
344
+ try {
345
+ return await this.getBlacklist(guildId);
346
+ }
347
+ catch (error) {
348
+ logger.error(`KOOK Bot ${this.$id} 获取黑名单失败:`, error);
349
+ throw error;
350
+ }
351
+ }
352
+ /**
353
+ * 获取服务器成员列表
354
+ * @param guildId 服务器ID
355
+ * @param channelId 可选的频道ID
356
+ */
357
+ async getGuildMembers(guildId, channelId) {
358
+ try {
359
+ return await this.getGuildUserList(guildId, channelId);
360
+ }
361
+ catch (error) {
362
+ logger.error(`KOOK Bot ${this.$id} 获取成员列表失败:`, error);
363
+ throw error;
364
+ }
365
+ }
118
366
  parseMarkdown(content) {
119
367
  const elements = [];
120
368
  // KMarkdown 图片格式: ![alt](url)
@@ -389,6 +637,14 @@ export class KookAdapter extends Adapter {
389
637
  return bot;
390
638
  }
391
639
  async start() {
640
+ // 注册 KOOK 特有的管理工具
641
+ this.registerKookTools();
642
+ this.declareSkill({
643
+ description: 'KOOK 服务器管理能力,包括成员管理(踢人、封禁、解封、改昵称)、角色管理(创建、删除、授予、撤销角色)、成员列表查询。',
644
+ keywords: ['KOOK', '开黑啦', '服务器管理', '角色'],
645
+ tags: ['kook', '服务器管理', '社交平台'],
646
+ conventions: '用户和服务器均使用字符串 ID 标识。guild_id 为服务器 ID,user_id 为用户 ID。调用工具时 bot 参数应填当前上下文的 Bot ID。',
647
+ });
392
648
  logger.info("KOOK 适配器已启动");
393
649
  }
394
650
  async stop() {
@@ -398,6 +654,436 @@ export class KookAdapter extends Adapter {
398
654
  }
399
655
  logger.info("KOOK 适配器已停止");
400
656
  }
657
+ /**
658
+ * 注册 KOOK 平台特有的管理工具
659
+ * 这些工具仅在 KOOK 平台可用,且需要相应权限
660
+ */
661
+ registerKookTools() {
662
+ // 踢出用户工具
663
+ this.addTool({
664
+ name: 'kook_kick_user',
665
+ description: '将用户踢出 KOOK 服务器(需要管理员或服务器主人权限)',
666
+ parameters: {
667
+ type: 'object',
668
+ properties: {
669
+ bot: {
670
+ type: 'string',
671
+ description: 'Bot 名称',
672
+ },
673
+ guild_id: {
674
+ type: 'string',
675
+ description: '服务器 ID',
676
+ },
677
+ user_id: {
678
+ type: 'string',
679
+ description: '要踢出的用户 ID',
680
+ },
681
+ },
682
+ required: ['bot', 'guild_id', 'user_id'],
683
+ },
684
+ platforms: ['kook'],
685
+ scopes: ['channel'],
686
+ permissionLevel: 'group_admin',
687
+ execute: async (args, context) => {
688
+ const { bot: botId, guild_id, user_id } = args;
689
+ const bot = this.bots.get(botId);
690
+ if (!bot)
691
+ throw new Error(`Bot ${botId} 不存在`);
692
+ // 权限检查
693
+ this.checkPermission(context, 'group_admin');
694
+ const success = await bot.kickUser(guild_id, user_id);
695
+ return { success, message: success ? `已将用户 ${user_id} 踢出服务器` : '踢出失败' };
696
+ },
697
+ });
698
+ // 黑名单管理工具
699
+ this.addTool({
700
+ name: 'kook_ban_user',
701
+ description: '将用户加入 KOOK 服务器黑名单(封禁用户,需要管理员权限)',
702
+ parameters: {
703
+ type: 'object',
704
+ properties: {
705
+ bot: {
706
+ type: 'string',
707
+ description: 'Bot 名称',
708
+ },
709
+ guild_id: {
710
+ type: 'string',
711
+ description: '服务器 ID',
712
+ },
713
+ user_id: {
714
+ type: 'string',
715
+ description: '要封禁的用户 ID',
716
+ },
717
+ remark: {
718
+ type: 'string',
719
+ description: '封禁原因/备注(可选)',
720
+ },
721
+ del_msg_days: {
722
+ type: 'number',
723
+ description: '删除该用户最近几天的消息(0-7,可选)',
724
+ },
725
+ },
726
+ required: ['bot', 'guild_id', 'user_id'],
727
+ },
728
+ platforms: ['kook'],
729
+ scopes: ['channel'],
730
+ permissionLevel: 'group_admin',
731
+ execute: async (args, context) => {
732
+ const { bot: botId, guild_id, user_id, remark, del_msg_days } = args;
733
+ const bot = this.bots.get(botId);
734
+ if (!bot)
735
+ throw new Error(`Bot ${botId} 不存在`);
736
+ this.checkPermission(context, 'group_admin');
737
+ const success = await bot.addToBlacklist(guild_id, user_id, remark, del_msg_days);
738
+ return {
739
+ success,
740
+ message: success ? `已将用户 ${user_id} 加入黑名单${remark ? `,原因:${remark}` : ''}` : '封禁失败'
741
+ };
742
+ },
743
+ });
744
+ // 解除封禁工具
745
+ this.addTool({
746
+ name: 'kook_unban_user',
747
+ description: '将用户从 KOOK 服务器黑名单移除(解除封禁)',
748
+ parameters: {
749
+ type: 'object',
750
+ properties: {
751
+ bot: {
752
+ type: 'string',
753
+ description: 'Bot 名称',
754
+ },
755
+ guild_id: {
756
+ type: 'string',
757
+ description: '服务器 ID',
758
+ },
759
+ user_id: {
760
+ type: 'string',
761
+ description: '要解封的用户 ID',
762
+ },
763
+ },
764
+ required: ['bot', 'guild_id', 'user_id'],
765
+ },
766
+ platforms: ['kook'],
767
+ scopes: ['channel'],
768
+ permissionLevel: 'group_admin',
769
+ execute: async (args, context) => {
770
+ const { bot: botId, guild_id, user_id } = args;
771
+ const bot = this.bots.get(botId);
772
+ if (!bot)
773
+ throw new Error(`Bot ${botId} 不存在`);
774
+ this.checkPermission(context, 'group_admin');
775
+ const success = await bot.removeFromBlacklist(guild_id, user_id);
776
+ return { success, message: success ? `已将用户 ${user_id} 从黑名单移除` : '解封失败' };
777
+ },
778
+ });
779
+ // 角色管理工具 - 授予角色
780
+ this.addTool({
781
+ name: 'kook_grant_role',
782
+ description: '给用户授予 KOOK 服务器角色',
783
+ parameters: {
784
+ type: 'object',
785
+ properties: {
786
+ bot: {
787
+ type: 'string',
788
+ description: 'Bot 名称',
789
+ },
790
+ guild_id: {
791
+ type: 'string',
792
+ description: '服务器 ID',
793
+ },
794
+ user_id: {
795
+ type: 'string',
796
+ description: '用户 ID',
797
+ },
798
+ role_id: {
799
+ type: 'string',
800
+ description: '角色 ID',
801
+ },
802
+ },
803
+ required: ['bot', 'guild_id', 'user_id', 'role_id'],
804
+ },
805
+ platforms: ['kook'],
806
+ scopes: ['channel'],
807
+ permissionLevel: 'group_admin',
808
+ execute: async (args, context) => {
809
+ const { bot: botId, guild_id, user_id, role_id } = args;
810
+ const bot = this.bots.get(botId);
811
+ if (!bot)
812
+ throw new Error(`Bot ${botId} 不存在`);
813
+ this.checkPermission(context, 'group_admin');
814
+ const success = await bot.grantRole(guild_id, user_id, role_id);
815
+ return { success, message: success ? `已授予用户 ${user_id} 角色 ${role_id}` : '授予角色失败' };
816
+ },
817
+ });
818
+ // 角色管理工具 - 撤销角色
819
+ this.addTool({
820
+ name: 'kook_revoke_role',
821
+ description: '撤销用户的 KOOK 服务器角色',
822
+ parameters: {
823
+ type: 'object',
824
+ properties: {
825
+ bot: {
826
+ type: 'string',
827
+ description: 'Bot 名称',
828
+ },
829
+ guild_id: {
830
+ type: 'string',
831
+ description: '服务器 ID',
832
+ },
833
+ user_id: {
834
+ type: 'string',
835
+ description: '用户 ID',
836
+ },
837
+ role_id: {
838
+ type: 'string',
839
+ description: '角色 ID',
840
+ },
841
+ },
842
+ required: ['bot', 'guild_id', 'user_id', 'role_id'],
843
+ },
844
+ platforms: ['kook'],
845
+ scopes: ['channel'],
846
+ permissionLevel: 'group_admin',
847
+ execute: async (args, context) => {
848
+ const { bot: botId, guild_id, user_id, role_id } = args;
849
+ const bot = this.bots.get(botId);
850
+ if (!bot)
851
+ throw new Error(`Bot ${botId} 不存在`);
852
+ this.checkPermission(context, 'group_admin');
853
+ const success = await bot.revokeRole(guild_id, user_id, role_id);
854
+ return { success, message: success ? `已撤销用户 ${user_id} 的角色 ${role_id}` : '撤销角色失败' };
855
+ },
856
+ });
857
+ // 设置昵称工具
858
+ this.addTool({
859
+ name: 'kook_set_nickname',
860
+ description: '设置用户在 KOOK 服务器中的昵称',
861
+ parameters: {
862
+ type: 'object',
863
+ properties: {
864
+ bot: {
865
+ type: 'string',
866
+ description: 'Bot 名称',
867
+ },
868
+ guild_id: {
869
+ type: 'string',
870
+ description: '服务器 ID',
871
+ },
872
+ user_id: {
873
+ type: 'string',
874
+ description: '用户 ID',
875
+ },
876
+ nickname: {
877
+ type: 'string',
878
+ description: '新昵称',
879
+ },
880
+ },
881
+ required: ['bot', 'guild_id', 'user_id', 'nickname'],
882
+ },
883
+ platforms: ['kook'],
884
+ scopes: ['channel'],
885
+ permissionLevel: 'group_admin',
886
+ execute: async (args, context) => {
887
+ const { bot: botId, guild_id, user_id, nickname } = args;
888
+ const bot = this.bots.get(botId);
889
+ if (!bot)
890
+ throw new Error(`Bot ${botId} 不存在`);
891
+ this.checkPermission(context, 'group_admin');
892
+ const success = await bot.setNickname(guild_id, user_id, nickname);
893
+ return { success, message: success ? `已将用户 ${user_id} 的昵称设置为 "${nickname}"` : '设置昵称失败' };
894
+ },
895
+ });
896
+ // 获取角色列表工具
897
+ this.addTool({
898
+ name: 'kook_list_roles',
899
+ description: '获取 KOOK 服务器的角色列表',
900
+ parameters: {
901
+ type: 'object',
902
+ properties: {
903
+ bot: {
904
+ type: 'string',
905
+ description: 'Bot 名称',
906
+ },
907
+ guild_id: {
908
+ type: 'string',
909
+ description: '服务器 ID',
910
+ },
911
+ },
912
+ required: ['bot', 'guild_id'],
913
+ },
914
+ platforms: ['kook'],
915
+ scopes: ['channel'],
916
+ permissionLevel: 'user', // 普通用户可查看
917
+ execute: async (args) => {
918
+ const { bot: botId, guild_id } = args;
919
+ const bot = this.bots.get(botId);
920
+ if (!bot)
921
+ throw new Error(`Bot ${botId} 不存在`);
922
+ const roles = await bot.getRoleList(guild_id);
923
+ return {
924
+ roles: roles.map(r => ({
925
+ id: r.role_id,
926
+ name: r.name,
927
+ color: r.color,
928
+ position: r.position,
929
+ permissions: r.permissions,
930
+ })),
931
+ count: roles.length,
932
+ };
933
+ },
934
+ });
935
+ // 创建角色工具
936
+ this.addTool({
937
+ name: 'kook_create_role',
938
+ description: '在 KOOK 服务器中创建新角色(需要服务器主人权限)',
939
+ parameters: {
940
+ type: 'object',
941
+ properties: {
942
+ bot: {
943
+ type: 'string',
944
+ description: 'Bot 名称',
945
+ },
946
+ guild_id: {
947
+ type: 'string',
948
+ description: '服务器 ID',
949
+ },
950
+ name: {
951
+ type: 'string',
952
+ description: '角色名称',
953
+ },
954
+ },
955
+ required: ['bot', 'guild_id', 'name'],
956
+ },
957
+ platforms: ['kook'],
958
+ scopes: ['channel'],
959
+ permissionLevel: 'group_owner',
960
+ execute: async (args, context) => {
961
+ const { bot: botId, guild_id, name } = args;
962
+ const bot = this.bots.get(botId);
963
+ if (!bot)
964
+ throw new Error(`Bot ${botId} 不存在`);
965
+ this.checkPermission(context, 'group_owner');
966
+ const role = await bot.createRole(guild_id, name);
967
+ return {
968
+ success: true,
969
+ message: `已创建角色 "${name}"`,
970
+ role: {
971
+ id: role.role_id,
972
+ name: role.name,
973
+ },
974
+ };
975
+ },
976
+ });
977
+ // 删除角色工具
978
+ this.addTool({
979
+ name: 'kook_delete_role',
980
+ description: '删除 KOOK 服务器中的角色(需要服务器主人权限)',
981
+ parameters: {
982
+ type: 'object',
983
+ properties: {
984
+ bot: {
985
+ type: 'string',
986
+ description: 'Bot 名称',
987
+ },
988
+ guild_id: {
989
+ type: 'string',
990
+ description: '服务器 ID',
991
+ },
992
+ role_id: {
993
+ type: 'string',
994
+ description: '角色 ID',
995
+ },
996
+ },
997
+ required: ['bot', 'guild_id', 'role_id'],
998
+ },
999
+ platforms: ['kook'],
1000
+ scopes: ['channel'],
1001
+ permissionLevel: 'group_owner',
1002
+ execute: async (args, context) => {
1003
+ const { bot: botId, guild_id, role_id } = args;
1004
+ const bot = this.bots.get(botId);
1005
+ if (!bot)
1006
+ throw new Error(`Bot ${botId} 不存在`);
1007
+ this.checkPermission(context, 'group_owner');
1008
+ const success = await bot.deleteRole(guild_id, role_id);
1009
+ return { success, message: success ? `已删除角色 ${role_id}` : '删除角色失败' };
1010
+ },
1011
+ });
1012
+ // 获取成员列表工具
1013
+ this.addTool({
1014
+ name: 'kook_list_members',
1015
+ description: '获取 KOOK 服务器或频道的成员列表',
1016
+ parameters: {
1017
+ type: 'object',
1018
+ properties: {
1019
+ bot: {
1020
+ type: 'string',
1021
+ description: 'Bot 名称',
1022
+ },
1023
+ guild_id: {
1024
+ type: 'string',
1025
+ description: '服务器 ID',
1026
+ },
1027
+ channel_id: {
1028
+ type: 'string',
1029
+ description: '频道 ID(可选,不填则获取整个服务器成员)',
1030
+ },
1031
+ },
1032
+ required: ['bot', 'guild_id'],
1033
+ },
1034
+ platforms: ['kook'],
1035
+ scopes: ['channel'],
1036
+ permissionLevel: 'user',
1037
+ execute: async (args) => {
1038
+ const { bot: botId, guild_id, channel_id } = args;
1039
+ const bot = this.bots.get(botId);
1040
+ if (!bot)
1041
+ throw new Error(`Bot ${botId} 不存在`);
1042
+ const members = await bot.getGuildMembers(guild_id, channel_id);
1043
+ return {
1044
+ members: members.map(m => ({
1045
+ id: m.id,
1046
+ username: m.username,
1047
+ nickname: m.nickname,
1048
+ avatar: m.avatar,
1049
+ roles: m.roles,
1050
+ })),
1051
+ count: members.length,
1052
+ };
1053
+ },
1054
+ });
1055
+ logger.debug('已注册 KOOK 平台管理工具');
1056
+ }
1057
+ /**
1058
+ * 检查执行上下文中的权限
1059
+ */
1060
+ checkPermission(context, required) {
1061
+ if (!context?.message)
1062
+ return; // 无上下文时跳过检查(命令行调用)
1063
+ const sender = context.message.$sender;
1064
+ if (!sender)
1065
+ return;
1066
+ const permissionLevels = {
1067
+ 'user': 0,
1068
+ 'group_admin': 1,
1069
+ 'group_owner': 2,
1070
+ 'bot_admin': 3,
1071
+ 'owner': 4,
1072
+ };
1073
+ // 获取发送者的实际权限级别
1074
+ let senderLevel = 'user';
1075
+ if (sender.isGuildOwner || sender.permission === KookPermission.Owner) {
1076
+ senderLevel = 'group_owner';
1077
+ }
1078
+ else if (sender.isAdmin || sender.permission === KookPermission.Admin ||
1079
+ sender.permission === KookPermission.ChannelAdmin) {
1080
+ senderLevel = 'group_admin';
1081
+ }
1082
+ // TODO: 检查是否为 bot_admin 或 owner(需要从 zhin 配置中获取)
1083
+ if (permissionLevels[senderLevel] < permissionLevels[required]) {
1084
+ throw new Error(`权限不足:需要 ${required} 权限,当前为 ${senderLevel}`);
1085
+ }
1086
+ }
401
1087
  }
402
1088
  /**
403
1089
  * 注册 KOOK 适配器
package/lib/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": "@zhin.js/adapter-kook",
3
- "version": "1.0.24",
3
+ "version": "1.0.26",
4
4
  "description": "Zhin.js adapter for KOOK (开黑啦)",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -35,11 +35,11 @@
35
35
  },
36
36
  "devDependencies": {
37
37
  "typescript": "^5.3.0",
38
- "zhin.js": "1.0.24"
38
+ "zhin.js": "1.0.26"
39
39
  },
40
40
  "peerDependencies": {
41
- "@zhin.js/logger": "0.1.8",
42
- "zhin.js": "1.0.24"
41
+ "@zhin.js/logger": "0.1.10",
42
+ "zhin.js": "1.0.26"
43
43
  },
44
44
  "files": [
45
45
  "lib",