@h-ai/cli 1.0.0-beta.5 → 1.0.0-beta.7

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 (59) hide show
  1. package/README.en.md +24 -10
  2. package/README.ja.md +24 -10
  3. package/README.md +24 -10
  4. package/dist/{chunk-YHSX7AQX.js → chunk-7DNIMG2H.js} +89 -14
  5. package/dist/chunk-7DNIMG2H.js.map +1 -0
  6. package/dist/{chunk-YVNNMC4H.js → chunk-RT5OZJKM.js} +644 -11
  7. package/dist/chunk-RT5OZJKM.js.map +1 -0
  8. package/dist/{chunk-VUWM43KR.js → chunk-XI5SKOOR.js} +6673 -723
  9. package/dist/chunk-XI5SKOOR.js.map +1 -0
  10. package/dist/cli-config-templates-5KS3AE4H.js +5 -0
  11. package/dist/{cli-config-templates-LUJGDQNW.js.map → cli-config-templates-5KS3AE4H.js.map} +1 -1
  12. package/dist/{cli-skill-templates-COTP767H.js → cli-skill-templates-S2YH642Z.js} +3 -3
  13. package/dist/{cli-skill-templates-COTP767H.js.map → cli-skill-templates-S2YH642Z.js.map} +1 -1
  14. package/dist/index.js +395 -387
  15. package/dist/index.js.map +1 -1
  16. package/dist/metafile-esm.json +1 -1
  17. package/dist/src-CX5IJGYM.js +5 -0
  18. package/dist/src-CX5IJGYM.js.map +1 -0
  19. package/package.json +11 -11
  20. package/templates/README.md +4 -0
  21. package/templates/apps/api/apps/{{projectName}}-serv/README.md.hbs +1 -1
  22. package/templates/apps/api/apps/{{projectName}}-serv/package.json.hbs +4 -4
  23. package/templates/apps/api/apps/{{projectName}}-serv/src/lib/server/init.ts.hbs +41 -2
  24. package/templates/apps/api/images/serv.Dockerfile.hbs +11 -6
  25. package/templates/apps/fullstack/docs/security-configuration.md.hbs +1 -1
  26. package/templates/apps/fullstack/images/serv.Dockerfile.hbs +11 -6
  27. package/templates/apps/fullstack/images/web.Dockerfile.hbs +11 -5
  28. package/templates/apps/fullstack/packages/{{projectName}}-serv/README.md.hbs +6 -6
  29. package/templates/apps/fullstack/packages/{{projectName}}-serv/package.json.hbs +4 -4
  30. package/templates/apps/fullstack/packages/{{projectName}}-serv/src/index.ts.hbs +1 -2
  31. package/templates/apps/fullstack/packages/{{projectName}}-serv/src/server/runtime.ts.hbs +26 -2
  32. package/templates/apps/fullstack/packages/{{projectName}}-serv/tests/app-server.test.ts.hbs +0 -1
  33. package/templates/base/images/web.Dockerfile.hbs +20 -10
  34. package/templates/base/package.json.hbs +8 -3
  35. package/templates/base/src/lib/server/init.ts.hbs +40 -2
  36. package/templates/shared/run-node.mjs +45 -0
  37. package/templates/skills/hai-ai/SKILL.md +6 -2
  38. package/templates/skills/hai-ai/acp.md +143 -0
  39. package/templates/skills/hai-ai/guide.md +2 -2
  40. package/templates/skills/hai-ai/resources.md +69 -0
  41. package/templates/skills/hai-app-create/development.md +9 -8
  42. package/templates/skills/hai-app-create/reference.md +1 -1
  43. package/templates/skills/hai-build/SKILL.md +5 -2
  44. package/templates/skills/hai-build/reference.md +16 -2
  45. package/templates/skills/hai-ci/SKILL.md +2 -0
  46. package/templates/skills/hai-core/SKILL.md +2 -2
  47. package/templates/skills/hai-core/reference.md +3 -3
  48. package/templates/skills/hai-core/request-access.md +1 -1
  49. package/templates/skills/hai-crypto/reference.md +1 -1
  50. package/templates/skills/hai-deploy/SKILL.md +8 -4
  51. package/templates/skills/hai-deploy/middleware.md +9 -9
  52. package/templates/skills/hai-iam/reference.md +2 -2
  53. package/templates/skills/hai-serv/reference.md +1 -1
  54. package/dist/chunk-VUWM43KR.js.map +0 -1
  55. package/dist/chunk-YHSX7AQX.js.map +0 -1
  56. package/dist/chunk-YVNNMC4H.js.map +0 -1
  57. package/dist/cli-config-templates-LUJGDQNW.js +0 -5
  58. package/dist/src-24PXSKE6.js +0 -5
  59. package/dist/src-24PXSKE6.js.map +0 -1
@@ -195,6 +195,350 @@ var cli_config_catalog_default = [
195
195
  value: "x-api-key",
196
196
  constraint: "\u5B57\u7B26\u4E32"
197
197
  },
