volute 0.35.0 → 0.37.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/dist/{accept-ZBDVVCEU.js → accept-AHAOUFBK.js} +4 -4
- package/dist/activity-events-N6HCHU4P.js +15 -0
- package/dist/{ai-service-LURBEDDB.js → ai-service-C2YNARGH.js} +6 -6
- package/dist/{api-client-3A77HMH7.js → api-client-LC5YRA32.js} +1 -1
- package/dist/{archive-ESU2FUN4.js → archive-AWIJTVQV.js} +4 -4
- package/dist/{auth-WX4TESEI.js → auth-2QOOPMBX.js} +6 -6
- package/dist/{bridge-PXIO6PS2.js → bridge-F3ZJEKDN.js} +4 -4
- package/dist/{chat-QXAJF3FU.js → chat-5Y4FD77E.js} +9 -9
- package/dist/{chunk-BDYXIWA5.js → chunk-2NHRJ3YO.js} +13 -2
- package/dist/{chunk-AN2W47GW.js → chunk-3F7XK5Q7.js} +2 -2
- package/dist/{chunk-AOB6GVRM.js → chunk-46DYYHN6.js} +8 -3
- package/dist/{chunk-WZRZFFCL.js → chunk-5DPRTREW.js} +146 -186
- package/dist/{chunk-QWTR6AWZ.js → chunk-7AZQFSOV.js} +2 -2
- package/dist/{chunk-BMZQYACC.js → chunk-A6FLW5XD.js} +19 -4
- package/dist/{chunk-N5LMGYXX.js → chunk-BIEWHAAM.js} +2 -2
- package/dist/{chunk-5N7Y5WAM.js → chunk-CJ26DXZL.js} +29 -13
- package/dist/{chunk-ZSR72JB3.js → chunk-CU6OFXMM.js} +1 -1
- package/dist/{chunk-N446KRP7.js → chunk-GVVVMZ4J.js} +2 -2
- package/dist/chunk-K3NQKI34.js +10 -0
- package/dist/{chunk-F7ZNLYKZ.js → chunk-KAB6UGOL.js} +2 -2
- package/dist/{chunk-WJPROOU5.js → chunk-KBRGHKVU.js} +681 -3726
- package/dist/{chunk-PWQ2ITYG.js → chunk-KXXJYY62.js} +6 -6
- package/dist/{chunk-NJK5SDGR.js → chunk-LGNUFVMR.js} +1 -1
- package/dist/chunk-LQ6Z4FXN.js +87 -0
- package/dist/{chunk-J6CJQDWI.js → chunk-MQRS4J24.js} +2 -2
- package/dist/{chunk-CORXD635.js → chunk-N42QMDID.js} +3 -3
- package/dist/{chunk-IJHIXLVN.js → chunk-NYP3LBIV.js} +15 -13
- package/dist/{chunk-FT5KETXZ.js → chunk-ORNY3MZR.js} +4 -4
- package/dist/{chunk-A2ZLHBHG.js → chunk-PMMHVSCR.js} +2 -2
- package/dist/chunk-QQQI6ISK.js +853 -0
- package/dist/chunk-RG5TOL4O.js +18 -0
- package/dist/{chunk-VHJRZM2S.js → chunk-SNW2NPP4.js} +2 -2
- package/dist/chunk-SZJWC2GA.js +125 -0
- package/dist/{chunk-BKF4WQCY.js → chunk-T2TP6ZC6.js} +20 -8
- package/dist/{chunk-2TGZJFAT.js → chunk-TNZ5XQA4.js} +3 -3
- package/dist/{chunk-QCH6K235.js → chunk-UI7RPV2B.js} +1 -1
- package/dist/{chunk-XRQSAMX2.js → chunk-UIM5NHPP.js} +3 -3
- package/dist/{chunk-5XJYUFZH.js → chunk-UQFYNZKT.js} +76 -30
- package/dist/{chunk-OTC67N2Z.js → chunk-WC635OPK.js} +1 -1
- package/dist/{chunk-BV65KRHM.js → chunk-XLBQYIHH.js} +2 -2
- package/dist/{chunk-VY3RB2V7.js → chunk-Z6TIXE77.js} +3 -3
- package/dist/cli.js +24 -24
- package/dist/{clock-HSEKS5AR.js → clock-BMLJ2TR6.js} +8 -8
- package/dist/{cloud-sync-6JL4C24T.js → cloud-sync-OIX576NA.js} +20 -21
- package/dist/{config-UTS7QULS.js → config-QB7W3Z7P.js} +4 -4
- package/dist/connectors/discord-bridge.js +4 -4
- package/dist/connectors/slack-bridge.js +4 -4
- package/dist/connectors/telegram-bridge.js +4 -4
- package/dist/{conversations-2PW57WO2.js → conversations-G6YRSABR.js} +16 -10
- package/dist/{create-5BPOOJAN.js → create-C3BBFYV7.js} +4 -4
- package/dist/{create-UVCK2CS6.js → create-PN73742N.js} +4 -4
- package/dist/{daemon-client-RVIKXGFQ.js → daemon-client-2MIPKY3E.js} +1 -1
- package/dist/{daemon-restart-HSZ3BCX5.js → daemon-restart-L2O6L7NR.js} +9 -9
- package/dist/daemon.js +690 -1281
- package/dist/db-CBOCDYVA.js +9 -0
- package/dist/{db-BDMH4SZ2.js → db-IJL6B26S.js} +1 -1
- package/dist/{delete-L5PAVDGQ.js → delete-NLXES2C7.js} +3 -3
- package/dist/delivery-manager-4PVBUZJB.js +30 -0
- package/dist/{delivery-router-HEJSJAHQ.js → delivery-router-QTFEZ26O.js} +5 -5
- package/dist/down-25L2RKCQ.js +17 -0
- package/dist/echo-text-T5ZLGMA7.js +31 -0
- package/dist/{env-E4XHO2BI.js → env-IQ6Q2333.js} +6 -6
- package/dist/exec-ONYZEA5B.js +17 -0
- package/dist/{export-OAS6QVBN.js → export-JPDBQESV.js} +6 -6
- package/dist/{extension-D74CNM7G.js → extension-LZYHBNLV.js} +26 -7
- package/dist/extensions-CLYXNGYB.js +50 -0
- package/dist/{files-CWTK6V3H.js → files-LAQ3NXQK.js} +7 -7
- package/dist/{import-5A3T7QV4.js → import-EROF27RH.js} +12 -11
- package/dist/{isolation-TK5RX2WM.js → isolation-G5J3MTKU.js} +4 -4
- package/dist/{join-DF5XSJAC.js → join-6SZCA5FX.js} +3 -3
- package/dist/{list-PDMQM7ZV.js → list-KHJZJPEJ.js} +11 -5
- package/dist/{login-7TE6CIZF.js → login-F6YMAVLE.js} +6 -6
- package/dist/{login-GOTAYLXP.js → login-GYTH67ES.js} +4 -4
- package/dist/{logout-T4XS6LRU.js → logout-HHPH52KZ.js} +6 -6
- package/dist/{logout-6KIA74EV.js → logout-YHQLOFLR.js} +4 -4
- package/dist/message-delivery-N2V5APCS.js +40 -0
- package/dist/{mind-5IEYKV7I.js → mind-M57ET546.js} +19 -19
- package/dist/mind-activity-tracker-42ENM32S.js +18 -0
- package/dist/{mind-history-IE2QH7U5.js → mind-history-WHCNZ6I5.js} +86 -19
- package/dist/{mind-list-GEWHWAL4.js → mind-list-H3HC2ZRG.js} +4 -4
- package/dist/mind-manager-LS2AIXHQ.js +30 -0
- package/dist/{mind-profile-DCBDVF5B.js → mind-profile-7VYRJGFZ.js} +2 -2
- package/dist/mind-service-UDXF5WC2.js +36 -0
- package/dist/{mind-sleep-ITCF6OQA.js → mind-sleep-ZL5ZXFTM.js} +4 -4
- package/dist/{mind-status-X4SX3YUG.js → mind-status-ZWULKOUO.js} +4 -4
- package/dist/{mind-wake-KXMKMGWX.js → mind-wake-HK5ORGUK.js} +4 -4
- package/dist/{package-D2FSVFAX.js → package-5FGU5QNP.js} +6 -6
- package/dist/{read-67VRP2DO.js → read-CP7MYMJQ.js} +8 -8
- package/dist/{read-stdin-3X5VYKNS.js → read-stdin-4B5UYPPM.js} +1 -1
- package/dist/{register-SB7NXCOE.js → register-XOBFEMI4.js} +4 -4
- package/dist/{registry-GBSNW3HG.js → registry-KMELPC3X.js} +3 -3
- package/dist/{reject-MUR2KWJ4.js → reject-43AGXB6B.js} +4 -4
- package/dist/{restart-5EGG4JXU.js → restart-O5QIYQJT.js} +5 -5
- package/dist/{sandbox-R37VIU36.js → sandbox-PQYEICEF.js} +6 -6
- package/dist/scheduler-NTC74JYH.js +30 -0
- package/dist/{schema-XVZ2CLKW.js → schema-K575EBPE.js} +4 -2
- package/dist/{seed-EQORWX77.js → seed-55VC3A57.js} +2 -2
- package/dist/{seed-check-KJNTL72M.js → seed-check-HZPVFJKZ.js} +2 -2
- package/dist/{seed-cmd-ZM2XGVU2.js → seed-cmd-2KOEQZK6.js} +4 -4
- package/dist/{seed-create-DRWGGHEI.js → seed-create-Y2Z5JWBB.js} +6 -6
- package/dist/{seed-sprout-JYXGXOP3.js → seed-sprout-OLSIWXZN.js} +15 -15
- package/dist/{send-JBJJQ7CA.js → send-7CIP5GLS.js} +8 -8
- package/dist/{service-WNPCNHOX.js → service-YMHWPDXW.js} +6 -6
- package/dist/{setup-BJ4YAY26.js → setup-6Z34JJEB.js} +32 -37
- package/dist/{setup-RHJRFURI.js → setup-PF7JSFMO.js} +6 -4
- package/dist/{skill-TAAKEYBV.js → skill-ICN6Y2ZF.js} +6 -6
- package/dist/skills/tending/SKILL.md +52 -0
- package/dist/{skills-EKMCQ46K.js → skills-FDMLJGZ3.js} +8 -8
- package/dist/sleep-manager-TQP5ZJI5.js +34 -0
- package/dist/spirit-SM6ARJ2N.js +24 -0
- package/dist/{split-AWVOYOPZ.js → split-5YBEQTBF.js} +3 -3
- package/dist/{sprout-HE4TITMK.js → sprout-G6G57IOY.js} +2 -2
- package/dist/src-LT6ZBYYX.js +2133 -0
- package/dist/src-O4PRLMKM.js +425 -0
- package/dist/src-OYWRPLC6.js +617 -0
- package/dist/{start-3UXOPXQG.js → start-LMXXRR3X.js} +5 -5
- package/dist/{status-ZK34WYIM.js → status-MC2P7DBG.js} +7 -7
- package/dist/{stop-3XYIBGFM.js → stop-TWDKVEUX.js} +5 -5
- package/dist/system-chat-NNXYCSVL.js +34 -0
- package/dist/{systems-O43WGQY6.js → systems-Y2WZV2K4.js} +7 -7
- package/dist/{tailscale-ZIZ2HWJ5.js → tailscale-LTYNKIPZ.js} +4 -4
- package/dist/template-hash-SSIBEEYK.js +9 -0
- package/dist/up-5JXV6BZS.js +19 -0
- package/dist/{update-ANE5ZM7F.js → update-UOP2INF2.js} +7 -7
- package/dist/{update-check-UV55CBEP.js → update-check-IKS7SGK5.js} +4 -4
- package/dist/{upgrade-ZMDGC7M2.js → upgrade-RXFZR5FI.js} +3 -3
- package/dist/{variant-QWL2WSRI.js → variant-HHDTW74J.js} +1 -1
- package/dist/{version-notify-FXSEMXWW.js → version-notify-CSE4NBYM.js} +22 -23
- package/dist/{volute-config-D2XVS2YI.js → volute-config-TS62GS6A.js} +2 -2
- package/dist/web-assets/assets/index-B3xLeex8.js +75 -0
- package/dist/web-assets/assets/index-Dr4A90Lo.css +1 -0
- package/dist/web-assets/index.html +2 -2
- package/drizzle/0006_channels.sql +17 -0
- package/drizzle/0007_drop_conversation_name_title.sql +11 -0
- package/drizzle/0008_performance_indexes.sql +6 -0
- package/drizzle/meta/0006_snapshot.json +7 -0
- package/drizzle/meta/0007_snapshot.json +7 -0
- package/drizzle/meta/_journal.json +21 -0
- package/package.json +5 -5
- package/templates/_base/home/.config/routes.json +2 -2
- package/templates/_base/home/VOLUTE.md +1 -2
- package/templates/_base/src/lib/context-breakdown.ts +22 -16
- package/templates/_base/src/lib/format-prefix.ts +1 -7
- package/templates/claude/.init/.config/routes.json +2 -2
- package/templates/codex/.init/.config/routes.json +2 -2
- package/templates/pi/.init/.config/routes.json +2 -2
- package/dist/activity-events-ZW4SDL2C.js +0 -15
- package/dist/chunk-7KJOFUNN.js +0 -22
- package/dist/chunk-MDJGMOSD.js +0 -207
- package/dist/db-BVBJ57TU.js +0 -9
- package/dist/delivery-manager-H5ZVBMCQ.js +0 -31
- package/dist/down-74VXM45A.js +0 -17
- package/dist/exec-PY7THYH4.js +0 -17
- package/dist/extensions-XDDFY72A.js +0 -49
- package/dist/lib-DYEZMGW7.js +0 -6588
- package/dist/message-delivery-GRC4W6P7.js +0 -41
- package/dist/mind-activity-tracker-QBLIV7ZJ.js +0 -18
- package/dist/mind-manager-HFLB5653.js +0 -31
- package/dist/mind-service-X2CAA6W6.js +0 -37
- package/dist/scheduler-Y7O4CJXL.js +0 -31
- package/dist/sleep-manager-7KFK3USC.js +0 -35
- package/dist/spirit-ZFRDXMG7.js +0 -23
- package/dist/system-chat-IDPHYHY4.js +0 -35
- package/dist/template-hash-A7FNHTB7.js +0 -9
- package/dist/up-77ICEDEW.js +0 -19
- package/dist/web-assets/assets/index-BhxWKvbB.css +0 -1
- package/dist/web-assets/assets/index-CHVKJ9II.js +0 -75
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
logger_default
|
|
4
|
-
} from "./chunk-BKF4WQCY.js";
|
|
5
2
|
import {
|
|
6
3
|
readGlobalConfig
|
|
7
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-A6FLW5XD.js";
|
|
5
|
+
import {
|
|
6
|
+
logger_default
|
|
7
|
+
} from "./chunk-T2TP6ZC6.js";
|
|
8
8
|
import {
|
|
9
9
|
getBaseName,
|
|
10
10
|
readRegistry,
|
|
11
11
|
voluteHome,
|
|
12
12
|
voluteSystemDir,
|
|
13
13
|
voluteUserHome
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
15
15
|
|
|
16
|
-
// packages/daemon/src/lib/sandbox.ts
|
|
16
|
+
// packages/daemon/src/lib/mind/sandbox.ts
|
|
17
17
|
import { resolve } from "path";
|
|
18
18
|
var slog = logger_default.child("sandbox");
|
|
19
19
|
var sandboxManager = null;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
logger_default
|
|
4
|
+
} from "./chunk-T2TP6ZC6.js";
|
|
5
|
+
import {
|
|
6
|
+
voluteSystemDir
|
|
7
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
8
|
+
|
|
9
|
+
// packages/daemon/src/lib/bridges/bridges.ts
|
|
10
|
+
import { existsSync, readFileSync, writeFileSync } from "fs";
|
|
11
|
+
import { resolve } from "path";
|
|
12
|
+
function bridgesPath() {
|
|
13
|
+
return resolve(voluteSystemDir(), "bridges.json");
|
|
14
|
+
}
|
|
15
|
+
function readBridgesConfig() {
|
|
16
|
+
const path = bridgesPath();
|
|
17
|
+
if (!existsSync(path)) return {};
|
|
18
|
+
try {
|
|
19
|
+
return JSON.parse(readFileSync(path, "utf-8"));
|
|
20
|
+
} catch (err) {
|
|
21
|
+
logger_default.error(
|
|
22
|
+
`bridges.json is corrupt or unreadable at ${path} \u2014 all bridges disabled`,
|
|
23
|
+
logger_default.errorData(err)
|
|
24
|
+
);
|
|
25
|
+
return {};
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
function writeBridgesConfig(config) {
|
|
29
|
+
writeFileSync(bridgesPath(), `${JSON.stringify(config, null, 2)}
|
|
30
|
+
`, { mode: 384 });
|
|
31
|
+
}
|
|
32
|
+
function getBridgeConfig(platform) {
|
|
33
|
+
const config = readBridgesConfig();
|
|
34
|
+
return config[platform] ?? null;
|
|
35
|
+
}
|
|
36
|
+
function setBridgeConfig(platform, bridge) {
|
|
37
|
+
const config = readBridgesConfig();
|
|
38
|
+
config[platform] = bridge;
|
|
39
|
+
writeBridgesConfig(config);
|
|
40
|
+
}
|
|
41
|
+
function removeBridgeConfig(platform) {
|
|
42
|
+
const config = readBridgesConfig();
|
|
43
|
+
delete config[platform];
|
|
44
|
+
writeBridgesConfig(config);
|
|
45
|
+
}
|
|
46
|
+
function setChannelMapping(platform, externalChannel, voluteChannel) {
|
|
47
|
+
const config = readBridgesConfig();
|
|
48
|
+
const bridge = config[platform];
|
|
49
|
+
if (!bridge) throw new Error(`Bridge not configured for ${platform}`);
|
|
50
|
+
bridge.channelMappings[externalChannel] = voluteChannel;
|
|
51
|
+
writeBridgesConfig(config);
|
|
52
|
+
}
|
|
53
|
+
function removeChannelMapping(platform, externalChannel) {
|
|
54
|
+
const config = readBridgesConfig();
|
|
55
|
+
const bridge = config[platform];
|
|
56
|
+
if (!bridge) return;
|
|
57
|
+
delete bridge.channelMappings[externalChannel];
|
|
58
|
+
writeBridgesConfig(config);
|
|
59
|
+
}
|
|
60
|
+
function resolveChannelMapping(platform, externalChannel) {
|
|
61
|
+
const bridge = getBridgeConfig(platform);
|
|
62
|
+
if (!bridge) return null;
|
|
63
|
+
return bridge.channelMappings[externalChannel] ?? null;
|
|
64
|
+
}
|
|
65
|
+
function findBridgeForChannel(voluteChannelName) {
|
|
66
|
+
const config = readBridgesConfig();
|
|
67
|
+
for (const [platform, bridge] of Object.entries(config)) {
|
|
68
|
+
if (!bridge.enabled) continue;
|
|
69
|
+
for (const [external, volute] of Object.entries(bridge.channelMappings)) {
|
|
70
|
+
if (volute === voluteChannelName) {
|
|
71
|
+
return { platform, externalChannel: external };
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export {
|
|
79
|
+
readBridgesConfig,
|
|
80
|
+
getBridgeConfig,
|
|
81
|
+
setBridgeConfig,
|
|
82
|
+
removeBridgeConfig,
|
|
83
|
+
setChannelMapping,
|
|
84
|
+
removeChannelMapping,
|
|
85
|
+
resolveChannelMapping,
|
|
86
|
+
findBridgeForChannel
|
|
87
|
+
};
|
|
@@ -5,13 +5,13 @@ import {
|
|
|
5
5
|
pollHealthDown,
|
|
6
6
|
readDaemonConfig,
|
|
7
7
|
stopService
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-TNZ5XQA4.js";
|
|
9
9
|
import {
|
|
10
10
|
command
|
|
11
11
|
} from "./chunk-TXSA4Q3V.js";
|
|
12
12
|
import {
|
|
13
13
|
voluteSystemDir
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
15
15
|
|
|
16
16
|
// src/commands/down.ts
|
|
17
17
|
import { existsSync, readFileSync, unlinkSync } from "fs";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
logger_default
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-T2TP6ZC6.js";
|
|
5
5
|
import {
|
|
6
6
|
getDb
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
8
8
|
import {
|
|
9
9
|
activity
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CJ26DXZL.js";
|
|
11
11
|
|
|
12
12
|
// packages/daemon/src/lib/events/activity-events.ts
|
|
13
13
|
var subscribers = /* @__PURE__ */ new Set();
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
logger_default
|
|
4
|
-
} from "./chunk-BKF4WQCY.js";
|
|
5
2
|
import {
|
|
6
3
|
exec,
|
|
7
4
|
gitExec
|
|
8
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3F7XK5Q7.js";
|
|
9
6
|
import {
|
|
10
7
|
readGlobalConfig,
|
|
11
8
|
writeGlobalConfig
|
|
12
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-A6FLW5XD.js";
|
|
10
|
+
import {
|
|
11
|
+
logger_default
|
|
12
|
+
} from "./chunk-T2TP6ZC6.js";
|
|
13
13
|
import {
|
|
14
14
|
getDb,
|
|
15
15
|
mindDir,
|
|
16
16
|
readRegistry,
|
|
17
17
|
voluteHome
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
19
19
|
import {
|
|
20
20
|
sharedSkills
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-CJ26DXZL.js";
|
|
22
22
|
|
|
23
23
|
// packages/daemon/src/lib/skills.ts
|
|
24
24
|
import { createHash } from "crypto";
|
|
@@ -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-CLYXNGYB.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));
|
|
@@ -206,7 +206,7 @@ async function installSkill(_mindName, dir, skillId) {
|
|
|
206
206
|
const npmInstalled = [];
|
|
207
207
|
const skillMdPath = join(sourceDir, "SKILL.md");
|
|
208
208
|
if (existsSync(skillMdPath)) {
|
|
209
|
-
const { npmDependencies } = parseSkillMd(readFileSync(skillMdPath, "utf-8"));
|
|
209
|
+
const { npmDependencies, hooks, bin } = parseSkillMd(readFileSync(skillMdPath, "utf-8"));
|
|
210
210
|
if (npmDependencies.length > 0) {
|
|
211
211
|
try {
|
|
212
212
|
await exec("npm", ["install", ...npmDependencies], { cwd: dir });
|
|
@@ -219,9 +219,6 @@ async function installSkill(_mindName, dir, skillId) {
|
|
|
219
219
|
);
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
|
-
}
|
|
223
|
-
if (existsSync(skillMdPath)) {
|
|
224
|
-
const { hooks, bin } = parseSkillMd(readFileSync(skillMdPath, "utf-8"));
|
|
225
222
|
installHookShims(dir, skillId, hooks);
|
|
226
223
|
if (bin) installBinShim(dir, skillId, bin);
|
|
227
224
|
}
|
|
@@ -506,11 +503,16 @@ function listFilesRecursive(dir, prefix = "") {
|
|
|
506
503
|
}
|
|
507
504
|
return results;
|
|
508
505
|
}
|
|
506
|
+
var _skillsRoot = null;
|
|
509
507
|
function findSkillsRoot() {
|
|
508
|
+
if (_skillsRoot) return _skillsRoot;
|
|
510
509
|
let dir = dirname(new URL(import.meta.url).pathname);
|
|
511
510
|
for (let i = 0; i < 5; i++) {
|
|
512
511
|
const candidate = resolve(dir, "skills");
|
|
513
|
-
if (existsSync(candidate) && hasSkillSubdir(candidate))
|
|
512
|
+
if (existsSync(candidate) && hasSkillSubdir(candidate)) {
|
|
513
|
+
_skillsRoot = candidate;
|
|
514
|
+
return _skillsRoot;
|
|
515
|
+
}
|
|
514
516
|
dir = dirname(dir);
|
|
515
517
|
}
|
|
516
518
|
throw new Error("Skills directory not found");
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
logger_default
|
|
4
|
-
} from "./chunk-BKF4WQCY.js";
|
|
5
2
|
import {
|
|
6
3
|
readGlobalConfig,
|
|
7
4
|
writeGlobalConfig
|
|
8
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-A6FLW5XD.js";
|
|
6
|
+
import {
|
|
7
|
+
logger_default
|
|
8
|
+
} from "./chunk-T2TP6ZC6.js";
|
|
9
9
|
|
|
10
10
|
// packages/daemon/src/lib/ai-service.ts
|
|
11
11
|
import { complete, getEnvApiKey, getModel, getModels, getProviders } from "@mariozechner/pi-ai";
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import {
|
|
3
3
|
stateDir,
|
|
4
4
|
voluteSystemDir
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2NHRJ3YO.js";
|
|
6
6
|
|
|
7
|
-
// packages/daemon/src/lib/env.ts
|
|
7
|
+
// packages/daemon/src/lib/config/env.ts
|
|
8
8
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
9
9
|
import { dirname, resolve } from "path";
|
|
10
10
|
function sharedEnvPath() {
|