volute 0.40.0 → 0.40.1

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 (157) hide show
  1. package/dist/{accept-AHAOUFBK.js → accept-IVHOHXQS.js} +1 -1
  2. package/dist/{activity-events-OJZ7G5CG.js → activity-events-DS4QRWBY.js} +4 -4
  3. package/dist/{ai-service-JMV4KZN4.js → ai-service-AUWIPWLP.js} +5 -5
  4. package/dist/{api-client-LC5YRA32.js → api-client-NFM6GX2N.js} +1 -1
  5. package/dist/{archive-BC2MTNPV.js → archive-UDHFZN4G.js} +4 -4
  6. package/dist/{auth-2IMZ6N5G.js → auth-X6ZITZ7D.js} +5 -5
  7. package/dist/{bridge-F3ZJEKDN.js → bridge-MSZC4HUT.js} +1 -1
  8. package/dist/{chat-O5QCGCUG.js → chat-JD3TJINV.js} +9 -9
  9. package/dist/{chunk-MHFAWJCC.js → chunk-2HZRJ35V.js} +1 -1
  10. package/dist/{chunk-B7YJUWMM.js → chunk-3Y7UDHO7.js} +3 -3
  11. package/dist/{chunk-SGC6CDXB.js → chunk-4UMXOMZ6.js} +2 -2
  12. package/dist/{chunk-43PVCF4V.js → chunk-5EVW4KOD.js} +3 -3
  13. package/dist/{chunk-FBV22PFY.js → chunk-6SYHHEQ7.js} +1 -1
  14. package/dist/{chunk-3XSFMN3H.js → chunk-AEAZRTEV.js} +1 -1
  15. package/dist/{chunk-RMZSICLS.js → chunk-ANSTTB55.js} +1 -1
  16. package/dist/{chunk-PDSA3ILI.js → chunk-B4WPXYPI.js} +1 -1
  17. package/dist/{chunk-XUJR6NZW.js → chunk-BLAXARBZ.js} +32 -32
  18. package/dist/{chunk-2AQCEQYN.js → chunk-DNU6XLE2.js} +1 -1
  19. package/dist/{chunk-PHR4XQPL.js → chunk-E25SO3QW.js} +3 -3
  20. package/dist/{chunk-76Q6YLJL.js → chunk-I57LLNAQ.js} +1 -1
  21. package/dist/{chunk-HAJHDGBV.js → chunk-ITH5ZLZJ.js} +1 -1
  22. package/dist/{chunk-SOPMVTTW.js → chunk-JYQQDI3M.js} +2 -2
  23. package/dist/{chunk-PIRL2HAO.js → chunk-KMHC36CA.js} +1 -1
  24. package/dist/chunk-LMMQX4CK.js +49 -0
  25. package/dist/{chunk-JSITYTIL.js → chunk-LZ6CQYRO.js} +7 -7
  26. package/dist/{chunk-FRJ73IWR.js → chunk-MNUXL4XN.js} +67 -3
  27. package/dist/{chunk-PC55DGNX.js → chunk-NERYUSER.js} +1 -1
  28. package/dist/{chunk-S4YO5OWV.js → chunk-PKGA23XM.js} +1 -1
  29. package/dist/{chunk-T26YLQPU.js → chunk-QV7P3TYO.js} +5 -5
  30. package/dist/{chunk-5VBXKFPO.js → chunk-QYI65HCL.js} +2 -2
  31. package/dist/{chunk-PGX52NFO.js → chunk-S4SXBQ7F.js} +1 -1
  32. package/dist/{chunk-HEZM5GCV.js → chunk-SVXOBKQY.js} +2 -2
  33. package/dist/{chunk-PZTVQL3J.js → chunk-TOANT6FD.js} +2 -2
  34. package/dist/{chunk-DNQPHLGM.js → chunk-YHWGN4FX.js} +1 -1
  35. package/dist/{chunk-WGRMLXTH.js → chunk-YTNBO7S6.js} +8 -8
  36. package/dist/cli.js +24 -24
  37. package/dist/{clock-BMLJ2TR6.js → clock-YLDJUKBW.js} +3 -3
  38. package/dist/{cloud-sync-5JF2Z7VM.js → cloud-sync-MAQCJEFJ.js} +17 -17
  39. package/dist/{config-QB7W3Z7P.js → config-PO4EZLIK.js} +4 -4
  40. package/dist/connectors/discord-bridge.js +1 -1
  41. package/dist/connectors/slack-bridge.js +1 -1
  42. package/dist/connectors/telegram-bridge.js +1 -1
  43. package/dist/{conversations-LUVHGQSS.js → conversations-AYLXPOGC.js} +5 -5
  44. package/dist/{create-TDQM3SHV.js → create-T4UJ64WB.js} +4 -4
  45. package/dist/{create-C3BBFYV7.js → create-ZMTGINV3.js} +1 -1
  46. package/dist/{daemon-client-2MIPKY3E.js → daemon-client-H6MEKK2W.js} +1 -1
  47. package/dist/{daemon-restart-XHDJDOPQ.js → daemon-restart-LP2DR24J.js} +9 -9
  48. package/dist/daemon.js +275 -248
  49. package/dist/{db-IJL6B26S.js → db-FSYOTHSN.js} +1 -1
  50. package/dist/db-ZEPKEJJD.js +9 -0
  51. package/dist/{delete-NLXES2C7.js → delete-TXVOH2OC.js} +3 -3
  52. package/dist/delivery-manager-VNHLQTTO.js +30 -0
  53. package/dist/{delivery-router-IU4OMVKZ.js → delivery-router-T6CYTS3M.js} +4 -4
  54. package/dist/down-6DYO2QV7.js +17 -0
  55. package/dist/echo-text-QFCH3H6G.js +31 -0
  56. package/dist/{env-IQ6Q2333.js → env-77IOWG4U.js} +1 -1
  57. package/dist/exec-5DGKQ5V3.js +17 -0
  58. package/dist/{export-RKUWSQSG.js → export-TZKOCSCE.js} +6 -6
  59. package/dist/{extension-LZYHBNLV.js → extension-35NB6GHW.js} +1 -1
  60. package/dist/{extensions-VN5SEVRP.js → extensions-LQX2N7TI.js} +17 -17
  61. package/dist/{files-J2CKZ6PK.js → files-WNNVJWJB.js} +4 -4
  62. package/dist/{import-KVY6BYXG.js → import-BNNFCQ7U.js} +11 -11
  63. package/dist/{isolation-MM7YHK6J.js → isolation-4Q4P7HRV.js} +4 -4
  64. package/dist/{join-6SZCA5FX.js → join-E2EJEXZO.js} +3 -3
  65. package/dist/{list-KHJZJPEJ.js → list-BYCEDASJ.js} +1 -1
  66. package/dist/{login-GYTH67ES.js → login-JNSIYFVH.js} +1 -1
  67. package/dist/{login-OHM32QVD.js → login-Y6UAYQVO.js} +3 -3
  68. package/dist/{logout-YHQLOFLR.js → logout-M6FI62BL.js} +1 -1
  69. package/dist/{logout-74WBDMOE.js → logout-VHGWVH63.js} +3 -3
  70. package/dist/message-delivery-7BCYJLH2.js +40 -0
  71. package/dist/{mind-PUPXDIYQ.js → mind-ELPD6VBP.js} +19 -19
  72. package/dist/{mind-activity-tracker-7GE24YZE.js → mind-activity-tracker-XFRVGXFS.js} +5 -5
  73. package/dist/{mind-history-WHCNZ6I5.js → mind-history-W4JPTPTV.js} +1 -1
  74. package/dist/{mind-list-H3HC2ZRG.js → mind-list-QROHCLGT.js} +1 -1
  75. package/dist/mind-manager-EDCLALBF.js +30 -0
  76. package/dist/{mind-profile-7VYRJGFZ.js → mind-profile-3LNKXNPA.js} +2 -2
  77. package/dist/mind-service-WTOFVNLW.js +36 -0
  78. package/dist/{mind-sleep-ZL5ZXFTM.js → mind-sleep-PVCMLTAH.js} +1 -1
  79. package/dist/{mind-status-ZWULKOUO.js → mind-status-RAJFLRCN.js} +1 -1
  80. package/dist/{mind-wake-HK5ORGUK.js → mind-wake-HZUOVE7J.js} +1 -1
  81. package/dist/{package-6YPVWGD3.js → package-GO3PHHUF.js} +28 -27
  82. package/dist/{read-CP7MYMJQ.js → read-OOINVR2H.js} +1 -1
  83. package/dist/{read-stdin-4B5UYPPM.js → read-stdin-P6HCZUAA.js} +1 -1
  84. package/dist/{register-XOBFEMI4.js → register-ISOH34RF.js} +1 -1
  85. package/dist/{registry-L272BZJR.js → registry-GV35XFT7.js} +3 -3
  86. package/dist/{reject-43AGXB6B.js → reject-ZBWP62X5.js} +1 -1
  87. package/dist/{restart-O5QIYQJT.js → restart-QBJV5455.js} +1 -1
  88. package/dist/{sandbox-BQAFYHLE.js → sandbox-5R32QKWQ.js} +5 -5
  89. package/dist/scheduler-GQBDCGLU.js +30 -0
  90. package/dist/{schema-HHYJDG7B.js → schema-LYQUDL7G.js} +2 -2
  91. package/dist/{seed-4V2O7FQE.js → seed-MO2C7CWC.js} +2 -2
  92. package/dist/{seed-check-HZPVFJKZ.js → seed-check-3WXXRHTC.js} +2 -2
  93. package/dist/{seed-cmd-JKDEW4MP.js → seed-cmd-ETIF4WD6.js} +4 -4
  94. package/dist/{seed-create-EPAO3H5F.js → seed-create-BPQC2IOR.js} +6 -6
  95. package/dist/{seed-sprout-EONCL4DU.js → seed-sprout-TX72K33T.js} +11 -11
  96. package/dist/{send-232RAHPX.js → send-WO3CVG73.js} +4 -4
  97. package/dist/{service-AG5BKRUV.js → service-WMV6R6VJ.js} +6 -6
  98. package/dist/service-install-W3FQXJKB.js +17 -0
  99. package/dist/{setup-IL7QJZN4.js → setup-OTEC3ZPM.js} +4 -4
  100. package/dist/{setup-PSA7LJ5U.js → setup-ZTW4FVMQ.js} +9 -9
  101. package/dist/{skill-ICN6Y2ZF.js → skill-QHACP7EU.js} +1 -1
  102. package/dist/{skills-SLEY5X6W.js → skills-JEWMHIIE.js} +7 -7
  103. package/dist/sleep-manager-5277OBHI.js +34 -0
  104. package/dist/{spirit-7BUHSEO2.js → spirit-NVXWSVKM.js} +9 -9
  105. package/dist/{split-5YBEQTBF.js → split-7AO4IO42.js} +3 -3
  106. package/dist/{sprout-JWQ57KF3.js → sprout-NFJZKYEW.js} +2 -2
  107. package/dist/{src-OYWRPLC6.js → src-2IMB3V27.js} +1 -1
  108. package/dist/src-OS75U2O7.js +241910 -0
  109. package/dist/{src-O4PRLMKM.js → src-XNUXP2FP.js} +1 -1
  110. package/dist/{start-LMXXRR3X.js → start-2U57BBK7.js} +1 -1
  111. package/dist/{status-6GSOSYOD.js → status-BRYYYO7C.js} +7 -7
  112. package/dist/{stop-TWDKVEUX.js → stop-QILBDUAR.js} +1 -1
  113. package/dist/system-chat-LQSJVY55.js +34 -0
  114. package/dist/{systems-Y2WZV2K4.js → systems-3XTAHA35.js} +4 -4
  115. package/dist/{tailscale-6MHNLBAX.js → tailscale-X4HRKRTW.js} +3 -3
  116. package/dist/{template-hash-SSIBEEYK.js → template-hash-DMHSLRDX.js} +1 -1
  117. package/dist/up-4H7TL6WB.js +19 -0
  118. package/dist/{update-BT2PY73H.js → update-OY2JYXYK.js} +61 -14
  119. package/dist/update-check-IUB7QHAF.js +24 -0
  120. package/dist/{upgrade-RXFZR5FI.js → upgrade-25J6AE47.js} +3 -3
  121. package/dist/{variant-HHDTW74J.js → variant-5LQOPCQA.js} +1 -1
  122. package/dist/{version-notify-NFQMI5IY.js → version-notify-N37N2C4G.js} +18 -18
  123. package/dist/{volute-config-TS62GS6A.js → volute-config-7FO6QKWU.js} +1 -1
  124. package/dist/web-assets/assets/index-DaUp9iE2.js +79 -0
  125. package/dist/web-assets/index.html +1 -1
  126. package/package.json +27 -26
  127. package/packages/extensions/notes/dist/ui/assets/index-BbgANhFm.js +67 -0
  128. package/packages/extensions/notes/dist/ui/index.html +1 -1
  129. package/packages/extensions/pages/dist/ui/assets/index-Dxk-DYrf.js +2 -0
  130. package/packages/extensions/pages/dist/ui/index.html +1 -1
  131. package/packages/extensions/plan/dist/ui/assets/index-Cfzs-0G9.js +67 -0
  132. package/packages/extensions/plan/dist/ui/index.html +1 -1
  133. package/templates/claude/package.json.tmpl +5 -5
  134. package/templates/codex/package.json.tmpl +5 -5
  135. package/templates/pi/package.json.tmpl +6 -6
  136. package/templates/pi/src/agent.ts +2 -0
  137. package/templates/pi/src/lib/subagents.ts +19 -17
  138. package/dist/chunk-K3NQKI34.js +0 -10
  139. package/dist/db-2GIS7HSG.js +0 -9
  140. package/dist/delivery-manager-L5WFP2ND.js +0 -30
  141. package/dist/down-KIJVZ3OC.js +0 -17
  142. package/dist/echo-text-TJWCUBPB.js +0 -31
  143. package/dist/exec-BGMU7VXR.js +0 -17
  144. package/dist/message-delivery-VBBAJX3J.js +0 -40
  145. package/dist/mind-manager-4Q6KGZHL.js +0 -30
  146. package/dist/mind-service-7OD4PRO5.js +0 -36
  147. package/dist/scheduler-7E22Q7IC.js +0 -30
  148. package/dist/service-install-HVAEUBAH.js +0 -17
  149. package/dist/sleep-manager-27S7MKJO.js +0 -34
  150. package/dist/src-6Z4XYDH5.js +0 -2164
  151. package/dist/system-chat-EIINIHFB.js +0 -34
  152. package/dist/up-4XS3RCPP.js +0 -19
  153. package/dist/update-check-Y3HBEMF2.js +0 -18
  154. package/dist/web-assets/assets/index-Jluza4c-.js +0 -73
  155. package/packages/extensions/notes/dist/ui/assets/index-Dsua7alJ.js +0 -61
  156. package/packages/extensions/pages/dist/ui/assets/index-BM7gRdg7.js +0 -2
  157. package/packages/extensions/plan/dist/ui/assets/index-DWiqtzBv.js +0 -61
