@zhin.js/scaffold-wizard 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/README.md +4 -0
  2. package/lib/adapter-configurers.d.ts.map +1 -1
  3. package/lib/adapter-configurers.js +14 -53
  4. package/lib/adapter-configurers.js.map +1 -1
  5. package/lib/adapter.d.ts +17 -9
  6. package/lib/adapter.d.ts.map +1 -1
  7. package/lib/adapter.js +77 -94
  8. package/lib/adapter.js.map +1 -1
  9. package/lib/apply.d.ts +22 -1
  10. package/lib/apply.d.ts.map +1 -1
  11. package/lib/apply.js +156 -23
  12. package/lib/apply.js.map +1 -1
  13. package/lib/index.d.ts +4 -4
  14. package/lib/index.d.ts.map +1 -1
  15. package/lib/index.js +3 -3
  16. package/lib/index.js.map +1 -1
  17. package/lib/optional-peers.d.ts +1 -1
  18. package/lib/optional-peers.d.ts.map +1 -1
  19. package/lib/optional-peers.js +1 -1
  20. package/lib/optional-peers.js.map +1 -1
  21. package/lib/project-config-plan.d.ts +2 -0
  22. package/lib/project-config-plan.d.ts.map +1 -1
  23. package/lib/project-config-plan.js +66 -17
  24. package/lib/project-config-plan.js.map +1 -1
  25. package/lib/upgrade-l4.d.ts +1 -2
  26. package/lib/upgrade-l4.d.ts.map +1 -1
  27. package/lib/upgrade-l4.js +1 -1
  28. package/lib/upgrade-l4.js.map +1 -1
  29. package/lib/zhin-stack-deps.d.ts +10 -2
  30. package/lib/zhin-stack-deps.d.ts.map +1 -1
  31. package/lib/zhin-stack-deps.js +27 -11
  32. package/lib/zhin-stack-deps.js.map +1 -1
  33. package/package.json +1 -1
  34. package/src/adapter-configurers.ts +14 -52
  35. package/src/adapter.ts +91 -99
  36. package/src/apply.ts +170 -21
  37. package/src/index.ts +9 -4
  38. package/src/optional-peers.ts +1 -5
  39. package/src/project-config-plan.ts +67 -17
  40. package/src/upgrade-l4.ts +2 -10
  41. package/src/zhin-stack-deps.ts +27 -16
package/README.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  Zhin 项目脚手架的**共享交互向导**库。适配器、AI、数据库的分步引导与配置合并逻辑集中在此,供 `create-zhin-app` 与 `@zhin.js/cli` 的 `zhin setup` 共用,避免两套实现漂移。
4
4
 
5
+ ::: warning 依赖版本策略
6
+ 脚手架写入的 `@zhin.js/*` / `zhin.js` 版本默认为 **`latest`**(见 `zhin-stack-deps.ts` 与 `check:dependency-policy`)。新建项目可能随 npm 最新标签自动跟上 breaking;生产锁定请在生成后自行 pin 精确版本,或使用 `pnpm doctor` / 仓库 examples 的 workspace 协议作对照。
7
+ :::
8
+
5
9
  ## 消费者
6
10
 
7
11
  | 包 / 命令 | 用途 |
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-configurers.d.ts","sourceRoot":"","sources":["../src/adapter-configurers.ts"],"names":[],"mappings":"AAGA,gBAAgB;AAChB,eAAO,MAAM,iBAAiB,kCAAkC,CAAC;AAEjE,uCAAuC;AACvC,eAAO,MAAM,kBAAkB,kCAAoB,CAAC;AAEpD,0BAA0B;AAC1B,eAAO,MAAM,uBAAuB,4CAA4C,CAAC;AAEjF,uCAAuC;AACvC,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,WAA2C,CAAC;AAEvF,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,wBAAsB,yBAAyB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA+F/G;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmJ7G;AAED,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAuE1G;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAgEpG;AAED,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoE9G;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA0E5G"}
1
+ {"version":3,"file":"adapter-configurers.d.ts","sourceRoot":"","sources":["../src/adapter-configurers.ts"],"names":[],"mappings":"AAGA,gBAAgB;AAChB,eAAO,MAAM,iBAAiB,kCAAkC,CAAC;AAEjE,uCAAuC;AACvC,eAAO,MAAM,kBAAkB,kCAAoB,CAAC;AAEpD,0BAA0B;AAC1B,eAAO,MAAM,uBAAuB,4CAA4C,CAAC;AAEjF,uCAAuC;AACvC,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,WAA2C,CAAC;AAEvF,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,wBAAsB,yBAAyB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiF/G;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiJ7G;AAED,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAsE1G;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAsDpG;AAED,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmE9G;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAgE5G"}
@@ -47,7 +47,6 @@ export async function configureTelegramEndpoint(ctx) {
47
47
  },
