volute 0.11.4 → 0.13.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 (61) hide show
  1. package/dist/{agent-2AQPI3QV.js → agent-HYX2ZTFM.js} +10 -10
  2. package/dist/{agent-manager-AZUDAKCP.js → agent-manager-HHBAAL2D.js} +4 -4
  3. package/dist/{channel-2WHBRDTD.js → channel-72YET5JC.js} +2 -2
  4. package/dist/{chunk-QF22MYDJ.js → chunk-BJDLYTPS.js} +1 -1
  5. package/dist/{chunk-46S7YHUB.js → chunk-EN3NHRQC.js} +12 -19
  6. package/dist/{chunk-DP2DX4WV.js → chunk-ESTOWEG2.js} +12 -3
  7. package/dist/{chunk-N6MLQ26B.js → chunk-GPZCPGV3.js} +11 -1
  8. package/dist/{chunk-ZKNBD5P3.js → chunk-IELXXS7E.js} +2 -2
  9. package/dist/{chunk-STOEJOJO.js → chunk-J3IHIXDB.js} +1 -1
  10. package/dist/{chunk-R3VB7NF5.js → chunk-KYHC7LHS.js} +2 -2
  11. package/dist/{chunk-YY2QX2J6.js → chunk-LG4ROCHN.js} +1 -1
  12. package/dist/{chunk-YTOPX4PB.js → chunk-NQKKTRET.js} +28 -37
  13. package/dist/{chunk-D5EVQTGJ.js → chunk-PEQQ7MRI.js} +2 -2
  14. package/dist/{chunk-LIPPXNIE.js → chunk-PTK3GBCG.js} +17 -18
  15. package/dist/{chunk-RGWADNLT.js → chunk-RH3XLDY2.js} +2 -2
  16. package/dist/{chunk-WTJI3JVR.js → chunk-VRAOTXDF.js} +9 -6
  17. package/dist/chunk-XUA3JUFK.js +121 -0
  18. package/dist/cli.js +26 -17
  19. package/dist/{connector-L2HBLZBW.js → connector-Z5KYVTZ5.js} +2 -2
  20. package/dist/connectors/discord.js +2 -2
  21. package/dist/connectors/slack.js +2 -2
  22. package/dist/connectors/telegram.js +2 -2
  23. package/dist/{create-VBZZNJOG.js → create-AAI52BC2.js} +1 -1
  24. package/dist/{daemon-client-P44NU3KU.js → daemon-client-WXN43USO.js} +2 -2
  25. package/dist/{daemon-restart-5W5AGBZ2.js → daemon-restart-4OXIGWV6.js} +6 -5
  26. package/dist/daemon.js +533 -557
  27. package/dist/{delete-BOTVU4YO.js → delete-BJ3LNU2I.js} +1 -1
  28. package/dist/down-IMZE7V42.js +14 -0
  29. package/dist/{env-CGORIKVF.js → env-EOO2C7L7.js} +2 -2
  30. package/dist/{history-NI5QP27M.js → history-J7TURCZS.js} +2 -2
  31. package/dist/{import-2BZUWT23.js → import-TKF67X4R.js} +3 -3
  32. package/dist/{logs-APWVWGNX.js → logs-KHBOS6IZ.js} +2 -2
  33. package/dist/{package-KVUXPTEW.js → package-TPXKJXLG.js} +1 -1
  34. package/dist/{restart-CCYM3MEC.js → restart-CMP63H6A.js} +2 -2
  35. package/dist/{schedule-E4MFGYSA.js → schedule-YMAJZ52M.js} +2 -2
  36. package/dist/seed-M6QPHFTV.js +68 -0
  37. package/dist/{send-X6OQGSD6.js → send-EZYEIVMA.js} +18 -6
  38. package/dist/{service-UL3OCODG.js → service-DDFZA7Q3.js} +4 -3
  39. package/dist/{setup-7N4KYOYN.js → setup-DCZWBBD7.js} +7 -7
  40. package/dist/sprout-EAWETTWZ.js +89 -0
  41. package/dist/{start-6YRS6FF6.js → start-54JXJ7VV.js} +2 -2
  42. package/dist/{status-DFWM342I.js → status-PMMS4XUH.js} +7 -5
  43. package/dist/{stop-UQSNF4CG.js → stop-WXU42NWP.js} +2 -2
  44. package/dist/{up-365HL7UT.js → up-N2OWDCT6.js} +5 -4
  45. package/dist/{update-PV3XM6DX.js → update-FXLGIIWH.js} +5 -4
  46. package/dist/{update-check-YPGH5X4E.js → update-check-NBHTSTHK.js} +2 -2
  47. package/dist/{upgrade-RSE4CZNE.js → upgrade-TEI7N6CQ.js} +1 -1
  48. package/dist/{variant-7IZF6OWO.js → variant-ZCZS3JAP.js} +4 -4
  49. package/dist/web-assets/assets/index-TqXd1QOX.js +307 -0
  50. package/dist/web-assets/index.html +1 -1
  51. package/package.json +1 -1
  52. package/templates/_base/_skills/orientation/SKILL.md +58 -0
  53. package/templates/_base/home/.config/config.json.tmpl +3 -0
  54. package/templates/_base/src/lib/startup.ts +8 -4
  55. package/templates/agent-sdk/volute-template.json +1 -1
  56. package/templates/pi/home/.config/config.json.tmpl +3 -0
  57. package/templates/pi/volute-template.json +1 -1
  58. package/dist/down-O2EQJ5DO.js +0 -13
  59. package/dist/web-assets/assets/index-D-3zx6vs.js +0 -307
  60. package/templates/_base/home/.config/volute.json.tmpl +0 -3
  61. package/templates/pi/home/.config/volute.json.tmpl +0 -3