@@ -1,11 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  voluteSystemDir
4
- } from "./chunk-PDSA3ILI.js";
4
+ } from "./chunk-B4WPXYPI.js";
5
5
 
6
6
  // packages/daemon/src/lib/update-check.ts
7
- import { existsSync, readFileSync, writeFileSync } from "fs";
8
- import { resolve } from "path";
7
+ import { execFile as execFileCb, execFileSync } from "child_process";
8
+ import { existsSync, readFileSync, realpathSync, writeFileSync } from "fs";
9
+ import { basename, dirname, resolve, sep } from "path";
10
+ import { promisify } from "util";
11
+ var execFile = promisify(execFileCb);
9
12
  var CACHE_TTL = 60 * 60 * 1e3;
10
13
  function cachePath() {
11
14
  return resolve(voluteSystemDir(), "update-check.json");
@@ -90,6 +93,64 @@ async function checkForUpdate(force = false) {
90
93
  return { current, latest: current, updateAvailable: false, checkFailed: true };
91
94
  }
92
95
  }
96
+ function readPackageVersion(pkgDir) {
97
+ try {
98
+ return JSON.parse(readFileSync(resolve(pkgDir, "package.json"), "utf-8")).version ?? null;
99
+ } catch {
100
+ return null;
101
+ }
102
+ }
103
+ function analyzeInstallPath(realPath) {
104
+ const marker = `${sep}node_modules${sep}volute${sep}`;
105
+ const idx = realPath.indexOf(marker);
106
+ if (idx === -1) return { packageRoot: null, prefix: null, isLinked: true };
107
+ const packageRoot = `${realPath.slice(0, idx)}${sep}node_modules${sep}volute`;
108
+ const nodeModulesRoot = dirname(packageRoot);
109
+ const libDir = dirname(nodeModulesRoot);
110
+ const prefix = basename(libDir) === "lib" ? dirname(libDir) : libDir;
111
+ return { packageRoot, prefix, isLinked: false };
112
+ }
113
+ function resolveVoluteInstall() {
114
+ let binPath;
115
+ try {
116
+ binPath = execFileSync("which", ["volute"], { encoding: "utf-8" }).trim();
117
+ } catch {
118
+ return null;
119
+ }
120
+ if (!binPath) return null;
121
+ let realPath = binPath;
122
+ try {
123
+ realPath = realpathSync(binPath);
124
+ } catch {
125
+ }
126
+ const { packageRoot, prefix, isLinked } = analyzeInstallPath(realPath);
127
+ if (isLinked) {
128
+ let dir = dirname(realPath);
129
+ let version = null;
130
+ for (let i = 0; i < 4 && dir !== dirname(dir); i++) {
131
+ version = readPackageVersion(dir);
132
+ if (version) break;
133
+ dir = dirname(dir);
134
+ }
135
+ return { binPath, realPath, packageRoot: null, prefix: null, version, isLinked: true };
136
+ }
137
+ return {
138
+ binPath,
139
+ realPath,
140
+ packageRoot,
141
+ prefix,
142
+ version: packageRoot ? readPackageVersion(packageRoot) : null,
143
+ isLinked: false
144
+ };
145
+ }
146
+ async function getResolvedVersion(binPath) {
147
+ try {
148
+ const { stdout } = await execFile(binPath, ["--version"], { timeout: 15e3 });
149
+ return stdout.trim() || null;
150
+ } catch {
151
+ return null;
152
+ }
153
+ }
93
154
  function checkForUpdateCached() {
94
155
  const cache = readCache();
95
156
  if (!cache) return null;
@@ -106,5 +167,8 @@ export {
106
167
  fetchLatestVersion,
107
168
  isNewer,
108
169
  checkForUpdate,
170
+ analyzeInstallPath,
171
+ resolveVoluteInstall,
172
+ getResolvedVersion,
109
173
  checkForUpdateCached
110
174
  };
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-T2TP6ZC6.js";
5
5
  import {
6
6
  mindDir
7
- } from "./chunk-PDSA3ILI.js";
7
+ } from "./chunk-B4WPXYPI.js";
8
8
 
