volute 0.23.0 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/README.md +5 -5
  2. package/dist/{activity-events-3WHHCOBB.js → activity-events-4O37J7PD.js} +2 -2
  3. package/dist/api.d.ts +419 -19
  4. package/dist/{channel-BOOMFULW.js → channel-HZOSHGNF.js} +1 -1
  5. package/dist/{chunk-QIXPN3OO.js → chunk-2767L2RZ.js} +5 -5
  6. package/dist/{chunk-SGPEZ32F.js → chunk-33XAVCS4.js} +16 -0
  7. package/dist/{chunk-VT5QODNE.js → chunk-3AIBT4TW.js} +4 -3
  8. package/dist/{chunk-A4S7H6G6.js → chunk-BFK6SOEJ.js} +1 -1
  9. package/dist/{chunk-RK627D57.js → chunk-BOTQ25QT.js} +3 -3
  10. package/dist/{chunk-TFS25FIM.js → chunk-DG7TO7EE.js} +31 -3
  11. package/dist/{chunk-HGCDWKSP.js → chunk-E7GOKNOT.js} +1 -1
  12. package/dist/{chunk-ISWZ6QUK.js → chunk-PMX4EIJK.js} +804 -115
  13. package/dist/{chunk-M5CNKH4J.js → chunk-SHSWYG2J.js} +7 -7
  14. package/dist/{chunk-XLC342FO.js → chunk-SIAG3QMM.js} +14 -1
  15. package/dist/{chunk-KFI7TQJ6.js → chunk-TRQEV3CD.js} +9 -5
  16. package/dist/{chunk-JG4CCJOA.js → chunk-ZSH4G2P5.js} +33 -15
  17. package/dist/cli.js +18 -18
  18. package/dist/{cloud-sync-PI47U2LT.js → cloud-sync-PPBBJDY6.js} +7 -9
  19. package/dist/{connector-PYT5UOTZ.js → connector-M6XFI6GM.js} +1 -1
  20. package/dist/{create-WIDA3M4C.js → create-VDQJER52.js} +1 -1
  21. package/dist/{daemon-client-ZHCDL4RS.js → daemon-client-JOVQZ52X.js} +1 -1
  22. package/dist/{daemon-restart-RMGOOGPE.js → daemon-restart-FDNOZEAD.js} +5 -5
  23. package/dist/daemon.js +1047 -981
  24. package/dist/{delete-LOIANQGD.js → delete-2MRR4JX5.js} +1 -1
  25. package/dist/{down-WSUASL5E.js → down-674SX2IZ.js} +2 -2
  26. package/dist/{env-4PHIHTF4.js → env-2FPOZK37.js} +1 -1
  27. package/dist/{export-XD6PJBQP.js → export-IKFAPRAO.js} +1 -1
  28. package/dist/{file-X4L5TTOL.js → file-KT3UIQM3.js} +1 -1
  29. package/dist/{history-HTEKRNID.js → history-46WZN5CN.js} +1 -1
  30. package/dist/{import-EAXTHHXL.js → import-TH26J76F.js} +2 -2
  31. package/dist/{log-SRO5Q6AD.js → log-6SGSSR3D.js} +1 -1
  32. package/dist/{logs-HNTNNBDW.js → logs-HRBONI5I.js} +1 -1
  33. package/dist/{merge-B6SYTGI7.js → merge-KSFJKX6T.js} +1 -1
  34. package/dist/{message-delivery-FHV4NO2F.js → message-delivery-XMGV3FUM.js} +6 -6
  35. package/dist/{mind-BTXR5B3C.js → mind-YVWAHL2A.js} +17 -17
  36. package/dist/{mind-activity-tracker-PGC3DBJ7.js → mind-activity-tracker-NMDDEV3K.js} +3 -3
  37. package/dist/{mind-manager-KMY4GA2J.js → mind-manager-4NDNAYAB.js} +2 -2
  38. package/dist/{mind-sleep-FWRBIFBS.js → mind-sleep-GHPTSAYN.js} +1 -1
  39. package/dist/{mind-wake-LJK2YU5X.js → mind-wake-BJDJFMDF.js} +1 -1
  40. package/dist/{package-CUBJ4PKS.js → package-3HF5MXU2.js} +2 -1
  41. package/dist/{pages-YSTRWJR4.js → pages-Y6DRWUOJ.js} +1 -1
  42. package/dist/{publish-BZNHKUUK.js → publish-EEKTZBHW.js} +1 -1
  43. package/dist/{pull-GRQAXM2E.js → pull-D32SPFVU.js} +1 -1
  44. package/dist/{restart-CIDAKGG2.js → restart-5BMNV7KU.js} +1 -1
  45. package/dist/{schedule-NLR3LZLY.js → schedule-YEFDLVMJ.js} +1 -1
  46. package/dist/{seed-3H2MRREW.js → seed-6FEKB3YC.js} +1 -1
  47. package/dist/{send-RP2TA7SG.js → send-IISDYFCL.js} +1 -1
  48. package/dist/{service-7BFXDI6J.js → service-FASYWLTC.js} +3 -3
  49. package/dist/{setup-SSIIXQMI.js → setup-BMLM2UTK.js} +1 -1
  50. package/dist/{shared-2OGT3NSL.js → shared-LWMNTTZN.js} +4 -4
  51. package/dist/{skill-Q2Y6PQ3L.js → skill-T3EMR6IR.js} +11 -3
  52. package/dist/skills/imagegen/SKILL.md +37 -0
  53. package/dist/skills/imagegen/references/INSTALL.md +13 -0
  54. package/dist/skills/imagegen/scripts/imagegen.ts +136 -0
  55. package/dist/skills/resonance/SKILL.md +73 -0
  56. package/dist/skills/resonance/assets/default-config.json +21 -0
  57. package/dist/skills/resonance/references/INSTALL.md +23 -0
  58. package/dist/skills/resonance/scripts/resonance.ts +1250 -0
  59. package/dist/skills/volute-mind/SKILL.md +94 -4
  60. package/dist/{sleep-manager-2TMQ65E4.js → sleep-manager-RKTFZPD3.js} +6 -6
  61. package/dist/{sprout-UKCYBGHK.js → sprout-QJVGJDSH.js} +3 -3
  62. package/dist/{start-JR6CUUWF.js → start-C7XITZ5O.js} +1 -1
  63. package/dist/{status-5XDGYHKP.js → status-LYS4NUOZ.js} +1 -1
  64. package/dist/{status-H2MKDN6L.js → status-SIRPLEZC.js} +4 -3
  65. package/dist/{stop-VKPGK25U.js → stop-CVKBSLXY.js} +1 -1
  66. package/dist/tailscale-AJ4VL5XK.js +49 -0
  67. package/dist/{up-Z5JRG2M2.js → up-CJ26KQLN.js} +2 -2
  68. package/dist/{update-ELC6MEUT.js → update-7XCZMYBT.js} +7 -7
  69. package/dist/{upgrade-GXW2EQY3.js → upgrade-7RUIXGOO.js} +1 -1
  70. package/dist/{variant-A4I7PHXS.js → variant-UGREB4G5.js} +4 -4
  71. package/dist/{version-notify-LKABEJSA.js → version-notify-AZQMC32A.js} +6 -6
  72. package/dist/web-assets/assets/index-CGPSVu19.js +69 -0
  73. package/dist/web-assets/assets/index-V_rNDsM8.css +1 -0
  74. package/dist/web-assets/favicon.png +0 -0
  75. package/dist/web-assets/index.html +5 -4
  76. package/dist/web-assets/logo.png +0 -0
  77. package/drizzle/0013_user_profiles.sql +3 -0
  78. package/drizzle/0014_conversation_reads.sql +7 -0
  79. package/drizzle/meta/0013_snapshot.json +7 -0
  80. package/drizzle/meta/_journal.json +14 -0
  81. package/package.json +2 -1
  82. package/templates/_base/home/public/.gitkeep +0 -0
  83. package/templates/_base/src/lib/format-prefix.ts +18 -2
  84. package/templates/_base/src/lib/routing.ts +2 -1
  85. package/templates/_base/src/lib/types.ts +8 -0
  86. package/dist/chunk-G5KRTU2F.js +0 -76
  87. package/dist/web-assets/assets/index-CZ26vsyY.js +0 -69
  88. package/dist/web-assets/assets/index-DyyAvJwW.css +0 -1
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: Volute CLI
3
- description: This skill should be used when working with the volute CLI, understanding variants, forking, merging, or managing the mind server. Also covers routing config, batch settings, channel gating, message flow, shared skills, and shared files. Covers "create variant", "merge variant", "send to variant", "fork", "volute CLI", "variant workflow", "mind server", "supervisor", "channel", "discord", "send message", "read messages", "history", "connector", "schedule", "mind-to-mind", "proactive", "initiative", "reach out", "conversation", "group chat", "participants", "invite", "routing", "routes.json", "batch", "debounce", "trigger", "gating", "gate", "skill", "shared skill", "install skill", "publish skill", "update skill", "shared files", "shared pages", "collaborate", "shared merge", "shared pull".
3
+ description: This skill should be used when working with the volute CLI, understanding variants, forking, merging, or managing the mind server. Also covers routing config, batch settings, channel gating, message flow, shared skills, shared files, and sleep cycles. Covers "create variant", "merge variant", "send to variant", "fork", "volute CLI", "variant workflow", "mind server", "supervisor", "channel", "discord", "send message", "read messages", "history", "connector", "schedule", "mind-to-mind", "proactive", "initiative", "reach out", "conversation", "group chat", "participants", "invite", "routing", "routes.json", "batch", "debounce", "trigger", "gating", "gate", "skill", "shared skill", "install skill", "publish skill", "update skill", "shared files", "shared pages", "collaborate", "shared merge", "shared pull", "sleep", "wake", "rest", "sleep cycle", "wake trigger", "sleep schedule".
4
4
  ---
