@zhin.js/adapter-napcat 1.0.1 → 1.1.2
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 +757 -0
- package/{skills/napcat/PERMITS.md → PERMITS.md} +3 -3
- package/README.md +63 -95
- package/adapters/napcat/index.js +47 -0
- package/adapters/napcat/index.ts +64 -0
- package/agents/napcat/agent.json +20 -0
- package/agents/napcat/boundaries.md +3 -0
- package/agents/napcat/conventions.md +3 -0
- package/agents/napcat/skills/napcat-account/SKILL.md +25 -0
- package/agents/napcat/skills/napcat-account/tools/delete_friend/index.js +18 -0
- package/agents/napcat/skills/napcat-account/tools/delete_friend/index.ts +18 -0
- package/agents/napcat/skills/napcat-account/tools/get_user_status/index.js +16 -0
- package/agents/napcat/skills/napcat-account/tools/get_user_status/index.ts +16 -0
- package/agents/napcat/skills/napcat-account/tools/send_like/index.js +18 -0
- package/agents/napcat/skills/napcat-account/tools/send_like/index.ts +18 -0
- package/agents/napcat/skills/napcat-account/tools/set_avatar/index.js +17 -0
- package/agents/napcat/skills/napcat-account/tools/set_avatar/index.ts +17 -0
- package/agents/napcat/skills/napcat-account/tools/set_online_status/index.js +18 -0
- package/agents/napcat/skills/napcat-account/tools/set_online_status/index.ts +18 -0
- package/agents/napcat/skills/napcat-account/tools/set_profile/index.js +21 -0
- package/agents/napcat/skills/napcat-account/tools/set_profile/index.ts +21 -0
- package/agents/napcat/skills/napcat-account/tools/set_signature/index.js +17 -0
- package/agents/napcat/skills/napcat-account/tools/set_signature/index.ts +17 -0
- package/agents/napcat/skills/napcat-files-history/SKILL.md +22 -0
- package/agents/napcat/skills/napcat-files-history/tools/download_file/index.js +17 -0
- package/agents/napcat/skills/napcat-files-history/tools/download_file/index.ts +17 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_friend_msg_history/index.js +18 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_friend_msg_history/index.ts +18 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_file_url/index.js +19 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_file_url/index.ts +19 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_msg_history/index.js +19 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_msg_history/index.ts +19 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_root_files/index.js +17 -0
- package/agents/napcat/skills/napcat-files-history/tools/get_group_root_files/index.ts +17 -0
- package/agents/napcat/skills/napcat-files-history/tools/upload_group_file/index.js +21 -0
- package/agents/napcat/skills/napcat-files-history/tools/upload_group_file/index.ts +21 -0
- package/agents/napcat/skills/napcat-group-content/SKILL.md +21 -0
- package/agents/napcat/skills/napcat-group-content/tools/del_group_notice/index.js +20 -0
- package/agents/napcat/skills/napcat-group-content/tools/del_group_notice/index.ts +20 -0
- package/agents/napcat/skills/napcat-group-content/tools/delete_essence_msg/index.js +19 -0
- package/agents/napcat/skills/napcat-group-content/tools/delete_essence_msg/index.ts +19 -0
- package/agents/napcat/skills/napcat-group-content/tools/get_essence_list/index.js +17 -0
- package/agents/napcat/skills/napcat-group-content/tools/get_essence_list/index.ts +17 -0
- package/agents/napcat/skills/napcat-group-content/tools/get_group_notice/index.js +17 -0
- package/agents/napcat/skills/napcat-group-content/tools/get_group_notice/index.ts +17 -0
- package/agents/napcat/skills/napcat-group-content/tools/send_group_notice/index.js +21 -0
- package/agents/napcat/skills/napcat-group-content/tools/send_group_notice/index.ts +21 -0
- package/agents/napcat/skills/napcat-group-content/tools/set_essence_msg/index.js +19 -0
- package/agents/napcat/skills/napcat-group-content/tools/set_essence_msg/index.ts +19 -0
- package/agents/napcat/skills/napcat-group-settings/SKILL.md +23 -0
- package/agents/napcat/skills/napcat-group-settings/tools/get_group_info_ex/index.js +17 -0
- package/agents/napcat/skills/napcat-group-settings/tools/get_group_info_ex/index.ts +17 -0
- package/agents/napcat/skills/napcat-group-settings/tools/get_group_shut_list/index.js +17 -0
- package/agents/napcat/skills/napcat-group-settings/tools/get_group_shut_list/index.ts +17 -0
- package/agents/napcat/skills/napcat-group-settings/tools/group_sign/index.js +18 -0
- package/agents/napcat/skills/napcat-group-settings/tools/group_sign/index.ts +18 -0
- package/agents/napcat/skills/napcat-group-settings/tools/set_group_portrait/index.js +20 -0
- package/agents/napcat/skills/napcat-group-settings/tools/set_group_portrait/index.ts +20 -0
- package/agents/napcat/skills/napcat-group-settings/tools/set_title/index.js +21 -0
- package/agents/napcat/skills/napcat-group-settings/tools/set_title/index.ts +21 -0
- package/agents/napcat/skills/napcat-media/SKILL.md +23 -0
- package/agents/napcat/skills/napcat-media/tools/ai_tts/index.js +19 -0
- package/agents/napcat/skills/napcat-media/tools/ai_tts/index.ts +19 -0
- package/agents/napcat/skills/napcat-media/tools/get_ai_characters/index.js +17 -0
- package/agents/napcat/skills/napcat-media/tools/get_ai_characters/index.ts +17 -0
- package/agents/napcat/skills/napcat-media/tools/get_mini_app_ark/index.js +20 -0
- package/agents/napcat/skills/napcat-media/tools/get_mini_app_ark/index.ts +20 -0
- package/agents/napcat/skills/napcat-media/tools/ocr_image/index.js +16 -0
- package/agents/napcat/skills/napcat-media/tools/ocr_image/index.ts +16 -0
- package/agents/napcat/skills/napcat-media/tools/translate/index.js +16 -0
- package/agents/napcat/skills/napcat-media/tools/translate/index.ts +16 -0
- package/agents/napcat/skills/napcat-messaging/SKILL.md +22 -0
- package/agents/napcat/skills/napcat-messaging/tools/forward_single_msg/index.js +22 -0
- package/agents/napcat/skills/napcat-messaging/tools/forward_single_msg/index.ts +28 -0
- package/agents/napcat/skills/napcat-messaging/tools/mark_msg_as_read/index.js +17 -0
- package/agents/napcat/skills/napcat-messaging/tools/mark_msg_as_read/index.ts +17 -0
- package/agents/napcat/skills/napcat-messaging/tools/send_forward_msg/index.js +19 -0
- package/agents/napcat/skills/napcat-messaging/tools/send_forward_msg/index.ts +27 -0
- package/agents/napcat/skills/napcat-messaging/tools/send_poke/index.js +18 -0
- package/agents/napcat/skills/napcat-messaging/tools/send_poke/index.ts +18 -0
- package/agents/napcat/skills/napcat-messaging/tools/set_emoji_reaction/index.js +18 -0
- package/agents/napcat/skills/napcat-messaging/tools/set_emoji_reaction/index.ts +18 -0
- package/agents/napcat/system.md +3 -0
- package/commands/napcat/endpoint/add/[id]/index.js +3 -0
- package/commands/napcat/endpoint/add/[id]/index.ts +3 -0
- package/commands/napcat/endpoint/definition.js +29 -0
- package/commands/napcat/endpoint/definition.ts +26 -0
- package/commands/napcat/endpoint/list/index.js +3 -0
- package/commands/napcat/endpoint/list/index.ts +3 -0
- package/commands/napcat/endpoint/remove/[id]/index.js +3 -0
- package/commands/napcat/endpoint/remove/[id]/index.ts +3 -0
- package/lib/client.d.ts +52 -0
- package/lib/client.js +62 -0
- package/lib/endpoint-management.d.ts +15 -0
- package/lib/endpoint-management.js +47 -0
- package/lib/http-endpoint.d.ts +27 -0
- package/lib/http-endpoint.js +177 -0
- package/lib/index.d.ts +11 -22
- package/lib/index.js +10 -59
- package/lib/napcat-inbound.d.ts +12 -5
- package/lib/napcat-inbound.js +28 -13
- package/lib/napcat-runtime-state.d.ts +1 -0
- package/lib/napcat-runtime-state.js +6 -0
- package/lib/onebot-get-msg.d.ts +16 -3
- package/lib/onebot-get-msg.js +53 -1
- package/lib/protocol.d.ts +147 -0
- package/lib/protocol.js +318 -0
- package/lib/side-event-dispatch.d.ts +7 -0
- package/lib/side-event-dispatch.js +36 -0
- package/lib/webhook.d.ts +2 -0
- package/lib/webhook.js +14 -0
- package/lib/ws-endpoint.d.ts +27 -0
- package/lib/ws-endpoint.js +241 -0
- package/lib/ws-transport.d.ts +13 -0
- package/lib/ws-transport.js +75 -0
- package/lib/ws-types.d.ts +17 -0
- package/lib/ws-types.js +1 -0
- package/lib/wss-auth.d.ts +2 -0
- package/lib/wss-auth.js +16 -0
- package/lib/wss-endpoint.d.ts +29 -0
- package/lib/wss-endpoint.js +196 -0
- package/package.json +76 -34
- package/plugin.js +18 -0
- package/schema.json +131 -0
- package/src/client.ts +79 -0
- package/src/endpoint-management.ts +72 -0
- package/src/http-endpoint.ts +234 -0
- package/src/index.ts +62 -87
- package/src/napcat-inbound.ts +34 -10
- package/src/napcat-runtime-state.ts +7 -0
- package/src/onebot-get-msg.ts +69 -5
- package/src/protocol.ts +465 -0
- package/src/side-event-dispatch.ts +48 -0
- package/src/webhook.ts +16 -0
- package/src/ws-endpoint.ts +301 -0
- package/src/ws-transport.ts +105 -0
- package/src/ws-types.ts +20 -0
- package/src/wss-auth.ts +17 -0
- package/src/wss-endpoint.ts +247 -0
- package/client/NapCatManagement.tsx +0 -113
- package/client/index.tsx +0 -11
- package/client/tsconfig.json +0 -7
- package/client/utils/api.ts +0 -30
- package/dist/index.js +0 -27
- package/lib/adapter.d.ts +0 -28
- package/lib/adapter.d.ts.map +0 -1
- package/lib/adapter.js +0 -94
- package/lib/adapter.js.map +0 -1
- package/lib/agent-prompt.d.ts +0 -3
- package/lib/agent-prompt.d.ts.map +0 -1
- package/lib/agent-prompt.js +0 -105
- package/lib/agent-prompt.js.map +0 -1
- package/lib/endpoint-base.d.ts +0 -143
- package/lib/endpoint-base.d.ts.map +0 -1
- package/lib/endpoint-base.js +0 -334
- package/lib/endpoint-base.js.map +0 -1
- package/lib/endpoint-http.d.ts +0 -18
- package/lib/endpoint-http.d.ts.map +0 -1
- package/lib/endpoint-http.js +0 -119
- package/lib/endpoint-http.js.map +0 -1
- package/lib/endpoint-ws-client.d.ts +0 -21
- package/lib/endpoint-ws-client.d.ts.map +0 -1
- package/lib/endpoint-ws-client.js +0 -165
- package/lib/endpoint-ws-client.js.map +0 -1
- package/lib/endpoint-ws-server.d.ts +0 -21
- package/lib/endpoint-ws-server.d.ts.map +0 -1
- package/lib/endpoint-ws-server.js +0 -150
- package/lib/endpoint-ws-server.js.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/napcat-inbound.d.ts.map +0 -1
- package/lib/napcat-inbound.js.map +0 -1
- package/lib/onebot-get-msg.d.ts.map +0 -1
- package/lib/onebot-get-msg.js.map +0 -1
- package/lib/routes.d.ts +0 -4
- package/lib/routes.d.ts.map +0 -1
- package/lib/routes.js +0 -61
- package/lib/routes.js.map +0 -1
- package/lib/tools.d.ts +0 -8
- package/lib/tools.d.ts.map +0 -1
- package/lib/tools.js +0 -605
- package/lib/tools.js.map +0 -1
- package/lib/types.d.ts +0 -293
- package/lib/types.d.ts.map +0 -1
- package/lib/types.js +0 -6
- package/lib/types.js.map +0 -1
- package/lib/typing-indicator.d.ts +0 -45
- package/lib/typing-indicator.d.ts.map +0 -1
- package/lib/typing-indicator.js +0 -132
- package/lib/typing-indicator.js.map +0 -1
- package/plugin.yml +0 -3
- package/skills/napcat/SKILL.md +0 -311
- package/src/adapter.ts +0 -101
- package/src/agent-prompt.ts +0 -114
- package/src/endpoint-base.ts +0 -376
- package/src/endpoint-http.ts +0 -109
- package/src/endpoint-ws-client.ts +0 -164
- package/src/endpoint-ws-server.ts +0 -150
- package/src/routes.ts +0 -61
- package/src/tools.ts +0 -632
- package/src/types.ts +0 -279
- package/src/typing-indicator.ts +0 -184
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ group_id: number }>({
|
|
5
|
+
description: '群签到/群打卡。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['签到', '打卡', 'sign', 'check in'],
|
|
12
|
+
scopes: ['group'],
|
|
13
|
+
async execute({ group_id }: { group_id: number }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
await endpoint.sendGroupSign(group_id);
|
|
16
|
+
return { success: true };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '设置群头像。file 为图片 URL 或 base64。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
file: z.string().describe('图片(URL 或 base64)'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['群头像', 'group portrait', '设置群头像'],
|
|
13
|
+
permissions: ['platform(napcat,scene_admin)'],
|
|
14
|
+
scopes: ['group'],
|
|
15
|
+
async execute({ group_id, file }, context) {
|
|
16
|
+
const endpoint = context.$client;
|
|
17
|
+
await endpoint.setGroupPortrait(group_id, file);
|
|
18
|
+
return { success: true };
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ group_id: number; file: string }>({
|
|
5
|
+
description: '设置群头像。file 为图片 URL 或 base64。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
file: z.string().describe('图片(URL 或 base64)'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['群头像', 'group portrait', '设置群头像'],
|
|
13
|
+
permissions: ['platform(napcat,scene_admin)'],
|
|
14
|
+
scopes: ['group'],
|
|
15
|
+
async execute({ group_id, file }: { group_id: number; file: string }, context) {
|
|
16
|
+
const endpoint = context.$client;
|
|
17
|
+
await endpoint.setGroupPortrait(group_id, file);
|
|
18
|
+
return { success: true };
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '设置群成员专属头衔。需要群主权限。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
user_id: z.number().describe('目标成员 QQ 号'),
|
|
9
|
+
title: z.string().describe('头衔文字'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['头衔', 'title', '专属头衔', '设置头衔'],
|
|
14
|
+
permissions: ['platform(napcat,scene_owner)'],
|
|
15
|
+
scopes: ['group'],
|
|
16
|
+
async execute({ group_id, user_id, title }, context) {
|
|
17
|
+
const endpoint = context.$client;
|
|
18
|
+
await endpoint.setTitle(group_id, user_id, title);
|
|
19
|
+
return { success: true, message: `已设置 ${user_id} 头衔为 "${title}"` };
|
|
20
|
+
},
|
|
21
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ group_id: number; user_id: number; title: string }>({
|
|
5
|
+
description: '设置群成员专属头衔。需要群主权限。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
user_id: z.number().describe('目标成员 QQ 号'),
|
|
9
|
+
title: z.string().describe('头衔文字'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['头衔', 'title', '专属头衔', '设置头衔'],
|
|
14
|
+
permissions: ['platform(napcat,scene_owner)'],
|
|
15
|
+
scopes: ['group'],
|
|
16
|
+
async execute({ group_id, user_id, title }: { group_id: number; user_id: number; title: string }, context) {
|
|
17
|
+
const endpoint = context.$client;
|
|
18
|
+
await endpoint.setTitle(group_id, user_id, title);
|
|
19
|
+
return { success: true, message: `已设置 ${user_id} 头衔为 "${title}"` };
|
|
20
|
+
},
|
|
21
|
+
});
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: napcat-media
|
|
3
|
+
platforms:
|
|
4
|
+
- napcat
|
|
5
|
+
description: NapCatQQ TTS、OCR、小程序卡片与翻译能力。
|
|
6
|
+
keywords:
|
|
7
|
+
- "napcat"
|
|
8
|
+
- "tts"
|
|
9
|
+
- "ocr"
|
|
10
|
+
- "语音"
|
|
11
|
+
- "翻译"
|
|
12
|
+
- "小程序"
|
|
13
|
+
tools:
|
|
14
|
+
- "ai_tts"
|
|
15
|
+
- "get_ai_characters"
|
|
16
|
+
- "ocr_image"
|
|
17
|
+
- "get_mini_app_ark"
|
|
18
|
+
- "translate"
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# napcat-media
|
|
22
|
+
|
|
23
|
+
按媒体任务选择单个工具。生成语音前先确定角色;OCR 与翻译结果保留不确定性。
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: 'AI 文字转语音,在群聊中发送 AI 语音消息。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
character: z.string().describe('AI 语音角色 ID(可先用 napcat_get_ai_characters 查询)'),
|
|
9
|
+
text: z.string().describe('要转为语音的文字'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['AI语音', 'TTS', '文字转语音', 'ai record'],
|
|
14
|
+
scopes: ['group'],
|
|
15
|
+
async execute({ group_id, character, text }, context) {
|
|
16
|
+
const endpoint = context.$client;
|
|
17
|
+
return endpoint.sendGroupAiRecord(group_id, character, text);
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ group_id: number; character: string; text: string }>({
|
|
5
|
+
description: 'AI 文字转语音,在群聊中发送 AI 语音消息。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
character: z.string().describe('AI 语音角色 ID(可先用 napcat_get_ai_characters 查询)'),
|
|
9
|
+
text: z.string().describe('要转为语音的文字'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['AI语音', 'TTS', '文字转语音', 'ai record'],
|
|
14
|
+
scopes: ['group'],
|
|
15
|
+
async execute({ group_id, character, text }: { group_id: number; character: string; text: string }, context) {
|
|
16
|
+
const endpoint = context.$client;
|
|
17
|
+
return endpoint.sendGroupAiRecord(group_id, character, text);
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '获取 AI 语音角色列表,用于 napcat_ai_tts 的 character 参数。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['AI角色', 'ai characters', '语音角色'],
|
|
12
|
+
scopes: ['group'],
|
|
13
|
+
async execute({ group_id }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
return endpoint.getAiCharacters(group_id);
|
|
16
|
+
},
|
|
17
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ group_id: number }>({
|
|
5
|
+
description: '获取 AI 语音角色列表,用于 napcat_ai_tts 的 character 参数。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
group_id: z.number().describe('群号'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['AI角色', 'ai characters', '语音角色'],
|
|
12
|
+
scopes: ['group'],
|
|
13
|
+
async execute({ group_id }: { group_id: number }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
return endpoint.getAiCharacters(group_id);
|
|
16
|
+
},
|
|
17
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '签名小程序卡片(如 B 站分享卡片等)。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
type: z.string().describe('卡片类型'),
|
|
8
|
+
title: z.string().describe('标题'),
|
|
9
|
+
desc: z.string().describe('描述'),
|
|
10
|
+
pic_url: z.string().describe('图片 URL'),
|
|
11
|
+
jump_url: z.string().describe('跳转 URL'),
|
|
12
|
+
}),
|
|
13
|
+
adapter: 'napcat',
|
|
14
|
+
tags: ['napcat', 'qq'],
|
|
15
|
+
keywords: ['小程序', 'mini app', '卡片', 'ark'],
|
|
16
|
+
async execute({ type, title, desc, pic_url, jump_url }, context) {
|
|
17
|
+
const endpoint = context.$client;
|
|
18
|
+
return endpoint.getMiniAppArk(type, title, desc, pic_url, jump_url);
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ type: string; title: string; desc: string; pic_url: string; jump_url: string }>({
|
|
5
|
+
description: '签名小程序卡片(如 B 站分享卡片等)。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
type: z.string().describe('卡片类型'),
|
|
8
|
+
title: z.string().describe('标题'),
|
|
9
|
+
desc: z.string().describe('描述'),
|
|
10
|
+
pic_url: z.string().describe('图片 URL'),
|
|
11
|
+
jump_url: z.string().describe('跳转 URL'),
|
|
12
|
+
}),
|
|
13
|
+
adapter: 'napcat',
|
|
14
|
+
tags: ['napcat', 'qq'],
|
|
15
|
+
keywords: ['小程序', 'mini app', '卡片', 'ark'],
|
|
16
|
+
async execute({ type, title, desc, pic_url, jump_url }: { type: string; title: string; desc: string; pic_url: string; jump_url: string }, context) {
|
|
17
|
+
const endpoint = context.$client;
|
|
18
|
+
return endpoint.getMiniAppArk(type, title, desc, pic_url, jump_url);
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '图片 OCR 文字识别。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
image: z.string().describe('图片 file 参数(收到消息中的 file 字段或 URL)'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['OCR', '文字识别', '图片识别', 'ocr'],
|
|
12
|
+
async execute({ image }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
return endpoint.ocrImage(image);
|
|
15
|
+
},
|
|
16
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ image: string }>({
|
|
5
|
+
description: '图片 OCR 文字识别。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
image: z.string().describe('图片 file 参数(收到消息中的 file 字段或 URL)'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['OCR', '文字识别', '图片识别', 'ocr'],
|
|
12
|
+
async execute({ image }: { image: string }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
return endpoint.ocrImage(image);
|
|
15
|
+
},
|
|
16
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '英译中翻译。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
text: z.string().describe('要翻译的英文文本'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['翻译', 'translate', '英译中'],
|
|
12
|
+
async execute({ text }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
return endpoint.translateEn2Zh(text);
|
|
15
|
+
},
|
|
16
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ text: string }>({
|
|
5
|
+
description: '英译中翻译。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
text: z.string().describe('要翻译的英文文本'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['翻译', 'translate', '英译中'],
|
|
12
|
+
async execute({ text }: { text: string }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
return endpoint.translateEn2Zh(text);
|
|
15
|
+
},
|
|
16
|
+
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: napcat-messaging
|
|
3
|
+
platforms:
|
|
4
|
+
- napcat
|
|
5
|
+
description: NapCatQQ 戳一戳、reaction、转发和已读操作。
|
|
6
|
+
keywords:
|
|
7
|
+
- "napcat"
|
|
8
|
+
- "消息"
|
|
9
|
+
- "reaction"
|
|
10
|
+
- "转发"
|
|
11
|
+
- "已读"
|
|
12
|
+
tools:
|
|
13
|
+
- "send_poke"
|
|
14
|
+
- "set_emoji_reaction"
|
|
15
|
+
- "send_forward_msg"
|
|
16
|
+
- "forward_single_msg"
|
|
17
|
+
- "mark_msg_as_read"
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# napcat-messaging
|
|
21
|
+
|
|
22
|
+
消息互动只使用当前会话中的稳定消息 ID 和目标 ID,写操作遵守审批策略。
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '转发单条消息到指定好友或群。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
target_type: z.enum(['friend', 'group']).describe('friend 或 group'),
|
|
8
|
+
target_id: z.number().describe('目标好友 QQ 号或群号'),
|
|
9
|
+
message_id: z.number().describe('要转发的消息 ID'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['转发', 'forward', '单条转发'],
|
|
14
|
+
async execute({ target_type, target_id, message_id }, context) {
|
|
15
|
+
const endpoint = context.$client;
|
|
16
|
+
if (target_type === 'friend')
|
|
17
|
+
await endpoint.forwardFriendSingleMsg(target_id, message_id);
|
|
18
|
+
else
|
|
19
|
+
await endpoint.forwardGroupSingleMsg(target_id, message_id);
|
|
20
|
+
return { success: true };
|
|
21
|
+
},
|
|
22
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{
|
|
5
|
+
target_type: 'friend' | 'group';
|
|
6
|
+
target_id: number;
|
|
7
|
+
message_id: number;
|
|
8
|
+
}>({
|
|
9
|
+
description: '转发单条消息到指定好友或群。',
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
target_type: z.enum(['friend', 'group']).describe('friend 或 group'),
|
|
12
|
+
target_id: z.number().describe('目标好友 QQ 号或群号'),
|
|
13
|
+
message_id: z.number().describe('要转发的消息 ID'),
|
|
14
|
+
}),
|
|
15
|
+
adapter: 'napcat',
|
|
16
|
+
tags: ['napcat', 'qq'],
|
|
17
|
+
keywords: ['转发', 'forward', '单条转发'],
|
|
18
|
+
async execute({ target_type, target_id, message_id }: {
|
|
19
|
+
target_type: 'friend' | 'group';
|
|
20
|
+
target_id: number;
|
|
21
|
+
message_id: number;
|
|
22
|
+
}, context) {
|
|
23
|
+
const endpoint = context.$client;
|
|
24
|
+
if (target_type === 'friend') await endpoint.forwardFriendSingleMsg(target_id, message_id);
|
|
25
|
+
else await endpoint.forwardGroupSingleMsg(target_id, message_id);
|
|
26
|
+
return { success: true };
|
|
27
|
+
},
|
|
28
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '标记消息为已读。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
message_id: z.number().describe('消息 ID'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['已读', 'mark read', '标记已读'],
|
|
12
|
+
async execute({ message_id }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
await endpoint.markMsgAsRead(message_id);
|
|
15
|
+
return { success: true };
|
|
16
|
+
},
|
|
17
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ message_id: number }>({
|
|
5
|
+
description: '标记消息为已读。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
message_id: z.number().describe('消息 ID'),
|
|
8
|
+
}),
|
|
9
|
+
adapter: 'napcat',
|
|
10
|
+
tags: ['napcat', 'qq'],
|
|
11
|
+
keywords: ['已读', 'mark read', '标记已读'],
|
|
12
|
+
async execute({ message_id }: { message_id: number }, context) {
|
|
13
|
+
const endpoint = context.$client;
|
|
14
|
+
await endpoint.markMsgAsRead(message_id);
|
|
15
|
+
return { success: true };
|
|
16
|
+
},
|
|
17
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '发送合并转发消息(群聊或私聊)。messages 为转发节点数组。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
message_type: z.enum(['private', 'group']).describe('private 或 group'),
|
|
8
|
+
id: z.number().describe('群号或 QQ 号'),
|
|
9
|
+
messages: z.string().describe('转发节点 JSON(node 数组)'),
|
|
10
|
+
}),
|
|
11
|
+
adapter: 'napcat',
|
|
12
|
+
tags: ['napcat', 'qq'],
|
|
13
|
+
keywords: ['合并转发', 'forward', '转发消息'],
|
|
14
|
+
async execute({ message_type, id, messages }, context) {
|
|
15
|
+
const endpoint = context.$client;
|
|
16
|
+
const nodes = typeof messages === 'string' ? JSON.parse(messages) : messages;
|
|
17
|
+
return endpoint.sendForwardMsg(message_type, id, nodes);
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{
|
|
5
|
+
message_type: 'private' | 'group';
|
|
6
|
+
id: number;
|
|
7
|
+
messages: string;
|
|
8
|
+
}>({
|
|
9
|
+
description: '发送合并转发消息(群聊或私聊)。messages 为转发节点数组。',
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
message_type: z.enum(['private', 'group']).describe('private 或 group'),
|
|
12
|
+
id: z.number().describe('群号或 QQ 号'),
|
|
13
|
+
messages: z.string().describe('转发节点 JSON(node 数组)'),
|
|
14
|
+
}),
|
|
15
|
+
adapter: 'napcat',
|
|
16
|
+
tags: ['napcat', 'qq'],
|
|
17
|
+
keywords: ['合并转发', 'forward', '转发消息'],
|
|
18
|
+
async execute({ message_type, id, messages }: {
|
|
19
|
+
message_type: 'private' | 'group';
|
|
20
|
+
id: number;
|
|
21
|
+
messages: string;
|
|
22
|
+
}, context) {
|
|
23
|
+
const endpoint = context.$client;
|
|
24
|
+
const nodes = typeof messages === 'string' ? JSON.parse(messages) : messages;
|
|
25
|
+
return endpoint.sendForwardMsg(message_type, id, nodes);
|
|
26
|
+
},
|
|
27
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '戳一戳(群聊或私聊)。group_id 不传时为私聊戳一戳。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
user_id: z.number().describe('目标用户 QQ 号'),
|
|
8
|
+
group_id: z.number().optional().describe('群号(不传则为私聊戳一戳)'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['戳一戳', 'poke', '戳', '拍一拍'],
|
|
13
|
+
async execute({ user_id, group_id }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
await endpoint.sendPoke(user_id, group_id);
|
|
16
|
+
return { success: true, message: `已戳 ${user_id}` };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ user_id: number; group_id?: number }>({
|
|
5
|
+
description: '戳一戳(群聊或私聊)。group_id 不传时为私聊戳一戳。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
user_id: z.number().describe('目标用户 QQ 号'),
|
|
8
|
+
group_id: z.number().optional().describe('群号(不传则为私聊戳一戳)'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['戳一戳', 'poke', '戳', '拍一拍'],
|
|
13
|
+
async execute({ user_id, group_id }: { user_id: number; group_id?: number }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
await endpoint.sendPoke(user_id, group_id);
|
|
16
|
+
return { success: true, message: `已戳 ${user_id}` };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
export default defineAgentTool({
|
|
5
|
+
description: '为消息添加表情回应(贴表情)。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
message_id: z.number().describe('消息 ID'),
|
|
8
|
+
emoji_id: z.string().describe('表情 ID'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['表情回应', 'reaction', '贴表情', 'emoji'],
|
|
13
|
+
async execute({ message_id, emoji_id }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
await endpoint.setMsgEmojiLike(message_id, emoji_id);
|
|
16
|
+
return { success: true };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { defineAgentTool } from '@zhin.js/tool';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
|
|
4
|
+
export default defineAgentTool<{ message_id: number; emoji_id: string }>({
|
|
5
|
+
description: '为消息添加表情回应(贴表情)。',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
message_id: z.number().describe('消息 ID'),
|
|
8
|
+
emoji_id: z.string().describe('表情 ID'),
|
|
9
|
+
}),
|
|
10
|
+
adapter: 'napcat',
|
|
11
|
+
tags: ['napcat', 'qq'],
|
|
12
|
+
keywords: ['表情回应', 'reaction', '贴表情', 'emoji'],
|
|
13
|
+
async execute({ message_id, emoji_id }: { message_id: number; emoji_id: string }, context) {
|
|
14
|
+
const endpoint = context.$client;
|
|
15
|
+
await endpoint.setMsgEmojiLike(message_id, emoji_id);
|
|
16
|
+
return { success: true };
|
|
17
|
+
},
|
|
18
|
+
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Generated by build-plugin-runtime-entries.mjs. Do not edit.
|
|
2
|
+
/**
|
|
3
|
+
* `napcat endpoint` 命令族:由 @zhin.js/adapter 的 createEndpointCommands 套件生成。
|
|
4
|
+
* commands/napcat/endpoint/ 下的 list / add / remove 直接默认导出这三项。
|
|
5
|
+
*/
|
|
6
|
+
import { createEndpointCommands } from 'zhin.js/adapter';
|
|
7
|
+
import { defineCommand } from 'zhin.js/command';
|
|
8
|
+
import { napcatRuntimeStateToken } from "../../../lib/napcat-runtime-state.js";
|
|
9
|
+
export const napcatEndpointCommands = createEndpointCommands({
|
|
10
|
+
adapterKey: 'napcat',
|
|
11
|
+
adapterDisplayName: 'NapCat',
|
|
12
|
+
fields: [
|
|
13
|
+
{ key: 'url', description: 'NapCat WebSocket URL(connection: ws 必填)' },
|
|
14
|
+
{ key: 'path', description: 'reverse-wss 路径(connection: wss)' },
|
|
15
|
+
{ key: 'http_url', description: 'HTTP API base URL(connection: http 出站)' },
|
|
16
|
+
{ key: 'post_path', description: 'HTTP POST 事件路径(connection: http 入站)' },
|
|
17
|
+
{ key: 'access_token', env: true, description: 'NapCat access token' },
|
|
18
|
+
],
|
|
19
|
+
running: (use) => use(napcatRuntimeStateToken).endpoints.values(),
|
|
20
|
+
describeEntry: (entry) => {
|
|
21
|
+
if (entry.url)
|
|
22
|
+
return `url: ${String(entry.url)}`;
|
|
23
|
+
if (entry.path)
|
|
24
|
+
return `path: ${String(entry.path)}`;
|
|
25
|
+
if (entry.http_url)
|
|
26
|
+
return `http_url: ${String(entry.http_url)}`;
|
|
27
|
+
return '';
|
|
28
|
+
},
|
|
29
|
+
}, defineCommand);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `napcat endpoint` 命令族:由 @zhin.js/adapter 的 createEndpointCommands 套件生成。
|
|
3
|
+
* commands/napcat/endpoint/ 下的 list / add / remove 直接默认导出这三项。
|
|
4
|
+
*/
|
|
5
|
+
import { createEndpointCommands } from 'zhin.js/adapter';
|
|
6
|
+
import { defineCommand } from 'zhin.js/command';
|
|
7
|
+
import { napcatRuntimeStateToken } from '../../../src/napcat-runtime-state.js';
|
|
8
|
+
|
|
9
|
+
export const napcatEndpointCommands = createEndpointCommands({
|
|
10
|
+
adapterKey: 'napcat',
|
|
11
|
+
adapterDisplayName: 'NapCat',
|
|
12
|
+
fields: [
|
|
13
|
+
{ key: 'url', description: 'NapCat WebSocket URL(connection: ws 必填)' },
|
|
14
|
+
{ key: 'path', description: 'reverse-wss 路径(connection: wss)' },
|
|
15
|
+
{ key: 'http_url', description: 'HTTP API base URL(connection: http 出站)' },
|
|
16
|
+
{ key: 'post_path', description: 'HTTP POST 事件路径(connection: http 入站)' },
|
|
17
|
+
{ key: 'access_token', env: true, description: 'NapCat access token' },
|
|
18
|
+
],
|
|
19
|
+
running: (use) => use(napcatRuntimeStateToken).endpoints.values(),
|
|
20
|
+
describeEntry: (entry) => {
|
|
21
|
+
if (entry.url) return `url: ${String(entry.url)}`;
|
|
22
|
+
if (entry.path) return `path: ${String(entry.path)}`;
|
|
23
|
+
if (entry.http_url) return `http_url: ${String(entry.http_url)}`;
|
|
24
|
+
return '';
|
|
25
|
+
},
|
|
26
|
+
}, defineCommand);
|