9
9
  // packages/daemon/src/lib/delivery/delivery-router.ts
10
10
  import { readFileSync, statSync } from "fs";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-T2TP6ZC6.js";
5
5
  import {
6
6
  voluteSystemDir
7
- } from "./chunk-PDSA3ILI.js";
7
+ } from "./chunk-B4WPXYPI.js";
8
8
 
9
9
  // packages/daemon/src/lib/bridges/bridges.ts
10
10
  import { existsSync, readFileSync, writeFileSync } from "fs";
@@ -2,11 +2,11 @@
2
2
  import {
3
3
  exec,
4
4
  gitExec
5
- } from "./chunk-3XSFMN3H.js";
5
+ } from "./chunk-AEAZRTEV.js";
6
6
  import {
7
7
  readGlobalConfig,
8
8
  writeGlobalConfig
9
- } from "./chunk-2AQCEQYN.js";
9
+ } from "./chunk-DNU6XLE2.js";
10
10
  import {
11
11
  logger_default
12
12
  } from "./chunk-T2TP6ZC6.js";
@@ -15,10 +15,10 @@ import {
15
15
  mindDir,
16
16
  readRegistry,
17
17
  voluteHome
18
- } from "./chunk-PDSA3ILI.js";
18
+ } from "./chunk-B4WPXYPI.js";
19
19
  import {
20
20
  sharedSkills
21
- } from "./chunk-MHFAWJCC.js";
21
+ } from "./chunk-2HZRJ35V.js";
22
22
 