@@ -13,7 +13,7 @@ async function run(args) {
13
13
  force: { type: "boolean" }
14
14
  });
15
15
  const name = resolveAgentName({ agent: positional[0] });
16
- const { daemonFetch } = await import("./daemon-client-P44NU3KU.js");
16
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
17
17
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
18
18
  const client = getClient();
19
19
  const url = urlOf(client.api.agents[":name"].$url({ param: { name } })) + (flags.force ? "?force=true" : "");
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ run,
4
+ stopDaemon
5
+ } from "./chunk-RH3XLDY2.js";
6
+ import "./chunk-IELXXS7E.js";
7
+ import "./chunk-VRAOTXDF.js";
8
+ import "./chunk-EN3NHRQC.js";
9
+ import "./chunk-ESTOWEG2.js";
10
+ import "./chunk-K3NQKI34.js";
11
+ export {
12
+ run,
13
+ stopDaemon
14
+ };
@@ -4,8 +4,8 @@ import {
4
4
  } from "./chunk-D424ZQGI.js";
5
5
  import {
6
6
  daemonFetch
7
- } from "./chunk-STOEJOJO.js";
8
- import "./chunk-DP2DX4WV.js";
7
+ } from "./chunk-J3IHIXDB.js";
8
+ import "./chunk-ESTOWEG2.js";
9
9
  import {
10
10
  getClient,
11
11
  urlOf
@@ -7,8 +7,8 @@ import {
7
7
  } from "./chunk-D424ZQGI.js";
8
8
  import {
9
9
  daemonFetch
10
- } from "./chunk-STOEJOJO.js";
11
- import "./chunk-DP2DX4WV.js";
10
+ } from "./chunk-J3IHIXDB.js";
11
+ import "./chunk-ESTOWEG2.js";
12
12
  import {
13
13
  getClient,
14
14
  urlOf
@@ -6,10 +6,10 @@ import {
6
6
  parseNameFromIdentity,
7
7
  run,
8
8
  sessionMatchesWorkspace
9
- } from "./chunk-R3VB7NF5.js";
10
- import "./chunk-QF22MYDJ.js";
9
+ } from "./chunk-KYHC7LHS.js";
10
+ import "./chunk-BJDLYTPS.js";
11
11
  import "./chunk-D424ZQGI.js";
