volute 0.45.1 → 0.46.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.
- package/README.md +3 -3
- package/dist/{activity-events-OMCSM7XW.js → activity-events-NF6VWTJQ.js} +2 -2
- package/dist/{ai-service-534WUSDL.js → ai-service-UODCCE4O.js} +3 -3
- package/dist/{archive-6R4TZMYI.js → archive-WS2L2VIQ.js} +2 -2
- package/dist/{auth-FRZJVQCS.js → auth-CCFAU4GQ.js} +3 -3
- package/dist/{avatar-image-BNWEXSA2.js → avatar-image-6KY6UU4D.js} +3 -3
- package/dist/{backup-OZXHL3JS.js → backup-TST5C2YN.js} +7 -7
- package/dist/{chat-I4EDDIQC.js → chat-ZIQQS25U.js} +2 -2
- package/dist/{chunk-ZIR7HSAX.js → chunk-4JOQZPCE.js} +1 -1
- package/dist/chunk-4YU7HF4L.js +237 -0
- package/dist/{chunk-JSRMEY52.js → chunk-5ZQZDDIK.js} +10 -5
- package/dist/{chunk-2BONPXAF.js → chunk-6EMWJZBK.js} +1 -1
- package/dist/{chunk-LAXUUY7O.js → chunk-A7WQZKOU.js} +2 -2
- package/dist/{chunk-H7IYFRAL.js → chunk-ALKYQULU.js} +10 -5
- package/dist/{chunk-5AUKCNPE.js → chunk-BJZ4PV7R.js} +8 -8
- package/dist/{chunk-KP3KWNG6.js → chunk-CDPBTTZO.js} +2 -2
- package/dist/{chunk-SQL7M4HJ.js → chunk-DRJ24GXK.js} +2 -2
- package/dist/{chunk-77BVGCTZ.js → chunk-E3DA4HYV.js} +9 -9
- package/dist/{chunk-322KE457.js → chunk-F7H6ATM4.js} +1 -1
- package/dist/{chunk-KVKP6VQ5.js → chunk-FXORA5JG.js} +12 -3
- package/dist/{chunk-3ERIL673.js → chunk-H2X54EHC.js} +1 -1
- package/dist/{chunk-TSK5PI4L.js → chunk-IHKGWTGT.js} +1 -1
- package/dist/{chunk-U4FNXDEJ.js → chunk-JO5IO4FH.js} +422 -168
- package/dist/{chunk-OXXTPILE.js → chunk-JZ62SYWR.js} +1 -1
- package/dist/{chunk-IUXTYXFI.js → chunk-K6T43YBD.js} +3 -3
- package/dist/{chunk-Y6OPHHGM.js → chunk-KGIXX4NM.js} +4 -4
- package/dist/{chunk-HVU45COX.js → chunk-KQSFTPIM.js} +1 -1
- package/dist/{chunk-CYI534DJ.js → chunk-OV7ZQ2GH.js} +2 -2
- package/dist/{chunk-CU6OFXMM.js → chunk-PFZBNKUH.js} +9 -0
- package/dist/{clock-K43IMROX.js → chunk-PJ45FQPT.js} +21 -16
- package/dist/{chunk-QMJJWTNL.js → chunk-QCN24XEN.js} +1 -1
- package/dist/{chunk-UMI4UIJG.js → chunk-R77O2WMK.js} +1 -1
- package/dist/{chunk-IEWZ7VD7.js → chunk-RRNXJOKB.js} +2 -2
- package/dist/{chunk-FHWUQZXE.js → chunk-RXEEYDIB.js} +1 -1
- package/dist/{chunk-Q2XBKQ2D.js → chunk-TQJ6ZYVY.js} +2 -2
- package/dist/{chunk-V4GYPD5L.js → chunk-YXSUMLTC.js} +46 -269
- package/dist/{chunk-5GT7URXJ.js → chunk-ZDZISKCL.js} +1 -1
- package/dist/{chunk-ZMIMSIIT.js → chunk-ZNMCCHCP.js} +48 -2
- package/dist/cli.js +20 -20
- package/dist/clock-RHS2JEDL.js +16 -0
- package/dist/{cloud-sync-Y7LQPRE3.js → cloud-sync-46RS4SDA.js} +17 -16
- package/dist/{conversations-G4LYMHAA.js → conversations-CJOOCGNW.js} +3 -3
- package/dist/{create-2YY7IPMS.js → create-IOV4GCRX.js} +1 -1
- package/dist/{daemon-restart-ABP54YN6.js → daemon-restart-VFEI57UO.js} +6 -6
- package/dist/daemon.js +392 -270
- package/dist/{db-JFLCJCUG.js → db-MF2JNRUW.js} +1 -1
- package/dist/{delete-BFMIGAIB.js → delete-HPLC7ETU.js} +1 -1
- package/dist/delivery-manager-JINZRG2W.js +33 -0
- package/dist/{delivery-router-6DE3BPHO.js → delivery-router-N4A7ZC5T.js} +2 -2
- package/dist/{down-XCAZXWLB.js → down-U2CZ23M4.js} +4 -4
- package/dist/echo-text-VQPB5L2X.js +33 -0
- package/dist/{exec-4GWHAHS3.js → exec-G3ZRST4Z.js} +2 -2
- package/dist/{export-ID7YUSLZ.js → export-LY723I3Z.js} +5 -5
- package/dist/{extensions-AYSPKE33.js → extensions-ZELQLTSR.js} +17 -16
- package/dist/{files-BQ2WB5KC.js → files-4LN3EN7Q.js} +2 -2
- package/dist/{import-SKID37QX.js → import-42YNQBF4.js} +5 -5
- package/dist/{isolation-5MB3J73F.js → isolation-YMGZZ4E5.js} +2 -2
- package/dist/{join-RXPXGV4L.js → join-ZJV7W6MO.js} +4 -0
- package/dist/{login-LM4NF4ZB.js → login-M6OJUPQ2.js} +1 -1
- package/dist/{logout-CTJVIZGA.js → logout-WQBWO77G.js} +1 -1
- package/dist/message-delivery-R7JSQGYX.js +37 -0
- package/dist/{mind-KLHC7XYR.js → mind-LHKS55DI.js} +12 -12
- package/dist/{mind-activity-tracker-BGHJE7XA.js → mind-activity-tracker-3QRNJVR4.js} +3 -3
- package/dist/mind-service-NB2JMWQZ.js +39 -0
- package/dist/mind-sleep-74TGOQBC.js +83 -0
- package/dist/{package-BMHV7UHN.js → package-DOD6CPO6.js} +2 -1
- package/dist/{registry-NUJAGLQJ.js → registry-OUZBZ3Q4.js} +5 -1
- package/dist/{sandbox-72MWV4JL.js → sandbox-ZJ7QA6Z6.js} +3 -3
- package/dist/scheduler-WVKII3LA.js +31 -0
- package/dist/{seed-4MKQ5QKG.js → seed-CNYIHPOH.js} +1 -1
- package/dist/{seed-cmd-LCXMR7VV.js → seed-cmd-AVNUNLZV.js} +2 -2
- package/dist/{seed-create-N2BF5LQX.js → seed-create-ANXGYSCC.js} +5 -5
- package/dist/{seed-sprout-6ZDP23YI.js → seed-sprout-NIUFTX32.js} +10 -8
- package/dist/{send-O6W53VBM.js → send-SPE6DVNJ.js} +8 -2
- package/dist/{service-AQVPUANO.js → service-UOCLXDWR.js} +3 -3
- package/dist/{service-install-4QNUDKLM.js → service-install-4HHFDDWY.js} +4 -4
- package/dist/{setup-3O6O2JZ7.js → setup-QT2A25SY.js} +6 -6
- package/dist/{setup-73YBJZQL.js → setup-Y2EJI3GG.js} +2 -2
- package/dist/skills/imagegen/scripts/imagegen.ts +100 -40
- package/dist/skills/orientation/SKILL.md +1 -1
- package/dist/skills/volute-mind/SKILL.md +13 -9
- package/dist/skills/volute-mind/references/sleep.md +8 -1
- package/dist/{skills-ND4ZFYUW.js → skills-AKCFA7BN.js} +4 -4
- package/dist/sleep-manager-G6TXSDP7.js +35 -0
- package/dist/{spirit-II3HOERM.js → spirit-RPBLLUQ5.js} +7 -7
- package/dist/{sprout-4KUG76AQ.js → sprout-SMX42ZBP.js} +1 -1
- package/dist/{src-XFY3XDD6.js → src-OJHARHTF.js} +28 -17
- package/dist/{status-E5DQNCAO.js → status-SWRVGXBI.js} +4 -4
- package/dist/system-chat-NDAW6YP7.js +37 -0
- package/dist/{tailscale-QAWVKQKU.js → tailscale-3XOKOW7T.js} +1 -1
- package/dist/{turn-tracker-QQIVVXBI.js → turn-tracker-FOIBNUUA.js} +5 -4
- package/dist/{up-LG56MPBI.js → up-PS6PFS75.js} +5 -5
- package/dist/{update-7TYVH5FM.js → update-SWAYZRWJ.js} +4 -4
- package/dist/{update-check-VSCSJ7KX.js → update-check-PQ2MZ47K.js} +2 -2
- package/dist/{version-notify-CODJOUW2.js → version-notify-C5CH7CVP.js} +24 -19
- package/dist/{volute-config-TS62GS6A.js → volute-config-A52FHWKM.js} +5 -1
- package/dist/web-assets/assets/{index-Dac11sKB.js → index-CU6XWICM.js} +15 -15
- package/dist/web-assets/index.html +1 -1
- package/package.json +2 -1
- package/templates/_base/home/VOLUTE.md +6 -2
- package/templates/_base/src/lib/context-breakdown.ts +57 -67
- package/templates/_base/src/lib/file-handler.ts +3 -3
- package/templates/_base/src/lib/router.ts +21 -25
- package/templates/_base/src/lib/startup.ts +2 -0
- package/templates/_base/src/lib/types.ts +2 -2
- package/templates/_base/src/lib/volute-server.ts +2 -2
- package/templates/claude/src/agent.ts +147 -46
- package/templates/claude/src/lib/message-channel.ts +23 -0
- package/templates/claude/src/lib/session-reaper.ts +68 -0
- package/templates/claude/src/server.ts +1 -0
- package/templates/codex/src/agent.ts +80 -46
- package/templates/pi/src/agent.ts +73 -45
- package/dist/delivery-manager-R5STGLXB.js +0 -32
- package/dist/echo-text-NQXYYYCU.js +0 -32
- package/dist/message-delivery-IUAXRPFE.js +0 -34
- package/dist/mind-service-BF2LUQMH.js +0 -36
- package/dist/mind-sleep-YMBR3I35.js +0 -47
- package/dist/scheduler-YHJRRV6E.js +0 -30
- package/dist/sleep-manager-YAHDOIU5.js +0 -34
- package/dist/system-chat-E65T2HSW.js +0 -34
|
@@ -7,14 +7,14 @@ import {
|
|
|
7
7
|
modeLabel,
|
|
8
8
|
pollHealth,
|
|
9
9
|
startService
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-TQJ6ZYVY.js";
|
|
11
11
|
import {
|
|
12
12
|
readGlobalConfig
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-F7H6ATM4.js";
|
|
14
14
|
import {
|
|
15
15
|
voluteHome,
|
|
16
16
|
voluteSystemDir
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-ALKYQULU.js";
|
|
18
18
|
|
|
19
19
|
// src/commands/up.ts
|
|
20
20
|
import { spawn } from "child_process";
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import {
|
|
3
3
|
exec,
|
|
4
4
|
gitExec
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-H2X54EHC.js";
|
|
6
6
|
import {
|
|
7
7
|
readGlobalConfig,
|
|
8
8
|
writeGlobalConfig
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-F7H6ATM4.js";
|
|
10
10
|
import {
|
|
11
11
|
logger_default
|
|
12
12
|
} from "./chunk-T2TP6ZC6.js";
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
mindDir,
|
|
16
16
|
readRegistry,
|
|
17
17
|
voluteHome
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-ALKYQULU.js";
|
|
19
19
|
import {
|
|
20
20
|
sharedSkills
|
|
21
21
|
} from "./chunk-ZV7MFISX.js";
|
|
@@ -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-
|
|
49
|
+
const { getExtensionStandardSkills } = await import("./extensions-ZELQLTSR.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));
|
|
@@ -3,6 +3,13 @@
|
|
|
3
3
|
// packages/daemon/src/lib/mind/volute-config.ts
|
|
4
4
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
5
5
|
import { dirname, resolve } from "path";
|
|
6
|
+
var WAKE_TRIGGER_DEFAULTS = { mentions: true, dms: true };
|
|
7
|
+
function resolveWakeTriggers(triggers) {
|
|
8
|
+
return {
|
|
9
|
+
mentions: triggers?.mentions ?? WAKE_TRIGGER_DEFAULTS.mentions,
|
|
10
|
+
dms: triggers?.dms ?? WAKE_TRIGGER_DEFAULTS.dms
|
|
11
|
+
};
|
|
12
|
+
}
|
|
6
13
|
function readJson(path) {
|
|
7
14
|
if (!existsSync(path)) return null;
|
|
8
15
|
try {
|
|
@@ -24,6 +31,8 @@ function writeVoluteConfig(mindDir, config) {
|
|
|
24
31
|
}
|
|
25
32
|
|
|
26
33
|
export {
|
|
34
|
+
WAKE_TRIGGER_DEFAULTS,
|
|
35
|
+
resolveWakeTriggers,
|
|
27
36
|
readVoluteConfig,
|
|
28
37
|
writeVoluteConfig
|
|
29
38
|
};
|
|
@@ -17,8 +17,6 @@ import {
|
|
|
17
17
|
command,
|
|
18
18
|
subcommands
|
|
19
19
|
} from "./chunk-TXSA4Q3V.js";
|
|
20
|
-
import "./chunk-O7IGP7ZW.js";
|
|
21
|
-
import "./chunk-K3NQKI34.js";
|
|
22
20
|
|
|
23
21
|
// packages/cli/src/commands/clock.ts
|
|
24
22
|
import { CronExpressionParser } from "cron-parser";
|
|
@@ -52,8 +50,12 @@ var clockStatusCmd = command({
|
|
|
52
50
|
const compact = isCompact();
|
|
53
51
|
const fmtTime = (s) => compact ? compactDateTime(s) : new Date(s).toLocaleString();
|
|
54
52
|
if (status.sleep?.sleeping) {
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
if (status.sleep.wokenByTrigger) {
|
|
54
|
+
console.log("Sleep: briefly awake (trigger) \u2014 returns to sleep when idle");
|
|
55
|
+
} else {
|
|
56
|
+
const since = status.sleep.sleepingSince ? fmtTime(status.sleep.sleepingSince) : "unknown";
|
|
57
|
+
console.log(`Sleep: sleeping since ${since}`);
|
|
58
|
+
}
|
|
57
59
|
if (status.sleep.scheduledWakeAt) {
|
|
58
60
|
console.log(` Wake at: ${fmtTime(status.sleep.scheduledWakeAt)}`);
|
|
59
61
|
}
|
|
@@ -76,8 +78,9 @@ var clockStatusCmd = command({
|
|
|
76
78
|
console.log("Upcoming (next 24h):");
|
|
77
79
|
for (const u of status.upcoming) {
|
|
78
80
|
const time = fmtTime(u.at);
|
|
79
|
-
const label = u.type === "timer" ? "[
|
|
80
|
-
|
|
81
|
+
const label = u.type === "timer" ? "[once]" : "[cron]";
|
|
82
|
+
const suffix = u.willSkip ? " [will skip: sleeping]" : u.willQueue ? " [will queue: sleeping]" : "";
|
|
83
|
+
console.log(` ${u.id.padEnd(20)} ${label} ${time}${suffix}`);
|
|
81
84
|
}
|
|
82
85
|
} else {
|
|
83
86
|
if (!compact) console.log("");
|
|
@@ -91,7 +94,7 @@ ${status.schedules.length} schedule(s) configured.`);
|
|
|
91
94
|
});
|
|
92
95
|
var listSchedulesCmd = command({
|
|
93
96
|
name: "volute clock list",
|
|
94
|
-
description: "List schedules
|
|
97
|
+
description: "List schedules",
|
|
95
98
|
flags: {
|
|
96
99
|
mind: { type: "string", description: "Mind name" }
|
|
97
100
|
},
|
|
@@ -132,14 +135,14 @@ var listSchedulesCmd = command({
|
|
|
132
135
|
});
|
|
133
136
|
var addScheduleCmd = command({
|
|
134
137
|
name: "volute clock add",
|
|
135
|
-
description: "Add a schedule or
|
|
138
|
+
description: "Add a schedule (recurring --cron or one-time --in)",
|
|
136
139
|
flags: {
|
|
137
140
|
mind: { type: "string", description: "Mind name" },
|
|
138
141
|
cron: { type: "string", description: "Cron expression" },
|
|
139
142
|
in: { type: "string", description: "Duration (e.g. 30s, 10m, 1h)" },
|
|
140
143
|
message: { type: "string", description: "Message to send" },
|
|
141
144
|
script: { type: "string", description: "Script to run" },
|
|
142
|
-
id: { type: "string", description: "
|
|
145
|
+
id: { type: "string", description: "Unique name for this schedule (required)" },
|
|
143
146
|
session: { type: "string", description: "Session name" },
|
|
144
147
|
"while-sleeping": {
|
|
145
148
|
type: "string",
|
|
@@ -216,7 +219,7 @@ var addScheduleCmd = command({
|
|
|
216
219
|
}
|
|
217
220
|
const data = await res.json();
|
|
218
221
|
if (flags.in) {
|
|
219
|
-
console.log(`
|
|
222
|
+
console.log(`Schedule added: ${data.id} (fires once in ${flags.in})`);
|
|
220
223
|
} else {
|
|
221
224
|
console.log(`Schedule added: ${data.id}`);
|
|
222
225
|
}
|
|
@@ -224,7 +227,7 @@ var addScheduleCmd = command({
|
|
|
224
227
|
});
|
|
225
228
|
var removeScheduleCmd = command({
|
|
226
229
|
name: "volute clock remove",
|
|
227
|
-
description: "Remove a schedule
|
|
230
|
+
description: "Remove a schedule",
|
|
228
231
|
flags: {
|
|
229
232
|
mind: { type: "string", description: "Mind name" },
|
|
230
233
|
id: { type: "string", description: "Schedule ID (required)" }
|
|
@@ -254,27 +257,27 @@ var removeScheduleCmd = command({
|
|
|
254
257
|
});
|
|
255
258
|
var cmd = subcommands({
|
|
256
259
|
name: "volute clock",
|
|
257
|
-
description: "Manage schedules
|
|
260
|
+
description: "Manage schedules and sleep/wake cycles",
|
|
258
261
|
commands: {
|
|
259
262
|
status: {
|
|
260
263
|
description: "Show sleep state and upcoming schedule fires",
|
|
261
264
|
run: clockStatusCmd.execute
|
|
262
265
|
},
|
|
263
266
|
list: {
|
|
264
|
-
description: "List schedules
|
|
267
|
+
description: "List schedules",
|
|
265
268
|
run: listSchedulesCmd.execute
|
|
266
269
|
},
|
|
267
270
|
add: {
|
|
268
|
-
description: "Add a schedule or
|
|
271
|
+
description: "Add a schedule (recurring --cron or one-time --in)",
|
|
269
272
|
run: addScheduleCmd.execute
|
|
270
273
|
},
|
|
271
274
|
remove: {
|
|
272
|
-
description: "Remove a schedule
|
|
275
|
+
description: "Remove a schedule",
|
|
273
276
|
run: removeScheduleCmd.execute
|
|
274
277
|
},
|
|
275
278
|
sleep: {
|
|
276
279
|
description: "Put a mind to sleep",
|
|
277
|
-
run: (args) => import("./mind-sleep-
|
|
280
|
+
run: (args) => import("./mind-sleep-74TGOQBC.js").then((m) => m.run(args))
|
|
278
281
|
},
|
|
279
282
|
wake: {
|
|
280
283
|
description: "Wake a sleeping mind",
|
|
@@ -284,6 +287,8 @@ var cmd = subcommands({
|
|
|
284
287
|
footer: "Use --mind <name> or VOLUTE_MIND to identify the mind."
|
|
285
288
|
});
|
|
286
289
|
var run = cmd.execute;
|
|
290
|
+
|
|
287
291
|
export {
|
|
292
|
+
parseDuration,
|
|
288
293
|
run
|
|
289
294
|
};
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
pollHealthDown,
|
|
9
9
|
readDaemonConfig,
|
|
10
10
|
stopService
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-TQJ6ZYVY.js";
|
|
12
12
|
import {
|
|
13
13
|
voluteSystemDir
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-ALKYQULU.js";
|
|
15
15
|
|
|
16
16
|
// src/commands/down.ts
|
|
17
17
|
import { existsSync, readFileSync, unlinkSync } from "fs";
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
exec,
|
|
4
4
|
execInherit
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-H2X54EHC.js";
|
|
6
6
|
import {
|
|
7
7
|
voluteSystemDir
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-ALKYQULU.js";
|
|
9
9
|
|
|
10
10
|
// packages/daemon/src/lib/config/service-mode.ts
|
|
11
11
|
import { execFileSync } from "child_process";
|