23
23
  // packages/daemon/src/lib/skills.ts
24
24
  import { createHash } from "crypto";
@@ -46,7 +46,7 @@ async function initDefaultSkills() {
46
46
  const config = readGlobalConfig();
47
47
  let extensionSkills = [];
48
48
  try {
49
- const { getExtensionStandardSkills } = await import("./extensions-VN5SEVRP.js");
49
+ const { getExtensionStandardSkills } = await import("./extensions-LQX2N7TI.js");
50
50
  extensionSkills = getExtensionStandardSkills();
51
51
  } catch (err) {
52
52
  logger_default.warn("failed to load extension standard skills during init", logger_default.errorData(err));
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-T2TP6ZC6.js";
5
5
  import {
6
6
  getDb
7
- } from "./chunk-PDSA3ILI.js";
7
+ } from "./chunk-B4WPXYPI.js";
8
8
  import {
9
9
  activity
10
- } from "./chunk-MHFAWJCC.js";
10
+ } from "./chunk-2HZRJ35V.js";
11
11
 
12
12
  // packages/daemon/src/lib/events/activity-events.ts
13
13
  var subscribers = /* @__PURE__ */ new Set();
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  readGlobalConfig,
4
4
  writeGlobalConfig
5
- } from "./chunk-2AQCEQYN.js";
5
+ } from "./chunk-DNU6XLE2.js";
6
6
  import {
7
7
  logger_default
8
8
  } from "./chunk-T2TP6ZC6.js";
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  setBridgeConfig
4
- } from "./chunk-S4YO5OWV.js";
4
+ } from "./chunk-PKGA23XM.js";
5
5
  import {
6
6
  readEnv,
7
7
  sharedEnvPath,
8
8
  writeEnv
9
- } from "./chunk-HAJHDGBV.js";
9
+ } from "./chunk-ITH5ZLZJ.js";
10
10
 