12
- import "./chunk-DP2DX4WV.js";
12
+ import "./chunk-ESTOWEG2.js";
13
13
  import "./chunk-K3NQKI34.js";
14
14
  export {
15
15
  findOpenClawSession,
@@ -7,8 +7,8 @@ import {
7
7
  } from "./chunk-D424ZQGI.js";
8
8
  import {
9
9
  daemonFetch
10
- } from "./chunk-STOEJOJO.js";
11
- import "./chunk-DP2DX4WV.js";
10
+ } from "./chunk-J3IHIXDB.js";
11
+ import "./chunk-ESTOWEG2.js";
12
12
  import {
13
13
  getClient,
14
14
  urlOf
@@ -4,7 +4,7 @@ import "./chunk-K3NQKI34.js";
4
4
  // package.json
5
5
  var package_default = {
6
6
  name: "volute",
7
- version: "0.11.4",
7
+ version: "0.13.0",
8
8
  description: "CLI for creating and managing self-modifying AI agents powered by the Claude Agent SDK",
9
9
  type: "module",
10
10
  license: "MIT",
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-AZEL2IEK.js";
5
5
  import {
6
6
  daemonFetch
7
- } from "./chunk-STOEJOJO.js";
7
+ } from "./chunk-J3IHIXDB.js";
8
8
  import {
9
9
  resolveAgent
10
- } from "./chunk-DP2DX4WV.js";
10
+ } from "./chunk-ESTOWEG2.js";
11
11
  import {
12
12
  getClient,
13
13
  urlOf
@@ -7,8 +7,8 @@ import {
7
7
  } from "./chunk-D424ZQGI.js";
8
8
  import {
9
9
  daemonFetch
10
- } from "./chunk-STOEJOJO.js";
11
- import "./chunk-DP2DX4WV.js";
10
+ } from "./chunk-J3IHIXDB.js";
11
+ import "./chunk-ESTOWEG2.js";
12
12
  import {
13
13
  getClient,
14
14
  urlOf
@@ -0,0 +1,68 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ parseArgs
4
+ } from "./chunk-D424ZQGI.js";
5
+ import "./chunk-K3NQKI34.js";
6
+
7
+ // src/commands/seed.ts
8
+ async function run(args) {
9
+ const { positional, flags } = parseArgs(args, {
10
+ template: { type: "string" },
11
+ model: { type: "string" },
12
+ description: { type: "string" }
13
+ });
14
+ const name = positional[0];
15
+ if (!name) {
16
+ console.error(
17
+ "Usage: volute seed <name> [--template <name>] [--model <model>] [--description <text>]"
18
+ );
19
+ process.exit(1);
20
+ }
21
+ const template = flags.template ?? "agent-sdk";
22
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
23
+ const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
24
+ const client = getClient();
25
+ const createRes = await daemonFetch(urlOf(client.api.agents.$url()), {
26
+ method: "POST",
27
+ headers: { "Content-Type": "application/json" },
28
+ body: JSON.stringify({
29
+ name,
30
+ template,
31
+ stage: "seed",
32
+ description: flags.description,
33
+ model: flags.model
34
+ })
35
+ });
36
+ const createData = await createRes.json();
37
+ if (!createRes.ok) {
38
+ console.error(createData.error ?? "Failed to create agent");
39
+ process.exit(1);
40
+ }
41
+ const startRes = await daemonFetch(
42
+ urlOf(client.api.agents[":name"].start.$url({ param: { name } })),
43
+ { method: "POST" }
44
+ );
45
+ if (!startRes.ok) {
46
+ const startData = await startRes.json();
47
+ console.error(startData.error ?? "Failed to start agent");
48
+ process.exit(1);
49
+ }
50
+ const initialMessage = "You've just been created. A human planted you as a seed. Start a conversation with them \u2014 introduce yourself, ask questions, and begin exploring who you want to be.";
51
+ await daemonFetch(urlOf(client.api.agents[":name"].message.$url({ param: { name } })), {
52
+ method: "POST",
53
+ headers: { "Content-Type": "application/json" },
54
+ body: JSON.stringify({
55
+ content: [{ type: "text", text: initialMessage }],
56
+ channel: "system",
57
+ sender: "system"
58
+ })
59
+ });
60
+ console.log(`
61
+ Seeded agent: ${name} (port ${createData.port})`);
62
+ console.log(`
63
+ Talk to your new agent:`);
64
+ console.log(` volute send @${name} "hello"`);
65
+ }
66
+ export {
67
+ run
68
+ };
@@ -4,15 +4,17 @@ import {
4
4
  } from "./chunk-AZEL2IEK.js";
