clawvault 2.6.0 → 3.0.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/bin/command-registration.test.js +1 -3
- package/bin/register-core-commands.js +10 -23
- package/bin/register-maintenance-commands.js +3 -20
- package/bin/register-query-commands.js +23 -0
- package/bin/register-task-commands.js +1 -18
- package/bin/register-task-commands.test.js +0 -16
- package/bin/register-vault-operations-commands.js +1 -29
- package/dist/{chunk-QVMXF7FY.js → chunk-3D6BCTP6.js} +39 -1
- package/dist/{chunk-R2MIW5G7.js → chunk-3DHXQHYG.js} +1 -1
- package/dist/{chunk-Q2J5YTUF.js → chunk-3NSBOUT3.js} +73 -36
- package/dist/chunk-3RG5ZIWI.js +10 -0
- package/dist/{chunk-AZYOKJYC.js → chunk-62YTUT6J.js} +2 -2
- package/dist/chunk-6U6MK36V.js +205 -0
- package/dist/{chunk-4QYGFWRM.js → chunk-7R7O6STJ.js} +4 -4
- package/dist/{chunk-VXEOHTSL.js → chunk-C7OK5WKP.js} +4 -4
- package/dist/chunk-CMB7UL7C.js +327 -0
- package/dist/chunk-DEFFDRVP.js +938 -0
- package/dist/{chunk-K3CDT7IH.js → chunk-E7MFQB6D.js} +61 -20
- package/dist/{chunk-ME37YNW3.js → chunk-F2JEUD4J.js} +6 -4
- package/dist/chunk-GAJV4IGR.js +82 -0
- package/dist/chunk-GQSLDZTS.js +560 -0
- package/dist/{chunk-4OXMU5S2.js → chunk-GUKMRGM7.js} +1 -1
- package/dist/{chunk-YOSEUUNB.js → chunk-H34S76MB.js} +6 -6
- package/dist/{chunk-4TE4JMLA.js → chunk-JY6FYXIT.js} +10 -5
- package/dist/chunk-K234IDRJ.js +1073 -0
- package/dist/{chunk-IEVLHNLU.js → chunk-LNJA2UGL.js} +86 -9
- package/dist/{chunk-MFAWT5O5.js → chunk-LYHGEHXG.js} +1 -0
- package/dist/chunk-MFM6K7PU.js +374 -0
- package/dist/{chunk-QWQ3TIKS.js → chunk-N2AXRYLC.js} +1 -1
- package/dist/chunk-PAH27GSN.js +108 -0
- package/dist/{chunk-OIWVQYQF.js → chunk-QBLMXKF2.js} +1 -1
- package/dist/{chunk-FHFUXL6G.js → chunk-QK3UCXWL.js} +2 -2
- package/dist/{chunk-2YDBJS7M.js → chunk-SJSFRIYS.js} +1 -1
- package/dist/{chunk-GSD4ALSI.js → chunk-U55BGUAU.js} +2 -2
- package/dist/{chunk-PBEE567J.js → chunk-VGLOTGAS.js} +1 -1
- package/dist/{chunk-F55HGNU4.js → chunk-WAZ3NLWL.js} +47 -0
- package/dist/{chunk-KL4NAOMO.js → chunk-WGRQ6HDV.js} +1 -1
- package/dist/{chunk-UEOUADMO.js → chunk-YKTA5JOJ.js} +13 -10
- package/dist/{chunk-XAVB4GB4.js → chunk-ZVVFWOLW.js} +4 -4
- package/dist/cli/index.cjs +10033 -0
- package/dist/cli/index.d.cts +5 -0
- package/dist/cli/index.js +20 -18
- package/dist/commands/archive.cjs +287 -0
- package/dist/commands/archive.d.cts +11 -0
- package/dist/commands/archive.js +1 -0
- package/dist/commands/backlog.cjs +721 -0
- package/dist/commands/backlog.d.cts +53 -0
- package/dist/commands/backlog.js +3 -2
- package/dist/commands/blocked.cjs +204 -0
- package/dist/commands/blocked.d.cts +26 -0
- package/dist/commands/blocked.js +3 -2
- package/dist/commands/checkpoint.cjs +244 -0
- package/dist/commands/checkpoint.d.cts +41 -0
- package/dist/commands/checkpoint.js +2 -1
- package/dist/commands/compat.cjs +369 -0
- package/dist/commands/compat.d.cts +28 -0
- package/dist/commands/compat.js +2 -1
- package/dist/commands/context.cjs +2989 -0
- package/dist/commands/context.d.cts +2 -0
- package/dist/commands/context.js +5 -4
- package/dist/commands/doctor.cjs +3062 -0
- package/dist/commands/doctor.d.cts +21 -0
- package/dist/commands/doctor.d.ts +6 -1
- package/dist/commands/doctor.js +13 -11
- package/dist/commands/embed.cjs +232 -0
- package/dist/commands/embed.d.cts +17 -0
- package/dist/commands/embed.js +5 -2
- package/dist/commands/entities.cjs +141 -0
- package/dist/commands/entities.d.cts +7 -0
- package/dist/commands/entities.js +1 -0
- package/dist/commands/graph.cjs +501 -0
- package/dist/commands/graph.d.cts +21 -0
- package/dist/commands/graph.js +1 -0
- package/dist/commands/inject.cjs +1636 -0
- package/dist/commands/inject.d.cts +2 -0
- package/dist/commands/inject.d.ts +1 -1
- package/dist/commands/inject.js +4 -2
- package/dist/commands/kanban.cjs +884 -0
- package/dist/commands/kanban.d.cts +63 -0
- package/dist/commands/kanban.js +4 -3
- package/dist/commands/link.cjs +965 -0
- package/dist/commands/link.d.cts +11 -0
- package/dist/commands/link.js +1 -0
- package/dist/commands/migrate-observations.cjs +362 -0
- package/dist/commands/migrate-observations.d.cts +19 -0
- package/dist/commands/migrate-observations.js +3 -2
- package/dist/commands/observe.cjs +4099 -0
- package/dist/commands/observe.d.cts +23 -0
- package/dist/commands/observe.d.ts +1 -0
- package/dist/commands/observe.js +11 -9
- package/dist/commands/project.cjs +1341 -0
- package/dist/commands/project.d.cts +85 -0
- package/dist/commands/project.js +5 -4
- package/dist/commands/rebuild.cjs +3136 -0
- package/dist/commands/rebuild.d.cts +11 -0
- package/dist/commands/rebuild.js +10 -8
- package/dist/commands/recover.cjs +361 -0
- package/dist/commands/recover.d.cts +38 -0
- package/dist/commands/recover.js +3 -2
- package/dist/commands/reflect.cjs +1008 -0
- package/dist/commands/reflect.d.cts +11 -0
- package/dist/commands/reflect.js +6 -4
- package/dist/commands/repair-session.cjs +457 -0
- package/dist/commands/repair-session.d.cts +38 -0
- package/dist/commands/repair-session.js +1 -0
- package/dist/commands/replay.cjs +4103 -0
- package/dist/commands/replay.d.cts +16 -0
- package/dist/commands/replay.js +12 -10
- package/dist/commands/session-recap.cjs +353 -0
- package/dist/commands/session-recap.d.cts +27 -0
- package/dist/commands/session-recap.js +1 -0
- package/dist/commands/setup.cjs +1345 -0
- package/dist/commands/setup.d.cts +100 -0
- package/dist/commands/setup.d.ts +90 -2
- package/dist/commands/setup.js +21 -2
- package/dist/commands/shell-init.cjs +75 -0
- package/dist/commands/shell-init.d.cts +7 -0
- package/dist/commands/shell-init.js +2 -0
- package/dist/commands/sleep.cjs +6028 -0
- package/dist/commands/sleep.d.cts +36 -0
- package/dist/commands/sleep.d.ts +1 -1
- package/dist/commands/sleep.js +17 -15
- package/dist/commands/status.cjs +2736 -0
- package/dist/commands/status.d.cts +52 -0
- package/dist/commands/status.js +12 -10
- package/dist/commands/tailscale.cjs +1532 -0
- package/dist/commands/tailscale.d.cts +52 -0
- package/dist/commands/tailscale.js +1 -0
- package/dist/commands/task.cjs +1236 -0
- package/dist/commands/task.d.cts +97 -0
- package/dist/commands/task.js +4 -3
- package/dist/commands/template.cjs +457 -0
- package/dist/commands/template.d.cts +36 -0
- package/dist/commands/template.js +2 -1
- package/dist/commands/wake.cjs +2626 -0
- package/dist/commands/wake.d.cts +22 -0
- package/dist/commands/wake.d.ts +1 -1
- package/dist/commands/wake.js +12 -11
- package/dist/context-BUGaWpyL.d.cts +46 -0
- package/dist/index.cjs +14526 -0
- package/dist/index.d.cts +858 -0
- package/dist/index.d.ts +192 -7
- package/dist/index.js +101 -75
- package/dist/{inject-x65KXWPk.d.ts → inject-Bzi5E-By.d.cts} +1 -1
- package/dist/inject-Bzi5E-By.d.ts +137 -0
- package/dist/lib/auto-linker.cjs +176 -0
- package/dist/lib/auto-linker.d.cts +26 -0
- package/dist/lib/auto-linker.js +1 -0
- package/dist/lib/canvas-layout.cjs +136 -0
- package/dist/lib/canvas-layout.d.cts +31 -0
- package/dist/lib/canvas-layout.d.ts +16 -100
- package/dist/lib/canvas-layout.js +78 -20
- package/dist/lib/config.cjs +78 -0
- package/dist/lib/config.d.cts +11 -0
- package/dist/lib/config.js +1 -0
- package/dist/lib/entity-index.cjs +84 -0
- package/dist/lib/entity-index.d.cts +26 -0
- package/dist/lib/entity-index.js +1 -0
- package/dist/lib/project-utils.cjs +864 -0
- package/dist/lib/project-utils.d.cts +97 -0
- package/dist/lib/project-utils.js +4 -3
- package/dist/lib/session-repair.cjs +239 -0
- package/dist/lib/session-repair.d.cts +110 -0
- package/dist/lib/session-repair.js +1 -0
- package/dist/lib/session-utils.cjs +209 -0
- package/dist/lib/session-utils.d.cts +63 -0
- package/dist/lib/session-utils.js +1 -0
- package/dist/lib/tailscale.cjs +1183 -0
- package/dist/lib/tailscale.d.cts +225 -0
- package/dist/lib/tailscale.js +1 -0
- package/dist/lib/task-utils.cjs +1137 -0
- package/dist/lib/task-utils.d.cts +208 -0
- package/dist/lib/task-utils.js +3 -2
- package/dist/lib/template-engine.cjs +47 -0
- package/dist/lib/template-engine.d.cts +11 -0
- package/dist/lib/template-engine.js +1 -0
- package/dist/lib/webdav.cjs +568 -0
- package/dist/lib/webdav.d.cts +109 -0
- package/dist/lib/webdav.js +1 -0
- package/dist/plugin/index.cjs +1907 -0
- package/dist/plugin/index.d.cts +36 -0
- package/dist/plugin/index.d.ts +36 -0
- package/dist/plugin/index.js +572 -0
- package/dist/plugin/inject.cjs +356 -0
- package/dist/plugin/inject.d.cts +54 -0
- package/dist/plugin/inject.d.ts +54 -0
- package/dist/plugin/inject.js +17 -0
- package/dist/plugin/observe.cjs +631 -0
- package/dist/plugin/observe.d.cts +39 -0
- package/dist/plugin/observe.d.ts +39 -0
- package/dist/plugin/observe.js +18 -0
- package/dist/plugin/templates.cjs +593 -0
- package/dist/plugin/templates.d.cts +52 -0
- package/dist/plugin/templates.d.ts +52 -0
- package/dist/plugin/templates.js +25 -0
- package/dist/plugin/types.cjs +18 -0
- package/dist/plugin/types.d.cts +209 -0
- package/dist/plugin/types.d.ts +209 -0
- package/dist/plugin/types.js +0 -0
- package/dist/plugin/vault.cjs +927 -0
- package/dist/plugin/vault.d.cts +68 -0
- package/dist/plugin/vault.d.ts +68 -0
- package/dist/plugin/vault.js +22 -0
- package/dist/{types-C74wgGL1.d.ts → types-Y2_Um2Ls.d.cts} +44 -1
- package/dist/types-Y2_Um2Ls.d.ts +205 -0
- package/hooks/clawvault/handler.js +70 -7
- package/hooks/clawvault/handler.test.js +91 -0
- package/openclaw.plugin.json +56 -0
- package/package.json +17 -7
- package/templates/memory-event.md +67 -0
- package/templates/party.md +63 -0
- package/templates/primitive-registry.yaml +551 -0
- package/templates/run.md +68 -0
- package/templates/trigger.md +68 -0
- package/templates/workspace.md +50 -0
- package/dashboard/lib/graph-diff.js +0 -104
- package/dashboard/lib/graph-diff.test.js +0 -75
- package/dashboard/lib/vault-parser.js +0 -556
- package/dashboard/lib/vault-parser.test.js +0 -254
- package/dashboard/public/app.js +0 -796
- package/dashboard/public/index.html +0 -52
- package/dashboard/public/styles.css +0 -221
- package/dashboard/server.js +0 -374
- package/dist/chunk-HA5M6KJB.js +0 -33
- package/dist/chunk-MAKNAHAW.js +0 -375
- package/dist/chunk-MDIH26GC.js +0 -183
- package/dist/chunk-MGDEINGP.js +0 -99
- package/dist/chunk-RVYA52PY.js +0 -363
- package/dist/commands/canvas.d.ts +0 -15
- package/dist/commands/canvas.js +0 -199
- package/dist/commands/sync-bd.d.ts +0 -10
- package/dist/commands/sync-bd.js +0 -9
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
requestLlmCompletion,
|
|
3
3
|
resolveLlmProvider
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-E7MFQB6D.js";
|
|
5
5
|
import {
|
|
6
6
|
listConfig
|
|
7
7
|
} from "./chunk-ITPEXLHA.js";
|
|
@@ -563,7 +563,7 @@ async function runPromptInjection(vaultPathInput, message, options = {}) {
|
|
|
563
563
|
const deterministicMs = Date.now() - startDeterministic;
|
|
564
564
|
let llmProvider = null;
|
|
565
565
|
if (useLlm) {
|
|
566
|
-
llmProvider = resolveLlmProvider();
|
|
566
|
+
llmProvider = await resolveLlmProvider();
|
|
567
567
|
if (llmProvider) {
|
|
568
568
|
try {
|
|
569
569
|
matches = await addLlmIntentMatches({
|
|
@@ -7,6 +7,8 @@ var CHECKPOINT_FILE = "last-checkpoint.json";
|
|
|
7
7
|
var SESSION_STATE_FILE = "session-state.json";
|
|
8
8
|
var DIRTY_DEATH_FLAG = "dirty-death.flag";
|
|
9
9
|
var CHECKPOINT_HISTORY_DIR = "checkpoints";
|
|
10
|
+
var CHECKPOINT_RETENTION_MAX_COUNT = 50;
|
|
11
|
+
var CHECKPOINT_RETENTION_MAX_AGE_MS = 7 * 24 * 60 * 60 * 1e3;
|
|
10
12
|
var pendingCheckpoint = null;
|
|
11
13
|
var pendingData = null;
|
|
12
14
|
function ensureClawvaultDir(vaultPath) {
|
|
@@ -16,6 +18,50 @@ function ensureClawvaultDir(vaultPath) {
|
|
|
16
18
|
}
|
|
17
19
|
return dir;
|
|
18
20
|
}
|
|
21
|
+
function readCheckpointHistoryEntries(historyDir) {
|
|
22
|
+
const entries = [];
|
|
23
|
+
const files = fs.readdirSync(historyDir).filter((entry) => entry.endsWith(".json"));
|
|
24
|
+
for (const fileName of files) {
|
|
25
|
+
const filePath = path.join(historyDir, fileName);
|
|
26
|
+
try {
|
|
27
|
+
const parsed = JSON.parse(fs.readFileSync(filePath, "utf-8"));
|
|
28
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
const timestamp = typeof parsed.timestamp === "string" ? parsed.timestamp : "";
|
|
32
|
+
const timestampMs = Date.parse(timestamp);
|
|
33
|
+
if (Number.isNaN(timestampMs)) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
entries.push({ filePath, timestampMs });
|
|
37
|
+
} catch {
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return entries.sort((left, right) => {
|
|
41
|
+
if (right.timestampMs !== left.timestampMs) {
|
|
42
|
+
return right.timestampMs - left.timestampMs;
|
|
43
|
+
}
|
|
44
|
+
return right.filePath.localeCompare(left.filePath);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
function pruneCheckpointHistory(historyDir, nowMs) {
|
|
48
|
+
if (!fs.existsSync(historyDir)) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const entries = readCheckpointHistoryEntries(historyDir);
|
|
52
|
+
if (entries.length <= CHECKPOINT_RETENTION_MAX_COUNT) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
for (let index = CHECKPOINT_RETENTION_MAX_COUNT; index < entries.length; index += 1) {
|
|
56
|
+
const ageMs = nowMs - entries[index].timestampMs;
|
|
57
|
+
if (ageMs > CHECKPOINT_RETENTION_MAX_AGE_MS) {
|
|
58
|
+
try {
|
|
59
|
+
fs.unlinkSync(entries[index].filePath);
|
|
60
|
+
} catch {
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
19
65
|
function writeCheckpointToDisk(dir, data) {
|
|
20
66
|
const checkpointPath = path.join(dir, CHECKPOINT_FILE);
|
|
21
67
|
fs.writeFileSync(checkpointPath, JSON.stringify(data, null, 2));
|
|
@@ -24,6 +70,7 @@ function writeCheckpointToDisk(dir, data) {
|
|
|
24
70
|
const historyFileName = `${data.timestamp.replace(/[:.]/g, "-")}.json`;
|
|
25
71
|
const historyPath = path.join(historyDir, historyFileName);
|
|
26
72
|
fs.writeFileSync(historyPath, JSON.stringify(data, null, 2));
|
|
73
|
+
pruneCheckpointHistory(historyDir, Date.now());
|
|
27
74
|
const flagPath = path.join(dir, DIRTY_DEATH_FLAG);
|
|
28
75
|
fs.writeFileSync(flagPath, data.timestamp);
|
|
29
76
|
}
|
|
@@ -6,20 +6,20 @@ import {
|
|
|
6
6
|
} from "./chunk-4VQTUVH7.js";
|
|
7
7
|
import {
|
|
8
8
|
getObserverStaleness
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-LNJA2UGL.js";
|
|
10
|
+
import {
|
|
11
|
+
checkOpenClawCompatibility
|
|
12
|
+
} from "./chunk-3D6BCTP6.js";
|
|
10
13
|
import {
|
|
11
14
|
ClawVault,
|
|
12
15
|
findVault
|
|
13
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-WGRQ6HDV.js";
|
|
14
17
|
import {
|
|
15
18
|
hasQmd
|
|
16
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-K234IDRJ.js";
|
|
17
20
|
import {
|
|
18
21
|
loadMemoryGraphIndex
|
|
19
22
|
} from "./chunk-ZZA73MFY.js";
|
|
20
|
-
import {
|
|
21
|
-
checkOpenClawCompatibility
|
|
22
|
-
} from "./chunk-QVMXF7FY.js";
|
|
23
23
|
|
|
24
24
|
// src/commands/doctor.ts
|
|
25
25
|
import * as fs from "fs";
|
|
@@ -51,7 +51,7 @@ function getShellConfigPaths(shellPath) {
|
|
|
51
51
|
const home = os.homedir();
|
|
52
52
|
const shellName = shellPath ? path.basename(shellPath) : "bash";
|
|
53
53
|
if (shellName === "zsh") {
|
|
54
|
-
return [path.join(home, ".zshrc"), path.join(home, ".zprofile")];
|
|
54
|
+
return [path.join(home, ".zshenv"), path.join(home, ".zshrc"), path.join(home, ".zprofile")];
|
|
55
55
|
}
|
|
56
56
|
if (shellName === "fish") {
|
|
57
57
|
return [path.join(home, ".config", "fish", "config.fish")];
|
|
@@ -89,7 +89,9 @@ async function resolveVault(vaultPath) {
|
|
|
89
89
|
}
|
|
90
90
|
return found;
|
|
91
91
|
}
|
|
92
|
-
async function doctor(
|
|
92
|
+
async function doctor(options) {
|
|
93
|
+
const vaultPath = typeof options === "string" ? options : options?.vaultPath;
|
|
94
|
+
const _fix = typeof options === "object" ? options?.fix : false;
|
|
93
95
|
const checks = [];
|
|
94
96
|
let warnings = 0;
|
|
95
97
|
let errors = 0;
|
|
@@ -157,11 +159,12 @@ async function doctor(vaultPath) {
|
|
|
157
159
|
errors++;
|
|
158
160
|
return { vaultPath, checks, warnings, errors };
|
|
159
161
|
}
|
|
162
|
+
const qmdCollection = vault.getQmdCollection();
|
|
163
|
+
const qmdRoot = vault.getQmdRoot();
|
|
160
164
|
const stats = await vault.stats();
|
|
161
165
|
const documents = await vault.list();
|
|
162
166
|
const handoffs = await vault.list("handoffs");
|
|
163
167
|
const inbox = await vault.list("inbox");
|
|
164
|
-
const qmdCollection = vault.getQmdCollection();
|
|
165
168
|
if (qmdCollection) {
|
|
166
169
|
checks.push({ label: "qmd collection configured", status: "ok", detail: qmdCollection });
|
|
167
170
|
} else {
|
|
@@ -324,7 +327,7 @@ async function doctor(vaultPath) {
|
|
|
324
327
|
});
|
|
325
328
|
warnings++;
|
|
326
329
|
}
|
|
327
|
-
return { vaultPath: vault.getPath(), checks, warnings, errors };
|
|
330
|
+
return { vaultPath: vault.getPath(), qmdCollection, qmdRoot, checks, warnings, errors };
|
|
328
331
|
}
|
|
329
332
|
|
|
330
333
|
export {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ClawVault
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import {
|
|
5
|
-
parseObservationMarkdown
|
|
6
|
-
} from "./chunk-FHFUXL6G.js";
|
|
3
|
+
} from "./chunk-WGRQ6HDV.js";
|
|
7
4
|
import {
|
|
8
5
|
getMemoryGraph
|
|
9
6
|
} from "./chunk-ZZA73MFY.js";
|
|
7
|
+
import {
|
|
8
|
+
parseObservationMarkdown
|
|
9
|
+
} from "./chunk-QK3UCXWL.js";
|
|
10
10
|
import {
|
|
11
11
|
listObservationFiles
|
|
12
12
|
} from "./chunk-Z2XBWN7A.js";
|