11
11
  // packages/daemon/src/lib/template/import-utils.ts
12
12
  import { existsSync, mkdirSync, readdirSync, readFileSync, statSync, writeFileSync } from "fs";
@@ -3,10 +3,10 @@ import {
3
3
  LAUNCHD_PLIST_LABEL,
4
4
  LAUNCHD_PLIST_PATH,
5
5
  USER_SYSTEMD_UNIT
6
- } from "./chunk-SGC6CDXB.js";
6
+ } from "./chunk-4UMXOMZ6.js";
7
7
  import {
8
8
  resolveVoluteBin
9
- } from "./chunk-3XSFMN3H.js";
9
+ } from "./chunk-AEAZRTEV.js";
10
10
 
11
11
  // packages/daemon/src/lib/config/service-install.ts
12
12
  import { execFile } from "child_process";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  stateDir
4
- } from "./chunk-PDSA3ILI.js";
4
+ } from "./chunk-B4WPXYPI.js";
5
5
 
6
6
  // packages/daemon/src/lib/chat/file-sharing.ts
7
7
  import { randomBytes } from "crypto";
@@ -9,21 +9,21 @@ import {
9
9
  getSharedSkill,
10
10
  installSkill,
11
11
  mindSkillsDir
12
- } from "./chunk-T26YLQPU.js";
12
+ } from "./chunk-QV7P3TYO.js";
13
13
  import {
14
14
  readVoluteConfig,
15
15
  writeVoluteConfig
16
16
  } from "./chunk-CU6OFXMM.js";
17
17
  import {
18
18
  exec
19
- } from "./chunk-3XSFMN3H.js";
19
+ } from "./chunk-AEAZRTEV.js";
20
20
  import {
21
21
  qualifyModelId,
22
22
  resolveTemplate
23
- } from "./chunk-PGX52NFO.js";
23
+ } from "./chunk-S4SXBQ7F.js";
24
24
  import {
25
25
  readGlobalConfig
26
- } from "./chunk-2AQCEQYN.js";
26
+ } from "./chunk-DNU6XLE2.js";
27
27
  import {
28
28
  logger_default
29
29
  } from "./chunk-T2TP6ZC6.js";
@@ -32,7 +32,7 @@ import {
32
32
  findMind,
33
33
  nextPort,
34
34
  voluteSystemDir
35
- } from "./chunk-PDSA3ILI.js";
35
+ } from "./chunk-B4WPXYPI.js";
36
36
 
37
37
  // packages/daemon/src/lib/mind/spirit.ts
38
38
  import { cpSync, existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "fs";
@@ -128,7 +128,7 @@ async function ensureSpiritProject() {
128
128
  } catch (err) {
129
129
  slog.warn("failed to add tending schedule to spirit config", logger_default.errorData(err));
130
130
  }
131
- const { createMindUser, chownMindDir, ensureVoluteGroup } = await import("./isolation-MM7YHK6J.js");
131
+ const { createMindUser, chownMindDir, ensureVoluteGroup } = await import("./isolation-4Q4P7HRV.js");
132
132
  ensureVoluteGroup();
133
133
  createMindUser("volute", resolve(dir, "home"));
134
134
  chownMindDir(dir, "volute");
@@ -162,8 +162,8 @@ async function syncSpiritTemplate() {
162
162
  cpSync(newPkg, resolve(dir, "package.json"));
163
163
  await exec("npm", ["install"], { cwd: dir, env: npmEnv() });
164
164
  }
165
- const db = await (await import("./db-2GIS7HSG.js")).getDb();
166
- const { minds } = await import("./schema-HHYJDG7B.js");
165
+ const db = await (await import("./db-ZEPKEJJD.js")).getDb();
166
+ const { minds } = await import("./schema-LYQUDL7G.js");
167
167
  const { eq } = await import("drizzle-orm");
168
168
  await db.update(minds).set({ template: expectedTemplate }).where(eq(minds.name, "volute"));
169
169
  }
