@jsbot-tellus/core 2.0.3 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -27
- package/dist/app.js +14 -40
- package/dist/app.js.map +1 -1
- package/dist/core/config/schema.d.ts +0 -2
- package/dist/core/config/schema.d.ts.map +1 -1
- package/dist/core/config/schema.js +0 -1
- package/dist/core/config/schema.js.map +1 -1
- package/dist/core/dispatch/command.d.ts +24 -2
- package/dist/core/dispatch/command.d.ts.map +1 -1
- package/dist/core/dispatch/command.js +297 -60
- package/dist/core/dispatch/command.js.map +1 -1
- package/dist/core/dispatch/router.d.ts +17 -3
- package/dist/core/dispatch/router.d.ts.map +1 -1
- package/dist/core/dispatch/router.js +38 -2
- package/dist/core/dispatch/router.js.map +1 -1
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/kernel.d.ts.map +1 -1
- package/dist/core/kernel.js +5 -1
- package/dist/core/kernel.js.map +1 -1
- package/dist/core/plugin/command-params.d.ts +37 -0
- package/dist/core/plugin/command-params.d.ts.map +1 -0
- package/dist/core/plugin/command-params.js +427 -0
- package/dist/core/plugin/command-params.js.map +1 -0
- package/dist/core/plugin/context.d.ts.map +1 -1
- package/dist/core/plugin/context.js +27 -0
- package/dist/core/plugin/context.js.map +1 -1
- package/dist/core/plugin/install-dir.d.ts +6 -9
- package/dist/core/plugin/install-dir.d.ts.map +1 -1
- package/dist/core/plugin/install-dir.js +99 -79
- package/dist/core/plugin/install-dir.js.map +1 -1
- package/dist/core/plugin/install-validate.d.ts +2 -1
- package/dist/core/plugin/install-validate.d.ts.map +1 -1
- package/dist/core/plugin/install-validate.js +25 -17
- package/dist/core/plugin/install-validate.js.map +1 -1
- package/dist/core/plugin/installer.d.ts +3 -3
- package/dist/core/plugin/installer.d.ts.map +1 -1
- package/dist/core/plugin/installer.js +143 -140
- package/dist/core/plugin/installer.js.map +1 -1
- package/dist/core/plugin/loader.d.ts +13 -1
- package/dist/core/plugin/loader.d.ts.map +1 -1
- package/dist/core/plugin/loader.js +106 -2
- package/dist/core/plugin/loader.js.map +1 -1
- package/dist/core/plugin/types.d.ts +14 -5
- package/dist/core/plugin/types.d.ts.map +1 -1
- package/dist/core/plugin/types.js.map +1 -1
- package/dist/plugins/admin/index.d.ts.map +1 -1
- package/dist/plugins/admin/index.js +119 -86
- package/dist/plugins/admin/index.js.map +1 -1
- package/dist/plugins/core/index.d.ts.map +1 -1
- package/dist/plugins/core/index.js +5 -2
- package/dist/plugins/core/index.js.map +1 -1
- package/docs/architecture.md +22 -24
- package/docs/configuration.md +19 -23
- package/docs/feature-parity.md +4 -4
- package/docs/migration.md +13 -13
- package/docs/plugin-api.md +164 -27
- package/docs/plugin-development.md +400 -0
- package/docs/release.md +2 -2
- package/examples/plugins/hello/README.md +10 -5
- package/examples/plugins/hello/index.js +3 -6
- package/package.json +4 -1
- package/src/app.ts +18 -55
- package/src/core/config/schema.ts +0 -1
- package/src/core/dispatch/command.ts +478 -70
- package/src/core/dispatch/router.ts +77 -3
- package/src/core/index.ts +3 -0
- package/src/core/kernel.ts +8 -1
- package/src/core/plugin/command-params.ts +667 -0
- package/src/core/plugin/context.ts +51 -2
- package/src/core/plugin/install-dir.ts +117 -111
- package/src/core/plugin/install-validate.ts +36 -34
- package/src/core/plugin/installer.ts +228 -184
- package/src/core/plugin/loader.ts +180 -3
- package/src/core/plugin/types.ts +31 -5
- package/src/plugins/admin/index.ts +302 -233
- package/src/plugins/core/index.ts +6 -2
- package/dist/core/plugin/installed.d.ts +0 -9
- package/dist/core/plugin/installed.d.ts.map +0 -1
- package/dist/core/plugin/installed.js +0 -113
- package/dist/core/plugin/installed.js.map +0 -1
- package/src/core/plugin/installed.ts +0 -165
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- 插件只通过 `PluginContext` 使用内核能力,不直接接触 SDK client、Router 或数据库。
|
|
9
9
|
- SDK 只注册一个 middleware:`client.use(router.dispatch)`。
|
|
10
10
|
- 内置插件 `core`、`admin` 是普通源码,位于 `src/plugins/`,随内核一起编译。
|
|
11
|
-
- `poke`、`llm` 等本地插件放在不跟踪的 `plugins
|
|
11
|
+
- `poke`、`llm` 等本地插件放在不跟踪的 `plugins/`,各自是独立包,从 `plugins/<id>/dist` 自动加载;缺少 `dist` 时会先尝试自动构建。
|
|
12
12
|
|
|
13
13
|
## 环境要求
|
|
14
14
|
|
|
@@ -51,19 +51,19 @@ npm run dev
|
|
|
51
51
|
|
|
52
52
|
## 内置命令
|
|
53
53
|
|
|
54
|
-
| 命令 | 权限 | 作用
|
|
55
|
-
| ----------------- | ---------- |
|
|
56
|
-
| `/help`、`/h` | User |
|
|
57
|
-
| `/status`、`/s` | User | 运行时长和插件状态
|
|
58
|
-
| `/role` | User | 显示当前用户角色
|
|
59
|
-
| `/utter <文本>` | Admin | 向当前会话发送文本
|
|
60
|
-
| `/utter
|
|
61
|
-
| `/plugin list` | SuperAdmin | 列出已安装插件包
|
|
62
|
-
| `/plugin install` | SuperAdmin | 安装 npm 插件包
|
|
63
|
-
| `/plugin remove` | SuperAdmin | 卸载插件包
|
|
64
|
-
| `/plugin update` | SuperAdmin | 更新插件包
|
|
54
|
+
| 命令 | 权限 | 作用 |
|
|
55
|
+
| ----------------- | ---------- | -------------------------------- |
|
|
56
|
+
| `/help`、`/h` | User | 按权限和当前会话启用状态列出命令 |
|
|
57
|
+
| `/status`、`/s` | User | 运行时长和插件状态 |
|
|
58
|
+
| `/role` | User | 显示当前用户角色 |
|
|
59
|
+
| `/utter <文本>` | Admin | 向当前会话发送文本 |
|
|
60
|
+
| `/utter raw <CQ>` | SuperAdmin | 发送原始 CQ 消息 |
|
|
61
|
+
| `/plugin list` | SuperAdmin | 列出已安装插件包 |
|
|
62
|
+
| `/plugin install` | SuperAdmin | 安装 npm 插件包 |
|
|
63
|
+
| `/plugin remove` | SuperAdmin | 卸载插件包 |
|
|
64
|
+
| `/plugin update` | SuperAdmin | 更新插件包 |
|
|
65
65
|
|
|
66
|
-
`/plugin` 的所有子命令(包括 `help` 和 `list`)都要求 SuperAdmin
|
|
66
|
+
`/plugin` 的所有子命令(包括 `help` 和 `list`)都要求 SuperAdmin。`/utter.raw` 已迁移为 `/utter raw` 子命令。
|
|
67
67
|
|
|
68
68
|
## 内置与本地插件
|
|
69
69
|
|
|
@@ -72,7 +72,7 @@ npm run dev
|
|
|
72
72
|
```text
|
|
73
73
|
src/plugins/
|
|
74
74
|
core/index.ts /help、/status、/role
|
|
75
|
-
admin/index.ts /utter、/utter
|
|
75
|
+
admin/index.ts /utter、/utter raw
|
|
76
76
|
index.ts 内置插件清单
|
|
77
77
|
```
|
|
78
78
|
|
|
@@ -85,18 +85,10 @@ npm install --prefix plugins/poke
|
|
|
85
85
|
npm install --prefix plugins/llm
|
|
86
86
|
npm run build:local
|
|
87
87
|
|
|
88
|
-
node dist/app.js
|
|
89
|
-
--plugin-dir plugins/poke/dist \
|
|
90
|
-
--plugin-dir plugins/llm/dist
|
|
88
|
+
node dist/app.js
|
|
91
89
|
```
|
|
92
90
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
```bash
|
|
96
|
-
BOT_PLUGIN_DIR=plugins/poke/dist,plugins/llm/dist npm start
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
外部目录中与内置插件同 ID 的插件会被跳过。外部插件是普通 ESM 模块,默认导出、`plugin` 命名导出或 `plugins` 数组导出均可被加载。开发和发布方式见 [docs/plugin-api.md](docs/plugin-api.md),示例位于 [`examples/plugins/hello`](examples/plugins/hello)。
|
|
91
|
+
应用启动时会固定扫描 `plugins/<id>/dist`,不需要路径参数。`plugins/` 中没有 `dist` 的本地插件如果带有 `build` 脚本且依赖已安装,会先自动执行 `npm run build` 再加载;没有 `build` 脚本、缺少 `node_modules` 或构建失败时会记录警告并跳过该插件。`plugins/` 中与内置插件同 ID 的插件也会被跳过。本地插件是普通 ESM 模块,默认导出、`plugin` 命名导出或 `plugins` 数组导出均可被加载。开发和发布方式见 [插件开发指南](docs/plugin-development.md),示例位于 [`examples/plugins/hello`](examples/plugins/hello)。
|
|
100
92
|
|
|
101
93
|
## 在线安装插件包
|
|
102
94
|
|
|
@@ -110,8 +102,9 @@ BOT_PLUGIN_DIR=plugins/poke/dist,plugins/llm/dist npm start
|
|
|
110
102
|
```
|
|
111
103
|
|
|
112
104
|
- 只接受 npm registry 包,`name`、`name@版本`、`name@tag`、`@scope/name[@版本|tag]`;拒绝 git、file、URL、workspace、link 等来源。
|
|
113
|
-
-
|
|
114
|
-
-
|
|
105
|
+
- 包会直接安装到 `plugins/<插件id>/`,和本地插件一样从 `plugins/<插件id>/dist` 加载;不会放进共享的 `node_modules`。每个包带自己的依赖,不影响内核依赖。
|
|
106
|
+
- 首次安装时,一个包导出多个插件会使用包名作为目录(例如 `@scope/bundle` 对应 `plugins/@scope__bundle/`)。
|
|
107
|
+
- 安装、更新、卸载成功后会自动重启运行时并加载新插件,无需手动重启;进程本身不会退出。`/plugin list` 会标记“已加载”或“重启后生效”。安装状态保存在 `plugins/.jsbot-installed.json`。
|
|
115
108
|
- 默认使用 `--ignore-scripts`;只有显式设置 `installer.allowScripts=true` 才会执行 npm 生命周期脚本。
|
|
116
109
|
- 卸载不会修改 `plugins` 配置。如果配置里仍有对应插件 ID,命令会给出警告并跳过自动重启,需要在处理配置后手动重启;其它已安装包依赖被卸载插件 ID 时默认拒绝卸载,可使用 `/plugin remove <目标> --force` 强制卸载。
|
|
117
110
|
|
|
@@ -125,8 +118,9 @@ jsbot [options]
|
|
|
125
118
|
--config <path> 配置文件,优先级 CLI > BOT_CONFIG > ./bot.config.json
|
|
126
119
|
--data-dir <path> 数据目录,优先级 CLI > BOT_DATA_DIR > ./data
|
|
127
120
|
--log-level <level> debug、info、warn、error,优先级 CLI > BOT_LOG_LEVEL
|
|
128
|
-
--plugin-dir <path> 外部插件目录,可重复;BOT_PLUGIN_DIR 使用逗号分隔
|
|
129
121
|
--help 显示帮助
|
|
122
|
+
|
|
123
|
+
本地插件固定从 ./plugins/<id>/dist 自动加载;缺少 dist 时会先自动构建。
|
|
130
124
|
```
|
|
131
125
|
|
|
132
126
|
## 开发与校验
|
|
@@ -140,6 +134,7 @@ npm run smoke # node dist/app.js --help
|
|
|
140
134
|
|
|
141
135
|
npm run check:local # 检查 plugins(需要先安装本地依赖)
|
|
142
136
|
npm run build:local # 构建 plugins
|
|
137
|
+
npm run plugin:gen -- my-plugin # 生成并安装 plugins/my-plugin 模板依赖
|
|
143
138
|
```
|
|
144
139
|
|
|
145
140
|
## 发布
|
|
@@ -149,6 +144,7 @@ npm run build:local # 构建 plugins
|
|
|
149
144
|
## 文档
|
|
150
145
|
|
|
151
146
|
- [架构](docs/architecture.md)
|
|
147
|
+
- [插件开发](docs/plugin-development.md)
|
|
152
148
|
- [插件 API](docs/plugin-api.md)
|
|
153
149
|
- [配置](docs/configuration.md)
|
|
154
150
|
- [迁移与回滚](docs/migration.md)
|
package/dist/app.js
CHANGED
|
@@ -1,46 +1,32 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { resolve } from 'node:path';
|
|
2
3
|
import { parseArgs } from 'node:util';
|
|
3
4
|
import { createBotClient } from './core/client.js';
|
|
4
5
|
import { ConfigError, loadConfig, resolveConfigPath, resolveDataDir, } from './core/config/loader.js';
|
|
5
6
|
import { Kernel } from './core/kernel.js';
|
|
6
7
|
import { createLogger, parseLogLevel, } from './core/logging/logger.js';
|
|
7
|
-
import { resolveInstallDir } from './core/plugin/install-dir.js';
|
|
8
8
|
import { NpmPluginInstaller } from './core/plugin/installer.js';
|
|
9
|
-
import {
|
|
10
|
-
import { loadPluginsFromDirectory } from './core/plugin/loader.js';
|
|
9
|
+
import { loadLocalPlugins } from './core/plugin/loader.js';
|
|
11
10
|
import { openDatabase } from './core/storage/database.js';
|
|
12
11
|
import { builtinPlugins } from './plugins/index.js';
|
|
12
|
+
const LOCAL_PLUGIN_DIR = 'plugins';
|
|
13
13
|
const USAGE = `Usage: jsbot [options]
|
|
14
14
|
|
|
15
15
|
Options:
|
|
16
16
|
--config <path> Config file path (env: BOT_CONFIG)
|
|
17
17
|
--data-dir <path> Data directory (env: BOT_DATA_DIR)
|
|
18
18
|
--log-level <level> debug, info, warn or error (env: BOT_LOG_LEVEL)
|
|
19
|
-
--plugin-dir <path> External plugin directory, repeatable (env: BOT_PLUGIN_DIR)
|
|
20
19
|
--help Show this help
|
|
21
20
|
|
|
22
21
|
Config precedence: CLI > environment > ./bot.config.json.
|
|
23
22
|
Data precedence: CLI > environment > ./data.
|
|
23
|
+
Local plugins: ./${LOCAL_PLUGIN_DIR}/<id>/dist (auto-built when missing).
|
|
24
24
|
`;
|
|
25
25
|
function pick(value) {
|
|
26
26
|
return typeof value === 'string' && value.trim().length > 0
|
|
27
27
|
? value
|
|
28
28
|
: undefined;
|
|
29
29
|
}
|
|
30
|
-
function pickDirs(value) {
|
|
31
|
-
if (Array.isArray(value)) {
|
|
32
|
-
return value
|
|
33
|
-
.filter((item) => typeof item === 'string')
|
|
34
|
-
.map((item) => item.trim())
|
|
35
|
-
.filter((item) => item.length > 0);
|
|
36
|
-
}
|
|
37
|
-
if (typeof value !== 'string')
|
|
38
|
-
return [];
|
|
39
|
-
return value
|
|
40
|
-
.split(',')
|
|
41
|
-
.map((item) => item.trim())
|
|
42
|
-
.filter((item) => item.length > 0);
|
|
43
|
-
}
|
|
44
30
|
function mergePlugins(sources, logger) {
|
|
45
31
|
const seen = new Set();
|
|
46
32
|
const plugins = [];
|
|
@@ -57,40 +43,33 @@ function mergePlugins(sources, logger) {
|
|
|
57
43
|
}
|
|
58
44
|
return plugins;
|
|
59
45
|
}
|
|
60
|
-
async function loadExternalPlugins(directories, logger) {
|
|
61
|
-
const plugins = [];
|
|
62
|
-
for (const directory of directories) {
|
|
63
|
-
logger.info('loading external plugins', directory);
|
|
64
|
-
plugins.push(...(await loadPluginsFromDirectory(directory, logger)));
|
|
65
|
-
}
|
|
66
|
-
return plugins;
|
|
67
|
-
}
|
|
68
46
|
async function loadRuntimeSpec(settings) {
|
|
69
47
|
const { logger } = settings;
|
|
70
48
|
logger.info('loading config', settings.configPath);
|
|
71
49
|
const config = await loadConfig(settings.configPath);
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
50
|
+
const pluginDir = resolve(LOCAL_PLUGIN_DIR);
|
|
51
|
+
logger.info('loading plugins from', pluginDir);
|
|
52
|
+
const localPlugins = await loadLocalPlugins(pluginDir, logger, {
|
|
53
|
+
buildTimeoutMs: config.installer.timeoutMs,
|
|
54
|
+
});
|
|
55
|
+
if (localPlugins.length > 0) {
|
|
56
|
+
logger.info(`loaded ${localPlugins.length} plugin(s) from ${pluginDir}`);
|
|
77
57
|
}
|
|
78
58
|
const plugins = mergePlugins([
|
|
79
59
|
{ label: 'built-in', plugins: builtinPlugins },
|
|
80
|
-
{ label: '
|
|
81
|
-
{ label: 'installed', plugins: installed.plugins },
|
|
60
|
+
{ label: 'plugins', plugins: localPlugins },
|
|
82
61
|
], logger);
|
|
83
62
|
return {
|
|
84
63
|
config,
|
|
85
64
|
dataDir: settings.dataDir,
|
|
86
|
-
|
|
65
|
+
pluginDir,
|
|
87
66
|
plugins,
|
|
88
67
|
};
|
|
89
68
|
}
|
|
90
69
|
function createRuntime(spec, settings, onRestart) {
|
|
91
70
|
const { logger } = settings;
|
|
92
71
|
const installer = new NpmPluginInstaller({
|
|
93
|
-
dir: spec.
|
|
72
|
+
dir: spec.pluginDir,
|
|
94
73
|
config: spec.config.installer,
|
|
95
74
|
logger: logger.child('installer'),
|
|
96
75
|
reservedIds: () => new Set(spec.plugins.map((plugin) => plugin.manifest.id)),
|
|
@@ -120,7 +99,6 @@ async function main() {
|
|
|
120
99
|
config: { type: 'string' },
|
|
121
100
|
'data-dir': { type: 'string' },
|
|
122
101
|
'log-level': { type: 'string' },
|
|
123
|
-
'plugin-dir': { type: 'string', multiple: true },
|
|
124
102
|
help: { type: 'boolean', short: 'h' },
|
|
125
103
|
},
|
|
126
104
|
allowPositionals: false,
|
|
@@ -141,14 +119,10 @@ async function main() {
|
|
|
141
119
|
dataDir: pick(values['data-dir']),
|
|
142
120
|
env: process.env,
|
|
143
121
|
});
|
|
144
|
-
const cliPluginDirs = pickDirs(values['plugin-dir']);
|
|
145
|
-
const envPluginDirs = pickDirs(process.env.BOT_PLUGIN_DIR);
|
|
146
|
-
const pluginDirs = cliPluginDirs.length > 0 ? cliPluginDirs : envPluginDirs;
|
|
147
122
|
const settings = {
|
|
148
123
|
logger,
|
|
149
124
|
configPath,
|
|
150
125
|
dataDir,
|
|
151
|
-
pluginDirs,
|
|
152
126
|
};
|
|
153
127
|
let runtime = null;
|
|
154
128
|
let shuttingDown = false;
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,EACH,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,cAAc,GACjB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EACH,YAAY,EACZ,aAAa,GAEhB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,6 @@ export declare const rolesConfigSchema: z.ZodDefault<z.ZodObject<{
|
|
|
21
21
|
}, z.core.$strict>>;
|
|
22
22
|
export declare const installerConfigSchema: z.ZodObject<{
|
|
23
23
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
24
|
-
dir: z.ZodOptional<z.ZodString>;
|
|
25
24
|
registry: z.ZodDefault<z.ZodURL>;
|
|
26
25
|
allowedPackages: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
27
26
|
allowScripts: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -48,7 +47,6 @@ export declare const appConfigSchema: z.ZodObject<{
|
|
|
48
47
|
}, z.core.$loose>>>;
|
|
49
48
|
installer: z.ZodDefault<z.ZodObject<{
|
|
50
49
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
51
|
-
dir: z.ZodOptional<z.ZodString>;
|
|
52
50
|
registry: z.ZodDefault<z.ZodURL>;
|
|
53
51
|
allowedPackages: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
54
52
|
allowScripts: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,kBAAkB;;;kBAKlB,CAAA;AAEb,eAAO,MAAM,oBAAoB;;;;;;;iBAoB3B,CAAA;AAEN,eAAO,MAAM,mBAAmB;;;mBAMqB,CAAA;AAErD,eAAO,MAAM,iBAAiB;;;mBAMa,CAAA;AAE3C,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,kBAAkB;;;kBAKlB,CAAA;AAEb,eAAO,MAAM,oBAAoB;;;;;;;iBAoB3B,CAAA;AAEN,eAAO,MAAM,mBAAmB;;;mBAMqB,CAAA;AAErD,eAAO,MAAM,iBAAiB;;;mBAMa,CAAA;AAE3C,eAAO,MAAM,qBAAqB;;;;;;kBAQrB,CAAA;AAEb,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;kBAef,CAAA;AAEb,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC7D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAC3D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAS7E"}
|
|
@@ -40,7 +40,6 @@ export const rolesConfigSchema = z
|
|
|
40
40
|
export const installerConfigSchema = z
|
|
41
41
|
.object({
|
|
42
42
|
enabled: z.boolean().default(false),
|
|
43
|
-
dir: z.string().min(1).optional(),
|
|
44
43
|
registry: z.url().default('https://registry.npmjs.org/'),
|
|
45
44
|
allowedPackages: z.array(z.string().min(1)).default([]),
|
|
46
45
|
allowScripts: z.boolean().default(false),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACJ,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACzD,CAAC;KACD,MAAM,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAChC,MAAM,CAAC;IACJ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE;CACxC,CAAC;KACD,KAAK,EAAE;KACP,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IAC5B,IACI,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAC7B,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAC9B,CAAC;QACC,OAAO,CAAC,QAAQ,CAAC;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EACH,uDAAuD;YAC3D,IAAI,EAAE,CAAC,QAAQ,CAAC;SACnB,CAAC,CAAA;IACN,CAAC;AACL,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACJ,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACtD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;CACxD,CAAC;KACD,MAAM,EAAE;KACR,OAAO,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAA;AAErD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACJ,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5D,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC1D,CAAC;KACD,MAAM,EAAE;KACR,OAAO,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACjC,MAAM,CAAC;IACJ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { OneBotMessageEvent } from '@snowluma/sdk';
|
|
2
|
+
import { type CompiledCommandParams } from '../plugin/command-params.js';
|
|
3
|
+
import type { CommandGroupRegistrar, CommandHandler, CommandInfo, CommandMatch } from '../plugin/types.js';
|
|
2
4
|
import type { Permission } from '../security/permission.js';
|
|
5
|
+
type AnyCommandHandler = CommandHandler<OneBotMessageEvent, any[]>;
|
|
3
6
|
export interface CommandRegistration {
|
|
4
7
|
pluginId: string;
|
|
5
8
|
name: string;
|
|
@@ -7,7 +10,20 @@ export interface CommandRegistration {
|
|
|
7
10
|
prefixes: string[];
|
|
8
11
|
permission: Permission;
|
|
9
12
|
description?: string | undefined;
|
|
10
|
-
|
|
13
|
+
params?: string | undefined;
|
|
14
|
+
paramsParser?: CompiledCommandParams | undefined;
|
|
15
|
+
usage?: string | undefined;
|
|
16
|
+
handler: AnyCommandHandler;
|
|
17
|
+
}
|
|
18
|
+
export interface CommandGroupRegistration {
|
|
19
|
+
pluginId: string;
|
|
20
|
+
name: string;
|
|
21
|
+
aliases: string[];
|
|
22
|
+
prefixes: string[];
|
|
23
|
+
permission: Permission;
|
|
24
|
+
description?: string | undefined;
|
|
25
|
+
params?: string | undefined;
|
|
26
|
+
handler?: AnyCommandHandler | undefined;
|
|
11
27
|
}
|
|
12
28
|
export interface RegisteredCommand {
|
|
13
29
|
registration: CommandRegistration;
|
|
@@ -18,8 +34,14 @@ export declare class CommandRegistry {
|
|
|
18
34
|
private readonly registrations;
|
|
19
35
|
private readonly byPlugin;
|
|
20
36
|
register(registration: CommandRegistration): () => void;
|
|
37
|
+
group(registration: CommandGroupRegistration, setup: (group: CommandGroupRegistrar) => void): () => void;
|
|
21
38
|
removePlugin(pluginId: string): void;
|
|
22
39
|
list(): ReadonlyArray<CommandInfo>;
|
|
23
40
|
match(rawMessage: string): RegisteredCommand | null;
|
|
41
|
+
private withParams;
|
|
42
|
+
private insert;
|
|
43
|
+
private createGroupScope;
|
|
44
|
+
private registerGroupRoot;
|
|
24
45
|
}
|
|
46
|
+
export {};
|
|
25
47
|
//# sourceMappingURL=command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/core/dispatch/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/core/dispatch/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAGH,KAAK,qBAAqB,EAC7B,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAER,qBAAqB,EACrB,cAAc,EACd,WAAW,EACX,YAAY,EAEf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D,KAAK,iBAAiB,GAAG,cAAc,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAA;AAElE,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAA;IAChD,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,OAAO,EAAE,iBAAiB,CAAA;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAC9B,YAAY,EAAE,mBAAmB,CAAA;IACjC,KAAK,EAAE,YAAY,CAAA;CACtB;AA0GD,qBAAa,eAAe;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsD;IAC5E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8C;IAEvE,QAAQ,CAAC,YAAY,EAAE,mBAAmB,GAAG,MAAM,IAAI,CActD;IAED,KAAK,CACD,YAAY,EAAE,wBAAwB,EACtC,KAAK,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,GAC9C,MAAM,IAAI,CAiCZ;IAED,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CA8BnC;IAED,IAAI,IAAI,aAAa,CAAC,WAAW,CAAC,CAejC;IAED,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAsDlD;IAED,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,MAAM;IAoEd,OAAO,CAAC,gBAAgB;IAmKxB,OAAO,CAAC,iBAAiB;CA6B5B"}
|