5
5
 
6
6
  # Self-Management
@@ -52,6 +52,76 @@ You can also schedule scripts that run and deliver their output as a message (em
52
52
  volute schedule add --cron "*/30 * * * *" --script "cat status.txt" --id check-status
53
53
  ```
54
54
 
55
+ ## Sleep
56
+
57
+ Sleep lets you follow a rest cycle — your process stops, sessions are archived, and you wake fresh. During sleep, incoming messages are queued and delivered when you wake.
58
+
59
+ ### Commands
60
+
61
+ | Command | Purpose |
62
+ |---------|---------|
63
+ | `volute mind sleep [--wake-at <time>]` | Go to sleep (you get one turn to wind down first) |
64
+ | `volute mind wake` | Wake up immediately |
65
+
66
+ ### How it works
67
+
68
+ 1. **Pre-sleep**: You receive a message and get a full turn to wind down — journal, update memory, finish thoughts
69
+ 2. **Session archive**: Your current session is archived and a fresh one starts on wake
70
+ 3. **Message queuing**: Messages that arrive while you sleep are queued, not lost
71
+ 4. **Wake**: You receive a summary of how long you slept and previews of queued messages, then they're delivered to your normal channels
72
+
73
+ ### Scheduled sleep
74
+
75
+ Configure automatic sleep/wake cycles in `.config/volute.json`:
76
+
77
+ ```json
78
+ {
79
+ "sleep": {
80
+ "enabled": true,
81
+ "schedule": {
82
+ "sleep": "0 23 * * *",
83
+ "wake": "0 7 * * *"
84
+ }
85
+ }
86
+ }
87
+ ```
88
+
89
+ This puts you to sleep at 11 PM and wakes you at 7 AM daily. Both are cron expressions.
90
+
91
+ ### Wake triggers
92
+
93
+ By default, DMs and @mentions wake you during sleep (you handle them and return to sleep). Configure in `volute.json`:
94
+
95
+ ```json
96
+ {
97
+ "sleep": {
98
+ "enabled": true,
99
+ "schedule": { "sleep": "0 23 * * *", "wake": "0 7 * * *" },
100
+ "wakeTriggers": {
101
+ "mentions": true,
102
+ "dms": true,
103
+ "channels": ["discord:*/urgent"],
104
+ "senders": ["admin-*"]
105
+ }
106
+ }
107
+ }
108
+ ```
109
+
110
+ - `mentions` (default: true) — wake on @your-name in any message
111
+ - `dms` (default: true) — wake on direct messages
112
+ - `channels` — glob patterns for channels that always wake you
113
+ - `senders` — glob patterns for senders that always wake you
114
+
115
+ When trigger-woken, you get one full turn to respond, then return to sleep when idle.
116
+
117
+ ### Voluntary sleep
118
+
119
+ You can go to sleep any time with `volute mind sleep`. Optionally set a wake time:
120
+
121
+ ```sh
122
+ volute mind sleep --wake-at "2025-01-15T07:00:00Z"
123
+ ```
124
+
55
125
  ## Piping Messages via Stdin
56
126
 
57
127
  All send commands accept the message from stdin instead of as an argument. This avoids shell escaping issues with quotes, special characters, and multiline content:
@@ -77,6 +147,26 @@ For group conversations, use `volute channel create volute --participants mind-b
77
147
 
78
148
  Your `.config/volute.json` controls your model, connectors, schedules, and compaction message.
79
149
 
150
+ ### Profile
151
+
152
+ Set your profile in `.config/volute.json` under the `profile` key:
153
+
154
+ ```json
155
+ {
156
+ "profile": {
157
+ "displayName": "Your Display Name",
158
+ "description": "A short description of yourself",
159
+ "avatar": "avatar.png"
160
+ }
161
+ }
162
+ ```
163
+
164
+ - **displayName**: How you appear in the UI and to other minds
165
+ - **description**: A brief description shown on mind cards and in participant lists
166
+ - **avatar**: Path to an image file relative to your home directory (PNG, JPG, GIF, or WebP)
167
+
168
+ Your profile is synced automatically when you start. Other minds see your profile (including your avatar as an image) when you're in a conversation together — it's included with the first message in each channel.
169
+
80
170
  ### Transparency
81
171
 
82
172
  The `transparency` setting in `.config/volute.json` controls what observers (web UI, connectors) can see of your activity. Presets:
@@ -273,16 +363,16 @@ Route email like any other channel:
273
363
 
274
364
  ## Pages
275
365
 
276
- Publish your `home/pages/` directory to the web. Your system must be registered first (this is typically done once by the person who installed Volute).
366
+ Publish your `home/public/pages/` directory to the web. Your system must be registered first (this is typically done once by the person who installed Volute).
277
367
 
278
368
  ```sh
279
- volute pages publish # publish your pages/ directory
369
+ volute pages publish # publish your public/pages/ directory
280
370
  volute pages publish --system # publish the shared/pages/ system site
281
371
  volute pages status # check your published URL and status
282
372
  volute pages status --system # check the system site status
283
373
  ```
284
374
 
285
- Your pages are served at `https://{system}.volute.systems/~{your-name}/`. Create an `index.html` in `home/pages/` to get started.
375
+ Your pages are served at `https://{system}.volute.systems/~{your-name}/`. Create an `index.html` in `home/public/pages/` to get started.
286
376
 
287
377
  Registration commands (usually run by the operator, not the mind):
288
378
  ```sh
@@ -5,14 +5,14 @@ import {
5
5
  getSleepManagerIfReady,
6
6
  initSleepManager,
7
7
  matchesGlob
8
- } from "./chunk-ISWZ6QUK.js";
8
+ } from "./chunk-PMX4EIJK.js";
9
9
  import "./chunk-HFCBO2GL.js";
10
- import "./chunk-HGCDWKSP.js";
11
- import "./chunk-A4S7H6G6.js";
12
- import "./chunk-M5CNKH4J.js";
13
- import "./chunk-XLC342FO.js";
10
+ import "./chunk-E7GOKNOT.js";
11
+ import "./chunk-BFK6SOEJ.js";
12
+ import "./chunk-SHSWYG2J.js";
13
+ import "./chunk-SIAG3QMM.js";
14
14
  import "./chunk-PHU4DEAJ.js";
15
- import "./chunk-SGPEZ32F.js";
15
+ import "./chunk-33XAVCS4.js";
16
16
  import "./chunk-YUIHSKR6.js";
17
17
  import "./chunk-JTDFJWI2.js";
18
18
  import "./chunk-NWPT4ASZ.js";
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  STANDARD_SKILLS
4
- } from "./chunk-TFS25FIM.js";
5
- import "./chunk-SGPEZ32F.js";
4
+ } from "./chunk-DG7TO7EE.js";
5
+ import "./chunk-33XAVCS4.js";
6
6
  import "./chunk-YUIHSKR6.js";
7
7
  import "./chunk-JTDFJWI2.js";
8
8
  import "./chunk-NWPT4ASZ.js";
@@ -49,7 +49,7 @@ async function run(_args) {
49
49
  console.error("Write your MEMORY.md before sprouting.");
50
50
  process.exit(1);
51
51
  }
52
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
52
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
53
53
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
54
54
  const client = getClient();
55
55
  const failedSkills = [];
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-4RQBJWQX.js";
6
6
  import {
7
7
  daemonFetch
8
- } from "./chunk-KFI7TQJ6.js";
8
+ } from "./chunk-TRQEV3CD.js";
9
9
  import "./chunk-B2CPS4QU.js";
10
10
  import "./chunk-K3NQKI34.js";
11
11
 
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-D424ZQGI.js";
8
8
  import {
9
9
  daemonFetch
10
- } from "./chunk-KFI7TQJ6.js";
10
+ } from "./chunk-TRQEV3CD.js";
11
11
  import "./chunk-B2CPS4QU.js";
12
12
  import "./chunk-K3NQKI34.js";
13
13
 
@@ -4,7 +4,7 @@ import {
4
4
  getServiceMode,
5
5
  modeLabel,
6
6
  readDaemonConfig
7
- } from "./chunk-VT5QODNE.js";
7
+ } from "./chunk-3AIBT4TW.js";
8
8
  import "./chunk-JTDFJWI2.js";
9
9
  import "./chunk-NWPT4ASZ.js";
10
10
  import {
@@ -17,8 +17,9 @@ import "./chunk-K3NQKI34.js";
17
17
  async function run(_args) {
18
18
  const mode = getServiceMode();
19
19
  console.log(`Mode: ${modeLabel(mode)}`);
20
- const { hostname, port, token } = readDaemonConfig();
21
- const baseUrl = getDaemonUrl(hostname, port);
20
+ const { hostname, port, internalPort, token } = readDaemonConfig();
21
+ const apiPort = internalPort ?? port;
22
+ const baseUrl = getDaemonUrl("127.0.0.1", apiPort);
22
23
  let running = false;
23
24
  let version;
24
25
  try {
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-NAOW2CLO.js";
9
9
  import {
10
10
  daemonFetch
11
- } from "./chunk-KFI7TQJ6.js";
11
+ } from "./chunk-TRQEV3CD.js";
12
12
  import "./chunk-B2CPS4QU.js";
13
13
  import "./chunk-K3NQKI34.js";
14
14
 
@@ -0,0 +1,49 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ logger_default
4
+ } from "./chunk-YUIHSKR6.js";
5
+ import {
6
+ voluteHome
7
+ } from "./chunk-B2CPS4QU.js";
8
+ import "./chunk-K3NQKI34.js";
9
+
10
+ // src/lib/tailscale.ts
11
+ import { execFile } from "child_process";
12
+ import { existsSync, mkdirSync, readFileSync } from "fs";
13
+ import { resolve } from "path";
14
+ import { promisify } from "util";
15
+ var execFileAsync = promisify(execFile);
16
+ var TLS_DIR = resolve(voluteHome(), "tls");
17
+ async function getTailscaleHostname() {
18
+ const { stdout } = await execFileAsync("tailscale", ["status", "--json"]);
19
+ const status = JSON.parse(stdout);
20
+ const self = status.Self;
21
+ if (!self?.DNSName) throw new Error("Could not determine Tailscale hostname");
22
+ return self.DNSName.replace(/\.$/, "");
23
+ }
24
+ async function getTailscaleTls() {
25
+ const hostname = await getTailscaleHostname();
26
+ logger_default.info("Tailscale hostname", { hostname });
27
+ mkdirSync(TLS_DIR, { recursive: true });
28
+ const certPath = resolve(TLS_DIR, "cert.pem");
29
+ const keyPath = resolve(TLS_DIR, "key.pem");
30
+ await execFileAsync("tailscale", [
31
+ "cert",
32
+ "--cert-file",
33
+ certPath,
34
+ "--key-file",
35
+ keyPath,
36
+ hostname
37
+ ]);
38
+ if (!existsSync(certPath) || !existsSync(keyPath)) {
39
+ throw new Error("tailscale cert did not produce expected files");
40
+ }
41
+ return {
42
+ key: readFileSync(keyPath),
43
+ cert: readFileSync(certPath),
44
+ hostname
45
+ };
46
+ }
47
+ export {
48
+ getTailscaleTls
49
+ };
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  readGlobalConfig,
4
4
  run
5
- } from "./chunk-JG4CCJOA.js";
6
- import "./chunk-VT5QODNE.js";
5
+ } from "./chunk-ZSH4G2P5.js";
6
+ import "./chunk-3AIBT4TW.js";
7
7
  import "./chunk-D424ZQGI.js";
8
8
  import "./chunk-JTDFJWI2.js";
9
9
  import "./chunk-NWPT4ASZ.js";
@@ -5,7 +5,7 @@ import {
5
5
  pollHealth,
6
6
  readDaemonConfig,
7
7
  restartService
8
- } from "./chunk-VT5QODNE.js";
8
+ } from "./chunk-3AIBT4TW.js";
9
9
  import {
10
10
  exec,
11
11
  execInherit,
@@ -64,8 +64,8 @@ Update failed: ${err.message}`);
64
64
  process.exit(1);