package/dist/cli.js CHANGED
@@ -10,7 +10,7 @@ if (!process.env.VOLUTE_HOME) {
10
10
  var command = process.argv[2];
11
11
  var args = process.argv.slice(3);
12
12
  if (command === "--version" || command === "-v") {
13
- const { default: pkg } = await import("./package-6YPVWGD3.js");
13
+ const { default: pkg } = await import("./package-GO3PHHUF.js");
14
14
  console.log(pkg.version);
15
15
  process.exit(0);
16
16
  }
@@ -31,7 +31,7 @@ var ungatedCommands = /* @__PURE__ */ new Set([
31
31
  void 0
32
32
  ]);
33
33
  if (!ungatedCommands.has(command)) {
34
- const { isSetupComplete } = await import("./setup-IL7QJZN4.js");
34
+ const { isSetupComplete } = await import("./setup-OTEC3ZPM.js");
35
35
  if (!isSetupComplete()) {
36
36
  console.error("Volute is not set up. Run `volute setup` first.");
37
37
  process.exit(1);
@@ -39,61 +39,61 @@ if (!ungatedCommands.has(command)) {
39
39
  }
40
40
  switch (command) {
41
41
  case "setup":
42
- await import("./setup-PSA7LJ5U.js").then((m) => m.run(args));
42
+ await import("./setup-ZTW4FVMQ.js").then((m) => m.run(args));
43
43
  break;
44
44
  case "mind":
45
- await import("./mind-PUPXDIYQ.js").then((m) => m.run(args));
45
+ await import("./mind-ELPD6VBP.js").then((m) => m.run(args));
46
46
  break;
47
47
  case "seed":
48
- await import("./seed-cmd-JKDEW4MP.js").then((m) => m.run(args));
48
+ await import("./seed-cmd-ETIF4WD6.js").then((m) => m.run(args));
49
49
  break;
50
50
  case "chat":
51
- await import("./chat-O5QCGCUG.js").then((m) => m.run(args));
51
+ await import("./chat-JD3TJINV.js").then((m) => m.run(args));
52
52
  break;
53
53
  case "variant":
54
- await import("./variant-HHDTW74J.js").then((m) => m.run(args));
54
+ await import("./variant-5LQOPCQA.js").then((m) => m.run(args));
55
55
  break;
56
56
  case "clock":
57
- await import("./clock-BMLJ2TR6.js").then((m) => m.run(args));
57
+ await import("./clock-YLDJUKBW.js").then((m) => m.run(args));
58
58
  break;
59
59
  case "skill":
60
- await import("./skill-ICN6Y2ZF.js").then((m) => m.run(args));
60
+ await import("./skill-QHACP7EU.js").then((m) => m.run(args));
61
61
  break;
62
62
  case "env":
63
- await import("./env-IQ6Q2333.js").then((m) => m.run(args));
63
+ await import("./env-77IOWG4U.js").then((m) => m.run(args));
64
64
  break;
65
65
  case "config":
66
- await import("./config-QB7W3Z7P.js").then((m) => m.run(args));
66
+ await import("./config-PO4EZLIK.js").then((m) => m.run(args));
67
67
  break;
68
68
  case "up":
69
- await import("./up-4XS3RCPP.js").then((m) => m.run(args));
69
+ await import("./up-4H7TL6WB.js").then((m) => m.run(args));
70
70
  break;
71
71
  case "down":
72
- await import("./down-KIJVZ3OC.js").then((m) => m.run(args));
72
+ await import("./down-6DYO2QV7.js").then((m) => m.run(args));
73
73
  break;
74
74
  case "restart":
75
- await import("./daemon-restart-XHDJDOPQ.js").then((m) => m.run(args));
75
+ await import("./daemon-restart-LP2DR24J.js").then((m) => m.run(args));
76
76
  break;
77
77
  case "update":
78
- await import("./update-BT2PY73H.js").then((m) => m.run(args));
78
+ await import("./update-OY2JYXYK.js").then((m) => m.run(args));
79
79
  break;
80
80
  case "status":
81
- await import("./status-6GSOSYOD.js").then((m) => m.run(args));
81
+ await import("./status-BRYYYO7C.js").then((m) => m.run(args));
82
82
  break;
83
83
  case "extension":
84
- await import("./extension-LZYHBNLV.js").then((m) => m.run(args));
84
+ await import("./extension-35NB6GHW.js").then((m) => m.run(args));
85
85
  break;
86
86
  case "systems":
87
- await import("./systems-Y2WZV2K4.js").then((m) => m.run(args));
87
+ await import("./systems-3XTAHA35.js").then((m) => m.run(args));
88
88
  break;
89
89
  case "login":
90
- await import("./login-OHM32QVD.js").then((m) => m.run(args));
90
+ await import("./login-Y6UAYQVO.js").then((m) => m.run(args));
91
91
  break;
92
92
  case "logout":
93
- await import("./logout-74WBDMOE.js").then((m) => m.run(args));
93
+ await import("./logout-VHGWVH63.js").then((m) => m.run(args));
94
94
  break;
95
95
  case "service":
96
- await import("./service-AG5BKRUV.js").then((m) => m.run(args));
96
+ await import("./service-WMV6R6VJ.js").then((m) => m.run(args));
97
97
  break;
98
98
  case "--help":
99
99
  case "-h":
@@ -150,7 +150,7 @@ use --mind <name> or VOLUTE_MIND env var to identify the mind.`);
150
150
  default: {
151
151
  let isExtensionCommand = false;
152
152
  try {
153
- const { daemonFetch } = await import("./daemon-client-2MIPKY3E.js");
153
+ const { daemonFetch } = await import("./daemon-client-H6MEKK2W.js");
154
154
  const res = await daemonFetch("/api/extensions/commands");
155
155
  if (res.ok) {
156
156
  const extCommands = await res.json();
@@ -231,7 +231,7 @@ Use --mind <name> or VOLUTE_MIND to specify the mind.
231
231
  mind = cmdArgs[mindIdx + 1];
232
232
  cmdArgs.splice(mindIdx, 2);
233
233
  }
234
- const { readStdin } = await import("./read-stdin-4B5UYPPM.js");
234
+ const { readStdin } = await import("./read-stdin-P6HCZUAA.js");
235
235
  const stdin = await readStdin();
236
236
  const cmdRes = await daemonFetch(`/api/ext/${command}/commands/${subcommand}`, {
237
237
  method: "POST",
@@ -264,7 +264,7 @@ Run 'volute --help' for usage.`);
264
264
  }
265
265
  }
266
266
  if (command !== "update") {
267
- import("./update-check-Y3HBEMF2.js").then((m) => m.checkForUpdate()).then((result) => {
267
+ import("./update-check-IUB7QHAF.js").then((m) => m.checkForUpdate()).then((result) => {
268
268
  if (result.updateAvailable) {
269
269
  console.error(`
270
270
  Update available: ${result.current} \u2192 ${result.latest}`);
@@ -18,7 +18,7 @@ import {
18
18
  subcommands
19
19
  } from "./chunk-TXSA4Q3V.js";
20
20
  import "./chunk-O7IGP7ZW.js";
21
- import "./chunk-K3NQKI34.js";
21
+ import "./chunk-LMMQX4CK.js";
22
22
 
23
23
  // packages/cli/src/commands/clock.ts
24
24
  import { CronExpressionParser } from "cron-parser";
@@ -274,11 +274,11 @@ var cmd = subcommands({
274
274
  },
275
275
  sleep: {
276
276
  description: "Put a mind to sleep",
277
- run: (args) => import("./mind-sleep-ZL5ZXFTM.js").then((m) => m.run(args))
277
+ run: (args) => import("./mind-sleep-PVCMLTAH.js").then((m) => m.run(args))
278
278
  },
279
279
  wake: {
280
280
  description: "Wake a sleeping mind",
281
- run: (args) => import("./mind-wake-HK5ORGUK.js").then((m) => m.run(args))
281
+ run: (args) => import("./mind-wake-HZUOVE7J.js").then((m) => m.run(args))
282
282
  }
283
283
  },
284
284
  footer: "Use --mind <name> or VOLUTE_MIND to identify the mind."
@@ -1,31 +1,31 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  deliverMessage
4
- } from "./chunk-XUJR6NZW.js";
5
- import "./chunk-HAJHDGBV.js";
6
- import "./chunk-WGRMLXTH.js";
4
+ } from "./chunk-BLAXARBZ.js";
5
+ import "./chunk-ITH5ZLZJ.js";
6
+ import "./chunk-YTNBO7S6.js";
7
7
  import "./chunk-46DYYHN6.js";
8
- import "./chunk-T26YLQPU.js";
8
+ import "./chunk-QV7P3TYO.js";
9
9
  import {
10
10
  getAuthHeaders,
11
11
  getWebhookUrl
12
- } from "./chunk-B7YJUWMM.js";
12
+ } from "./chunk-3Y7UDHO7.js";
13
13
  import "./chunk-CU6OFXMM.js";
14
- import "./chunk-PIRL2HAO.js";
15
- import "./chunk-RMZSICLS.js";
16
- import "./chunk-PC55DGNX.js";
17
- import "./chunk-3XSFMN3H.js";
18
- import "./chunk-FBV22PFY.js";
19
- import "./chunk-PGX52NFO.js";
20
- import "./chunk-2AQCEQYN.js";
21
- import "./chunk-PHR4XQPL.js";
22
- import "./chunk-5VBXKFPO.js";
14
+ import "./chunk-KMHC36CA.js";
15
+ import "./chunk-ANSTTB55.js";
16
+ import "./chunk-NERYUSER.js";
17
+ import "./chunk-AEAZRTEV.js";
18
+ import "./chunk-6SYHHEQ7.js";
19
+ import "./chunk-S4SXBQ7F.js";
20
+ import "./chunk-DNU6XLE2.js";
21
+ import "./chunk-E25SO3QW.js";
22
+ import "./chunk-QYI65HCL.js";
23
23
  import {
24
24
  logger_default
25
25
  } from "./chunk-T2TP6ZC6.js";
26
- import "./chunk-PDSA3ILI.js";
27
- import "./chunk-MHFAWJCC.js";
28
- import "./chunk-K3NQKI34.js";
26
+ import "./chunk-B4WPXYPI.js";
27
+ import "./chunk-2HZRJ35V.js";
28
+ import "./chunk-LMMQX4CK.js";
29
29
 
30
30
  // packages/daemon/src/lib/cloud-sync.ts
31
31
  var slog = logger_default.child("cloud-sync");
@@ -3,11 +3,11 @@ import {
3
3
  subcommands
4
4
  } from "./chunk-TXSA4Q3V.js";
5
5
  import "./chunk-O7IGP7ZW.js";
6
- import "./chunk-K3NQKI34.js";
6
+ import "./chunk-LMMQX4CK.js";
7
7
 
8
8
  // packages/cli/src/commands/config.ts
9
9
  async function listModels() {
10
- const { daemonFetch } = await import("./daemon-client-2MIPKY3E.js");
10
+ const { daemonFetch } = await import("./daemon-client-H6MEKK2W.js");
11
11
  const res = await daemonFetch("/api/config/models");
12
12
  if (!res.ok) {
13
13
  console.error(`Failed to fetch models (HTTP ${res.status})`);
@@ -24,7 +24,7 @@ async function listModels() {
24
24
  }
25
25
  }
26
26
  async function listProviders() {
27
- const { daemonFetch } = await import("./daemon-client-2MIPKY3E.js");
27
+ const { daemonFetch } = await import("./daemon-client-H6MEKK2W.js");
28
28
  const res = await daemonFetch("/api/config/providers");
29
29
  if (!res.ok) {
30
30
  console.error(`Failed to fetch providers (HTTP ${res.status})`);
@@ -41,7 +41,7 @@ async function listProviders() {
41
41
  }
42
42
  }
43
43
  async function showStatus() {
44
- const { daemonFetch } = await import("./daemon-client-2MIPKY3E.js");
44
+ const { daemonFetch } = await import("./daemon-client-H6MEKK2W.js");
45
45
  const res = await daemonFetch("/api/config/status");
46
46
  if (!res.ok) {
47
47
  console.error(`Failed to fetch config (HTTP ${res.status})`);
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  slugify
9
9
  } from "../chunk-LGNUFVMR.js";
10
- import "../chunk-K3NQKI34.js";
10
+ import "../chunk-LMMQX4CK.js";
11
11
 
12
12
  // packages/daemon/src/lib/bridges/discord-bridge.ts
13
13
  import { Client, Events, GatewayIntentBits, Partials } from "discord.js";
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  slugify
9
9
  } from "../chunk-LGNUFVMR.js";
10
- import "../chunk-K3NQKI34.js";
10
+ import "../chunk-LMMQX4CK.js";
11
11
 
12
12
  // packages/daemon/src/lib/bridges/slack-bridge.ts
13
13
  import { App } from "@slack/bolt";
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  slugify
9
9
  } from "../chunk-LGNUFVMR.js";
10
- import "../chunk-K3NQKI34.js";
10
+ import "../chunk-LMMQX4CK.js";
11
11
 
12
12
  // packages/daemon/src/lib/bridges/telegram-bridge.ts
13
13
  import { Telegraf } from "telegraf";
@@ -29,12 +29,12 @@ import {
29
29
  removeParticipant,
30
30
  setConversationPrivate,
31
31
  updateChannelSettings
32
- } from "./chunk-B7YJUWMM.js";
33
- import "./chunk-5VBXKFPO.js";
32
+ } from "./chunk-3Y7UDHO7.js";
33
+ import "./chunk-QYI65HCL.js";
34
34
  import "./chunk-T2TP6ZC6.js";
35
- import "./chunk-PDSA3ILI.js";
36
- import "./chunk-MHFAWJCC.js";
37
- import "./chunk-K3NQKI34.js";
35
+ import "./chunk-B4WPXYPI.js";
36
+ import "./chunk-2HZRJ35V.js";
37
+ import "./chunk-LMMQX4CK.js";
38
38
  export {
39
39
  addMessage,
40
40
  addParticipant,
@@ -3,7 +3,7 @@ import {
3
3
  command
4
4
  } from "./chunk-TXSA4Q3V.js";
5
5
  import "./chunk-O7IGP7ZW.js";
6
- import "./chunk-K3NQKI34.js";
6
+ import "./chunk-LMMQX4CK.js";
7
7
 
8
8
  // packages/cli/src/commands/create.ts
9
9
  var cmd = command({
@@ -21,12 +21,12 @@ var cmd = command({
21
21
  const name = args.name;
22
22
  let template = flags.template;
23
23
  if (!template) {
24
- const { resolveTemplate } = await import("./ai-service-JMV4KZN4.js");
24
+ const { resolveTemplate } = await import("./ai-service-AUWIPWLP.js");
25
25
  template = resolveTemplate();
26
26
  }
27
27
  const skills = flags.skills === "none" ? [] : flags.skills ? flags.skills.split(",") : void 0;
28
- const { daemonFetch } = await import("./daemon-client-2MIPKY3E.js");
29
- const { getClient, urlOf } = await import("./api-client-LC5YRA32.js");
28
+ const { daemonFetch } = await import("./daemon-client-H6MEKK2W.js");
29
+ const { getClient, urlOf } = await import("./api-client-NFM6GX2N.js");
30
30
  const client = getClient();
31
31
  const res = await daemonFetch(urlOf(client.api.minds.$url()), {
32
32
  method: "POST",
@@ -9,7 +9,7 @@ import {
9
9
  command
10
10
  } from "./chunk-TXSA4Q3V.js";
11
11
  import "./chunk-O7IGP7ZW.js";
12
- import "./chunk-K3NQKI34.js";
12
+ import "./chunk-LMMQX4CK.js";
13
13
 
14
14
  // packages/cli/src/commands/chat/create.ts
15
15
  var cmd = command({
@@ -4,7 +4,7 @@ import {
4
4
  readSessionFile,
5
5
  resolveDaemonUrl
6
6
  } from "./chunk-ZX7EAV5J.js";
7
- import "./chunk-K3NQKI34.js";
7
+ import "./chunk-LMMQX4CK.js";
8
8
  export {
9
9
  daemonFetch,
10
10
  readSessionFile,
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  stopDaemon
4
- } from "./chunk-SOPMVTTW.js";
4
+ } from "./chunk-JYQQDI3M.js";
5
5
  import {
6
6
  run
7
- } from "./chunk-43PVCF4V.js";
7
+ } from "./chunk-5EVW4KOD.js";
8
8
  import {
9
9
  command
10
10
  } from "./chunk-TXSA4Q3V.js";
@@ -15,13 +15,13 @@ import {
15
15
  pollHealth,
16
16
  readDaemonConfig,
17
17
  restartService
18
- } from "./chunk-SGC6CDXB.js";
19
- import "./chunk-3XSFMN3H.js";
20
- import "./chunk-FBV22PFY.js";
21
- import "./chunk-2AQCEQYN.js";
22
- import "./chunk-PDSA3ILI.js";
23
- import "./chunk-MHFAWJCC.js";
24
- import "./chunk-K3NQKI34.js";
18
+ } from "./chunk-4UMXOMZ6.js";
19
+ import "./chunk-AEAZRTEV.js";
20
+ import "./chunk-6SYHHEQ7.js";
21
+ import "./chunk-DNU6XLE2.js";
22
+ import "./chunk-B4WPXYPI.js";
23
+ import "./chunk-2HZRJ35V.js";
24
+ import "./chunk-LMMQX4CK.js";
25
25
 
26
26
  // src/commands/daemon-restart.ts
27
27
  var cmd = command({