volute 0.8.3 → 0.10.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 (45) hide show
  1. package/dist/{agent-YORVRB6I.js → agent-ECRX44DB.js} +10 -10
  2. package/dist/{agent-manager-CMMH5KQQ.js → agent-manager-MRHHKAB6.js} +2 -2
  3. package/dist/api-client-YPKOZP2O.js +10 -0
  4. package/dist/{channel-RDGHBFSI.js → channel-2WHBRDTD.js} +66 -81
  5. package/dist/chunk-4RQBJWQX.js +17 -0
  6. package/dist/{chunk-YNNK4QN2.js → chunk-FYQGANL6.js} +40 -2
  7. package/dist/chunk-R3VB7NF5.js +205 -0
  8. package/dist/{chunk-23L3MKEV.js → chunk-STOEJOJO.js} +18 -4
  9. package/dist/cli.js +14 -14
  10. package/dist/{connector-ZP6MEFF4.js → connector-L2HBLZBW.js} +37 -20
  11. package/dist/create-VBZZNJOG.js +38 -0
  12. package/dist/{daemon-client-54J3EIZD.js → daemon-client-P44NU3KU.js} +1 -1
  13. package/dist/daemon-restart-QCLR6ZZV.js +61 -0
  14. package/dist/daemon.js +1732 -214
  15. package/dist/delete-BOTVU4YO.js +35 -0
  16. package/dist/{down-4DGRZRJU.js → down-4LIQG3CE.js} +3 -1
  17. package/dist/{env-KMNYGVZ2.js → env-CGORIKVF.js} +86 -37
  18. package/dist/{history-PXJVYLVY.js → history-NI5QP27M.js} +11 -8
  19. package/dist/import-2BZUWT23.js +21 -0
  20. package/dist/logs-APWVWGNX.js +77 -0
  21. package/dist/{package-2S7APQBC.js → package-ERGXEDAF.js} +1 -1
  22. package/dist/{restart-KVH3TK5N.js → restart-CCYM3MEC.js} +10 -4
  23. package/dist/{schedule-HCUCBNQI.js → schedule-E4MFGYSA.js} +24 -8
  24. package/dist/{send-BNC2S5BY.js → send-X6OQGSD6.js} +36 -28
  25. package/dist/{start-QU73YTJW.js → start-6YRS6FF6.js} +7 -2
  26. package/dist/{status-Q6ZQJXNI.js → status-SIMKH3ZE.js} +8 -3
  27. package/dist/{stop-N7U5N6A7.js → stop-UQSNF4CG.js} +7 -2
  28. package/dist/{up-RZJMSVQS.js → up-MNNPCMFF.js} +1 -1
  29. package/dist/upgrade-RSE4CZNE.js +55 -0
  30. package/dist/variant-7IZF6OWO.js +215 -0
  31. package/package.json +1 -1
  32. package/dist/chunk-ECPQXRLB.js +0 -264
  33. package/dist/chunk-NETNFBA5.js +0 -28
  34. package/dist/chunk-XUA3JUFK.js +0 -121
  35. package/dist/create-HGJHLABX.js +0 -96
  36. package/dist/daemon-restart-IMNCBWFV.js +0 -28
  37. package/dist/delete-45TGQC4N.js +0 -67
  38. package/dist/import-CNEDF3TD.js +0 -532
  39. package/dist/logs-TZB3MTLZ.js +0 -37
  40. package/dist/upgrade-CZF6PN7Y.js +0 -224
  41. package/dist/variant-RKXPN5DH.js +0 -476
  42. package/dist/{chunk-6RDCTVQK.js → chunk-4NAGJV3I.js} +0 -0
  43. package/dist/{chunk-W6TMWYU3.js → chunk-WV4W7BAT.js} +3 -3
  44. package/dist/{service-56CY4S6Z.js → service-OW35VZ5G.js} +3 -3
  45. package/dist/{setup-7SPMWF2O.js → setup-ABMZK6LS.js} +3 -3