48
48
  ]);
49
49
  const endpointConfig = {
50
- context: 'telegram',
51
50
  name: endpointName.trim(),
52
51
  token: '${TELEGRAM_TOKEN}',
53
52
  polling: transport === 'polling',
@@ -56,8 +55,7 @@ export async function configureTelegramEndpoint(ctx) {
56
55
  console.log('');
57
56
  console.log(chalk.yellow(' Webhook 前置条件:'));
58
57
  console.log(chalk.gray(' • Endpoint 进程需绑定可被 Telegram 访问的 HTTPS 域名(有效 TLS 证书)'));
59
- console.log(chalk.gray(' • 在 @BotFather 可配合 setWebhook,或由 Telegraf 在 launch 时注册'));
60
- console.log(chalk.gray(' • 防火墙/反向代理需放行 webhook.port(默认由 Telegraf 监听)'));
58
+ console.log(chalk.gray(' • Webhook 由内置 HTTP Host(zhin runtime start)承接,防火墙/反向代理需放行 http 端口'));
61
59
  const webhook = await inquirer.prompt([
62
60
  {
63
61
  type: 'input',
@@ -75,26 +73,13 @@ export async function configureTelegramEndpoint(ctx) {
75
73
  type: 'input',
76
74
  name: 'path',
77
75
  message: ' Webhook 路径:',
78
- default: '/telegram-webhook',
79
- },
80
- {
81
- type: 'input',
82
- name: 'port',
83
- message: ' 本地监听端口(Telegraf webhook server):',
84
- default: '8443',
85
- validate: (v) => {
86
- const p = parseInt(v, 10);
87
- if (Number.isNaN(p) || p < 1 || p > 65535)
88
- return '请输入 1–65535 端口';
89
- return true;
90
- },
76
+ default: '/telegram/webhook',
91
77
  },
92
78
  ]);
93
79
  endpointConfig.polling = false;
94
80
  endpointConfig.webhook = {
95
81
  domain: webhook.domain.trim(),
96
82
  path: webhook.path.trim(),
97
- port: parseInt(webhook.port, 10),
98
83
  };
99
84
  }
100
85
  return endpointConfig;
@@ -130,7 +115,6 @@ export async function configureGitHubEndpoint(ctx) {
130
115
  },
131
116
  ]);
132
117
  const endpointConfig = {
133
- context: 'github',
134
118
  name: endpointName.trim(),
135
119
  };