5
5
  import {
6
6
  getChannelDriver
7
- } from "./chunk-LIPPXNIE.js";
7
+ } from "./chunk-PTK3GBCG.js";
8
8
  import {
9
9
  parseArgs
10
10
  } from "./chunk-D424ZQGI.js";
11
- import "./chunk-N6MLQ26B.js";
11
+ import "./chunk-GPZCPGV3.js";
12
12
  import {
13
13
  daemonFetch
14
- } from "./chunk-STOEJOJO.js";
15
- import "./chunk-DP2DX4WV.js";
14
+ } from "./chunk-J3IHIXDB.js";
15
+ import {
16
+ findAgent
17
+ } from "./chunk-ESTOWEG2.js";
16
18
  import {
17
19
  getClient,
18
20
  urlOf
@@ -85,6 +87,13 @@ async function run(args) {
85
87
  console.error(' volute send discord:server/channel "hello"');
86
88
  process.exit(1);
87
89
  }
90
+ if (target === "system" || target === "@system") {
91
+ console.error(
92
+ `Can't send to system \u2014 system messages are automated.
93
+ To reply to a person, use their username from the message prefix (e.g. volute send @username "msg").`
94
+ );
95
+ process.exit(1);
96
+ }
88
97
  const parsed = parseTarget(target);
89
98
  const driver = getChannelDriver(parsed.platform);
90
99
  if (!driver) {
@@ -100,12 +109,15 @@ async function run(args) {
100
109
  console.error("Volute driver does not support creating conversations");
101
110
  process.exit(1);
102
111
  }
112
+ const targetIsAgent = !!findAgent(targetName);
113
+ const contextAgent = agentSelf && !targetIsAgent ? agentSelf : targetName;
114
+ const participants = agentSelf && !targetIsAgent ? [targetName] : [sender];
103
115
  const env = {
104
- VOLUTE_AGENT: targetName,
116
+ VOLUTE_AGENT: contextAgent,
105
117
  VOLUTE_SENDER: sender
106
118
  };
107
119
  try {
108
- channelUri = await driver.createConversation(env, [sender]);
120
+ channelUri = await driver.createConversation(env, participants);
109
121
  } catch (err) {
110
122
  console.error(err instanceof Error ? err.message : String(err));
111
123
  process.exit(1);
@@ -4,14 +4,15 @@ import {
4
4
  LAUNCHD_PLIST_PATH,
5
5
  SYSTEM_SERVICE_PATH,
6
6
  USER_SYSTEMD_UNIT
7
- } from "./chunk-ZKNBD5P3.js";
7
+ } from "./chunk-IELXXS7E.js";
8
8
  import {
9
9
  resolveVoluteBin
10
- } from "./chunk-WTJI3JVR.js";
10
+ } from "./chunk-VRAOTXDF.js";
11
+ import "./chunk-EN3NHRQC.js";
11
12
  import {
12
13
  parseArgs
13
14
  } from "./chunk-D424ZQGI.js";
14
- import "./chunk-DP2DX4WV.js";
15
+ import "./chunk-ESTOWEG2.js";
15
16
  import "./chunk-K3NQKI34.js";
16
17
 
17
18
  // src/commands/service.ts
@@ -1,17 +1,17 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  SYSTEM_SERVICE_PATH
4
- } from "./chunk-ZKNBD5P3.js";
5
- import {
6
- ensureVoluteGroup
7
- } from "./chunk-46S7YHUB.js";
4
+ } from "./chunk-IELXXS7E.js";
8
5
  import {
9
6
  resolveVoluteBin
10
- } from "./chunk-WTJI3JVR.js";
7
+ } from "./chunk-VRAOTXDF.js";
8
+ import {
9
+ ensureVoluteGroup
10
+ } from "./chunk-EN3NHRQC.js";
11
11
  import {
12
12
  parseArgs
13
13
  } from "./chunk-D424ZQGI.js";