@@ -1,96 +0,0 @@
1
- #!/usr/bin/env node
2
- import {
3
- applyInitFiles,
4
- composeTemplate,
5
- copyTemplateToDir,
6
- findTemplatesRoot,
7
- listFiles
8
- } from "./chunk-XUA3JUFK.js";
9
- import {
10
- parseArgs
11
- } from "./chunk-D424ZQGI.js";
12
- import {
13
- chownAgentDir,
14
- createAgentUser,
15
- ensureVoluteGroup,
16
- getAgentUserIds,
17
- isIsolationEnabled
18
- } from "./chunk-IQXBMFZG.js";
19
- import {
20
- exec,
21
- execInherit
22
- } from "./chunk-5C5JWR2L.js";
23
- import {
24
- addAgent,
25
- agentDir,
26
- ensureVoluteHome,
27
- nextPort
28
- } from "./chunk-DP2DX4WV.js";
29
- import "./chunk-K3NQKI34.js";
30
-
31
- // src/commands/create.ts
32
- import { existsSync, rmSync } from "fs";
33
- import { resolve } from "path";
34
- var TEMPLATE_BRANCH = "volute/template";
35
- async function run(args) {
36
- const { positional, flags } = parseArgs(args, {
37
- template: { type: "string" }
38
- });
39
- const name = positional[0];
40
- const template = flags.template ?? "agent-sdk";
41
- if (!name) {
42
- console.error("Usage: volute agent create <name> [--template <name>]");
43
- process.exit(1);
44
- }
45
- ensureVoluteHome();
46
- const dest = agentDir(name);
47
- if (existsSync(dest)) {
48
- console.error(`Agent already exists: ${name}`);
49
- process.exit(1);
50
- }
51
- const templatesRoot = findTemplatesRoot();
52
- const { composedDir, manifest } = composeTemplate(templatesRoot, template);
53
- try {
54
- copyTemplateToDir(composedDir, dest, name, manifest);
55
- applyInitFiles(dest);
56
- const port = nextPort();
57
- addAgent(name, port);
58
- ensureVoluteGroup();
59
- createAgentUser(name);
60
- chownAgentDir(dest, name);
61
- const ids = isIsolationEnabled() ? await getAgentUserIds(name) : void 0;
62
- const env = ids ? { ...process.env, HOME: dest } : void 0;
63
- console.log("Installing dependencies...");
64
- await execInherit("npm", ["install"], { cwd: dest, uid: ids?.uid, gid: ids?.gid, env });
65
- try {
66
- await exec("git", ["init"], { cwd: dest, uid: ids?.uid, gid: ids?.gid, env });
67
- await initTemplateBranch(dest, composedDir, manifest, ids, env);
68
- } catch (err) {
69
- rmSync(resolve(dest, ".git"), { recursive: true, force: true });
70
- console.warn(
71
- "\nWarning: git setup failed \u2014 variants and upgrades won't be available.",
72
- "\nTo fix: ensure git is installed with user.name/user.email configured."
73
- );
74
- console.warn("Details:", err.message ?? err);
75
- }
76
- console.log(`
77
- Created agent: ${name} (port ${port})`);
78
- console.log(`
79
- volute agent start ${name}`);
80
- } finally {
81
- rmSync(composedDir, { recursive: true, force: true });
82
- }
83
- }
84
- async function initTemplateBranch(projectRoot, composedDir, manifest, ids, env) {
85
- const templateFiles = listFiles(composedDir).filter((f) => !f.startsWith(".init/") && !f.startsWith(".init\\")).map((f) => manifest.rename[f] ?? f);
86
- const opts = { cwd: projectRoot, uid: ids?.uid, gid: ids?.gid, env };
87
- await exec("git", ["checkout", "--orphan", TEMPLATE_BRANCH], opts);
88
- await exec("git", ["add", "--", ...templateFiles], opts);
89
- await exec("git", ["commit", "-m", "template update"], opts);
90
- await exec("git", ["checkout", "-b", "main"], opts);
91
- await exec("git", ["add", "-A"], opts);
92
- await exec("git", ["commit", "-m", "initial commit"], opts);
93
- }
94
- export {
95
- run
96
- };
@@ -1,28 +0,0 @@
1
- #!/usr/bin/env node
2
- import {
3
- run
4
- } from "./chunk-6RDCTVQK.js";
5
- import {
6
- stopDaemon
7
- } from "./chunk-YNNK4QN2.js";
8
- import "./chunk-D424ZQGI.js";
9
- import "./chunk-DP2DX4WV.js";
10
- import "./chunk-K3NQKI34.js";
11
-
12
- // src/commands/daemon-restart.ts
13
- async function run2(args) {
14
- const result = await stopDaemon();
15
- if (!result.stopped && result.reason === "systemd") {
16
- console.error("Volute is managed by a systemd service.");
17
- console.error("Use: sudo systemctl restart volute");
18
- process.exit(1);
19
- }
20
- if (!result.stopped && result.reason === "kill-failed") {
21
- console.error("Cannot restart: failed to stop the running daemon.");
22
- process.exit(1);
23
- }
24
- await run(args);
25
- }
26
- export {
27
- run2 as run
28
- };
@@ -1,67 +0,0 @@
1
- #!/usr/bin/env node
2
- import {
3
- resolveAgentName
4
- } from "./chunk-AZEL2IEK.js";
5
- import {
6
- deleteAgentUser as deleteAgentUser2
7
- } from "./chunk-ECPQXRLB.js";
8
- import {
9
- parseArgs
10
- } from "./chunk-D424ZQGI.js";
11
- import {
12
- deleteAgentUser
13
- } from "./chunk-IQXBMFZG.js";
14
- import {
15
- agentDir,
16
- findAgent,
17
- removeAgent,
18
- removeAllVariants,
19
- stateDir
20
- } from "./chunk-DP2DX4WV.js";
21
- import "./chunk-K3NQKI34.js";
22
-
23
- // src/commands/delete.ts
24
- import { existsSync, rmSync } from "fs";
25
- async function run(args) {
26
- const { positional, flags } = parseArgs(args, {
27
- force: { type: "boolean" }
28
- });
29
- const name = resolveAgentName({ agent: positional[0] });
30
- const entry = findAgent(name);
31
- if (!entry) {
32
- console.error(`Unknown agent: ${name}`);
33
- process.exit(1);
34
- }
35
- try {
36
- const { daemonFetch } = await import("./daemon-client-54J3EIZD.js");
37
- const res = await daemonFetch(`/api/agents/${encodeURIComponent(name)}/stop`, {
38
- method: "POST"
39
- });
40
- if (res.ok) {
41
- console.log(`Stopped ${name}.`);
42
- }
43
- } catch {
44
- }
45
- const dir = agentDir(name);
46
- removeAllVariants(name);
47
- removeAgent(name);
48
- await deleteAgentUser2(name);
49
- console.log(`Removed ${name} from registry.`);
50
- const state = stateDir(name);
51
- if (existsSync(state)) {
52
- rmSync(state, { recursive: true, force: true });
53
- }
54
- if (existsSync(dir)) {
55
- if (!flags.force) {
56
- console.log(`Directory: ${dir}`);
57
- console.log("Use --force to also delete the agent directory.");
58
- } else {
59
- rmSync(dir, { recursive: true, force: true });
60
- deleteAgentUser(name);
61
- console.log(`Deleted ${dir}`);
62
- }
63
- }
64
- }
65
- export {
66
- run
67
- };