198
+ {
199
+ name: "HAI_AI_ACP",
200
+ module: "ai",
201
+ path: "ai.acp",
202
+ description: "ACP \u4F1A\u8BDD\u4E0E\u6267\u884C\u9650\u5236\uFF08\u4EC5 Node \u670D\u52A1\u7AEF\uFF09\u3002",
203
+ value: "",
204
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
205
+ },
206
+ {
207
+ name: "HAI_AI_ACP_AGENTS",
208
+ module: "ai",
209
+ path: "ai.acp.agents",
210
+ description: "\u914D\u7F6E\u6587\u4EF6\u5B9A\u4E49\u7684\u53EA\u8BFB\u667A\u80FD\u4F53\uFF0C\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u6309 ID \u5408\u5E76\u3002",
211
+ value: "[]",
212
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
213
+ },
214
+ {
215
+ name: "HAI_AI_ACP_AGENTS_0",
216
+ module: "ai",
217
+ path: "ai.acp.agents.0",
218
+ description: "\u914D\u7F6E\u6587\u4EF6\u5B9A\u4E49\u7684\u53EA\u8BFB\u667A\u80FD\u4F53\uFF0C\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u6309 ID \u5408\u5E76\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
219
+ value: "",
220
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
221
+ },
222
+ {
223
+ name: "HAI_AI_ACP_AGENTS_0_ADAPTER",
224
+ module: "ai",
225
+ path: "ai.acp.agents.0.adapter",
226
+ description: "\u539F\u751F\u914D\u7F6E\u9002\u914D\u5668\u540D\u79F0\uFF0C\u9ED8\u8BA4 generic\u3002",
227
+ value: "generic",
228
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
229
+ },
230
+ {
231
+ name: "HAI_AI_ACP_AGENTS_0_ARGS",
232
+ module: "ai",
233
+ path: "ai.acp.agents.0.args",
234
+ description: "\u539F\u751F\u542F\u52A8\u53C2\u6570\uFF0C\u7701\u7565\u65F6\u7531\u9002\u914D\u5668\u63D0\u4F9B\u9ED8\u8BA4\u503C\u3002",
235
+ value: "",
236
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
237
+ },
238
+ {
239
+ name: "HAI_AI_ACP_AGENTS_0_ARGS_0",
240
+ module: "ai",
241
+ path: "ai.acp.agents.0.args.0",
242
+ description: "\u539F\u751F\u542F\u52A8\u53C2\u6570\uFF0C\u7701\u7565\u65F6\u7531\u9002\u914D\u5668\u63D0\u4F9B\u9ED8\u8BA4\u503C\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
243
+ value: "",
244
+ constraint: "\u5B57\u7B26\u4E32"
245
+ },
246
+ {
247
+ name: "HAI_AI_ACP_AGENTS_0_COMMAND",
248
+ module: "ai",
249
+ path: "ai.acp.agents.0.command",
250
+ description: "\u53EF\u9009\u539F\u751F\u7A0B\u5E8F\u8986\u76D6\uFF0C\u4F7F\u7528\u53C2\u6570\u6570\u7EC4\u6267\u884C\uFF0C\u4E0D\u7ECF\u8FC7 shell\u3002",
251
+ value: "",
252
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
253
+ },
254
+ {
255
+ name: "HAI_AI_ACP_AGENTS_0_DEFAULTMODELID",
256
+ module: "ai",
257
+ path: "ai.acp.agents.0.defaultModelId",
258
+ description: "\u9ED8\u8BA4\u9009\u62E9\u7684\u6A21\u578B ID\uFF0C\u5FC5\u987B\u5B58\u5728\u4E8E modelIds\u3002",
259
+ value: "",
260
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
261
+ },
262
+ {
263
+ name: "HAI_AI_ACP_AGENTS_0_ENABLED",
264
+ module: "ai",
265
+ path: "ai.acp.agents.0.enabled",
266
+ description: "\u9ED8\u8BA4\u542F\u7528\uFF0C\u7981\u7528\u540E\u7981\u6B62\u65B0\u5EFA\u548C\u6062\u590D\u4F1A\u8BDD\u3002",
267
+ value: "true",
268
+ constraint: "true | false"
269
+ },
270
+ {
271
+ name: "HAI_AI_ACP_AGENTS_0_ENGINE",
272
+ module: "ai",
273
+ path: "ai.acp.agents.0.engine",
274
+ description: "auto \u4F18\u5148\u53EF\u7528 Podman\uFF0C\u518D\u9009 Docker\uFF1B\u663E\u5F0F\u9009\u62E9\u4E0D\u81EA\u52A8\u964D\u7EA7\u3002",
275
+ value: "auto",
276
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Aauto | podman | docker"
277
+ },
278
+ {
279
+ name: "HAI_AI_ACP_AGENTS_0_ENVIRONMENTREFS",
280
+ module: "ai",
281
+ path: "ai.acp.agents.0.environmentRefs",
282
+ description: "\u76EE\u6807\u73AF\u5883\u53D8\u91CF\u540D\u5230\u5BBF\u4E3B\u73AF\u5883\u53D8\u91CF\u540D\u7684\u6620\u5C04\uFF1B\u4FDD\u5B58\u5F15\u7528\u800C\u975E\u660E\u6587\u51ED\u636E\u3002",
283
+ value: "{}",
284
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
285
+ },
286
+ {
287
+ name: "HAI_AI_ACP_AGENTS_0_HEADERENV",
288
+ module: "ai",
289
+ path: "ai.acp.agents.0.headerEnv",
290
+ description: "\u8FDC\u7A0B\u8BA4\u8BC1 Header \u540D\u5230\u5BBF\u4E3B\u53D8\u91CF\u540D\u7684\u6620\u5C04\u3002",
291
+ value: "{}",
292
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
293
+ },
294
+ {
295
+ name: "HAI_AI_ACP_AGENTS_0_ID",
296
+ module: "ai",
297
+ path: "ai.acp.agents.0.id",
298
+ description: "\u6E05\u5355\u4E2D\u7684\u552F\u4E00 ID\uFF1B\u540C\u65F6\u7528\u4E8E\u53D7\u7BA1\u7406\u76EE\u5F55\u540D\u3002",
299
+ value: "",
300
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6B63\u5219 ^[a-z0-9][\\w-]{0,95}$"
301
+ },
302
+ {
303
+ name: "HAI_AI_ACP_AGENTS_0_IMAGE",
304
+ module: "ai",
305
+ path: "ai.acp.agents.0.image",
306
+ description: "\u5DF2\u90E8\u7F72\u7684 Agent \u955C\u50CF\uFF0C\u5DE5\u4F5C\u533A\u548C\u667A\u80FD\u4F53\u9700\u4F7F\u7528\u540C\u4E00\u955C\u50CF\u3002",
307
+ value: "",
308
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
309
+ },
310
+ {
311
+ name: "HAI_AI_ACP_AGENTS_0_MODE",
312
+ module: "ai",
313
+ path: "ai.acp.agents.0.mode",
314
+ description: "\u63A5\u5165\u6A21\u5F0F\uFF1A\u81EA\u5B9A\u4E49\u8FDC\u7A0B\u670D\u52A1\u3001\u672C\u673A\u5185\u5D4C\u8FDB\u7A0B\u6216\u6258\u7BA1\u5BB9\u5668\u3002",
315
+ value: "custom-service",
316
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Acustom-service | embedded | builtin-service"
317
+ },
318
+ {
319
+ name: "HAI_AI_ACP_AGENTS_0_MODELIDS",
320
+ module: "ai",
321
+ path: "ai.acp.agents.0.modelIds",
322
+ description: "\u7ED1\u5B9A Hai LLM \u6A21\u578B ID\uFF1B\u9ED8\u8BA4\u7A7A\u6570\u7EC4\u3002",
323
+ value: "[]",
324
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
325
+ },
326
+ {
327
+ name: "HAI_AI_ACP_AGENTS_0_MODELIDS_0",
328
+ module: "ai",
329
+ path: "ai.acp.agents.0.modelIds.0",
330
+ description: "\u7ED1\u5B9A Hai LLM \u6A21\u578B ID\uFF1B\u9ED8\u8BA4\u7A7A\u6570\u7EC4\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
331
+ value: "",
332
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
333
+ },
334
+ {
335
+ name: "HAI_AI_ACP_AGENTS_0_NAME",
336
+ module: "ai",
337
+ path: "ai.acp.agents.0.name",
338
+ description: "\u667A\u80FD\u4F53\u7684\u53EF\u8BFB\u540D\u79F0\u3002",
339
+ value: "",
340
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
341
+ },
342
+ {
343
+ name: "HAI_AI_ACP_AGENTS_0_SUPPORTEDTRANSPORTS",
344
+ module: "ai",
345
+ path: "ai.acp.agents.0.supportedTransports",
346
+ description: "\u81EA\u5B9A\u4E49\u670D\u52A1\u663E\u5F0F\u58F0\u660E\u7684\u539F\u751F HTTP/WS \u80FD\u529B\u3002",
347
+ value: "",
348
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55\uFF1B\u6700\u5C11\u9879\u6570 1"
349
+ },
350
+ {
351
+ name: "HAI_AI_ACP_AGENTS_0_SUPPORTEDTRANSPORTS_0",
352
+ module: "ai",
353
+ path: "ai.acp.agents.0.supportedTransports.0",
354
+ description: "\u81EA\u5B9A\u4E49\u670D\u52A1\u663E\u5F0F\u58F0\u660E\u7684\u539F\u751F HTTP/WS \u80FD\u529B\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
355
+ value: "http",
356
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Ahttp | ws"
357
+ },
358
+ {
359
+ name: "HAI_AI_ACP_AGENTS_0_TRANSPORT",
360
+ module: "ai",
361
+ path: "ai.acp.agents.0.transport",
362
+ description: "\u667A\u80FD\u4F53\u539F\u751F\u652F\u6301\u7684\u4F20\u8F93\uFF1B\u4E0D\u81EA\u52A8\u8F6C\u6362 stdio \u548C HTTP/WS\u3002",
363
+ value: "http",
364
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Ahttp | ws | stdio"
365
+ },
366
+ {
367
+ name: "HAI_AI_ACP_AGENTS_0_URL",
368
+ module: "ai",
369
+ path: "ai.acp.agents.0.url",
370
+ description: "\u8FDC\u7A0B\u5730\u5740\uFF0C\u4E0D\u5141\u8BB8\u547D\u4EE4\u9009\u9879\u548C\u6362\u884C\u3002",
371
+ value: "",
372
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u683C\u5F0F uri"
373
+ },
374
+ {
375
+ name: "HAI_AI_ACP_CANCELTIMEOUT",
376
+ module: "ai",
377
+ path: "ai.acp.cancelTimeout",
378
+ description: "\u53D6\u6D88\u540E\u7B49\u5F85\u7EC8\u6001\u7684\u4E0A\u9650\uFF0C\u6BEB\u79D2\u3002",
379
+ value: "5000",
380
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
381
+ },
382
+ {
383
+ name: "HAI_AI_ACP_MAXCONTENTBYTES",
384
+ module: "ai",
385
+ path: "ai.acp.maxContentBytes",
386
+ description: "\u5355\u8F6E\u8F93\u5165\u548C\u7D2F\u8BA1\u8F93\u51FA\u7684\u5B57\u8282\u4E0A\u9650\u3002",
387
+ value: "8388608",
388
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
389
+ },
390
+ {
391
+ name: "HAI_AI_ACP_MAXPENDINGEVENTS",
392
+ module: "ai",
393
+ path: "ai.acp.maxPendingEvents",
394
+ description: "\u672A\u6D88\u8D39\u4E8B\u4EF6\u6570\u91CF\u4E0A\u9650\u3002",
395
+ value: "1024",
396
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
397
+ },
398
+ {
399
+ name: "HAI_AI_ACP_PROMPTTIMEOUT",
400
+ module: "ai",
401
+ path: "ai.acp.promptTimeout",
402
+ description: "\u5355\u8F6E\u4EFB\u52A1\u8D85\u65F6\uFF0C\u6BEB\u79D2\u3002",
403
+ value: "600000",
404
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
405
+ },
406
+ {
407
+ name: "HAI_AI_ACP_REQUESTTIMEOUT",
408
+ module: "ai",
409
+ path: "ai.acp.requestTimeout",
410
+ description: "\u63E1\u624B\u548C\u63A7\u5236\u8BF7\u6C42\u8D85\u65F6\uFF0C\u6BEB\u79D2\u3002",
411
+ value: "30000",
412
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
413
+ },
414
+ {
415
+ name: "HAI_AI_ACP_WORKSPACES",
416
+ module: "ai",
417
+ path: "ai.acp.workspaces",
418
+ description: "\u914D\u7F6E\u6587\u4EF6\u5B9A\u4E49\u7684\u53EA\u8BFB\u5DE5\u4F5C\u533A\uFF0C\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u6309 ID \u5408\u5E76\u3002",
419
+ value: "[]",
420
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
421
+ },
422
+ {
423
+ name: "HAI_AI_ACP_WORKSPACES_0",
424
+ module: "ai",
425
+ path: "ai.acp.workspaces.0",
426
+ description: "\u914D\u7F6E\u6587\u4EF6\u5B9A\u4E49\u7684\u53EA\u8BFB\u5DE5\u4F5C\u533A\uFF0C\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u6309 ID \u5408\u5E76\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
427
+ value: "",
428
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
429
+ },
430
+ {
431
+ name: "HAI_AI_ACP_WORKSPACES_0_ENVIRONMENTREFS",
432
+ module: "ai",
433
+ path: "ai.acp.workspaces.0.environmentRefs",
434
+ description: "\u76EE\u6807\u73AF\u5883\u53D8\u91CF\u540D\u5230\u5BBF\u4E3B\u73AF\u5883\u53D8\u91CF\u540D\u7684\u6620\u5C04\uFF1B\u4FDD\u5B58\u5F15\u7528\u800C\u975E\u660E\u6587\u51ED\u636E\u3002",
435
+ value: "{}",
436
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
437
+ },
438
+ {
439
+ name: "HAI_AI_ACP_WORKSPACES_0_ID",
440
+ module: "ai",
441
+ path: "ai.acp.workspaces.0.id",
442
+ description: "\u6E05\u5355\u4E2D\u7684\u552F\u4E00 ID\uFF1B\u540C\u65F6\u7528\u4E8E\u53D7\u7BA1\u7406\u76EE\u5F55\u540D\u3002",
443
+ value: "",
444
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6B63\u5219 ^[a-z0-9][\\w-]{0,95}$"
445
+ },
446
+ {
447
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES",
448
+ module: "ai",
449
+ path: "ai.acp.workspaces.0.repositories",
450
+ description: "\u591A\u4E2A Git \u5DE5\u7A0B\uFF1B\u9ED8\u8BA4\u7A7A\u6570\u7EC4\uFF0C\u4E0D\u4F7F\u7528 Git \u65F6\u4EC5\u521B\u5EFA\u6587\u4EF6\u76EE\u5F55\u3002",
451
+ value: "[]",
452
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
453
+ },
454
+ {
455
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES_0",
456
+ module: "ai",
457
+ path: "ai.acp.workspaces.0.repositories.0",
458
+ description: "\u591A\u4E2A Git \u5DE5\u7A0B\uFF1B\u9ED8\u8BA4\u7A7A\u6570\u7EC4\uFF0C\u4E0D\u4F7F\u7528 Git \u65F6\u4EC5\u521B\u5EFA\u6587\u4EF6\u76EE\u5F55\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
459
+ value: "",
460
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
461
+ },
462
+ {
463
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES_0_ID",
464
+ module: "ai",
465
+ path: "ai.acp.workspaces.0.repositories.0.id",
466
+ description: "\u6E05\u5355\u4E2D\u7684\u552F\u4E00 ID\uFF1B\u540C\u65F6\u7528\u4E8E\u53D7\u7BA1\u7406\u76EE\u5F55\u540D\u3002",
467
+ value: "",
468
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6B63\u5219 ^[a-z0-9][\\w-]{0,95}$"
469
+ },
470
+ {
471
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES_0_MAINBRANCH",
472
+ module: "ai",
473
+ path: "ai.acp.workspaces.0.repositories.0.mainBranch",
474
+ description: "\u8BE5\u5DE5\u7A0B\u660E\u786E\u6307\u5B9A\u7684\u4E3B\u5206\u652F\uFF0C\u66F4\u65B0\u548C merge-main \u53D1\u5E03\u5747\u4F7F\u7528\u6B64\u503C\u3002",
475
+ value: "",
476
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1\uFF1B\u6700\u5927\u5B57\u7B26\u6570 240"
477
+ },
478
+ {
479
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES_0_REMOTE",
480
+ module: "ai",
481
+ path: "ai.acp.workspaces.0.repositories.0.remote",
482
+ description: "Git remote \u540D\uFF0C\u9ED8\u8BA4 origin\u3002",
483
+ value: "origin",
484
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6B63\u5219 ^[a-z0-9][\\w-]{0,95}$"
485
+ },
486
+ {
487
+ name: "HAI_AI_ACP_WORKSPACES_0_REPOSITORIES_0_URL",
488
+ module: "ai",
489
+ path: "ai.acp.workspaces.0.repositories.0.url",
490
+ description: "\u8FDC\u7A0B\u5730\u5740\uFF0C\u4E0D\u5141\u8BB8\u547D\u4EE4\u9009\u9879\u548C\u6362\u884C\u3002",
491
+ value: "",
492
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
493
+ },
494
+ {
495
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE",
496
+ module: "ai",
497
+ path: "ai.acp.workspaces.0.storage",
498
+ description: "\u6301\u4E45\u5B58\u50A8\u4F4D\u7F6E\uFF1Bdirectory \u4F9B\u672C\u673A\uFF0Cvolume \u4F9B\u6258\u7BA1\u5BB9\u5668\u3002",
499
+ value: "",
500
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
501
+ },
502
+ {
503
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE_ENGINE",
504
+ module: "ai",
505
+ path: "ai.acp.workspaces.0.storage.engine",
506
+ description: "auto \u4F18\u5148\u53EF\u7528 Podman\uFF0C\u518D\u9009 Docker\uFF1B\u663E\u5F0F\u9009\u62E9\u4E0D\u81EA\u52A8\u964D\u7EA7\u3002",
507
+ value: "auto",
508
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Aauto | podman | docker"
509
+ },
510
+ {
511
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE_IMAGE",
512
+ module: "ai",
513
+ path: "ai.acp.workspaces.0.storage.image",
514
+ description: "\u5DF2\u90E8\u7F72\u7684 Agent \u955C\u50CF\uFF0C\u5DE5\u4F5C\u533A\u548C\u667A\u80FD\u4F53\u9700\u4F7F\u7528\u540C\u4E00\u955C\u50CF\u3002",
515
+ value: "",
516
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
517
+ },
518
+ {
519
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE_NAME",
520
+ module: "ai",
521
+ path: "ai.acp.workspaces.0.storage.name",
522
+ description: "\u53EF\u8BFB\u540D\u79F0\uFF1Bvolume \u65F6\u8868\u793A\u6301\u4E45\u5377\u540D\u3002",
523
+ value: "",
524
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6B63\u5219 ^[a-z0-9][\\w-]{0,95}$"
525
+ },
526
+ {
527
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE_PATH",
528
+ module: "ai",
529
+ path: "ai.acp.workspaces.0.storage.path",
530
+ description: "\u672C\u673A\u7EDD\u5BF9\u6216\u76F8\u5BF9\u76EE\u5F55\uFF0C\u8FD0\u884C\u65F6\u5F52\u4E00\u5316\u4E3A\u771F\u5B9E\u7EDD\u5BF9\u8DEF\u5F84\u3002",
531
+ value: "",
532
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
533
+ },
534
+ {
535
+ name: "HAI_AI_ACP_WORKSPACES_0_STORAGE_TYPE",
536
+ module: "ai",
537
+ path: "ai.acp.workspaces.0.storage.type",
538
+ description: "\u5B58\u50A8\u7C7B\u578B\u5224\u522B\u5B57\u6BB5\u3002",
539
+ value: "directory",
540
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Adirectory | volume"
541
+ },
198
542
  {
199
543
  name: "HAI_AI_AUDIO",
200
544
  module: "ai",
@@ -920,9 +1264,105 @@ var cli_config_catalog_default = [
920
1264
  module: "ai",
921
1265
  path: "ai.llm.models.0.baseUrl",
922
1266
  description: "Base URL \u8986\u76D6\uFF08\u53EF\u9009\uFF09",
923
- value: "",
1267
+ value: "https://your-responses-service.example/v1",
924
1268
  constraint: "\u5B57\u7B26\u4E32\uFF1B\u683C\u5F0F uri"
925
1269
  },
1270
+ {
1271
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES",
1272
+ module: "ai",
1273
+ path: "ai.llm.models.0.capabilities",
1274
+ description: "\u5DF2\u786E\u8BA4\u7684\u6A21\u578B\u80FD\u529B\uFF0C\u7F3A\u7701\u8868\u793A\u672A\u77E5",
1275
+ value: "",
1276
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
1277
+ },
1278
+ {
1279
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_CONTEXTWINDOW",
1280
+ module: "ai",
1281
+ path: "ai.llm.models.0.capabilities.contextWindow",
1282
+ description: "\u53EF\u7528\u4E0A\u4E0B\u6587\u603B\u5BB9\u91CF\uFF08Token\uFF09\uFF1B\u672A\u77E5\u65F6\u7701\u7565\uFF0C\u4E0D\u7531\u8F93\u51FA\u9884\u7B97\u63A8\u65AD\u3002",
1283
+ value: "",
1284
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
1285
+ },
1286
+ {
1287
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_INPUTMODALITIES",
1288
+ module: "ai",
1289
+ path: "ai.llm.models.0.capabilities.inputModalities",
1290
+ description: "\u5DF2\u786E\u8BA4\u652F\u6301\u7684\u8F93\u5165\u6A21\u6001\uFF1B\u672A\u77E5\u65F6\u7701\u7565\u3002",
1291
+ value: "",
1292
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55\uFF1B\u6700\u5C11\u9879\u6570 1"
1293
+ },
1294
+ {
1295
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_INPUTMODALITIES_0",
1296
+ module: "ai",
1297
+ path: "ai.llm.models.0.capabilities.inputModalities.0",
1298
+ description: "\u5DF2\u786E\u8BA4\u652F\u6301\u7684\u8F93\u5165\u6A21\u6001\uFF1B\u672A\u77E5\u65F6\u7701\u7565\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
1299
+ value: "text",
1300
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Atext | image | audio | video"
1301
+ },
1302
+ {
1303
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_MAXOUTPUTTOKENS",
1304
+ module: "ai",
1305
+ path: "ai.llm.models.0.capabilities.maxOutputTokens",
1306
+ description: "\u6A21\u578B\u5355\u6B21\u8F93\u51FA\u80FD\u529B\u4E0A\u9650\uFF08Token\uFF09\uFF1B\u4E0E\u9ED8\u8BA4 maxTokens \u9884\u7B97\u4E0D\u540C\u3002",
1307
+ value: "",
1308
+ constraint: "\u6574\u6570\uFF1B<= 9007199254740991\uFF1B> 0"
1309
+ },
1310
+ {
1311
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_OUTPUTMODALITIES",
1312
+ module: "ai",
1313
+ path: "ai.llm.models.0.capabilities.outputModalities",
1314
+ description: "\u5DF2\u786E\u8BA4\u652F\u6301\u7684\u8F93\u51FA\u6A21\u6001\uFF1B\u4ECD\u9700\u8C03\u7528\u63A5\u53E3\u652F\u6301\u3002",
1315
+ value: "",
1316
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55\uFF1B\u6700\u5C11\u9879\u6570 1"
1317
+ },
1318
+ {
1319
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_OUTPUTMODALITIES_0",
1320
+ module: "ai",
1321
+ path: "ai.llm.models.0.capabilities.outputModalities.0",
1322
+ description: "\u5DF2\u786E\u8BA4\u652F\u6301\u7684\u8F93\u51FA\u6A21\u6001\uFF1B\u4ECD\u9700\u8C03\u7528\u63A5\u53E3\u652F\u6301\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
1323
+ value: "text",
1324
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Atext | image | audio | video"
1325
+ },
1326
+ {
1327
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_REASONING",
1328
+ module: "ai",
1329
+ path: "ai.llm.models.0.capabilities.reasoning",
1330
+ description: "\u63A8\u7406\u80FD\u529B\u5143\u6570\u636E\uFF0C\u4E0D\u81EA\u52A8\u542F\u7528\u63A8\u7406\u8BF7\u6C42\u53C2\u6570\u3002",
1331
+ value: "",
1332
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
1333
+ },
1334
+ {
1335
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_REASONING_EFFORTS",
1336
+ module: "ai",
1337
+ path: "ai.llm.models.0.capabilities.reasoning.efforts",
1338
+ description: "\u5DF2\u786E\u8BA4\u53EF\u9009\u62E9\u7684\u63A8\u7406\u7EA7\u522B\u3002",
1339
+ value: "",
1340
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55\uFF1B\u6700\u5C11\u9879\u6570 1"
1341
+ },
1342
+ {
1343
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_REASONING_EFFORTS_0",
1344
+ module: "ai",
1345
+ path: "ai.llm.models.0.capabilities.reasoning.efforts.0",
1346
+ description: "\u5DF2\u786E\u8BA4\u53EF\u9009\u62E9\u7684\u63A8\u7406\u7EA7\u522B\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
1347
+ value: "",
1348
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
1349
+ },
1350
+ {
1351
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_REASONING_SUPPORTED",
1352
+ module: "ai",
1353
+ path: "ai.llm.models.0.capabilities.reasoning.supported",
1354
+ description: "\u662F\u5426\u652F\u6301\u63A8\u7406\u80FD\u529B\u3002",
1355
+ value: "",
1356
+ constraint: "true | false"
1357
+ },
1358
+ {
1359
+ name: "HAI_AI_LLM_MODELS_0_CAPABILITIES_TOOLCALLING",
1360
+ module: "ai",
1361
+ path: "ai.llm.models.0.capabilities.toolCalling",
1362
+ description: "\u6A21\u578B\u662F\u5426\u652F\u6301\u51FD\u6570\u5DE5\u5177\u8C03\u7528\uFF1B\u672A\u77E5\u65F6\u7701\u7565\u3002",
1363
+ value: "",
1364
+ constraint: "true | false"
1365
+ },
926
1366
  {
927
1367
  name: "HAI_AI_LLM_MODELS_0_ID",
928
1368
  module: "ai",
@@ -944,7 +1384,7 @@ var cli_config_catalog_default = [
944
1384
  module: "ai",
945
1385
  path: "ai.llm.models.0.model",
946
1386
  description: "\u6A21\u578B\u540D\u79F0\uFF08\u4F20\u7ED9 API \u7684\u5B9E\u9645\u6A21\u578B\u540D\uFF09",
947
- value: "",
1387
+ value: "your-coding-model",
948
1388
  constraint: "\u5B57\u7B26\u4E32"
949
1389
  },
950
1390
  {
@@ -1163,6 +1603,94 @@ var cli_config_catalog_default = [
1163
1603
  value: "1.0.0",
1164
1604
  constraint: "\u5B57\u7B26\u4E32"
1165
1605
  },
1606
+ {
1607
+ name: "HAI_AI_MCP_SERVERS",
1608
+ module: "ai",
1609
+ path: "ai.mcp.servers",
1610
+ description: "\u5916\u90E8 MCP \u670D\u52A1\u53EA\u8BFB\u6E05\u5355\uFF1B\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u5408\u5E76\u4F9B\u53D7\u7BA1 Agent \u4F7F\u7528\u3002",
1611
+ value: "",
1612
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
1613
+ },
1614
+ {
1615
+ name: "HAI_AI_MCP_SERVERS_0",
1616
+ module: "ai",
1617
+ path: "ai.mcp.servers.0",
1618
+ description: "\u5916\u90E8 MCP \u670D\u52A1\u53EA\u8BFB\u6E05\u5355\uFF1B\u4E0E\u6570\u636E\u5E93\u8BB0\u5F55\u5408\u5E76\u4F9B\u53D7\u7BA1 Agent \u4F7F\u7528\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
1619
+ value: "",
1620
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
1621
+ },
1622
+ {
1623
+ name: "HAI_AI_MCP_SERVERS_0_ARGS",
1624
+ module: "ai",
1625
+ path: "ai.mcp.servers.0.args",
1626
+ description: "stdio \u53C2\u6570\uFF0C\u4E0D\u4F7F\u7528 shell \u62FC\u63A5\u3002",
1627
+ value: "[]",
1628
+ constraint: "JSON \u6570\u7EC4\uFF1B\u7D22\u5F15\u53EF\u6309 0\u30011\u30012 \u6269\u5C55"
1629
+ },
1630
+ {
1631
+ name: "HAI_AI_MCP_SERVERS_0_ARGS_0",
1632
+ module: "ai",
1633
+ path: "ai.mcp.servers.0.args.0",
1634
+ description: "stdio \u53C2\u6570\uFF0C\u4E0D\u4F7F\u7528 shell \u62FC\u63A5\u3002\uFF1B\u6B64\u53D8\u91CF\u6574\u4F53\u66FF\u6362\u5355\u4E2A\u6570\u7EC4\u9879",
1635
+ value: "",
1636
+ constraint: "\u5B57\u7B26\u4E32"
1637
+ },
1638
+ {
1639
+ name: "HAI_AI_MCP_SERVERS_0_COMMAND",
1640
+ module: "ai",
1641
+ path: "ai.mcp.servers.0.command",
1642
+ description: "stdio \u7A0B\u5E8F\u8DEF\u5F84\uFF1B\u4EC5\u53EF\u4FE1\u670D\u52A1\u7AEF\u914D\u7F6E\u3002",
1643
+ value: "",
1644
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
1645
+ },
1646
+ {
1647
+ name: "HAI_AI_MCP_SERVERS_0_ENVIRONMENTREFS",
1648
+ module: "ai",
1649
+ path: "ai.mcp.servers.0.environmentRefs",
1650
+ description: "stdio \u53D8\u91CF\u540D\u5230\u5BBF\u4E3B\u51ED\u636E\u53D8\u91CF\u540D\u7684\u6620\u5C04\u3002",
1651
+ value: "{}",
1652
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
1653
+ },
1654
+ {
1655
+ name: "HAI_AI_MCP_SERVERS_0_HEADERENV",
1656
+ module: "ai",
1657
+ path: "ai.mcp.servers.0.headerEnv",
1658
+ description: "\u8BA4\u8BC1 Header \u540D\u5230\u5BBF\u4E3B\u51ED\u636E\u53D8\u91CF\u540D\u7684\u6620\u5C04\u3002",
1659
+ value: "{}",
1660
+ constraint: "JSON \u5BF9\u8C61\uFF1B\u6574\u4F53\u8986\u76D6\u65F6\u66FF\u6362\u8BE5\u8282\u70B9"
1661
+ },
1662
+ {
1663
+ name: "HAI_AI_MCP_SERVERS_0_ID",
1664
+ module: "ai",
1665
+ path: "ai.mcp.servers.0.id",
1666
+ description: "\u670D\u52A1\u552F\u4E00\u6807\u8BC6\u3002",
1667
+ value: "",
1668
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
1669
+ },
1670
+ {
1671
+ name: "HAI_AI_MCP_SERVERS_0_NAME",
1672
+ module: "ai",
1673
+ path: "ai.mcp.servers.0.name",
1674
+ description: "\u4F20\u7ED9\u539F\u751F MCP \u5BA2\u6237\u7AEF\u7684\u670D\u52A1\u540D\u3002",
1675
+ value: "",
1676
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u6700\u5C0F\u5B57\u7B26\u6570 1"
1677
+ },
1678
+ {
1679
+ name: "HAI_AI_MCP_SERVERS_0_TRANSPORT",
1680
+ module: "ai",
1681
+ path: "ai.mcp.servers.0.transport",
1682
+ description: "\u539F\u751F MCP \u4F20\u8F93\u7C7B\u578B\u3002",
1683
+ value: "stdio",
1684
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u53D6\u503C\uFF1Astdio | http | sse"
1685
+ },
1686
+ {
1687
+ name: "HAI_AI_MCP_SERVERS_0_URL",
1688
+ module: "ai",
1689
+ path: "ai.mcp.servers.0.url",
1690
+ description: "HTTP/SSE \u5730\u5740\u3002",
1691
+ value: "",
1692
+ constraint: "\u5B57\u7B26\u4E32\uFF1B\u683C\u5F0F uri"
1693
+ },
1166
1694
  {
1167
1695
  name: "HAI_AI_MEMORY",
1168
1696
  module: "ai",
@@ -5019,6 +5547,14 @@ var cli_config_catalog_default = [
5019
5547
  value: "",
5020
5548
  constraint: "\u672C\u673A HTTP(S) URL\uFF1B\u76F4\u63A5\u8FD0\u884C\u65F6 BASE_URL \u4F18\u5148"
5021
5549
  },
5550
+ {
5551
+ name: "ALL_PROXY",
5552
+ module: "runtime",
5553
+ path: "ALL_PROXY",
5554
+ description: "\u6784\u5EFA\u4E0B\u8F7D\u7684\u5176\u4ED6\u4EE3\u7406\u5165\u53E3\uFF1B\u4EC5 inherit \u6A21\u5F0F\u539F\u6837\u4F20\u9012\uFF0C\u5176\u4ED6\u6A21\u5F0F\u6E05\u7A7A",
5555
+ value: "",
5556
+ constraint: "\u4EE3\u7406 URL\uFF1B\u534F\u8BAE\u652F\u6301\u7531\u4E0B\u8F7D\u5DE5\u5177\u51B3\u5B9A\uFF1B\u5C0F\u5199 all_proxy \u4E5F\u53D7\u652F\u6301"
5557
+ },
5022
5558
  {
5023
5559
  name: "ANTHROPIC_API_KEY",
5024
5560
  module: "runtime",
@@ -5147,6 +5683,14 @@ var cli_config_catalog_default = [
5147
5683
  value: "",
5148
5684
  constraint: "\u6574\u6570 1\u201365535"
5149
5685
  },
5686
+ {
5687
+ name: "FTP_PROXY",
5688
+ module: "runtime",
5689
+ path: "FTP_PROXY",
5690
+ description: "\u6784\u5EFA\u4E0B\u8F7D\u7684 FTP \u4EE3\u7406\u5165\u53E3\uFF1B\u4EC5 inherit \u6A21\u5F0F\u539F\u6837\u4F20\u9012\uFF0C\u5176\u4ED6\u6A21\u5F0F\u6E05\u7A7A",
5691
+ value: "",
5692
+ constraint: "\u4EE3\u7406 URL\uFF1B\u534F\u8BAE\u652F\u6301\u7531\u4E0B\u8F7D\u5DE5\u5177\u51B3\u5B9A\uFF1B\u5C0F\u5199 ftp_proxy \u4E5F\u53D7\u652F\u6301"
5693
+ },
5150
5694
  {
5151
5695
  name: "GEMINI_API_KEY",
5152
5696
  module: "runtime",
@@ -5227,6 +5771,22 @@ var cli_config_catalog_default = [
5227
5771
  value: "",
5228
5772
  constraint: "JSON \u5BF9\u8C61 {activeKeyId,keys:{id:{publicKey,privateKey}}}\uFF1B\u6240\u6709\u8282\u70B9\u5171\u4EAB\uFF0CID \u4E3A 1-64 \u4E2A\u5B57\u6BCD/\u6570\u5B57/\u4E0B\u5212\u7EBF/\u8FDE\u5B57\u7B26\uFF1B\u7981\u6B62 PUBLIC_/VITE_/\u516C\u5F00 YAML/\u65E5\u5FD7"
5229
5773
  },
5774
+ {
5775
+ name: "HAI_NGINX_IMAGE",
5776
+ module: "runtime",
5777
+ path: "HAI_NGINX_IMAGE",
5778
+ description: "Dockerfile \u7684 Nginx \u57FA\u7840\u955C\u50CF\u6784\u5EFA\u53C2\u6570\uFF0C\u7531 CLI \u6309 build.sources.image \u6216 --image-source \u6CE8\u5165",
5779
+ value: "",
5780
+ constraint: "OCI \u955C\u50CF\u5F15\u7528\uFF1B\u4E0D\u662F\u5E94\u7528 .env \u914D\u7F6E\u9879"
5781
+ },
5782
+ {
5783
+ name: "HAI_NODE_IMAGE",
5784
+ module: "runtime",
5785
+ path: "HAI_NODE_IMAGE",
5786
+ description: "Dockerfile \u7684 Node \u57FA\u7840\u955C\u50CF\u6784\u5EFA\u53C2\u6570\uFF0C\u7531 CLI \u6309 build.sources.image \u6216 --image-source \u6CE8\u5165",
5787
+ value: "",
5788
+ constraint: "OCI \u955C\u50CF\u5F15\u7528\uFF1B\u4E0D\u662F\u5E94\u7528 .env \u914D\u7F6E\u9879"
5789
+ },
5230
5790
  {
5231
5791
  name: "HF_ENDPOINT",
5232
5792
  module: "runtime",
@@ -5251,6 +5811,22 @@ var cli_config_catalog_default = [
5251
5811
  value: "0.0.0.0",
5252
5812
  constraint: "\u4E3B\u673A\u540D\u6216 IP"
5253
5813
  },
5814
+ {
5815
+ name: "HTTP_PROXY",
5816
+ module: "runtime",
5817
+ path: "HTTP_PROXY",
5818
+ description: "\u6784\u5EFA\u4E0B\u8F7D\u7684 HTTP \u4EE3\u7406\uFF1Binherit \u6A21\u5F0F\u7EE7\u627F\u8FDB\u7A0B\u73AF\u5883\uFF0Csystem/custom/none \u6A21\u5F0F\u7531 CLI \u8986\u76D6",
5819
+ value: "",
5820
+ constraint: "HTTP(S) \u4EE3\u7406 URL\uFF1B\u5C0F\u5199 http_proxy \u4E5F\u53D7\u652F\u6301\uFF1B\u955C\u50CF\u62C9\u53D6\u4ECD\u53D6\u51B3\u4E8E\u5F15\u64CE\u4EE3\u7406"
5821
+ },
5822
+ {
5823
+ name: "HTTPS_PROXY",
5824
+ module: "runtime",
5825
+ path: "HTTPS_PROXY",
5826
+ description: "\u6784\u5EFA\u4E0B\u8F7D\u7684 HTTPS \u4EE3\u7406\uFF1B\u672A\u63D0\u4F9B\u65F6\u56DE\u9000 HTTP_PROXY\uFF1Bsystem/custom/none \u6A21\u5F0F\u7531 CLI \u8986\u76D6",
5827
+ value: "",
5828
+ constraint: "HTTP(S) \u4EE3\u7406 URL\uFF1B\u5C0F\u5199 https_proxy \u4E5F\u53D7\u652F\u6301\uFF1B\u955C\u50CF\u62C9\u53D6\u4ECD\u53D6\u51B3\u4E8E\u5F15\u64CE\u4EE3\u7406"
5829
+ },
5254
5830
  {
5255
5831
  name: "IAM_FIXTURE_LDAP",
5256
5832
  module: "runtime",
@@ -5331,6 +5907,14 @@ var cli_config_catalog_default = [
5331
5907
  value: "/opt/models",
5332
5908
  constraint: "\u53EF\u8BFB\u53D6\u7684\u6A21\u578B\u8DEF\u5F84\u6216\u6709\u6548\u4ED3\u5E93 ID\uFF1B\u9ED8\u8BA4 /opt/models"
5333
5909
  },
5910
+ {
5911
+ name: "NO_PROXY",
5912
+ module: "runtime",
5913
+ path: "NO_PROXY",
5914
+ description: "\u6784\u5EFA\u4E0B\u8F7D\u7684\u4EE3\u7406\u7ED5\u8FC7\u5217\u8868\uFF1Binherit \u6A21\u5F0F\u7EE7\u627F\uFF0C\u53EF\u7531 build.proxy.bypass \u6216 --proxy-bypass \u8986\u76D6",
5915
+ value: "",
5916
+ constraint: "\u9017\u53F7\u5206\u9694\u7684\u4E3B\u673A\u6216\u5730\u5740\uFF1B\u5C0F\u5199 no_proxy \u4E5F\u53D7\u652F\u6301\uFF1Bnone \u6A21\u5F0F\u6E05\u7A7A"
5917
+ },
5334
5918
  {
5335
5919
  name: "NODE_ENV",
5336
5920
  module: "runtime",
@@ -6615,7 +7199,7 @@ function documentConfig(name, content) {
6615
7199
  }
6616
7200
  }
6617
7201
  walk(document.contents, []);
6618
- return documentOptionalConfig(name, changed ? document.toString({ lineWidth: 0 }) : content);
7202
+ return documentOptionalConfig(name, changed ? document.toString({ lineWidth: 0 }) : content).replace(/^#[\t ]+$/gm, "#");
6619
7203
  }
6620
7204
  function documentOptionalConfig(name, content) {
6621
7205
  const { lines, document, counter } = readOptionalConfig(content);
@@ -6645,7 +7229,7 @@ function documentOptionalConfig(name, content) {
6645
7229
  return lines.map((line, index) => line + (additions.get(index) ?? "")).join("\n");
6646
7230
  }
6647
7231
  function readOptionalConfig(content) {
6648
- const lines = content.split("\n");
7232
+ const lines = content.split(/\r?\n/);
6649
7233
  const virtual = lines.map((line) => line.replace(/^(\s*)# (?=\s*(?:[A-Z][\w-]*:|-\s))/i, "$1")).join("\n");
6650
7234
  const counter = new LineCounter();
6651
7235
  const document = parseDocument(virtual, { uniqueKeys: false, lineCounter: counter });
@@ -6839,8 +7423,10 @@ function runtimeEnvironmentVariables(content) {
6839
7423
  }
6840
7424
 
6841
7425
  // src/commands/cli-config-templates.ts
6842
- function generateConfigFile(moduleKey, configs) {
6843
- return documentConfig(moduleKey, parameterizeConfig(moduleKey, generateLiteralConfigFile(moduleKey, configs)));
7426
+ function generateConfigFile(moduleKey, configs, enabled = true) {
7427
+ const content = documentConfig(moduleKey, parameterizeConfig(moduleKey, generateLiteralConfigFile(moduleKey, configs)));
7428
+ return enabled ? content : `# # \u672A\u542F\u7528\uFF1A\u5B89\u88C5\u5BF9\u5E94\u6A21\u5757\u5E76\u5728\u670D\u52A1\u7AEF runtime \u4E2D\u521D\u59CB\u5316\uFF0C\u518D\u53D6\u6D88\u6240\u9700\u914D\u7F6E\u7684\u6CE8\u91CA\u3002
7429
+ ${content.split("\n").map((line) => line ? `# ${line}` : "").join("\n")}`;
6844
7430
  }
6845
7431
  function generateLiteralConfigFile(moduleKey, configs) {
6846
7432
  switch (moduleKey) {
@@ -7266,9 +7852,22 @@ ${stringify({ model }).trim().split("\n").map((line) => ` ${line}`).join("\n")}
7266
7852
  # maxTokens: 4096
7267
7853
  # temperature: 0.7
7268
7854
  # timeout: 60000
7855
+ # capabilities: # \u80FD\u529B\u6765\u81EA\u4F9B\u5E94\u5546\u786E\u8BA4\uFF1B\u672A\u77E5\u65F6\u7701\u7565\uFF0C\u4E0D\u80FD\u7528 maxTokens \u9884\u7B97\u731C\u5BB9\u91CF\u3002
7856
+ # contextWindow: 128000
7857
+ # maxOutputTokens: 16384
7858
+ # inputModalities: [text, image]
7859
+ # outputModalities: [text]
7860
+ # toolCalling: true
7861
+ # reasoning:
7862
+ # supported: false
7269
7863
  # - id: smart
7270
7864
  # model: gpt-4o
7271
7865
  # apiKey: ''
7866
+ # - id: coding # Codex \u4F7F\u7528\u72EC\u7ACB\u7684 Responses \u7AEF\u70B9\uFF1B\u6309\u5B9E\u9645\u670D\u52A1\u586B\u5199\u578B\u53F7\u3001\u5730\u5740\u548C\u5BC6\u94A5\u3002
7867
+ # model: your-coding-model
7868
+ # protocol: responses
7869
+ # baseUrl: https://your-responses-service.example/v1
7870
+ # apiKey: ''
7272
7871
 
7273
7872
  # \u573A\u666F\u6A21\u578B\u6620\u5C04\uFF1A\u666E\u901A\u5BF9\u8BDD\u7528 fast\uFF0C\u590D\u6742\u63A8\u7406\u7528 smart\uFF1B\u503C\u5BF9\u5E94\u4E0A\u65B9 models \u7684 id\u3002
7274
7873
  # scenarios:
@@ -7286,7 +7885,39 @@ ${stringify({ model }).trim().split("\n").map((line) => ` ${line}`).join("\n")}
7286
7885
  # embedding / rerank / vision \u987B\u5728 models \u4E2D\u58F0\u660E\u5BF9\u5E94\u5382\u5546\u6A21\u578B\uFF0C\u4E0D\u80FD\u53EA\u586B\u5199\u573A\u666F ID\u3002
7287
7886
 
7288
7887
  # \u53EF\u9009\u5B50\u6A21\u5757\u53EA\u53D6\u6D88\u9700\u8981\u7684\u5757\uFF1B\u751F\u4EA7\u73AF\u5883\u5148\u521D\u59CB\u5316\u5171\u4EAB\u6570\u636E\u5E93\u4E0E\u7F51\u7EDC\u5411\u91CF\u5E93\uFF0C\u518D\u521D\u59CB\u5316 AI\u3002
7888
+ # ACP \u4EC5\u670D\u52A1\u7AEF\u4F7F\u7528\uFF1Bagents/workspaces \u53EF\u5199\u914D\u7F6E\u6216\u901A\u8FC7 ai.acp \u4FDD\u5B58\u6570\u636E\u5E93\uFF0C\u914D\u7F6E\u540C ID \u4F18\u5148\u4E14\u53EA\u8BFB\u3002
7889
+ # \u6A21\u578B\u3001MCP\u3001\u68C0\u7D22\u6E90\u6E05\u5355\u540C\u6837\u5408\u5E76\u4E24\u4EFD\u6765\u6E90\uFF0C\u8BE6\u89C1 .agents/skills/hai-ai/resources.md\u3002
7890
+ # embedded \u5728\u672C\u673A\u8FD0\u884C\u539F\u751F\u8FDB\u7A0B\uFF1Bbuiltin-service \u4F7F\u7528 Podman \u4F18\u5148\u7684\u5BB9\u5668\u548C\u6301\u4E45 volume\uFF1B
7891
+ # custom-service \u8FDE\u63A5\u539F\u751F HTTP/WS \u670D\u52A1\uFF0C\u4E0D\u6CE8\u5165\u6A21\u578B\u3002\u8BE6\u89C1 .agents/skills/hai-ai/acp.md\u3002
7892
+ # acp:
7893
+ # requestTimeout: 30000
7894
+ # promptTimeout: 600000
7895
+ # cancelTimeout: 5000
7896
+ # maxContentBytes: 8388608
7897
+ # maxPendingEvents: 1024
7898
+ # agents:
7899
+ # - id: coder
7900
+ # name: Codex
7901
+ # mode: embedded
7902
+ # adapter: codex
7903
+ # modelIds: [coding]
7904
+ # workspaces:
7905
+ # - id: project
7906
+ # storage:
7907
+ # type: directory
7908
+ # path: /srv/projects/project
7909
+ # repositories:
7910
+ # - id: api
7911
+ # url: https://git.example.com/team/api.git
7912
+ # mainBranch: trunk
7289
7913
  # mcp:
7914
+ # servers:
7915
+ # - id: docs
7916
+ # name: Docs
7917
+ # transport: stdio
7918
+ # command: docs-mcp
7919
+ # environmentRefs:
7920
+ # API_TOKEN: DOCS_API_TOKEN
7290
7921
  # server:
7291
7922
  # name: my-app
7292
7923
  # version: 1.0.0
@@ -7407,12 +8038,12 @@ ${stringify({ model }).trim().split("\n").map((line) => ` ${line}`).join("\n")}
7407
8038
  `;
7408
8039
  }
7409
8040
  function generateEnvExample(features, configs, includeDisabled = false, configContents = {}) {
7410
- const keys = /* @__PURE__ */ new Set(["core", ...configContents.serv ? ["serv"] : [], ...features.filter((feature) => !["crypto", "api-client", "capacitor", "datapipe"].includes(feature))]);
7411
- const allKeys = ["core", "serv", "db", "cache", "iam", "storage", "ai", "vecdb", "reach", "payment", "scheduler", "deploy", "audit", "feedback"];
8041
+ const keys = /* @__PURE__ */ new Set(["core", ...["serv", "kit"].filter((key) => configContents[key]), ...features.filter((feature) => !["crypto", "api-client", "capacitor", "datapipe"].includes(feature))]);
8042
+ const allKeys = ["core", "serv", "kit", "crypto", "db", "cache", "iam", "storage", "ai", "vecdb", "reach", "payment", "scheduler", "deploy", "audit", "feedback"];
7412
8043
  const sections = [`# Environment configuration
7413
8044
  # .env / .env.dev / .env.test / .env.prod are public configuration tracked in Git.
7414
8045
  # .env.local is private to this machine and ignored by Git.
7415
- # Priority: process environment > .env.local > .env.<dev|test|prod> > .env.
8046
+ # Priority: process environment > .env.<mode>.local > .env.local > .env.<mode> > .env > YAML.
7416
8047
  # Naming: HAI_<CONFIG>_<PATH>; camelCase stays joined (apiKey -> APIKEY); arrays use zero-based indexes.
7417
8048
  # PUBLIC_ / VITE_ variables are visible in browsers and must never contain secrets.
7418
8049
  # YAML declares references and local fallbacks; constraints are validated by module Schemas.
@@ -7436,6 +8067,8 @@ ${keys.has(key) ? section : commented(section)}
7436
8067
  ${commented(declaredOptional)}
7437
8068
  ${commented(optional)}`);
7438
8069
  }
8070
+ if (includeDisabled)
8071
+ sections.push("# \u670D\u52A1\u7AEF\u4F20\u8F93\u5BC6\u94A5\u73AF\uFF1A\u542F\u7528 crypto transport \u540E\uFF0C\u901A\u8FC7\u79C1\u6709\u73AF\u5883\u6CE8\u5165\u7248\u672C\u5316 JSON\uFF1B\u4E0D\u5F97\u4E0B\u53D1\u5230\u6D4F\u89C8\u5668\u3002\n# HAI_CRYPTO_TRANSPORT_SERVERKEYRING=");
7439
8072
  return `${sections.join("\n\n")}
7440
8073
  `;
7441
8074
  }
@@ -7781,5 +8414,5 @@ envAllowlist:
7781
8414
  }
7782
8415
 
7783
8416
  export { documentConfig, generateConfigFile, generateEnvExample, generateProductionEnvironment, moduleEnvironmentVariables, parameterizeConfig, renderEnvironment, runtimeEnvironmentVariables };
7784
- //# sourceMappingURL=chunk-YVNNMC4H.js.map
7785
- //# sourceMappingURL=chunk-YVNNMC4H.js.map
8417
+ //# sourceMappingURL=chunk-RT5OZJKM.js.map
8418
+ //# sourceMappingURL=chunk-RT5OZJKM.js.map