136
120
  if (authMode === 'github_app') {
@@ -164,7 +148,7 @@ export async function configureGitHubEndpoint(ctx) {
164
148
  message: ' 事件接收方式:',
165
149
  choices: [
166
150
  {
167
- name: 'Webhook 实时推送(需 @zhin.js/host-router + 公网 URL)',
151
+ name: 'Webhook 实时推送(由内置 HTTP Host 承接,需公网 URL)',
168
152
  value: 'webhook',
169
153
  },
170
154
  {
@@ -178,9 +162,8 @@ export async function configureGitHubEndpoint(ctx) {
178
162
  if (eventsMode === 'webhook') {
179
163
  console.log('');
180
164
  console.log(chalk.yellow(' Webhook 前置条件:'));
181
- console.log(chalk.gray(' • plugins 需包含 @zhin.js/host-router(脚手架已默认写入)'));
182
- console.log(chalk.gray(' • GitHub App Webhook URL 填 https://<你的域名>/pub/github/webhook'));
183
- console.log(chalk.gray(' • /pub/* 路径绕过 Bearer 认证,供 GitHub 回调'));
165
+ console.log(chalk.gray(' • Webhook 由内置 HTTP Host(zhin runtime start 的 http 配置)承接'));
166
+ console.log(chalk.gray(' • GitHub App Webhook URL 填 https://<你的域名>/github/webhook'));
184
167
  const webhook = await inquirer.prompt([
185
168
  {
186
169
  type: 'password',
@@ -192,7 +175,7 @@ export async function configureGitHubEndpoint(ctx) {
192
175
  type: 'input',
193
176
  name: 'webhook_path',
194
177
  message: ' Webhook 路径:',
195
- default: '/pub/github/webhook',
178
+ default: '/github/webhook',
196
179
  },
197
180
  ]);
198
181
  ctx.envVars.GITHUB_WEBHOOK_SECRET = webhook.webhook_secret;
@@ -246,7 +229,7 @@ export async function configureOneBot11Bot(ctx) {
246
229
  message: ' 连接方式:',
247
230
  choices: [
248
231
  { name: '正向 WebSocket (ws) — 本 Endpoint 连接 OneBot 实现', value: 'ws' },
249
- { name: '反向 WebSocket (wss) — OneBot 实现连本 Bot(需 host-router)', value: 'wss' },
232
+ { name: '反向 WebSocket (wss) — OneBot 实现连本 Bot(由内置 HTTP Host 承接)', value: 'wss' },
250
233
  ],
251
234
  default: 'ws',
252
235
  },
@@ -261,7 +244,6 @@ export async function configureOneBot11Bot(ctx) {
261
244
  },
262
245
  ]);
263
246
  const endpointConfig = {
264
- context: 'onebot11',
265
247
  connection,
266
248
  name: endpointName.trim(),
267
249
  };
@@ -278,7 +260,7 @@ export async function configureOneBot11Bot(ctx) {
278
260
  endpointConfig.url = url.trim();
279
261
  }
280
262
  else {
281
- console.log(chalk.gray(' 反向 WS 需启用 @zhin.js/host-router,OneBot 实现配置连接到此 Bot'));
263
+ console.log(chalk.gray(' 反向 WS 由内置 HTTP Host 承接,OneBot 实现配置连接到此 Bot'));
282
264
  const { path: wsPath } = await inquirer.prompt([
283
265
  {
284
266
  type: 'input',
@@ -320,12 +302,6 @@ export async function configureQQBot(ctx) {
320
302
  message: ' App ID(QQ 开放平台):',
321
303
  validate: (v) => (v.trim() ? true : 'App ID 不能为空'),
322
304
  },
323
- {
324
- type: 'password',
325
- name: 'token',
326
- message: ' Token:',
327
- validate: (v) => (v.trim() ? true : 'Token 不能为空'),
328
- },
329
305
  {
330
306
  type: 'password',
331
307
  name: 'secret',
@@ -334,7 +310,6 @@ export async function configureQQBot(ctx) {
334
310
  },
335
311
  ]);
336
312
  ctx.envVars.QQ_APP_ID = credentials.appID.trim();
337
- ctx.envVars.QQ_TOKEN = credentials.token;
338
313
  ctx.envVars.QQ_SECRET = credentials.secret;
339
314
  const { mode, sandbox } = await inquirer.prompt([
340
315
  {
@@ -342,10 +317,10 @@ export async function configureQQBot(ctx) {
342
317
  name: 'mode',
343
318
  message: ' 消息接收模式 (mode):',
344
319
  choices: [
345
- { name: 'public — 公域消息', value: 'public' },
346
- { name: 'private — 私域消息', value: 'private' },
320
+ { name: 'websocket — WebSocket 网关(默认,无需公网)', value: 'websocket' },
321
+ { name: 'webhook — HTTP 回调(需公网可达的内置 HTTP Host)', value: 'webhook' },
347
322
  ],
348
- default: 'public',
323
+ default: 'websocket',
349
324
  },
350
325
  {
351
326
  type: 'confirm',
@@ -355,13 +330,10 @@ export async function configureQQBot(ctx) {
355
330
  },
356
331
  ]);
357
332
  return {
358
- context: 'qq',
359
333
  name: credentials.name.trim(),
360
- appID: '${QQ_APP_ID}',
361
- token: '${QQ_TOKEN}',
334
+ appid: '${QQ_APP_ID}',
362
335
  secret: '${QQ_SECRET}',
363
336
  mode,
364
- platform: 'qq',
365
337
  sandbox,
366
338
  };
367
339
  }
@@ -396,13 +368,12 @@ export async function configureDiscordEndpoint(ctx) {
396
368
  ]);
397
369
  ctx.envVars.DISCORD_TOKEN = token;
398
370
  const endpointConfig = {
399
- context: 'discord',
400
371
  connection,
401
372
  name: endpointName.trim(),
402
373
  token: '${DISCORD_TOKEN}',
403
374
  };
404
375
  if (connection === 'interactions') {
405
- console.log(chalk.gray(' Interactions 模式需 @zhin.js/host-router 与 Developer Portal 中的公钥'));
376
+ console.log(chalk.gray(' Interactions 模式由内置 HTTP Host 承接,需 Developer Portal 中的公钥'));
406
377
  const interactions = await inquirer.prompt([
407
378
  {
408
379
  type: 'input',
@@ -467,7 +438,6 @@ export async function configureSlackEndpoint(ctx) {
467
438
  ctx.envVars.SLACK_BOT_TOKEN = token;
468
439
  ctx.envVars.SLACK_SIGNING_SECRET = signingSecret;
469
440
  const endpointConfig = {
470
- context: 'slack',
471
441
  name: endpointName.trim(),
472
442
  token: '${SLACK_BOT_TOKEN}',
473
443
  signingSecret: '${SLACK_SIGNING_SECRET}',
@@ -486,16 +456,7 @@ export async function configureSlackEndpoint(ctx) {
486
456
  endpointConfig.appToken = '${SLACK_APP_TOKEN}';
487
457
  }
488
458
  else {
489
- console.log(chalk.yellow(' HTTP 模式需公网可达并配置 Slack Event Subscriptions URL'));
490
- const { port } = await inquirer.prompt([
491
- {
492
- type: 'input',
493
- name: 'port',
494
- message: ' 监听端口:',
495
- default: '3000',
496
- },
497
- ]);
498
- endpointConfig.port = parseInt(port, 10);
459
+ console.log(chalk.yellow(' HTTP 模式由内置 HTTP Host 承接,需公网可达并配置 Slack Event Subscriptions URL'));
499
460
  }
500
461
  return endpointConfig;
501
462
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-configurers.js","sourceRoot":"","sources":["../src/adapter-configurers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-configurers.js","sourceRoot":"","sources":["../src/adapter-configurers.ts"],"names":[],"mappings":"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"}
package/lib/adapter.d.ts CHANGED
@@ -1,7 +1,16 @@
1
+ /** 一个待挂载的子插件实例(package.json zhin.plugins 清单 + zhin.config plugins.<instanceKey> 配置) */
2
+ export interface AdapterPluginInstance {
3
+ /** 适配器/插件包名,如 @zhin.js/adapter-sandbox */
4
+ package: string;
5
+ /** 运行时实例键,如 sandbox / telegram;同名包多实例时需区分 */
6
+ instanceKey: string;
7
+ /** 写入 zhin.config plugins.<instanceKey> 的配置(对齐该插件 schema.json) */
8
+ config: Record<string, unknown>;
9
+ }
1
10
  export interface AdapterSetupResult {
2
11
  packages: string[];
3
12
  plugins: string[];
4
- endpoints: Array<Record<string, any>>;
13
+ instances: AdapterPluginInstance[];
5
14
  envVars: Record<string, string>;
6
15
  /** 所选适配器需要 database 插件(如 GitHub 订阅/OAuth 表) */
7
16
  requiresDatabase?: boolean;
@@ -15,17 +24,16 @@ export declare function configureAdapters(): Promise<AdapterSetupResult>;
15
24
  */
16
25
  export declare function generateAdapterEnvVars(result: AdapterSetupResult): string;
17
26
  /**
18
- * 生成 YAML 格式的 endpoints 配置段
19
- */
20
- export declare function generateEndpointsConfigYaml(result: AdapterSetupResult): string;
21
- /**
22
- * 生成 TOML 格式的 endpoints 配置段
27
+ * 汇总适配器实例为 zhin.config `plugins.<instanceKey>` 配置映射(新 Plugin Runtime 格式)
23
28
  */
24
- export declare function generateEndpointsConfigToml(result: AdapterSetupResult): string;
29
+ export declare function collectAdapterPluginConfigs(result: AdapterSetupResult): Record<string, Record<string, unknown>>;
25
30
  /**
26
- * 生成 JSON 格式的 endpoints 配置段
31
+ * 汇总适配器实例为 package.json `zhin.plugins` 清单条目
27
32
  */
28
- export declare function generateEndpointsConfigJSON(result: AdapterSetupResult): string;
33
+ export declare function collectAdapterPluginManifest(result: AdapterSetupResult): Array<{
34
+ package: string;
35
+ instanceKey: string;
36
+ }>;
29
37
  /**
30
38
  * 获取适配器配置后的简要说明(用于初始化完成提示)
31
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAwMD;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAoIrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CASzE;AAqCD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAmB9E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAgB9E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAG9E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAqCzE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAyBzF"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAcA,uFAAuF;AACvF,MAAM,WAAW,qBAAqB;IACpC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAwMD;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAmJrE;AAmCD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CASzE;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAM/G;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,kBAAkB,GAAG,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAKxH;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAsCzE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAyBzF"}
package/lib/adapter.js CHANGED
@@ -10,7 +10,7 @@ const ADAPTERS = [
10
10
  plugin: '@zhin.js/adapter-sandbox',
11
11
  needsHttp: true,
12
12
  description: '终端 + Remote Console 沙盒页,本地开发首选',
13
- setupHint: '无需额外凭据;pnpm dev 后可在终端或 Console 沙盒页直接对话。',
13
+ setupHint: '无需额外凭据;pnpm dev(zhin runtime start)后可在 Console 沙盒页直接对话。',
14
14
  fields: [],
15
15
  },
16
16
  {
@@ -121,7 +121,7 @@ const ADAPTERS = [
121
121
  plugin: '@zhin.js/adapter-onebot11',
122
122
  needsHttp: false,
123
123
  description: 'OneBot v11(ws 正向 / wss 反向)',
124
- setupHint: 'connection: ws 连 OneBot 实现;connection: wss 反向连接(需 host-router)。',
124
+ setupHint: 'connection: ws 连 OneBot 实现;connection: wss 反向连接(由内置 HTTP Host 承接)。',
125
125
  docUrl: adapterDocsUrl('onebot11'),
126
126
  configure: configureOneBot11Bot,
127
127
  fields: [],
@@ -165,7 +165,7 @@ const ADAPTERS = [
165
165
  plugin: '@zhin.js/adapter-github',
166
166
  needsHttp: true,
167
167
  description: 'GitHub Issue/PR 聊天 + App 认证',
168
- setupHint: 'GitHub App 或 gh CLI;Webhook 用 /pub/github/webhook;需 database 存订阅与 OAuth。',
168
+ setupHint: 'GitHub App 或 gh CLI;Webhook 由内置 HTTP Host 承接(默认 /github/webhook);需 database 存订阅与 OAuth。',
169
169
  docUrl: adapterDocsUrl('github'),
170
170
  requiresDatabase: true,
171
171
  configure: configureGitHubEndpoint,
@@ -211,12 +211,12 @@ export async function configureAdapters() {
211
211
  for (const adapter of httpAdapters) {
212
212
  console.log(chalk.gray(` • ${adapter.name.split(' (')[0]}`));
213
213
  }
214
- console.log(chalk.gray(' 开发时可先用 Sandbox;上线前请确保 http 端口(默认 8086)可从平台回调。'));
214
+ console.log(chalk.gray(' 开发时可先用 Sandbox;上线前请确保 http 端口(默认 8068)可从平台回调。'));
215
215
  }
216
216
  const result = {
217
217
  packages: [],
218
218
  plugins: [],
219
- endpoints: [],
219
+ instances: [],
220
220
  envVars: {},
221
221
  requiresDatabase: false,
222
222
  };
@@ -234,11 +234,22 @@ export async function configureAdapters() {
234
234
  if (adapterDef.requiresDatabase) {
235
235
  result.requiresDatabase = true;
236
236
  }
237
- if (adapterValue === 'sandbox')
237
+ if (adapterValue === 'sandbox') {
238
+ // 对齐 examples/test-bot:Console 沙盒页与本地调试共用的默认 Endpoint
239
+ result.instances.push({
240
+ package: adapterDef.package,
241
+ instanceKey: 'sandbox',
242
+ config: {
243
+ endpoints: [{ context: 'sandbox', name: 'sandbox-bot', owner: 'sandbox-user' }],
244
+ },
245
+ });
238
246
  continue;
247
+ }
239
248
  const hasConfig = adapterDef.configure || adapterDef.fields.length > 0;
240
- if (!hasConfig)
249
+ if (!hasConfig) {
250
+ result.instances.push({ package: adapterDef.package, instanceKey: adapterDef.value, config: {} });
241
251
  continue;
252
+ }
242
253
  console.log('');
243
254
  console.log(chalk.yellow(` 📝 配置 ${adapterDef.name.split(' (')[0]} Bot`));
244
255
  if (adapterDef.setupHint) {
@@ -250,7 +261,7 @@ export async function configureAdapters() {
250
261
  console.log(chalk.gray(` 索引: ${ADAPTERS_DOCS_URL}`));
251
262
  if (adapterDef.configure) {
252
263
  let markedDb = false;
253
- const endpointConfig = await adapterDef.configure({
264
+ const instanceConfig = await adapterDef.configure({
254
265
  envVars: result.envVars,
255
266
  markRequiresDatabase: () => {
256
267
  markedDb = true;
@@ -259,12 +270,10 @@ export async function configureAdapters() {
259
270
  });
260
271
  if (markedDb)
261
272
  result.requiresDatabase = true;
262
- result.endpoints.push(endpointConfig);
273
+ result.instances.push({ package: adapterDef.package, instanceKey: adapterDef.value, config: instanceConfig });
263
274
  continue;
264
275
  }
265
- const endpointConfig = {
266
- context: adapterDef.value,
267
- };
276
+ const fieldValues = {};
268
277
  for (const field of adapterDef.fields) {
269
278
  const promptConfig = {
270
279
  type: field.type || 'input',
@@ -286,16 +295,52 @@ export async function configureAdapters() {
286
295
  if (field.envKey) {
287
296
  // 敏感信息存 .env,配置引用环境变量
288
297
  result.envVars[field.envKey] = value || '';
289
- endpointConfig[field.key] = `\${${field.envKey}}`;
298
+ fieldValues[field.key] = `\${${field.envKey}}`;
290
299
  }
291
300
  else {
292
- endpointConfig[field.key] = value;
301
+ fieldValues[field.key] = value;
293
302
  }
294
303
  }
295
- result.endpoints.push(endpointConfig);
304
+ result.instances.push({
305
+ package: adapterDef.package,
306
+ instanceKey: adapterDef.value,
307
+ config: buildFieldBasedInstanceConfig(adapterDef.value, fieldValues),
308
+ });
296
309
  }
297
310
  return result;
298
311
  }
312
+ /**
313
+ * 字段式适配器(无自定义 configure)的实例配置整形,对齐各插件 schema.json:
314
+ * - wechat-mp:webhookPath → path
315
+ * - email:smtp/imap 平铺字段 → smtp/imap 嵌套对象
316
+ * - 其余:字段直传
317
+ */
318
+ function buildFieldBasedInstanceConfig(adapterValue, values) {
319
+ if (adapterValue === 'wechat-mp') {
320
+ const { webhookPath, ...rest } = values;
321
+ return { ...rest, path: webhookPath ?? '/wechat/webhook' };
322
+ }
323
+ if (adapterValue === 'email') {
324
+ const user = values.user ?? '';
325
+ const password = values.password ?? '';
326
+ return {
327
+ smtp: {
328
+ host: values.smtpHost,
329
+ port: Number(values.smtpPort) || 465,
330
+ secure: true,
331
+ auth: { user, pass: password },
332
+ },
333
+ imap: {
334
+ host: values.imapHost,
335
+ port: Number(values.imapPort) || 993,
336
+ tls: true,
337
+ user,
338
+ password,
339
+ },
340
+ };
341
+ }
342
+ return values;
343
+ }
299
344
  /**
300
345
  * 获取适配器配置需要写入 .env 的环境变量文本
301
346
  */
@@ -310,103 +355,41 @@ export function generateAdapterEnvVars(result) {
310
355
  return lines.join('\n');
311
356
  }
312
357
  /**
313
- * 将 Endpoint 配置项格式化为 YAML 行
314
- */
315
- function appendYamlValue(lines, key, value, indent) {
316
- const pad = ' '.repeat(indent);
317
- if (value === undefined || value === null)
318
- return;
319
- if (typeof value === 'object' && !Array.isArray(value)) {
320
- lines.push(`${pad}${key}:`);
321
- for (const [subKey, subValue] of Object.entries(value)) {
322
- appendYamlValue(lines, subKey, subValue, indent + 1);
323
- }
324
- return;
325
- }
326
- if (Array.isArray(value)) {
327
- lines.push(`${pad}${key}:`);
328
- for (const item of value) {
329
- if (typeof item === 'string') {
330
- lines.push(`${pad} - "${item}"`);
331
- }
332
- else {
333
- lines.push(`${pad} - ${item}`);
334
- }
335
- }
336
- return;
337
- }
338
- if (typeof value === 'boolean' || typeof value === 'number') {
339
- lines.push(`${pad}${key}: ${value}`);
340
- return;
341
- }
342
- lines.push(`${pad}${key}: ${value}`);
343
- }
344
- /**
345
- * 生成 YAML 格式的 endpoints 配置段
346
- */
347
- export function generateEndpointsConfigYaml(result) {
348
- if (result.endpoints.length === 0) {
349
- return `
350
-
351
- # Sandbox:Remote Console 打开「沙盒」页并通过 WebSocket 连接时自动创建 Endpoint
352
- endpoints: []
353
- `;
354
- }
355
- const lines = ['', 'endpoints:'];
356
- for (const entry of result.endpoints) {
357
- const { context, ...config } = entry;
358
- lines.push(` - context: ${context}`);
359
- for (const [key, value] of Object.entries(config)) {
360
- appendYamlValue(lines, key, value, 2);
361
- }
362
- }
363
- return lines.join('\n');
364
- }
365
- /**
366
- * 生成 TOML 格式的 endpoints 配置段
358
+ * 汇总适配器实例为 zhin.config `plugins.<instanceKey>` 配置映射(新 Plugin Runtime 格式)
367
359
  */
368
- export function generateEndpointsConfigToml(result) {
369
- if (result.endpoints.length === 0)
370
- return '';
371
- const lines = [''];
372
- for (const entry of result.endpoints) {
373
- lines.push('[[endpoints]]');
374
- for (const [key, value] of Object.entries(entry)) {
375
- if (typeof value === 'string') {
376
- lines.push(`${key} = "${value.replace(/"/g, '\\"')}"`);
377
- }
378
- else {
379
- lines.push(`${key} = ${JSON.stringify(value)}`);
380
- }
381
- }
382
- lines.push('');
360
+ export function collectAdapterPluginConfigs(result) {
361
+ const plugins = {};
362
+ for (const instance of result.instances) {
363
+ plugins[instance.instanceKey] = instance.config;
383
364
  }
384
- return lines.join('\n');
365
+ return plugins;
385
366
  }
386
367
  /**
387
- * 生成 JSON 格式的 endpoints 配置段
368
+ * 汇总适配器实例为 package.json `zhin.plugins` 清单条目
388
369
  */
389
- export function generateEndpointsConfigJSON(result) {
390
- if (result.endpoints.length === 0)
391
- return '';
392
- return ` "endpoints": ${JSON.stringify(result.endpoints, null, 4).replace(/^/gm, ' ').trimStart()},`;
370
+ export function collectAdapterPluginManifest(result) {
371
+ return result.instances.map((instance) => ({
372
+ package: instance.package,
373
+ instanceKey: instance.instanceKey,
374
+ }));
393
375
  }
394
376
  /**
395
377
  * 获取适配器配置后的简要说明(用于初始化完成提示)
396
378
  */
397
379
  export function getAdapterSetupNotes(result) {
398
380
  const notes = [];
399
- for (const entry of result.endpoints) {
400
- const context = entry.context;
381
+ for (const instance of result.instances) {
382
+ const context = instance.instanceKey;
383
+ const entry = instance.config;
401
384
  if (context === 'telegram' && entry.polling === false) {
402
- notes.push('Telegram Webhook: 确保 HTTPS 域名可从公网访问,且 webhook.port 已放行');
385
+ notes.push('Telegram Webhook: 确保 HTTPS 域名可从公网访问,且 http 端口已放行');
403
386
  }
404
387
  if (context === 'telegram' && entry.polling !== false) {
405
388
  notes.push('Telegram polling: 本地开发可直接 pnpm dev,无需公网');
406
389
  }
407
390
  if (context === 'github') {
408
391
  if (entry.webhook_secret) {
409
- notes.push('GitHub Webhook: App 设置 URL 为 https://<域名>/pub/github/webhook');
392
+ notes.push('GitHub Webhook: App 设置 URL 为 https://<域名>/github/webhook');
410
393
  }
411
394
  else {
412
395
  notes.push('GitHub polling: 无 Webhook 时将轮询 Events API(默认 60s)');