14
- import "./chunk-DP2DX4WV.js";
14
+ import "./chunk-ESTOWEG2.js";
15
15
  import "./chunk-K3NQKI34.js";
16
16
 
17
17
  // src/commands/setup.ts
@@ -98,7 +98,7 @@ function install(port, host) {
98
98
  console.log("Ensured volute group exists");
99
99
  mkdirSync(CLAUDE_DIR, { recursive: true });
100
100
  execFileSync("chown", ["root:volute", CLAUDE_DIR]);
101
- execFileSync("chmod", ["750", CLAUDE_DIR]);
101
+ execFileSync("chmod", ["2770", CLAUDE_DIR]);
102
102
  console.log(`Created ${CLAUDE_DIR}`);
103
103
  execFileSync("chmod", ["755", DATA_DIR]);
104
104
  execFileSync("chmod", ["755", AGENTS_DIR]);
@@ -0,0 +1,89 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ composeTemplate,
4
+ findTemplatesRoot
5
+ } from "./chunk-XUA3JUFK.js";
6
+ import {
7
+ agentDir,
8
+ findAgent,
9
+ setAgentStage
10
+ } from "./chunk-ESTOWEG2.js";
11
+ import "./chunk-K3NQKI34.js";
12
+
13
+ // src/commands/sprout.ts
14
+ import { cpSync, existsSync, readFileSync, rmSync } from "fs";
15
+ import { resolve } from "path";
16
+ var ORIENTATION_MARKER = "You don't have a soul yet";
17
+ async function run(_args) {
18
+ const agentName = process.env.VOLUTE_AGENT;
19
+ if (!agentName) {
20
+ console.error("volute sprout must be run by an agent (VOLUTE_AGENT not set)");
21
+ process.exit(1);
22
+ }
23
+ const entry = findAgent(agentName);
24
+ if (!entry) {
25
+ console.error(`Unknown agent: ${agentName}`);
26
+ process.exit(1);
27
+ }
28
+ if (entry.stage !== "seed") {
29
+ console.error(`${agentName} is not a seed \u2014 already at stage "${entry.stage}"`);
30
+ process.exit(1);
31
+ }
32
+ const dir = agentDir(agentName);
33
+ const soulPath = resolve(dir, "home/SOUL.md");
34
+ const memoryPath = resolve(dir, "home/MEMORY.md");
35
+ if (!existsSync(soulPath)) {
36
+ console.error("Write your SOUL.md before sprouting.");
37
+ process.exit(1);
38
+ }
39
+ const soul = readFileSync(soulPath, "utf-8");
40
+ if (soul.includes(ORIENTATION_MARKER)) {
41
+ console.error(
42
+ "Your SOUL.md still contains the orientation template. Write your own identity first."
43
+ );
44
+ process.exit(1);
45
+ }
46
+ if (!existsSync(memoryPath)) {
47
+ console.error("Write your MEMORY.md before sprouting.");
48
+ process.exit(1);
49
+ }
50
+ const templatesRoot = findTemplatesRoot();
51
+ const { composedDir, manifest } = composeTemplate(templatesRoot, "agent-sdk");
52
+ try {
53
+ const skillsDir = resolve(dir, manifest.skillsDir);
54
+ const composedSkillsDir = resolve(composedDir, manifest.skillsDir);
55
+ for (const skill of ["volute-agent", "memory", "sessions"]) {
56
+ const src = resolve(composedSkillsDir, skill);
57
+ if (existsSync(src)) {
58
+ cpSync(src, resolve(skillsDir, skill), { recursive: true });
59
+ }
60
+ }
61
+ const orientationPath = resolve(skillsDir, "orientation");
62
+ if (existsSync(orientationPath)) {
63
+ rmSync(orientationPath, { recursive: true, force: true });
64
+ }
65
+ } finally {
66
+ rmSync(composedDir, { recursive: true, force: true });
67
+ }
68
+ setAgentStage(agentName, "mind");
69
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
70
+ const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
71
+ const client = getClient();
72
+ const res = await daemonFetch(
73
+ urlOf(client.api.agents[":name"].restart.$url({ param: { name: agentName } })),
74
+ {
75
+ method: "POST",
76
+ headers: { "Content-Type": "application/json" },
77
+ body: JSON.stringify({ context: { type: "sprouted" } })
78
+ }
79
+ );
80
+ if (!res.ok) {
81
+ const data = await res.json();
82
+ console.error(data.error ?? "Failed to restart after sprouting");
83
+ process.exit(1);
84
+ }
85
+ console.log("Sprouted! You now have full agent capabilities.");
86
+ }
87
+ export {
88
+ run
89
+ };
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  daemonFetch
4
- } from "./chunk-STOEJOJO.js";
4
+ } from "./chunk-J3IHIXDB.js";
5
5
  import {
6
6
  resolveAgent
7
- } from "./chunk-DP2DX4WV.js";
7
+ } from "./chunk-ESTOWEG2.js";
8
8
  import {
9
9
  getClient,
10
10
  urlOf
@@ -4,12 +4,13 @@ import {
4
4
  getServiceMode,
5
5
  modeLabel,
6
6
  readDaemonConfig
7
- } from "./chunk-ZKNBD5P3.js";
8
- import "./chunk-WTJI3JVR.js";
7
+ } from "./chunk-IELXXS7E.js";
8
+ import "./chunk-VRAOTXDF.js";
9
+ import "./chunk-EN3NHRQC.js";
9
10
  import {
10
11
  checkForUpdate
11
- } from "./chunk-YY2QX2J6.js";
12
- import "./chunk-DP2DX4WV.js";
12
+ } from "./chunk-LG4ROCHN.js";
13
+ import "./chunk-ESTOWEG2.js";
13
14
  import "./chunk-K3NQKI34.js";
