@openacp/cli 2026.327.5 → 2026.328.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/README.md +13 -13
  2. package/dist/adapter-HGJENQCN.js +13 -0
  3. package/dist/agent-catalog-SZQQERV7.js +10 -0
  4. package/dist/{agent-dependencies-WS7Z2DFW.js → agent-dependencies-ED2ZTUHG.js} +1 -2
  5. package/dist/{agent-registry-5LZT7CUB.js → agent-registry-YOGP656W.js} +1 -2
  6. package/dist/agent-store-5UHZH2XI.js +8 -0
  7. package/dist/{api-client-AQPNKXI2.js → api-client-XTLRRFPX.js} +1 -2
  8. package/dist/api-server-DSUW637I.js +7 -0
  9. package/dist/api-server-WFB5K6FP.js +10 -0
  10. package/dist/{autostart-6JS565RY.js → autostart-CUPZMKKC.js} +3 -4
  11. package/dist/{chunk-WIIZNPCR.js → chunk-2KT6TROD.js} +12 -33
  12. package/dist/chunk-2KT6TROD.js.map +1 -0
  13. package/dist/{chunk-PPSMUECX.js → chunk-2R5XM3ES.js} +2 -2
  14. package/dist/{chunk-SNPYTMPR.js → chunk-3EWTPOF7.js} +2 -2
  15. package/dist/{chunk-YEULD3SG.js → chunk-3NAFXVQM.js} +7 -2
  16. package/dist/{chunk-YEULD3SG.js.map → chunk-3NAFXVQM.js.map} +1 -1
  17. package/dist/{chunk-QAQDGPB4.js → chunk-43JVXFYP.js} +3 -3
  18. package/dist/{chunk-KMMEFXIE.js → chunk-4B6PCWQP.js} +37 -9
  19. package/dist/chunk-4B6PCWQP.js.map +1 -0
  20. package/dist/{chunk-A6Y4GZM3.js → chunk-566W6INH.js} +2 -2
  21. package/dist/{chunk-ODUM3D6X.js → chunk-5HKQCYOI.js} +1 -39
  22. package/dist/chunk-5HKQCYOI.js.map +1 -0
  23. package/dist/{chunk-P2G275VD.js → chunk-5TCXYDLR.js} +3 -3
  24. package/dist/{chunk-XIBG7LSL.js → chunk-6VR4GWOO.js} +238 -108
  25. package/dist/chunk-6VR4GWOO.js.map +1 -0
  26. package/dist/{chunk-WXVT3AOY.js → chunk-7ZCQF6QM.js} +8 -3
  27. package/dist/chunk-7ZCQF6QM.js.map +1 -0
  28. package/dist/{chunk-S3ZGPPXY.js → chunk-E2SLHZAC.js} +8 -12
  29. package/dist/{chunk-S3ZGPPXY.js.map → chunk-E2SLHZAC.js.map} +1 -1
  30. package/dist/{chunk-RBYBSSGO.js → chunk-FCTC7KDT.js} +2 -2
  31. package/dist/{plugin-installer-QVJP6VKV.js → chunk-I53NEV3S.js} +6 -3
  32. package/dist/chunk-I53NEV3S.js.map +1 -0
  33. package/dist/{chunk-2YCW3QDV.js → chunk-IXMIC4GQ.js} +8 -7
  34. package/dist/chunk-IXMIC4GQ.js.map +1 -0
  35. package/dist/{chunk-BLQUXO7S.js → chunk-IZ5UEZF7.js} +27 -2
  36. package/dist/chunk-IZ5UEZF7.js.map +1 -0
  37. package/dist/{chunk-QVMEF6FB.js → chunk-JOMDPFQ2.js} +10 -24
  38. package/dist/chunk-JOMDPFQ2.js.map +1 -0
  39. package/dist/{chunk-4GMLGCF2.js → chunk-JUFN4XMB.js} +2 -2
  40. package/dist/{chunk-AD3X6DGK.js → chunk-NT6FYV27.js} +75 -13
  41. package/dist/chunk-NT6FYV27.js.map +1 -0
  42. package/dist/{chunk-HRKAXFWR.js → chunk-QBEQJFGL.js} +9 -9
  43. package/dist/{chunk-XMMAGAT4.js → chunk-R6KZYF7D.js} +8 -1
  44. package/dist/{chunk-XMMAGAT4.js.map → chunk-R6KZYF7D.js.map} +1 -1
  45. package/dist/{chunk-XWDW3XBE.js → chunk-RXMWJHWH.js} +687 -99
  46. package/dist/chunk-RXMWJHWH.js.map +1 -0
  47. package/dist/{chunk-SHTGQGAU.js → chunk-V2YZWYXT.js} +3 -3
  48. package/dist/{chunk-BQ6FR32N.js → chunk-VD3QSMVY.js} +2 -2
  49. package/dist/cli.js +103 -97
  50. package/dist/cli.js.map +1 -1
  51. package/dist/{config-I4FMCJGZ.js → config-UCAFCS5W.js} +3 -4
  52. package/dist/config-editor-OU6PUY66.js +10 -0
  53. package/dist/{config-registry-CUMNXFGK.js → config-registry-ZXAIJNYB.js} +2 -3
  54. package/dist/{context-XM6E22LM.js → context-7MPU7RL5.js} +1 -2
  55. package/dist/core-plugins-R2EVZAJV.js +22 -0
  56. package/dist/{daemon-PXO5QPCR.js → daemon-DTA6KYYY.js} +4 -5
  57. package/dist/{dev-loader-DRU3R7ZM.js → dev-loader-7P3HZCIA.js} +1 -3
  58. package/dist/{dev-loader-DRU3R7ZM.js.map → dev-loader-7P3HZCIA.js.map} +1 -1
  59. package/dist/doctor-D723IB2I.js +9 -0
  60. package/dist/file-service-HHB3JQIO.js +8 -0
  61. package/dist/index.d.ts +37 -145
  62. package/dist/index.js +32 -28
  63. package/dist/index.js.map +1 -1
  64. package/dist/{install-cloudflared-AN24L4DP.js → install-cloudflared-JRJ4BSOM.js} +3 -4
  65. package/dist/{install-cloudflared-AN24L4DP.js.map → install-cloudflared-JRJ4BSOM.js.map} +1 -1
  66. package/dist/{install-context-XPWTFT3J.js → install-context-EHYV5WRY.js} +2 -3
  67. package/dist/{install-context-XPWTFT3J.js.map → install-context-EHYV5WRY.js.map} +1 -1
  68. package/dist/{install-jq-CRVDJGF3.js → install-jq-ISTGT263.js} +3 -4
  69. package/dist/{install-jq-CRVDJGF3.js.map → install-jq-ISTGT263.js.map} +1 -1
  70. package/dist/{integrate-G6CVXTGT.js → integrate-JIEZYDOR.js} +1 -2
  71. package/dist/{integrate-G6CVXTGT.js.map → integrate-JIEZYDOR.js.map} +1 -1
  72. package/dist/{log-LZ7FTRKG.js → log-YZ243M5G.js} +4 -3
  73. package/dist/{main-3GF3EQTE.js → main-RRSX5SRL.js} +117 -40
  74. package/dist/main-RRSX5SRL.js.map +1 -0
  75. package/dist/{menu-YDQ2LWAR.js → menu-ALFN37IR.js} +1 -2
  76. package/dist/notifications-MO23S7S3.js +8 -0
  77. package/dist/{plugin-create-5HQRF2ID.js → plugin-create-EHL76ZZG.js} +1 -2
  78. package/dist/{plugin-create-5HQRF2ID.js.map → plugin-create-EHL76ZZG.js.map} +1 -1
  79. package/dist/plugin-installer-5XHORMLS.js +9 -0
  80. package/dist/{plugin-registry-WB3DR67H.js → plugin-registry-6J3YSFHF.js} +1 -2
  81. package/dist/{plugin-search-HQ4WQKOF.js → plugin-search-MGKAL5JM.js} +1 -2
  82. package/dist/{plugin-search-HQ4WQKOF.js.map → plugin-search-MGKAL5JM.js.map} +1 -1
  83. package/dist/{post-upgrade-3ADZRMYJ.js → post-upgrade-Y26S2ZQ7.js} +6 -7
  84. package/dist/{post-upgrade-3ADZRMYJ.js.map → post-upgrade-Y26S2ZQ7.js.map} +1 -1
  85. package/dist/{read-text-file-IRZM3QLM.js → read-text-file-DJBTITIB.js} +1 -2
  86. package/dist/{registry-client-AVGRE4CF.js → registry-client-GTBWLXYU.js} +1 -2
  87. package/dist/{security-YNRBW6S7.js → security-2BA265LN.js} +1 -2
  88. package/dist/{settings-manager-MD2U4ZV2.js → settings-manager-B4UN2LAC.js} +1 -2
  89. package/dist/{setup-A7VPW46C.js → setup-OI6A3OXW.js} +109 -82
  90. package/dist/setup-OI6A3OXW.js.map +1 -0
  91. package/dist/speech-GB7PHVQZ.js +9 -0
  92. package/dist/{suggest-7D6B542M.js → suggest-RST5VOHB.js} +1 -3
  93. package/dist/{suggest-7D6B542M.js.map → suggest-RST5VOHB.js.map} +1 -1
  94. package/dist/telegram-UVIAXADE.js +7 -0
  95. package/dist/tunnel-4WNFC7GO.js +7 -0
  96. package/dist/{tunnel-service-QJPUYEKU.js → tunnel-service-I2NFUX3V.js} +3 -4
  97. package/dist/{tunnel-service-QJPUYEKU.js.map → tunnel-service-I2NFUX3V.js.map} +1 -1
  98. package/dist/{validators-WSTBNKRW.js → validators-GITLOFXC.js} +1 -2
  99. package/dist/{version-NQZBM5M7.js → version-AXXV6IV2.js} +1 -2
  100. package/package.json +1 -3
  101. package/dist/adapter-JQFQ3JAO.js +0 -15
  102. package/dist/adapter-UORRGHNH.js +0 -1030
  103. package/dist/adapter-UORRGHNH.js.map +0 -1
  104. package/dist/agent-catalog-YHBFERYO.js +0 -11
  105. package/dist/agent-store-VSHNY5GT.js +0 -9
  106. package/dist/api-server-7G3ZUZRM.js +0 -8
  107. package/dist/api-server-CAYNPUF2.js +0 -11
  108. package/dist/chunk-2YCW3QDV.js.map +0 -1
  109. package/dist/chunk-32LVIEPW.js +0 -477
  110. package/dist/chunk-32LVIEPW.js.map +0 -1
  111. package/dist/chunk-AD3X6DGK.js.map +0 -1
  112. package/dist/chunk-BLQUXO7S.js.map +0 -1
  113. package/dist/chunk-KMMEFXIE.js.map +0 -1
  114. package/dist/chunk-ODUM3D6X.js.map +0 -1
  115. package/dist/chunk-QVMEF6FB.js.map +0 -1
  116. package/dist/chunk-VUNV25KB.js +0 -16
  117. package/dist/chunk-WIIZNPCR.js.map +0 -1
  118. package/dist/chunk-WXVT3AOY.js.map +0 -1
  119. package/dist/chunk-XIBG7LSL.js.map +0 -1
  120. package/dist/chunk-XWDW3XBE.js.map +0 -1
  121. package/dist/chunk-ZNSO2QVC.js +0 -124
  122. package/dist/chunk-ZNSO2QVC.js.map +0 -1
  123. package/dist/config-editor-7PKW42GZ.js +0 -11
  124. package/dist/core-plugins-Y5US6RED.js +0 -23
  125. package/dist/dist-UHQK5CXN.js +0 -21151
  126. package/dist/dist-UHQK5CXN.js.map +0 -1
  127. package/dist/doctor-QZQAP46W.js +0 -10
  128. package/dist/file-service-EUODJAIT.js +0 -9
  129. package/dist/main-3GF3EQTE.js.map +0 -1
  130. package/dist/notifications-D5BRDNSU.js +0 -9
  131. package/dist/plugin-installer-QVJP6VKV.js.map +0 -1
  132. package/dist/setup-A7VPW46C.js.map +0 -1
  133. package/dist/slack-2XNWBOWH.js +0 -8
  134. package/dist/speech-2GHQNRIO.js +0 -9
  135. package/dist/telegram-E65IWFBW.js +0 -8
  136. package/dist/tunnel-45HA72MB.js +0 -8
  137. package/dist/version-NQZBM5M7.js.map +0 -1
  138. /package/dist/{adapter-JQFQ3JAO.js.map → adapter-HGJENQCN.js.map} +0 -0
  139. /package/dist/{agent-catalog-YHBFERYO.js.map → agent-catalog-SZQQERV7.js.map} +0 -0
  140. /package/dist/{agent-dependencies-WS7Z2DFW.js.map → agent-dependencies-ED2ZTUHG.js.map} +0 -0
  141. /package/dist/{agent-registry-5LZT7CUB.js.map → agent-registry-YOGP656W.js.map} +0 -0
  142. /package/dist/{agent-store-VSHNY5GT.js.map → agent-store-5UHZH2XI.js.map} +0 -0
  143. /package/dist/{api-client-AQPNKXI2.js.map → api-client-XTLRRFPX.js.map} +0 -0
  144. /package/dist/{api-server-7G3ZUZRM.js.map → api-server-DSUW637I.js.map} +0 -0
  145. /package/dist/{api-server-CAYNPUF2.js.map → api-server-WFB5K6FP.js.map} +0 -0
  146. /package/dist/{autostart-6JS565RY.js.map → autostart-CUPZMKKC.js.map} +0 -0
  147. /package/dist/{chunk-PPSMUECX.js.map → chunk-2R5XM3ES.js.map} +0 -0
  148. /package/dist/{chunk-SNPYTMPR.js.map → chunk-3EWTPOF7.js.map} +0 -0
  149. /package/dist/{chunk-QAQDGPB4.js.map → chunk-43JVXFYP.js.map} +0 -0
  150. /package/dist/{chunk-A6Y4GZM3.js.map → chunk-566W6INH.js.map} +0 -0
  151. /package/dist/{chunk-P2G275VD.js.map → chunk-5TCXYDLR.js.map} +0 -0
  152. /package/dist/{chunk-RBYBSSGO.js.map → chunk-FCTC7KDT.js.map} +0 -0
  153. /package/dist/{chunk-4GMLGCF2.js.map → chunk-JUFN4XMB.js.map} +0 -0
  154. /package/dist/{chunk-HRKAXFWR.js.map → chunk-QBEQJFGL.js.map} +0 -0
  155. /package/dist/{chunk-SHTGQGAU.js.map → chunk-V2YZWYXT.js.map} +0 -0
  156. /package/dist/{chunk-BQ6FR32N.js.map → chunk-VD3QSMVY.js.map} +0 -0
  157. /package/dist/{chunk-VUNV25KB.js.map → config-UCAFCS5W.js.map} +0 -0
  158. /package/dist/{config-I4FMCJGZ.js.map → config-editor-OU6PUY66.js.map} +0 -0
  159. /package/dist/{config-editor-7PKW42GZ.js.map → config-registry-ZXAIJNYB.js.map} +0 -0
  160. /package/dist/{config-registry-CUMNXFGK.js.map → context-7MPU7RL5.js.map} +0 -0
  161. /package/dist/{context-XM6E22LM.js.map → core-plugins-R2EVZAJV.js.map} +0 -0
  162. /package/dist/{core-plugins-Y5US6RED.js.map → daemon-DTA6KYYY.js.map} +0 -0
  163. /package/dist/{daemon-PXO5QPCR.js.map → doctor-D723IB2I.js.map} +0 -0
  164. /package/dist/{doctor-QZQAP46W.js.map → file-service-HHB3JQIO.js.map} +0 -0
  165. /package/dist/{file-service-EUODJAIT.js.map → log-YZ243M5G.js.map} +0 -0
  166. /package/dist/{log-LZ7FTRKG.js.map → menu-ALFN37IR.js.map} +0 -0
  167. /package/dist/{menu-YDQ2LWAR.js.map → notifications-MO23S7S3.js.map} +0 -0
  168. /package/dist/{notifications-D5BRDNSU.js.map → plugin-installer-5XHORMLS.js.map} +0 -0
  169. /package/dist/{plugin-registry-WB3DR67H.js.map → plugin-registry-6J3YSFHF.js.map} +0 -0
  170. /package/dist/{read-text-file-IRZM3QLM.js.map → read-text-file-DJBTITIB.js.map} +0 -0
  171. /package/dist/{registry-client-AVGRE4CF.js.map → registry-client-GTBWLXYU.js.map} +0 -0
  172. /package/dist/{security-YNRBW6S7.js.map → security-2BA265LN.js.map} +0 -0
  173. /package/dist/{settings-manager-MD2U4ZV2.js.map → settings-manager-B4UN2LAC.js.map} +0 -0
  174. /package/dist/{slack-2XNWBOWH.js.map → speech-GB7PHVQZ.js.map} +0 -0
  175. /package/dist/{speech-2GHQNRIO.js.map → telegram-UVIAXADE.js.map} +0 -0
  176. /package/dist/{telegram-E65IWFBW.js.map → tunnel-4WNFC7GO.js.map} +0 -0
  177. /package/dist/{tunnel-45HA72MB.js.map → validators-GITLOFXC.js.map} +0 -0
  178. /package/dist/{validators-WSTBNKRW.js.map → version-AXXV6IV2.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AgentStore
3
- } from "./chunk-A6Y4GZM3.js";
3
+ } from "./chunk-566W6INH.js";
4
4
  import {
5
5
  checkDependencies,
6
6
  checkRuntimeAvailable,
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-ZSLHHQPQ.js";
10
10
  import {
11
11
  createChildLogger
12
- } from "./chunk-XMMAGAT4.js";
12
+ } from "./chunk-R6KZYF7D.js";
13
13
 