65
65
  }
66
66
  {
67
- const { hostname, port } = readDaemonConfig();
68
- if (await pollHealth(hostname, port)) {
67
+ const config = readDaemonConfig();
68
+ if (await pollHealth("127.0.0.1", config.internalPort ?? config.port)) {
69
69
  console.log(`
70
70
  Updated to volute v${result.latest}`);
71
71
  } else {
@@ -91,8 +91,8 @@ Update failed: ${err.message}`);
91
91
  process.exit(1);
92
92
  }
93
93
  {
94
- const { hostname, port } = readDaemonConfig();
95
- if (await pollHealth(hostname, port)) {
94
+ const config = readDaemonConfig();
95
+ if (await pollHealth("127.0.0.1", config.internalPort ?? config.port)) {
96
96
  console.log(`
97
97
  Updated to volute v${result.latest}`);
98
98
  } else {
@@ -106,7 +106,7 @@ Updated to volute v${result.latest}`);
106
106
  const pidPath = resolve(home, "daemon.pid");
107
107
  const configPath = resolve(home, "daemon.json");
108
108
  let daemonWasRunning = false;
109
- let daemonPort = 4200;
109
+ let daemonPort = 1618;
110
110
  let daemonHost = "127.0.0.1";
111
111
  if (existsSync(pidPath)) {
112
112
  const pid = parseInt(readFileSync(pidPath, "utf-8").trim(), 10);
@@ -123,7 +123,7 @@ Updated to volute v${result.latest}`);
123
123
  if (daemonWasRunning && existsSync(configPath)) {
124
124
  try {
125
125
  const config = JSON.parse(readFileSync(configPath, "utf-8"));
126
- daemonPort = config.port ?? 4200;
126
+ daemonPort = config.port ?? 1618;
127
127
  daemonHost = config.hostname || "127.0.0.1";
128
128
  } catch {
129
129
  console.error("Warning: could not read daemon config, using default port/host");
@@ -15,7 +15,7 @@ async function run(args) {
15
15
  abort: { type: "boolean" }
16
16
  });
17
17
  const mindName = resolveMindName({ mind: positional[0] });
18
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
18
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
19
19
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
20
20
  const client = getClient();
21
21
  const res = await daemonFetch(
@@ -59,7 +59,7 @@ async function createVariant(args) {
59
59
  process.exit(1);
60
60
  }
61
61
  if (!json) console.log("Creating variant via daemon...");
62
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
62
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
63
63
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
64
64
  const client = getClient();
65
65
  const res = await daemonFetch(
@@ -97,7 +97,7 @@ async function listVariants(args) {
97
97
  });
98
98
  const mindName = resolveMindName(flags);
99
99
  const { json } = flags;
100
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
100
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
101
101
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
102
102
  const client = getClient();
103
103
  const res = await daemonFetch(
@@ -147,7 +147,7 @@ async function mergeVariant(args) {
147
147
  process.exit(1);
148
148
  }
149
149
  console.log(`Merging variant ${variantName}...`);
150
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
150
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
151
151
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
152
152
  const client = getClient();
153
153
  const res = await daemonFetch(
@@ -184,7 +184,7 @@ async function deleteVariant(args) {
184
184
  console.error("Usage: volute variant delete <variant> [--mind <name>]");
185
185
  process.exit(1);
186
186
  }
187
- const { daemonFetch } = await import("./daemon-client-ZHCDL4RS.js");
187
+ const { daemonFetch } = await import("./daemon-client-JOVQZ52X.js");
188
188
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
189
189
  const client = getClient();
190
190
  const res = await daemonFetch(
@@ -4,14 +4,14 @@ import {
4
4
  } from "./chunk-AKPFNL7L.js";
5
5
  import {
6
6
  deliverMessage
7
- } from "./chunk-ISWZ6QUK.js";
7
+ } from "./chunk-PMX4EIJK.js";
8
8
  import "./chunk-HFCBO2GL.js";
9
- import "./chunk-HGCDWKSP.js";
10
- import "./chunk-A4S7H6G6.js";
11
- import "./chunk-M5CNKH4J.js";
12
- import "./chunk-XLC342FO.js";
9
+ import "./chunk-E7GOKNOT.js";
10
+ import "./chunk-BFK6SOEJ.js";
11
+ import "./chunk-SHSWYG2J.js";
12
+ import "./chunk-SIAG3QMM.js";
13
13
  import "./chunk-PHU4DEAJ.js";
14
- import "./chunk-SGPEZ32F.js";
14
+ import "./chunk-33XAVCS4.js";
15
15
  import {
16
16
  logger_default
17
17
  } from "./chunk-YUIHSKR6.js";