14
15
 
15
16
  // src/commands/status.ts
@@ -53,7 +54,8 @@ async function run(_args) {
53
54
  Agents (${agents.length}):`);
54
55
  for (const agent of agents) {
55
56
  const status = agent.running ? "running" : "stopped";
56
- console.log(` ${agent.name}: ${status}`);
57
+ const label = agent.stage === "seed" ? " (seed)" : "";
58
+ console.log(` ${agent.name}: ${status}${label}`);
57
59
  }
58
60
  } else {
59
61
  console.log("\nNo agents configured.");
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-AZEL2IEK.js";
5
5
  import {
6
6
  daemonFetch
7
- } from "./chunk-STOEJOJO.js";
7
+ } from "./chunk-J3IHIXDB.js";
8
8
  import {
9
9
  resolveAgent
10
- } from "./chunk-DP2DX4WV.js";
10
+ } from "./chunk-ESTOWEG2.js";
11
11
  import {
12
12
  getClient,
13
13
  urlOf
@@ -2,11 +2,12 @@
2
2
  import {
3
3
  readGlobalConfig,
4
4
  run
5
- } from "./chunk-D5EVQTGJ.js";
6
- import "./chunk-ZKNBD5P3.js";
7
- import "./chunk-WTJI3JVR.js";
5
+ } from "./chunk-PEQQ7MRI.js";
6
+ import "./chunk-IELXXS7E.js";
7
+ import "./chunk-VRAOTXDF.js";
8
+ import "./chunk-EN3NHRQC.js";
8
9
  import "./chunk-D424ZQGI.js";
9
- import "./chunk-DP2DX4WV.js";
10
+ import "./chunk-ESTOWEG2.js";
10
11
  import "./chunk-K3NQKI34.js";
11
12
  export {
12
13
  readGlobalConfig,
@@ -5,18 +5,19 @@ import {
5
5
  pollHealth,
6
6
  readDaemonConfig,
7
7
  restartService
8
- } from "./chunk-ZKNBD5P3.js";
8
+ } from "./chunk-IELXXS7E.js";
9
9
  import {
10
10
  exec,
11
11
  execInherit,
12
12
  resolveVoluteBin
13
- } from "./chunk-WTJI3JVR.js";
13
+ } from "./chunk-VRAOTXDF.js";
14
+ import "./chunk-EN3NHRQC.js";
14
15
  import {
15
16
  checkForUpdate
16
- } from "./chunk-YY2QX2J6.js";
17
+ } from "./chunk-LG4ROCHN.js";
17
18
  import {
18
19
  voluteHome
19
- } from "./chunk-DP2DX4WV.js";
20
+ } from "./chunk-ESTOWEG2.js";
20
21
  import "./chunk-K3NQKI34.js";
21
22
 
22
23
  // src/commands/update.ts
@@ -5,8 +5,8 @@ import {
5
5
  fetchLatestVersion,
6
6
  getCurrentVersion,
7
7
  isNewer
8
- } from "./chunk-YY2QX2J6.js";
9
- import "./chunk-DP2DX4WV.js";
8
+ } from "./chunk-LG4ROCHN.js";
9
+ import "./chunk-ESTOWEG2.js";
10
10
  import "./chunk-K3NQKI34.js";
11
11
  export {
12
12
  checkForUpdate,
@@ -14,7 +14,7 @@ async function run(args) {
14
14
  continue: { type: "boolean" }
15
15
  });
16
16
  const agentName = resolveAgentName({ agent: positional[0] });
17
- const { daemonFetch } = await import("./daemon-client-P44NU3KU.js");
17
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
18
18
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
19
19
  const client = getClient();
20
20
  const res = await daemonFetch(
@@ -10,7 +10,7 @@ import {
10
10
  readVariants,
11
11
  resolveAgent,
12
12
  writeVariants
13
- } from "./chunk-DP2DX4WV.js";
13
+ } from "./chunk-ESTOWEG2.js";
14
14
  import "./chunk-K3NQKI34.js";
15
15
 
16
16
  // src/commands/variant.ts
@@ -65,7 +65,7 @@ async function createVariant(args) {
65
65
  process.exit(1);
66
66
  }
67
67
  if (!json) console.log("Creating variant via daemon...");
68
- const { daemonFetch } = await import("./daemon-client-P44NU3KU.js");
68
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
69
69
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
70
70
  const client = getClient();
71
71
  const res = await daemonFetch(
@@ -155,7 +155,7 @@ async function mergeVariant(args) {
155
155
  process.exit(1);
156
156
  }
157
157
  console.log(`Merging variant ${variantName}...`);
158
- const { daemonFetch } = await import("./daemon-client-P44NU3KU.js");
158
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
159
159
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
160
160
  const client = getClient();
161
161
  const res = await daemonFetch(
@@ -192,7 +192,7 @@ async function deleteVariant(args) {
192
192
  console.error("Usage: volute variant delete <variant> [--agent <name>]");
193
193
  process.exit(1);
194
194
  }
195
- const { daemonFetch } = await import("./daemon-client-P44NU3KU.js");
195
+ const { daemonFetch } = await import("./daemon-client-WXN43USO.js");
196
196
  const { getClient, urlOf } = await import("./api-client-YPKOZP2O.js");
197
197
  const client = getClient();
198
198
  const res = await daemonFetch(