14
14
  // src/core/agents/agent-catalog.ts
15
15
  import * as fs2 from "fs";
@@ -481,4 +481,4 @@ var AgentCatalog = class {
481
481
  export {
482
482
  AgentCatalog
483
483
  };
484
- //# sourceMappingURL=chunk-SHTGQGAU.js.map
484
+ //# sourceMappingURL=chunk-V2YZWYXT.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  expandHome
3
- } from "./chunk-QVMEF6FB.js";
3
+ } from "./chunk-JOMDPFQ2.js";
4
4
 
5
5
  // src/cli/daemon.ts
6
6
  import { spawn } from "child_process";
@@ -169,4 +169,4 @@ export {
169
169
  clearRunning,
170
170
  shouldAutoStart
171
171
  };
172
- //# sourceMappingURL=chunk-BQ6FR32N.js.map
172
+ //# sourceMappingURL=chunk-VD3QSMVY.js.map
package/dist/cli.js CHANGED
@@ -13,9 +13,8 @@ import {
13
13
  } from "./chunk-S64CB6J3.js";
14
14
  import {
15
15
  PLUGINS_DIR
16
- } from "./chunk-QVMEF6FB.js";
17
- import "./chunk-XMMAGAT4.js";
18
- import "./chunk-VUNV25KB.js";
16
+ } from "./chunk-JOMDPFQ2.js";
17
+ import "./chunk-R6KZYF7D.js";
19
18
 
