volute 0.45.2 → 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-BUR2RYTJ.js → activity-events-NF6VWTJQ.js} +1 -1
- package/dist/{auth-FLAEXXZK.js → auth-CCFAU4GQ.js} +2 -2
- package/dist/{chat-76MRWWQX.js → chat-ZIQQS25U.js} +1 -1
- package/dist/chunk-4YU7HF4L.js +237 -0
- package/dist/{chunk-OP4JG2BS.js → chunk-5ZQZDDIK.js} +6 -2
- package/dist/{chunk-FR6S2KNN.js → chunk-BJZ4PV7R.js} +1 -1
- package/dist/{chunk-NYC5U6K7.js → chunk-E3DA4HYV.js} +4 -4
- package/dist/{chunk-YT7PEESJ.js → chunk-JO5IO4FH.js} +245 -124
- package/dist/{chunk-7ZUB63PS.js → chunk-KGIXX4NM.js} +1 -1
- package/dist/{chunk-EJVPTVTI.js → chunk-KQSFTPIM.js} +1 -1
- package/dist/{chunk-T6HYVHPG.js → chunk-OV7ZQ2GH.js} +1 -1
- package/dist/{clock-K43IMROX.js → chunk-PJ45FQPT.js} +21 -16
- package/dist/{chunk-UYLGEDVD.js → chunk-YXSUMLTC.js} +44 -267
- package/dist/{chunk-7C44R625.js → chunk-ZNMCCHCP.js} +47 -1
- package/dist/cli.js +11 -11
- package/dist/clock-RHS2JEDL.js +16 -0
- package/dist/{cloud-sync-3OJOPZRT.js → cloud-sync-46RS4SDA.js} +9 -8
- package/dist/{conversations-JZTD6KLR.js → conversations-CJOOCGNW.js} +2 -2
- package/dist/{daemon-restart-TIHKVVVA.js → daemon-restart-VFEI57UO.js} +1 -1
- package/dist/daemon.js +249 -170
- package/dist/{delete-BFMIGAIB.js → delete-HPLC7ETU.js} +1 -1
- package/dist/{delivery-manager-VDVKVA46.js → delivery-manager-JINZRG2W.js} +9 -8
- package/dist/{echo-text-6JJOPUD4.js → echo-text-VQPB5L2X.js} +10 -9
- package/dist/{export-GGIVO76O.js → export-LY723I3Z.js} +3 -3
- package/dist/{extensions-JONTW2HF.js → extensions-ZELQLTSR.js} +9 -8
- package/dist/{message-delivery-3C65ZI6L.js → message-delivery-R7JSQGYX.js} +11 -8
- package/dist/{mind-DWB6XYCH.js → mind-LHKS55DI.js} +9 -9
- package/dist/{mind-activity-tracker-POBLU3LC.js → mind-activity-tracker-3QRNJVR4.js} +2 -2
- package/dist/{mind-service-3F4I46CI.js → mind-service-NB2JMWQZ.js} +11 -8
- package/dist/mind-sleep-74TGOQBC.js +83 -0
- package/dist/{package-A7KXT67Q.js → package-DOD6CPO6.js} +2 -1
- package/dist/{scheduler-P6DXLLXI.js → scheduler-WVKII3LA.js} +9 -8
- package/dist/{seed-HCP5NYKH.js → seed-CNYIHPOH.js} +1 -1
- package/dist/{seed-cmd-ILOGNIFB.js → seed-cmd-AVNUNLZV.js} +2 -2
- package/dist/{seed-create-OURS2LS4.js → seed-create-ANXGYSCC.js} +3 -3
- package/dist/{seed-sprout-ELDFDAN6.js → seed-sprout-NIUFTX32.js} +5 -3
- package/dist/{send-AAIOPJAV.js → send-SPE6DVNJ.js} +6 -0
- package/dist/{setup-DQM5VPY4.js → setup-QT2A25SY.js} +1 -1
- package/dist/skills/orientation/SKILL.md +1 -1
- package/dist/skills/volute-mind/SKILL.md +8 -8
- package/dist/skills/volute-mind/references/sleep.md +8 -1
- package/dist/{skills-BKINFL7W.js → skills-AKCFA7BN.js} +1 -1
- package/dist/{sleep-manager-HCUH4PM4.js → sleep-manager-G6TXSDP7.js} +9 -8
- package/dist/{spirit-DBTIW7P4.js → spirit-RPBLLUQ5.js} +2 -2
- package/dist/{sprout-W3KC7UGK.js → sprout-SMX42ZBP.js} +1 -1
- package/dist/{system-chat-XOALE2RD.js → system-chat-NDAW6YP7.js} +9 -8
- package/dist/{turn-tracker-2W6Q2NSR.js → turn-tracker-FOIBNUUA.js} +2 -1
- package/dist/{up-FTK7CTO3.js → up-PS6PFS75.js} +1 -1
- package/dist/{version-notify-3XMAIQTE.js → version-notify-C5CH7CVP.js} +15 -10
- package/dist/web-assets/assets/{index-Bc2m8gRC.js → index-CU6XWICM.js} +3 -3
- 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/volute-server.ts +2 -2
- package/templates/claude/src/agent.ts +78 -42
- package/templates/claude/src/lib/session-reaper.ts +31 -0
- package/templates/codex/src/agent.ts +62 -40
- package/templates/pi/src/agent.ts +55 -38
- package/dist/mind-sleep-YMBR3I35.js +0 -47
- /package/dist/{chunk-QNQMSWZE.js → chunk-K6T43YBD.js} +0 -0
|
@@ -9,6 +9,42 @@ import {
|
|
|
9
9
|
activity
|
|
10
10
|
} from "./chunk-ZV7MFISX.js";
|
|
11
11
|
|
|
12
|
+
// packages/daemon/src/lib/events/event-sequencer.ts
|
|
13
|
+
var BUFFER_SIZE = 1e3;
|
|
14
|
+
var MAX_AGE_MS = 5 * 60 * 1e3;
|
|
15
|
+
var nextId = 1;
|
|
16
|
+
var buffer = [];
|
|
17
|
+
function bufferEvent(data) {
|
|
18
|
+
const id = nextId++;
|
|
19
|
+
buffer.push({ id, data, timestamp: Date.now() });
|
|
20
|
+
while (buffer.length > BUFFER_SIZE) {
|
|
21
|
+
buffer.shift();
|
|
22
|
+
}
|
|
23
|
+
return id;
|
|
24
|
+
}
|
|
25
|
+
function nextEventId() {
|
|
26
|
+
return nextId++;
|
|
27
|
+
}
|
|
28
|
+
function getEventsSince(sinceId, allowedConversationIds, allowedActivityMind) {
|
|
29
|
+
const now = Date.now();
|
|
30
|
+
const startIdx = buffer.findIndex((e) => e.id > sinceId);
|
|
31
|
+
if (startIdx === -1) return [];
|
|
32
|
+
return buffer.slice(startIdx).filter((e) => {
|
|
33
|
+
if (now - e.timestamp >= MAX_AGE_MS) return false;
|
|
34
|
+
const data = e.data;
|
|
35
|
+
switch (data.event) {
|
|
36
|
+
case "snapshot":
|
|
37
|
+
return false;
|
|
38
|
+
case "conversation":
|
|
39
|
+
return allowedConversationIds.has(data.conversationId);
|
|
40
|
+
case "activity":
|
|
41
|
+
return allowedActivityMind === void 0 || data.mind === allowedActivityMind;
|
|
42
|
+
default:
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
12
48
|
// packages/daemon/src/lib/events/activity-events.ts
|
|
13
49
|
var subscribers = /* @__PURE__ */ new Set();
|
|
14
50
|
function subscribe(callback) {
|
|
@@ -44,9 +80,16 @@ function broadcast(event) {
|
|
|
44
80
|
notify({ ...event, id: 0, created_at });
|
|
45
81
|
}
|
|
46
82
|
function notify(event) {
|
|
83
|
+
const data = {
|
|
84
|
+
event: "activity",
|
|
85
|
+
...event,
|
|
86
|
+
metadata: event.metadata ?? null
|
|
87
|
+
};
|
|
88
|
+
const seq = bufferEvent(data);
|
|
89
|
+
const delivered = { ...event, seq };
|
|
47
90
|
for (const cb of subscribers) {
|
|
48
91
|
try {
|
|
49
|
-
cb(
|
|
92
|
+
cb(delivered);
|
|
50
93
|
} catch (err) {
|
|
51
94
|
logger_default.error("[activity-events] subscriber threw:", logger_default.errorData(err));
|
|
52
95
|
subscribers.delete(cb);
|
|
@@ -55,6 +98,9 @@ function notify(event) {
|
|
|
55
98
|
}
|
|
56
99
|
|
|
57
100
|
export {
|
|
101
|
+
bufferEvent,
|
|
102
|
+
nextEventId,
|
|
103
|
+
getEventsSince,
|
|
58
104
|
subscribe,
|
|
59
105
|
publish,
|
|
60
106
|
broadcast
|
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-
|
|
13
|
+
const { default: pkg } = await import("./package-DOD6CPO6.js");
|
|
14
14
|
console.log(pkg.version);
|
|
15
15
|
process.exit(0);
|
|
16
16
|
}
|
|
@@ -41,22 +41,22 @@ if (!ungatedCommands.has(command)) {
|
|
|
41
41
|
}
|
|
42
42
|
switch (command) {
|
|
43
43
|
case "setup":
|
|
44
|
-
await import("./setup-
|
|
44
|
+
await import("./setup-QT2A25SY.js").then((m) => m.run(args));
|
|
45
45
|
break;
|
|
46
46
|
case "mind":
|
|
47
|
-
await import("./mind-
|
|
47
|
+
await import("./mind-LHKS55DI.js").then((m) => m.run(args));
|
|
48
48
|
break;
|
|
49
49
|
case "seed":
|
|
50
|
-
await import("./seed-cmd-
|
|
50
|
+
await import("./seed-cmd-AVNUNLZV.js").then((m) => m.run(args));
|
|
51
51
|
break;
|
|
52
52
|
case "chat":
|
|
53
|
-
await import("./chat-
|
|
53
|
+
await import("./chat-ZIQQS25U.js").then((m) => m.run(args));
|
|
54
54
|
break;
|
|
55
55
|
case "variant":
|
|
56
56
|
await import("./variant-HHDTW74J.js").then((m) => m.run(args));
|
|
57
57
|
break;
|
|
58
58
|
case "clock":
|
|
59
|
-
await import("./clock-
|
|
59
|
+
await import("./clock-RHS2JEDL.js").then((m) => m.run(args));
|
|
60
60
|
break;
|
|
61
61
|
case "skill":
|
|
62
62
|
await import("./skill-FKFHIJRR.js").then((m) => m.run(args));
|
|
@@ -68,7 +68,7 @@ switch (command) {
|
|
|
68
68
|
await import("./config-TJLYUV3U.js").then((m) => m.run(args));
|
|
69
69
|
break;
|
|
70
70
|
case "up":
|
|
71
|
-
await import("./up-
|
|
71
|
+
await import("./up-PS6PFS75.js").then((m) => m.run(args));
|
|
72
72
|
break;
|
|
73
73
|
case "backup":
|
|
74
74
|
await import("./backup-TST5C2YN.js").then((m) => m.run(args));
|
|
@@ -77,7 +77,7 @@ switch (command) {
|
|
|
77
77
|
await import("./down-U2CZ23M4.js").then((m) => m.run(args));
|
|
78
78
|
break;
|
|
79
79
|
case "restart":
|
|
80
|
-
await import("./daemon-restart-
|
|
80
|
+
await import("./daemon-restart-VFEI57UO.js").then((m) => m.run(args));
|
|
81
81
|
break;
|
|
82
82
|
case "update":
|
|
83
83
|
await import("./update-SWAYZRWJ.js").then((m) => m.run(args));
|
|
@@ -117,16 +117,16 @@ Mind:
|
|
|
117
117
|
mind status [name] Check a mind's status
|
|
118
118
|
mind history [name] [--full] View mind activity history
|
|
119
119
|
mind profile [--mind] [...] Set display name, description, avatar
|
|
120
|
-
mind split/join
|
|
120
|
+
mind split/join Split off and rejoin variants
|
|
121
121
|
mind upgrade/import/export Lifecycle operations
|
|
122
122
|
|
|
123
123
|
Seed:
|
|
124
|
-
seed create <name> Plant a new seed
|
|
124
|
+
seed create <name> Plant a new seed
|
|
125
125
|
seed sprout Complete orientation and become a full mind
|
|
126
126
|
|
|
127
127
|
Configuration:
|
|
128
128
|
chat Conversations, messages, files, and platform bridges
|
|
129
|
-
clock Schedules
|
|
129
|
+
clock Schedules and sleep/wake cycles
|
|
130
130
|
skill Browse and install skills
|
|
131
131
|
env Manage environment variables
|
|
132
132
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
parseDuration,
|
|
4
|
+
run
|
|
5
|
+
} from "./chunk-PJ45FQPT.js";
|
|
6
|
+
import "./chunk-5T5YMX6S.js";
|
|
7
|
+
import "./chunk-BTY4WNFE.js";
|
|
8
|
+
import "./chunk-RBNMDAKB.js";
|
|
9
|
+
import "./chunk-LOPXTW6H.js";
|
|
10
|
+
import "./chunk-TXSA4Q3V.js";
|
|
11
|
+
import "./chunk-O7IGP7ZW.js";
|
|
12
|
+
import "./chunk-K3NQKI34.js";
|
|
13
|
+
export {
|
|
14
|
+
parseDuration,
|
|
15
|
+
run
|
|
16
|
+
};
|
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
deliverMessage
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JO5IO4FH.js";
|
|
5
5
|
import "./chunk-ZDZISKCL.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-BJZ4PV7R.js";
|
|
7
7
|
import "./chunk-QLWG3C2Z.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-KGIXX4NM.js";
|
|
9
9
|
import {
|
|
10
10
|
getAuthHeaders,
|
|
11
11
|
getWebhookUrl
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5ZQZDDIK.js";
|
|
13
13
|
import "./chunk-PFZBNKUH.js";
|
|
14
14
|
import "./chunk-JZ62SYWR.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-KQSFTPIM.js";
|
|
16
16
|
import "./chunk-4JOQZPCE.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-YXSUMLTC.js";
|
|
18
|
+
import "./chunk-4YU7HF4L.js";
|
|
18
19
|
import "./chunk-H2X54EHC.js";
|
|
19
20
|
import "./chunk-IHKGWTGT.js";
|
|
20
21
|
import "./chunk-F7H6ATM4.js";
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-OV7ZQ2GH.js";
|
|
23
|
+
import "./chunk-ZNMCCHCP.js";
|
|
23
24
|
import {
|
|
24
25
|
logger_default
|
|
25
26
|
} from "./chunk-T2TP6ZC6.js";
|
|
@@ -29,8 +29,8 @@ import {
|
|
|
29
29
|
removeParticipant,
|
|
30
30
|
setConversationPrivate,
|
|
31
31
|
updateChannelSettings
|
|
32
|
-
} from "./chunk-
|
|
33
|
-
import "./chunk-
|
|
32
|
+
} from "./chunk-5ZQZDDIK.js";
|
|
33
|
+
import "./chunk-ZNMCCHCP.js";
|
|
34
34
|
import "./chunk-T2TP6ZC6.js";
|
|
35
35
|
import "./chunk-ALKYQULU.js";
|
|
36
36
|
import "./chunk-ZV7MFISX.js";
|