20
19
  // src/cli.ts
21
20
  import { setDefaultAutoSelectFamily } from "net";
@@ -100,7 +99,7 @@ Connect messaging platforms (Telegram, Discord) to 28+ AI coding agents via ACP
100
99
 
101
100
  // src/cli/commands/version.ts
102
101
  async function cmdVersion() {
103
- const { getCurrentVersion: getCurrentVersion2 } = await import("./version-NQZBM5M7.js");
102
+ const { getCurrentVersion: getCurrentVersion2 } = await import("./version-AXXV6IV2.js");
104
103
  console.log(`openacp v${getCurrentVersion2()}`);
105
104
  }
106
105
 
@@ -209,7 +208,7 @@ Shows all plugins registered in the plugin registry.
209
208
  }
210
209
  const os3 = await import("os");
211
210
  const path6 = await import("path");
212
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
211
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
213
212
  const registryPath = path6.join(os3.homedir(), ".openacp", "plugins.json");
214
213
  const registry = new PluginRegistry(registryPath);
215
214
  await registry.load();
@@ -257,7 +256,7 @@ async function cmdPlugin(args2 = []) {
257
256
  case "list":
258
257
  return cmdPlugins(args2.slice(1));
259
258
  case "search": {
260
- const { cmdPluginSearch } = await import("./plugin-search-HQ4WQKOF.js");
259
+ const { cmdPluginSearch } = await import("./plugin-search-MGKAL5JM.js");
261
260
  await cmdPluginSearch(args2.slice(2));
262
261
  return;
263
262
  }
@@ -310,7 +309,7 @@ async function cmdPlugin(args2 = []) {
310
309
  return;
311
310
  }
312
311
  case "create": {
313
- const { cmdPluginCreate } = await import("./plugin-create-5HQRF2ID.js");
312
+ const { cmdPluginCreate } = await import("./plugin-create-EHL76ZZG.js");
314
313
  await cmdPluginCreate();
315
314
  return;
316
315
  }
@@ -323,7 +322,7 @@ async function cmdPlugin(args2 = []) {
323
322
  async function setPluginEnabled(name, enabled) {
324
323
  const os3 = await import("os");
325
324
  const path6 = await import("path");
326
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
325
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
327
326
  const registryPath = path6.join(os3.homedir(), ".openacp", "plugins.json");
328
327
  const registry = new PluginRegistry(registryPath);
329
328
  await registry.load();
@@ -339,15 +338,15 @@ async function setPluginEnabled(name, enabled) {
339
338
  async function configurePlugin(name) {
340
339
  const os3 = await import("os");
341
340
  const path6 = await import("path");
342
- const { corePlugins } = await import("./core-plugins-Y5US6RED.js");
343
- const { SettingsManager } = await import("./settings-manager-MD2U4ZV2.js");
344
- const { createInstallContext } = await import("./install-context-XPWTFT3J.js");
341
+ const { corePlugins } = await import("./core-plugins-R2EVZAJV.js");
342
+ const { SettingsManager } = await import("./settings-manager-B4UN2LAC.js");
343
+ const { createInstallContext } = await import("./install-context-EHYV5WRY.js");
345
344
  const plugin = corePlugins.find((p) => p.name === name);
346
345
  if (!plugin) {
347
346
  console.error(`Plugin "${name}" not found.`);
348
347
  process.exit(1);
349
348
  }
350
- const basePath = path6.join(os3.homedir(), ".openacp", "plugins");
349
+ const basePath = path6.join(os3.homedir(), ".openacp", "plugins", "data");
351
350
  const settingsManager = new SettingsManager(basePath);
352
351
  const ctx = createInstallContext({ pluginName: name, settingsManager, basePath });
353
352
  if (plugin.configure) {
@@ -361,11 +360,11 @@ async function configurePlugin(name) {
361
360
  async function installPlugin(input) {
362
361
  const os3 = await import("os");
363
362
  const path6 = await import("path");
364
- const { execSync: execSync3 } = await import("child_process");
365
- const { getCurrentVersion: getCurrentVersion2 } = await import("./version-NQZBM5M7.js");
366
- const { SettingsManager } = await import("./settings-manager-MD2U4ZV2.js");
367
- const { createInstallContext } = await import("./install-context-XPWTFT3J.js");
368
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
363
+ const { execFileSync } = await import("child_process");
364
+ const { getCurrentVersion: getCurrentVersion2 } = await import("./version-AXXV6IV2.js");
365
+ const { SettingsManager } = await import("./settings-manager-B4UN2LAC.js");
366
+ const { createInstallContext } = await import("./install-context-EHYV5WRY.js");
367
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
369
368
  let pkgName;
370
369
  let pkgVersion;
371
370
  if (input.startsWith("@")) {
@@ -391,7 +390,7 @@ async function installPlugin(input) {
391
390
  pkgName = input;
392
391
  }
393
392
  }
394
- const { RegistryClient } = await import("./registry-client-AVGRE4CF.js");
393
+ const { RegistryClient } = await import("./registry-client-GTBWLXYU.js");
395
394
  const client = new RegistryClient();
396
395
  let registryPlugin = null;
397
396
  try {
@@ -408,9 +407,9 @@ async function installPlugin(input) {
408
407
  }
409
408
  const installSpec = pkgVersion ? `${pkgName}@${pkgVersion}` : pkgName;
410
409
  console.log(`Installing ${installSpec}...`);
411
- const { corePlugins } = await import("./core-plugins-Y5US6RED.js");
410
+ const { corePlugins } = await import("./core-plugins-R2EVZAJV.js");
412
411
  const builtinPlugin = corePlugins.find((p) => p.name === pkgName);
413
- const basePath = path6.join(os3.homedir(), ".openacp", "plugins");
412
+ const basePath = path6.join(os3.homedir(), ".openacp", "plugins", "data");
414
413
  const settingsManager = new SettingsManager(basePath);
415
414
  const registryPath = path6.join(os3.homedir(), ".openacp", "plugins.json");
416
415
  const pluginRegistry = new PluginRegistry(registryPath);
@@ -434,7 +433,7 @@ async function installPlugin(input) {
434
433
  const pluginsDir = path6.join(os3.homedir(), ".openacp", "plugins");
435
434
  const nodeModulesDir = path6.join(pluginsDir, "node_modules");
436
435
  try {
437
- execSync3(`npm install ${installSpec} --prefix "${pluginsDir}" --save`, {
436
+ execFileSync("npm", ["install", installSpec, "--prefix", pluginsDir, "--save"], {
438
437
  stdio: "inherit",
439
438
  timeout: 6e4
440
439
  });
@@ -443,13 +442,15 @@ async function installPlugin(input) {
443
442
  process.exit(1);
444
443
  }
445
444
  const cliVersion = getCurrentVersion2();
445
+ const isLocalPath = pkgName.startsWith("/") || pkgName.startsWith(".");
446
446
  try {
447
- const installedPkgPath = path6.join(nodeModulesDir, pkgName, "package.json");
447
+ const pluginRoot = isLocalPath ? path6.resolve(pkgName) : path6.join(nodeModulesDir, pkgName);
448
+ const installedPkgPath = path6.join(pluginRoot, "package.json");
448
449
  const { readFileSync } = await import("fs");
449
450
  const installedPkg = JSON.parse(readFileSync(installedPkgPath, "utf-8"));
450
451
  const minVersion = installedPkg.engines?.openacp?.replace(/[>=^~\s]/g, "");
451
452
  if (minVersion) {
452
- const { compareVersions: compareVersions2 } = await import("./version-NQZBM5M7.js");
453
+ const { compareVersions: compareVersions2 } = await import("./version-AXXV6IV2.js");
453
454
  if (compareVersions2(cliVersion, minVersion) < 0) {
454
455
  console.log(`
455
456
  \u26A0\uFE0F This plugin requires OpenACP >= ${minVersion}. You have ${cliVersion}.`);
@@ -457,7 +458,7 @@ async function installPlugin(input) {
457
458
  `);
458
459
  }
459
460
  }
460
- const pluginModule = await import(path6.join(nodeModulesDir, pkgName, installedPkg.main ?? "dist/index.js"));
461
+ const pluginModule = await import(path6.join(pluginRoot, installedPkg.main ?? "dist/index.js"));
461
462
  const plugin = pluginModule.default;
462
463
  if (plugin?.install) {
463
464
  const ctx = createInstallContext({ pluginName: plugin.name ?? pkgName, settingsManager, basePath });
@@ -487,7 +488,7 @@ async function uninstallPlugin(name, purge) {
487
488
  const os3 = await import("os");
488
489
  const path6 = await import("path");
489
490
  const fs4 = await import("fs");
490
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
491
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
491
492
  const registryPath = path6.join(os3.homedir(), ".openacp", "plugins.json");
492
493
  const registry = new PluginRegistry(registryPath);
493
494
  await registry.load();
@@ -501,12 +502,12 @@ async function uninstallPlugin(name, purge) {
501
502
  process.exit(1);
502
503
  }
503
504
  try {
504
- const { corePlugins } = await import("./core-plugins-Y5US6RED.js");
505
+ const { corePlugins } = await import("./core-plugins-R2EVZAJV.js");
505
506
  const plugin = corePlugins.find((p) => p.name === name);
506
507
  if (plugin?.uninstall) {
507
- const { SettingsManager } = await import("./settings-manager-MD2U4ZV2.js");
508
- const { createInstallContext } = await import("./install-context-XPWTFT3J.js");
509
- const basePath = path6.join(os3.homedir(), ".openacp", "plugins");
508
+ const { SettingsManager } = await import("./settings-manager-B4UN2LAC.js");
509
+ const { createInstallContext } = await import("./install-context-EHYV5WRY.js");
510
+ const basePath = path6.join(os3.homedir(), ".openacp", "plugins", "data");
510
511
  const settingsManager = new SettingsManager(basePath);
511
512
  const ctx = createInstallContext({ pluginName: name, settingsManager, basePath });
512
513
  await plugin.uninstall(ctx, { purge });
@@ -920,18 +921,19 @@ Shows the version of the currently running daemon process.
920
921
  console.error(`Error: ${data.error}`);
921
922
  process.exit(1);
922
923
  }
924
+ const s = data.session ?? data;
923
925
  console.log(`Session details:`);
924
- console.log(` ID : ${data.id}`);
925
- console.log(` Agent : ${data.agent}`);
926
- console.log(` Status : ${data.status}`);
927
- console.log(` Name : ${data.name ?? "(none)"}`);
928
- console.log(` Workspace : ${data.workspace}`);
929
- console.log(` Created : ${data.createdAt}`);
930
- console.log(` Dangerous : ${data.dangerous}`);
931
- console.log(` Queue depth : ${data.queueDepth}`);
932
- console.log(` Prompt active : ${data.promptActive}`);
933
- console.log(` Channel : ${data.channelId ?? "(none)"}`);
934
- console.log(` Thread : ${data.threadId ?? "(none)"}`);
926
+ console.log(` ID : ${s.id}`);
927
+ console.log(` Agent : ${s.agent}`);
928
+ console.log(` Status : ${s.status}`);
929
+ console.log(` Name : ${s.name ?? "(none)"}`);
930
+ console.log(` Workspace : ${s.workspace}`);
931
+ console.log(` Created : ${s.createdAt}`);
932
+ console.log(` Dangerous : ${s.dangerousMode}`);
933
+ console.log(` Queue depth : ${s.queueDepth}`);
934
+ console.log(` Prompt active : ${s.promptRunning}`);
935
+ console.log(` Channel : ${s.channelId ?? "(none)"}`);
936
+ console.log(` Thread : ${s.threadId ?? "(none)"}`);
935
937
  } else if (subCmd === "dangerous") {
936
938
  const sessionId = args2[2];
937
939
  if (!sessionId) {
@@ -962,19 +964,23 @@ Shows the version of the currently running daemon process.
962
964
  console.error(`Error: ${data.error}`);
963
965
  process.exit(1);
964
966
  }
965
- const uptimeSeconds = typeof data.uptimeSeconds === "number" ? data.uptimeSeconds : 0;
967
+ const uptimeMs = typeof data.uptime === "number" ? data.uptime : 0;
968
+ const uptimeSeconds = Math.floor(uptimeMs / 1e3);
966
969
  const hours = Math.floor(uptimeSeconds / 3600);
967
970
  const minutes = Math.floor(uptimeSeconds % 3600 / 60);
968
- const memoryBytes = typeof data.memoryUsage === "number" ? data.memoryUsage : 0;
969
- const memoryMB = (memoryBytes / 1024 / 1024).toFixed(1);
971
+ const mem = data.memory;
972
+ const memoryMB = mem ? (mem.rss / 1024 / 1024).toFixed(1) : "0.0";
970
973
  const sessions = data.sessions ?? {};
974
+ const tunnel = data.tunnel;
975
+ const tunnelStr = tunnel?.enabled ? `${tunnel.url}` : "disabled";
976
+ const adapters = Array.isArray(data.adapters) ? data.adapters.join(", ") : String(data.adapters ?? "none");
971
977
  console.log(`Status : ${data.status}`);
972
978
  console.log(`Uptime : ${hours}h ${minutes}m`);
973
979
  console.log(`Version : ${data.version}`);
974
980
  console.log(`Memory : ${memoryMB} MB`);
975
981
  console.log(`Sessions : ${sessions.active ?? 0} active / ${sessions.total ?? 0} total`);
976
- console.log(`Adapters : ${data.adapters}`);
977
- console.log(`Tunnel : ${data.tunnel}`);
982
+ console.log(`Adapters : ${adapters}`);
983
+ console.log(`Tunnel : ${tunnelStr}`);
978
984
  } else if (subCmd === "restart") {
979
985
  const res = await apiCall(port, "/api/restart", { method: "POST" });
980
986
  const data = await res.json();
@@ -1076,7 +1082,7 @@ Shows the version of the currently running daemon process.
1076
1082
  }
1077
1083
  console.log(`Daemon version: ${data.version}`);
1078
1084
  } else {
1079
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1085
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1080
1086
  const apiSubcommands = [
1081
1087
  "new",
1082
1088
  "cancel",
@@ -1134,8 +1140,8 @@ Requires an existing config \u2014 run 'openacp' first to set up.
1134
1140
  return;
1135
1141
  }
1136
1142
  await checkAndPromptUpdate();
1137
- const { startDaemon, getPidPath } = await import("./daemon-PXO5QPCR.js");
1138
- const { ConfigManager } = await import("./config-I4FMCJGZ.js");
1143
+ const { startDaemon, getPidPath } = await import("./daemon-DTA6KYYY.js");
1144
+ const { ConfigManager } = await import("./config-UCAFCS5W.js");
1139
1145
  const cm = new ConfigManager();
1140
1146
  if (await cm.exists()) {
1141
1147
  await cm.load();
@@ -1165,7 +1171,7 @@ Sends a stop signal to the running OpenACP daemon process.
1165
1171
  `);
1166
1172
  return;
1167
1173
  }
1168
- const { stopDaemon } = await import("./daemon-PXO5QPCR.js");
1174
+ const { stopDaemon } = await import("./daemon-DTA6KYYY.js");
1169
1175
  const result = await stopDaemon();
1170
1176
  if (result.stopped) {
1171
1177
  console.log(`OpenACP daemon stopped (was PID ${result.pid})`);
@@ -1188,7 +1194,7 @@ Shows whether the OpenACP daemon is running and its PID.
1188
1194
  `);
1189
1195
  return;
1190
1196
  }
1191
- const { getStatus } = await import("./daemon-PXO5QPCR.js");
1197
+ const { getStatus } = await import("./daemon-DTA6KYYY.js");
1192
1198
  const status = getStatus();
1193
1199
  if (status.running) {
1194
1200
  console.log(`OpenACP is running (PID ${status.pid})`);
@@ -1214,7 +1220,7 @@ Log file location is configured in config (default: ~/.openacp/logs/).
1214
1220
  return;
1215
1221
  }
1216
1222
  const { spawn } = await import("child_process");
1217
- const { ConfigManager, expandHome } = await import("./config-I4FMCJGZ.js");
1223
+ const { ConfigManager, expandHome } = await import("./config-UCAFCS5W.js");
1218
1224
  const pathMod = await import("path");
1219
1225
  const cm = new ConfigManager();
1220
1226
  let logDir = "~/.openacp/logs";
@@ -1286,11 +1292,11 @@ the API for live updates. When stopped, edits config file directly.
1286
1292
  console.error("Usage: openacp config set <path> <value>");
1287
1293
  process.exit(1);
1288
1294
  }
1289
- const { ConfigSchema } = await import("./config-I4FMCJGZ.js");
1295
+ const { ConfigSchema } = await import("./config-UCAFCS5W.js");
1290
1296
  const topLevelKey = configPath.split(".")[0];
1291
1297
  const validConfigKeys = Object.keys(ConfigSchema.shape);
1292
1298
  if (!validConfigKeys.includes(topLevelKey)) {
1293
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1299
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1294
1300
  const suggestion = suggestMatch(topLevelKey, validConfigKeys);
1295
1301
  console.error(`Unknown config key: ${topLevelKey}`);
1296
1302
  if (suggestion) console.error(`Did you mean: ${suggestion}?`);
@@ -1318,7 +1324,7 @@ the API for live updates. When stopped, edits config file directly.
1318
1324
  console.log("Note: restart required for this change to take effect.");
1319
1325
  }
1320
1326
  } else {
1321
- const { ConfigManager: ConfigManager2 } = await import("./config-I4FMCJGZ.js");
1327
+ const { ConfigManager: ConfigManager2 } = await import("./config-UCAFCS5W.js");
1322
1328
  const cm2 = new ConfigManager2();
1323
1329
  if (!await cm2.exists()) {
1324
1330
  console.error('No config found. Run "openacp" first to set up.');
@@ -1331,8 +1337,8 @@ the API for live updates. When stopped, edits config file directly.
1331
1337
  }
1332
1338
  return;
1333
1339
  }
1334
- const { runConfigEditor } = await import("./config-editor-7PKW42GZ.js");
1335
- const { ConfigManager } = await import("./config-I4FMCJGZ.js");
1340
+ const { runConfigEditor } = await import("./config-editor-OU6PUY66.js");
1341
+ const { ConfigManager } = await import("./config-UCAFCS5W.js");
1336
1342
  const cm = new ConfigManager();
1337
1343
  if (!await cm.exists()) {
1338
1344
  console.error('No config found. Run "openacp" first to set up.');
@@ -1362,7 +1368,7 @@ start fresh with the setup wizard. The daemon must be stopped first.
1362
1368
  `);
1363
1369
  return;
1364
1370
  }
1365
- const { getStatus } = await import("./daemon-PXO5QPCR.js");
1371
+ const { getStatus } = await import("./daemon-DTA6KYYY.js");
1366
1372
  const status = getStatus();
1367
1373
  if (status.running) {
1368
1374
  console.error("OpenACP is running. Stop it first: openacp stop");
@@ -1377,7 +1383,7 @@ start fresh with the setup wizard. The daemon must be stopped first.
1377
1383
  console.log("Aborted.");
1378
1384
  return;
1379
1385
  }
1380
- const { uninstallAutoStart } = await import("./autostart-6JS565RY.js");
1386
+ const { uninstallAutoStart } = await import("./autostart-CUPZMKKC.js");
1381
1387
  uninstallAutoStart();
1382
1388
  const fs4 = await import("fs");
1383
1389
  const os3 = await import("os");
@@ -1466,7 +1472,7 @@ as a messaging thread. Requires a running daemon.
1466
1472
  process.exit(1);
1467
1473
  }
1468
1474
  try {
1469
- const { apiCall: apiCall2 } = await import("./api-client-AQPNKXI2.js");
1475
+ const { apiCall: apiCall2 } = await import("./api-client-XTLRRFPX.js");
1470
1476
  const res = await apiCall2(port, "/api/sessions/adopt", {
1471
1477
  method: "POST",
1472
1478
  headers: { "Content-Type": "application/json" },
@@ -1518,7 +1524,7 @@ a "Handoff" slash command to Claude Code.
1518
1524
  `);
1519
1525
  return;
1520
1526
  }
1521
- const { getIntegration, listIntegrations } = await import("./integrate-G6CVXTGT.js");
1527
+ const { getIntegration, listIntegrations } = await import("./integrate-JIEZYDOR.js");
1522
1528
  const agent = args2[1];
1523
1529
  const uninstall = args2.includes("--uninstall");
1524
1530
  if (!agent) {
@@ -1528,7 +1534,7 @@ a "Handoff" slash command to Claude Code.
1528
1534
  }
1529
1535
  const integration = getIntegration(agent);
1530
1536
  if (!integration) {
1531
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1537
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1532
1538
  const available = listIntegrations();
1533
1539
  const suggestion = suggestMatch(agent, available);
1534
1540
  console.log(`No integration available for '${agent}'.`);
@@ -1585,7 +1591,7 @@ Fixable issues can be auto-repaired when not using --dry-run.
1585
1591
  (a) => a.startsWith("--") && !knownFlags.includes(a)
1586
1592
  );
1587
1593
  if (unknownFlags.length > 0) {
1588
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1594
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1589
1595
  for (const flag of unknownFlags) {
1590
1596
  const suggestion = suggestMatch(flag, knownFlags);
1591
1597
  console.error(`Unknown flag: ${flag}`);
@@ -1594,7 +1600,7 @@ Fixable issues can be auto-repaired when not using --dry-run.
1594
1600
  process.exit(1);
1595
1601
  }
1596
1602
  const dryRun = args2.includes("--dry-run");
1597
- const { DoctorEngine } = await import("./doctor-QZQAP46W.js");
1603
+ const { DoctorEngine } = await import("./doctor-D723IB2I.js");
1598
1604
  const engine = new DoctorEngine({ dryRun });
1599
1605
  console.log("\n\u{1FA7A} OpenACP Doctor\n");
1600
1606
  const report = await engine.runAll();
@@ -1692,7 +1698,7 @@ bypassing the normal staleness check.
1692
1698
  case void 0:
1693
1699
  return agentsList();
1694
1700
  default: {
1695
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1701
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1696
1702
  const agentSubcommands = ["install", "uninstall", "refresh", "info", "run", "list"];
1697
1703
  const suggestion = suggestMatch(subcommand, agentSubcommands);
1698
1704
  console.error(`Unknown agents command: ${subcommand}`);
@@ -1704,7 +1710,7 @@ Run 'openacp agents' to see available agents.`);
1704
1710
  }
1705
1711
  }
1706
1712
  async function agentsList() {
1707
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1713
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1708
1714
  const catalog = new AgentCatalog();
1709
1715
  catalog.load();
1710
1716
  await catalog.refreshRegistryIfStale();
@@ -1767,7 +1773,7 @@ Run 'openacp agents' to see available agents.
1767
1773
  `);
1768
1774
  return;
1769
1775
  }
1770
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1776
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1771
1777
  const catalog = new AgentCatalog();
1772
1778
  catalog.load();
1773
1779
  await catalog.refreshRegistryIfStale();
@@ -1802,17 +1808,17 @@ Run 'openacp agents' to see available agents.
1802
1808
  const result = await catalog.install(nameOrId, progress, force);
1803
1809
  if (!result.ok) {
1804
1810
  if (result.error?.includes("not found")) {
1805
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1811
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1806
1812
  const allKeys = catalog.getAvailable().map((a) => a.key);
1807
1813
  const suggestion = suggestMatch(nameOrId, allKeys);
1808
1814
  if (suggestion) console.log(` Did you mean: ${suggestion}?`);
1809
1815
  }
1810
1816
  process.exit(1);
1811
1817
  }
1812
- const { getAgentCapabilities } = await import("./agent-dependencies-WS7Z2DFW.js");
1818
+ const { getAgentCapabilities } = await import("./agent-dependencies-ED2ZTUHG.js");
1813
1819
  const caps = getAgentCapabilities(result.agentKey);
1814
1820
  if (caps.integration) {
1815
- const { installIntegration } = await import("./integrate-G6CVXTGT.js");
1821
+ const { installIntegration } = await import("./integrate-JIEZYDOR.js");
1816
1822
  const intResult = await installIntegration(result.agentKey, caps.integration);
1817
1823
  if (intResult.success) {
1818
1824
  console.log(` \x1B[32m\u2713\x1B[0m Handoff integration installed for ${result.agentKey}`);
@@ -1846,15 +1852,15 @@ async function agentsUninstall(name, help = false) {
1846
1852
  `);
1847
1853
  return;
1848
1854
  }
1849
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1855
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1850
1856
  const catalog = new AgentCatalog();
1851
1857
  catalog.load();
1852
1858
  const result = await catalog.uninstall(name);
1853
1859
  if (result.ok) {
1854
- const { getAgentCapabilities } = await import("./agent-dependencies-WS7Z2DFW.js");
1860
+ const { getAgentCapabilities } = await import("./agent-dependencies-ED2ZTUHG.js");
1855
1861
  const caps = getAgentCapabilities(name);
1856
1862
  if (caps.integration) {
1857
- const { uninstallIntegration } = await import("./integrate-G6CVXTGT.js");
1863
+ const { uninstallIntegration } = await import("./integrate-JIEZYDOR.js");
1858
1864
  await uninstallIntegration(name, caps.integration);
1859
1865
  console.log(` \x1B[32m\u2713\x1B[0m Handoff integration removed for ${name}`);
1860
1866
  }
@@ -1865,7 +1871,7 @@ async function agentsUninstall(name, help = false) {
1865
1871
  console.log(`
1866
1872
  \x1B[31m\u2717 ${result.error}\x1B[0m`);
1867
1873
  if (result.error?.includes("not installed")) {
1868
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1874
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1869
1875
  const installedKeys = Object.keys(catalog.getInstalledEntries());
1870
1876
  const suggestion = suggestMatch(name, installedKeys);
1871
1877
  if (suggestion) console.log(` Did you mean: ${suggestion}?`);
@@ -1874,7 +1880,7 @@ async function agentsUninstall(name, help = false) {
1874
1880
  }
1875
1881
  }
1876
1882
  async function agentsRefresh() {
1877
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1883
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1878
1884
  const catalog = new AgentCatalog();
1879
1885
  catalog.load();
1880
1886
  console.log("\n Updating agent list...");
@@ -1901,10 +1907,10 @@ whether the agent is installed or available from the registry.
1901
1907
  `);
1902
1908
  return;
1903
1909
  }
1904
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1910
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1905
1911
  const catalog = new AgentCatalog();
1906
1912
  catalog.load();
1907
- const { getAgentSetup } = await import("./agent-dependencies-WS7Z2DFW.js");
1913
+ const { getAgentSetup } = await import("./agent-dependencies-ED2ZTUHG.js");
1908
1914
  const installed = catalog.getInstalledAgent(nameOrId);
1909
1915
  if (installed) {
1910
1916
  console.log(`
@@ -1951,7 +1957,7 @@ whether the agent is installed or available from the registry.
1951
1957
  `);
1952
1958
  return;
1953
1959
  }
1954
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1960
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1955
1961
  const allKeys = catalog.getAvailable().map((a) => a.key);
1956
1962
  const suggestion = suggestMatch(nameOrId, allKeys);
1957
1963
  console.log(`
@@ -1982,12 +1988,12 @@ ACP-specific flags are automatically stripped.
1982
1988
  `);
1983
1989
  return;
1984
1990
  }
1985
- const { AgentCatalog } = await import("./agent-catalog-YHBFERYO.js");
1991
+ const { AgentCatalog } = await import("./agent-catalog-SZQQERV7.js");
1986
1992
  const catalog = new AgentCatalog();
1987
1993
  catalog.load();
1988
1994
  const installed = catalog.getInstalledAgent(nameOrId);
1989
1995
  if (!installed) {
1990
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
1996
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
1991
1997
  const installedKeys = Object.keys(catalog.getInstalledEntries());
1992
1998
  const suggestion = suggestMatch(nameOrId, installedKeys);
1993
1999
  console.log(`
@@ -2121,18 +2127,18 @@ var OPENACP_DIR = path3.join(os.homedir(), ".openacp");
2121
2127
  var PLUGINS_DATA_DIR = path3.join(OPENACP_DIR, "plugins", "data");
2122
2128
  var REGISTRY_PATH = path3.join(OPENACP_DIR, "plugins.json");
2123
2129
  async function cmdOnboard() {
2124
- const { ConfigManager } = await import("./config-I4FMCJGZ.js");
2130
+ const { ConfigManager } = await import("./config-UCAFCS5W.js");
2131
+ const { SettingsManager } = await import("./settings-manager-B4UN2LAC.js");
2132
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
2125
2133
  const cm = new ConfigManager();
2134
+ const settingsManager = new SettingsManager(PLUGINS_DATA_DIR);
2135
+ const pluginRegistry = new PluginRegistry(REGISTRY_PATH);
2136
+ await pluginRegistry.load();
2126
2137
  if (await cm.exists()) {
2127
- const { runReconfigure } = await import("./setup-A7VPW46C.js");
2138
+ const { runReconfigure } = await import("./setup-OI6A3OXW.js");
2128
2139
  await runReconfigure(cm);
2129
2140
  } else {
2130
- const { SettingsManager } = await import("./settings-manager-MD2U4ZV2.js");
2131
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
2132
- const settingsManager = new SettingsManager(PLUGINS_DATA_DIR);
2133
- const pluginRegistry = new PluginRegistry(REGISTRY_PATH);
2134
- await pluginRegistry.load();
2135
- const { runSetup } = await import("./setup-A7VPW46C.js");
2141
+ const { runSetup } = await import("./setup-OI6A3OXW.js");
2136
2142
  await runSetup(cm, { skipRunMode: true, settingsManager, pluginRegistry });
2137
2143
  }
2138
2144
  }
@@ -2146,7 +2152,7 @@ var REGISTRY_PATH2 = path4.join(OPENACP_DIR2, "plugins.json");
2146
2152
  async function cmdDefault(command2) {
2147
2153
  const forceForeground = command2 === "--foreground";
2148
2154
  if (command2 && !command2.startsWith("-")) {
2149
- const { suggestMatch } = await import("./suggest-7D6B542M.js");
2155
+ const { suggestMatch } = await import("./suggest-RST5VOHB.js");
2150
2156
  const topLevelCommands = [
2151
2157
  "start",
2152
2158
  "stop",
@@ -2173,22 +2179,22 @@ async function cmdDefault(command2) {
2173
2179
  process.exit(1);
2174
2180
  }
2175
2181
  await checkAndPromptUpdate();
2176
- const { ConfigManager } = await import("./config-I4FMCJGZ.js");
2182
+ const { ConfigManager } = await import("./config-UCAFCS5W.js");
2177
2183
  const cm = new ConfigManager();
2178
2184
  if (!await cm.exists()) {
2179
- const { SettingsManager } = await import("./settings-manager-MD2U4ZV2.js");
2180
- const { PluginRegistry } = await import("./plugin-registry-WB3DR67H.js");
2185
+ const { SettingsManager } = await import("./settings-manager-B4UN2LAC.js");
2186
+ const { PluginRegistry } = await import("./plugin-registry-6J3YSFHF.js");
2181
2187
  const settingsManager = new SettingsManager(PLUGINS_DATA_DIR2);
2182
2188
  const pluginRegistry = new PluginRegistry(REGISTRY_PATH2);
2183
2189
  await pluginRegistry.load();
2184
- const { runSetup } = await import("./setup-A7VPW46C.js");
2190
+ const { runSetup } = await import("./setup-OI6A3OXW.js");
2185
2191
  const shouldStart = await runSetup(cm, { settingsManager, pluginRegistry });
2186
2192
  if (!shouldStart) process.exit(0);
2187
2193
  }
2188
2194
  await cm.load();
2189
2195
  const config = cm.get();
2190
2196
  if (!forceForeground && config.runMode === "daemon") {
2191
- const { startDaemon, getPidPath } = await import("./daemon-PXO5QPCR.js");
2197
+ const { startDaemon, getPidPath } = await import("./daemon-DTA6KYYY.js");
2192
2198
  const result = startDaemon(getPidPath(), config.logging.logDir);
2193
2199
  if ("error" in result) {
2194
2200
  console.error(result.error);
@@ -2197,9 +2203,9 @@ async function cmdDefault(command2) {
2197
2203
  console.log(`OpenACP daemon started (PID ${result.pid})`);
2198
2204
  return;
2199
2205
  }
2200
- const { markRunning } = await import("./daemon-PXO5QPCR.js");
2206
+ const { markRunning } = await import("./daemon-DTA6KYYY.js");
2201
2207
  markRunning();
2202
- const { startServer } = await import("./main-3GF3EQTE.js");
2208
+ const { startServer } = await import("./main-RRSX5SRL.js");
2203
2209
  await startServer();
2204
2210
  }
2205
2211
 
@@ -2273,7 +2279,7 @@ async function cmdDev(args2 = []) {
2273
2279
  process.env.OPENACP_DEBUG = "1";
2274
2280
  }
2275
2281
  process.env.OPENACP_DEV_LOOP = "1";
2276
- const { startServer } = await import("./main-3GF3EQTE.js");
2282
+ const { startServer } = await import("./main-RRSX5SRL.js");
2277
2283
  await startServer({ devPluginPath: pluginPath, noWatch });
2278
2284
  }
2279
2285
 
@@ -2306,7 +2312,7 @@ var commands = {
2306
2312
  "onboard": () => cmdOnboard(),
2307
2313
  "dev": () => cmdDev(args),
2308
2314
  "--daemon-child": async () => {
2309
- const { startServer } = await import("./main-3GF3EQTE.js");
2315
+ const { startServer } = await import("./main-RRSX5SRL.js");
2310
2316
  await startServer();
2311
2317
  }
2312
2318
  };