clawvault 3.1.0 → 3.2.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 (289) hide show
  1. package/README.md +422 -141
  2. package/bin/clawvault.js +10 -2
  3. package/bin/command-registration.test.js +3 -1
  4. package/bin/command-runtime.js +9 -1
  5. package/bin/register-core-commands.js +23 -28
  6. package/bin/register-maintenance-commands.js +39 -3
  7. package/bin/register-query-commands.js +58 -29
  8. package/bin/register-tailscale-commands.js +106 -0
  9. package/bin/register-task-commands.js +18 -1
  10. package/bin/register-task-commands.test.js +16 -0
  11. package/bin/register-vault-operations-commands.js +29 -1
  12. package/bin/register-workgraph-commands.js +1368 -0
  13. package/dashboard/lib/graph-diff.js +104 -0
  14. package/dashboard/lib/graph-diff.test.js +75 -0
  15. package/dashboard/lib/vault-parser.js +556 -0
  16. package/dashboard/lib/vault-parser.test.js +254 -0
  17. package/dashboard/public/app.js +796 -0
  18. package/dashboard/public/index.html +52 -0
  19. package/dashboard/public/styles.css +221 -0
  20. package/dashboard/server.js +374 -0
  21. package/dist/{chunk-F2JEUD4J.js → chunk-23YDQ3QU.js} +6 -8
  22. package/dist/{chunk-C7OK5WKP.js → chunk-2JQ3O2YL.js} +4 -4
  23. package/dist/{chunk-VR5NE7PZ.js → chunk-2RAZ4ZFE.js} +1 -1
  24. package/dist/chunk-2ZDO52B4.js +52 -0
  25. package/dist/{chunk-ZZA73MFY.js → chunk-33DOSHTA.js} +176 -36
  26. package/dist/chunk-33VSQP4J.js +37 -0
  27. package/dist/chunk-4BQTQMJP.js +93 -0
  28. package/dist/{chunk-GUKMRGM7.js → chunk-4OXMU5S2.js} +1 -1
  29. package/dist/{chunk-62YTUT6J.js → chunk-4PY655YM.js} +15 -3
  30. package/dist/chunk-6FH3IULF.js +352 -0
  31. package/dist/{chunk-3NSBOUT3.js → chunk-77Q5CSPJ.js} +404 -80
  32. package/dist/{chunk-4VQTUVH7.js → chunk-7YZWHM36.js} +52 -26
  33. package/dist/chunk-BSJ6RIT7.js +447 -0
  34. package/dist/chunk-BUEW6IIK.js +364 -0
  35. package/dist/{chunk-LI4O6NVK.js → chunk-CLJTREDS.js} +74 -14
  36. package/dist/chunk-EK6S23ZB.js +469 -0
  37. package/dist/{chunk-LNJA2UGL.js → chunk-ESFLMDRB.js} +9 -86
  38. package/dist/{chunk-H34S76MB.js → chunk-ESVS6K2B.js} +6 -6
  39. package/dist/{chunk-WAZ3NLWL.js → chunk-F55HGNU4.js} +0 -47
  40. package/dist/{chunk-QK3UCXWL.js → chunk-FHFUXL6G.js} +2 -2
  41. package/dist/{chunk-H62BP7RI.js → chunk-GAOWA7GR.js} +212 -46
  42. package/dist/chunk-GGA32J2R.js +784 -0
  43. package/dist/chunk-GNJL4YGR.js +79 -0
  44. package/dist/chunk-IVRIKYFE.js +520 -0
  45. package/dist/chunk-MDIH26GC.js +183 -0
  46. package/dist/{chunk-LYHGEHXG.js → chunk-MFAWT5O5.js} +0 -1
  47. package/dist/chunk-MM6QGW3P.js +207 -0
  48. package/dist/{chunk-P5EPF6MB.js → chunk-MW5C6ZQA.js} +110 -13
  49. package/dist/chunk-NCKFNBHJ.js +257 -0
  50. package/dist/{chunk-QBLMXKF2.js → chunk-OIWVQYQF.js} +1 -1
  51. package/dist/{chunk-42MXU7A6.js → chunk-P62WHA27.js} +58 -47
  52. package/dist/chunk-PBACDKKP.js +66 -0
  53. package/dist/{chunk-VGLOTGAS.js → chunk-QSHD36LH.js} +2 -2
  54. package/dist/{chunk-OZ7RIXTO.js → chunk-QSRRMEYM.js} +2 -2
  55. package/dist/chunk-QVEERJSP.js +152 -0
  56. package/dist/{chunk-N2AXRYLC.js → chunk-QWQ3TIKS.js} +1 -1
  57. package/dist/{chunk-3DHXQHYG.js → chunk-R2MIW5G7.js} +1 -1
  58. package/dist/{chunk-SJSFRIYS.js → chunk-SLXOR3CC.js} +2 -2
  59. package/dist/chunk-SS4B7P7V.js +99 -0
  60. package/dist/{chunk-JY6FYXIT.js → chunk-STCQGCEQ.js} +6 -11
  61. package/dist/chunk-TIGW564L.js +628 -0
  62. package/dist/chunk-U4O6C46S.js +154 -0
  63. package/dist/{chunk-ITPEXLHA.js → chunk-URXDAUVH.js} +24 -5
  64. package/dist/chunk-VSL7KY3M.js +189 -0
  65. package/dist/{chunk-U55BGUAU.js → chunk-W4SPAEE7.js} +6 -6
  66. package/dist/chunk-WMGIIABP.js +15 -0
  67. package/dist/{chunk-33UGEQRT.js → chunk-X3SPPUFG.js} +151 -64
  68. package/dist/chunk-Y6VJKXGL.js +373 -0
  69. package/dist/{chunk-3WRJEKN4.js → chunk-ZN54U2OZ.js} +123 -10
  70. package/dist/cli/index.js +34 -24
  71. package/dist/commands/archive.js +3 -3
  72. package/dist/commands/backlog.js +3 -3
  73. package/dist/commands/blocked.js +3 -3
  74. package/dist/commands/canvas.d.ts +15 -0
  75. package/dist/commands/canvas.js +200 -0
  76. package/dist/commands/checkpoint.js +2 -2
  77. package/dist/commands/compat.js +2 -2
  78. package/dist/commands/context.js +8 -6
  79. package/dist/commands/doctor.d.ts +11 -7
  80. package/dist/commands/doctor.js +18 -16
  81. package/dist/commands/embed.js +5 -6
  82. package/dist/commands/entities.js +2 -2
  83. package/dist/commands/graph.js +4 -4
  84. package/dist/commands/inject.d.ts +1 -1
  85. package/dist/commands/inject.js +5 -6
  86. package/dist/commands/kanban.js +4 -4
  87. package/dist/commands/link.js +5 -5
  88. package/dist/commands/migrate-observations.js +4 -4
  89. package/dist/commands/observe.d.ts +0 -1
  90. package/dist/commands/observe.js +14 -13
  91. package/dist/commands/project.js +5 -5
  92. package/dist/commands/rebuild-embeddings.d.ts +21 -0
  93. package/dist/commands/rebuild-embeddings.js +91 -0
  94. package/dist/commands/rebuild.js +12 -11
  95. package/dist/commands/recover.js +3 -3
  96. package/dist/commands/reflect.js +6 -7
  97. package/dist/commands/repair-session.js +1 -1
  98. package/dist/commands/replay.js +14 -14
  99. package/dist/commands/session-recap.js +1 -1
  100. package/dist/commands/setup.d.ts +2 -89
  101. package/dist/commands/setup.js +3 -21
  102. package/dist/commands/shell-init.js +1 -1
  103. package/dist/commands/sleep.d.ts +1 -1
  104. package/dist/commands/sleep.js +20 -19
  105. package/dist/commands/status.d.ts +2 -0
  106. package/dist/commands/status.js +57 -35
  107. package/dist/commands/sync-bd.d.ts +10 -0
  108. package/dist/commands/sync-bd.js +10 -0
  109. package/dist/commands/tailscale.d.ts +52 -0
  110. package/dist/commands/tailscale.js +26 -0
  111. package/dist/commands/task.js +4 -4
  112. package/dist/commands/template.js +2 -2
  113. package/dist/commands/wake.d.ts +1 -1
  114. package/dist/commands/wake.js +11 -10
  115. package/dist/commands/workgraph.d.ts +124 -0
  116. package/dist/commands/workgraph.js +38 -0
  117. package/dist/index.d.ts +341 -191
  118. package/dist/index.js +446 -116
  119. package/dist/{inject-Bzi5E-By.d.ts → inject-DYUrDqQO.d.ts} +3 -3
  120. package/dist/ledger-B7g7jhqG.d.ts +44 -0
  121. package/dist/lib/auto-linker.js +2 -2
  122. package/dist/lib/canvas-layout.d.ts +115 -0
  123. package/dist/lib/canvas-layout.js +35 -0
  124. package/dist/lib/config.d.ts +27 -3
  125. package/dist/lib/config.js +4 -2
  126. package/dist/lib/entity-index.js +1 -1
  127. package/dist/lib/project-utils.js +4 -4
  128. package/dist/lib/session-repair.js +1 -1
  129. package/dist/lib/session-utils.js +1 -1
  130. package/dist/lib/tailscale.d.ts +225 -0
  131. package/dist/lib/tailscale.js +50 -0
  132. package/dist/lib/task-utils.js +3 -3
  133. package/dist/lib/template-engine.js +1 -1
  134. package/dist/lib/webdav.d.ts +109 -0
  135. package/dist/lib/webdav.js +35 -0
  136. package/dist/onnxruntime_binding-5QEF3SUC.node +0 -0
  137. package/dist/onnxruntime_binding-BKPKNEGC.node +0 -0
  138. package/dist/onnxruntime_binding-FMOXGIUT.node +0 -0
  139. package/dist/onnxruntime_binding-OI2KMXC5.node +0 -0
  140. package/dist/onnxruntime_binding-UX44MLAZ.node +0 -0
  141. package/dist/onnxruntime_binding-Y2W7N7WY.node +0 -0
  142. package/dist/openclaw-plugin.d.ts +8 -0
  143. package/dist/openclaw-plugin.js +14 -0
  144. package/dist/registry-BR4326o0.d.ts +30 -0
  145. package/dist/store-CA-6sKCJ.d.ts +34 -0
  146. package/dist/thread-B9LhXNU0.d.ts +41 -0
  147. package/dist/transformers.node-A2ZRORSQ.js +46775 -0
  148. package/dist/{types-Y2_Um2Ls.d.ts → types-BbWJoC1c.d.ts} +1 -44
  149. package/dist/workgraph/index.d.ts +5 -0
  150. package/dist/workgraph/index.js +23 -0
  151. package/dist/workgraph/ledger.d.ts +2 -0
  152. package/dist/workgraph/ledger.js +25 -0
  153. package/dist/workgraph/registry.d.ts +2 -0
  154. package/dist/workgraph/registry.js +19 -0
  155. package/dist/workgraph/store.d.ts +2 -0
  156. package/dist/workgraph/store.js +25 -0
  157. package/dist/workgraph/thread.d.ts +2 -0
  158. package/dist/workgraph/thread.js +25 -0
  159. package/dist/workgraph/types.d.ts +54 -0
  160. package/dist/workgraph/types.js +7 -0
  161. package/hooks/clawvault/HOOK.md +113 -0
  162. package/hooks/clawvault/handler.js +1561 -0
  163. package/hooks/clawvault/handler.test.js +510 -0
  164. package/hooks/clawvault/openclaw.plugin.json +72 -0
  165. package/openclaw.plugin.json +65 -38
  166. package/package.json +25 -22
  167. package/dist/chunk-3RG5ZIWI.js +0 -10
  168. package/dist/chunk-3ZIH425O.js +0 -871
  169. package/dist/chunk-6U6MK36V.js +0 -205
  170. package/dist/chunk-CMB7UL7C.js +0 -327
  171. package/dist/chunk-D2H45LON.js +0 -1074
  172. package/dist/chunk-E7MFQB6D.js +0 -163
  173. package/dist/chunk-GQSLDZTS.js +0 -560
  174. package/dist/chunk-MFM6K7PU.js +0 -374
  175. package/dist/chunk-MXSSG3QU.js +0 -42
  176. package/dist/chunk-OCGVIN3L.js +0 -88
  177. package/dist/chunk-PAH27GSN.js +0 -108
  178. package/dist/chunk-YCUNCH2I.js +0 -78
  179. package/dist/cli/index.cjs +0 -8584
  180. package/dist/cli/index.d.cts +0 -5
  181. package/dist/commands/archive.cjs +0 -287
  182. package/dist/commands/archive.d.cts +0 -11
  183. package/dist/commands/backlog.cjs +0 -721
  184. package/dist/commands/backlog.d.cts +0 -53
  185. package/dist/commands/blocked.cjs +0 -204
  186. package/dist/commands/blocked.d.cts +0 -26
  187. package/dist/commands/checkpoint.cjs +0 -244
  188. package/dist/commands/checkpoint.d.cts +0 -41
  189. package/dist/commands/compat.cjs +0 -294
  190. package/dist/commands/compat.d.cts +0 -28
  191. package/dist/commands/context.cjs +0 -2990
  192. package/dist/commands/context.d.cts +0 -2
  193. package/dist/commands/doctor.cjs +0 -2986
  194. package/dist/commands/doctor.d.cts +0 -21
  195. package/dist/commands/embed.cjs +0 -232
  196. package/dist/commands/embed.d.cts +0 -17
  197. package/dist/commands/entities.cjs +0 -141
  198. package/dist/commands/entities.d.cts +0 -7
  199. package/dist/commands/graph.cjs +0 -501
  200. package/dist/commands/graph.d.cts +0 -21
  201. package/dist/commands/inject.cjs +0 -1636
  202. package/dist/commands/inject.d.cts +0 -2
  203. package/dist/commands/kanban.cjs +0 -884
  204. package/dist/commands/kanban.d.cts +0 -63
  205. package/dist/commands/link.cjs +0 -965
  206. package/dist/commands/link.d.cts +0 -11
  207. package/dist/commands/migrate-observations.cjs +0 -362
  208. package/dist/commands/migrate-observations.d.cts +0 -19
  209. package/dist/commands/observe.cjs +0 -4099
  210. package/dist/commands/observe.d.cts +0 -23
  211. package/dist/commands/project.cjs +0 -1341
  212. package/dist/commands/project.d.cts +0 -85
  213. package/dist/commands/rebuild.cjs +0 -3136
  214. package/dist/commands/rebuild.d.cts +0 -11
  215. package/dist/commands/recover.cjs +0 -361
  216. package/dist/commands/recover.d.cts +0 -38
  217. package/dist/commands/reflect.cjs +0 -1008
  218. package/dist/commands/reflect.d.cts +0 -11
  219. package/dist/commands/repair-session.cjs +0 -457
  220. package/dist/commands/repair-session.d.cts +0 -38
  221. package/dist/commands/replay.cjs +0 -4103
  222. package/dist/commands/replay.d.cts +0 -16
  223. package/dist/commands/session-recap.cjs +0 -353
  224. package/dist/commands/session-recap.d.cts +0 -27
  225. package/dist/commands/setup.cjs +0 -1278
  226. package/dist/commands/setup.d.cts +0 -99
  227. package/dist/commands/shell-init.cjs +0 -75
  228. package/dist/commands/shell-init.d.cts +0 -7
  229. package/dist/commands/sleep.cjs +0 -6029
  230. package/dist/commands/sleep.d.cts +0 -36
  231. package/dist/commands/status.cjs +0 -2737
  232. package/dist/commands/status.d.cts +0 -52
  233. package/dist/commands/task.cjs +0 -1236
  234. package/dist/commands/task.d.cts +0 -97
  235. package/dist/commands/template.cjs +0 -457
  236. package/dist/commands/template.d.cts +0 -36
  237. package/dist/commands/wake.cjs +0 -2627
  238. package/dist/commands/wake.d.cts +0 -22
  239. package/dist/context-BUGaWpyL.d.cts +0 -46
  240. package/dist/index.cjs +0 -12373
  241. package/dist/index.d.cts +0 -854
  242. package/dist/inject-Bzi5E-By.d.cts +0 -137
  243. package/dist/lib/auto-linker.cjs +0 -176
  244. package/dist/lib/auto-linker.d.cts +0 -26
  245. package/dist/lib/config.cjs +0 -78
  246. package/dist/lib/config.d.cts +0 -11
  247. package/dist/lib/entity-index.cjs +0 -84
  248. package/dist/lib/entity-index.d.cts +0 -26
  249. package/dist/lib/project-utils.cjs +0 -864
  250. package/dist/lib/project-utils.d.cts +0 -97
  251. package/dist/lib/session-repair.cjs +0 -239
  252. package/dist/lib/session-repair.d.cts +0 -110
  253. package/dist/lib/session-utils.cjs +0 -209
  254. package/dist/lib/session-utils.d.cts +0 -63
  255. package/dist/lib/task-utils.cjs +0 -1137
  256. package/dist/lib/task-utils.d.cts +0 -208
  257. package/dist/lib/template-engine.cjs +0 -47
  258. package/dist/lib/template-engine.d.cts +0 -11
  259. package/dist/plugin/index.cjs +0 -1907
  260. package/dist/plugin/index.d.cts +0 -36
  261. package/dist/plugin/index.d.ts +0 -36
  262. package/dist/plugin/index.js +0 -572
  263. package/dist/plugin/inject.cjs +0 -356
  264. package/dist/plugin/inject.d.cts +0 -54
  265. package/dist/plugin/inject.d.ts +0 -54
  266. package/dist/plugin/inject.js +0 -17
  267. package/dist/plugin/observe.cjs +0 -631
  268. package/dist/plugin/observe.d.cts +0 -39
  269. package/dist/plugin/observe.d.ts +0 -39
  270. package/dist/plugin/observe.js +0 -18
  271. package/dist/plugin/templates.cjs +0 -593
  272. package/dist/plugin/templates.d.cts +0 -52
  273. package/dist/plugin/templates.d.ts +0 -52
  274. package/dist/plugin/templates.js +0 -25
  275. package/dist/plugin/types.cjs +0 -18
  276. package/dist/plugin/types.d.cts +0 -209
  277. package/dist/plugin/types.d.ts +0 -209
  278. package/dist/plugin/types.js +0 -0
  279. package/dist/plugin/vault.cjs +0 -927
  280. package/dist/plugin/vault.d.cts +0 -68
  281. package/dist/plugin/vault.d.ts +0 -68
  282. package/dist/plugin/vault.js +0 -22
  283. package/dist/types-Y2_Um2Ls.d.cts +0 -205
  284. package/templates/memory-event.md +0 -67
  285. package/templates/party.md +0 -63
  286. package/templates/primitive-registry.yaml +0 -551
  287. package/templates/run.md +0 -68
  288. package/templates/trigger.md +0 -68
  289. package/templates/workspace.md +0 -50
@@ -0,0 +1,109 @@
1
+ import * as fs from 'fs';
2
+ import { IncomingMessage, ServerResponse } from 'http';
3
+
4
+ /**
5
+ * WebDAV Handler for ClawVault
6
+ *
7
+ * Implements WebDAV protocol support for Obsidian mobile sync via Remotely Save plugin.
8
+ * Uses only Node built-in modules (http, fs, path) - zero external dependencies.
9
+ *
10
+ * Supported methods:
11
+ * - GET: Serve file contents
12
+ * - PUT: Write/create file (creates parent dirs if needed)
13
+ * - DELETE: Delete file or directory
14
+ * - MKCOL: Create directory
15
+ * - PROPFIND: List directory contents or file properties (XML response)
16
+ * - OPTIONS: Return allowed methods + DAV header
17
+ * - HEAD: File metadata without body
18
+ * - MOVE: Rename/move file (uses Destination header)
19
+ * - COPY: Copy file
20
+ */
21
+
22
+ interface WebDAVConfig {
23
+ /** Root path for WebDAV files (vault path) */
24
+ rootPath: string;
25
+ /** URL prefix for WebDAV routes (default: /webdav) */
26
+ prefix?: string;
27
+ /** Optional Basic Auth credentials */
28
+ auth?: {
29
+ username: string;
30
+ password: string;
31
+ };
32
+ }
33
+ interface WebDAVRequest {
34
+ method: string;
35
+ path: string;
36
+ headers: Record<string, string | string[] | undefined>;
37
+ body?: string;
38
+ }
39
+ interface WebDAVResponse {
40
+ status: number;
41
+ headers: Record<string, string>;
42
+ body?: string;
43
+ }
44
+ declare const WEBDAV_PREFIX = "/webdav";
45
+ /**
46
+ * Check if a path is safe (no traversal attacks, not blocked)
47
+ */
48
+ declare function isPathSafe(requestPath: string, rootPath: string): boolean;
49
+ /**
50
+ * Resolve a WebDAV path to filesystem path
51
+ */
52
+ declare function resolveWebDAVPath(requestPath: string, rootPath: string): string | null;
53
+ /**
54
+ * Check Basic Auth credentials
55
+ */
56
+ declare function checkAuth(req: IncomingMessage, auth?: {
57
+ username: string;
58
+ password: string;
59
+ }): boolean;
60
+ /**
61
+ * Generate full PROPFIND response XML
62
+ */
63
+ declare function generatePropfindResponse(entries: Array<{
64
+ href: string;
65
+ stats: fs.Stats | null;
66
+ isCollection: boolean;
67
+ }>): string;
68
+ /**
69
+ * Handle OPTIONS request
70
+ */
71
+ declare function handleOptions(res: ServerResponse, prefix: string): void;
72
+ /**
73
+ * Handle HEAD request
74
+ */
75
+ declare function handleHead(res: ServerResponse, filePath: string): void;
76
+ /**
77
+ * Handle GET request
78
+ */
79
+ declare function handleGet(res: ServerResponse, filePath: string): void;
80
+ /**
81
+ * Handle PUT request
82
+ */
83
+ declare function handlePut(res: ServerResponse, filePath: string, body: Buffer): void;
84
+ /**
85
+ * Handle DELETE request
86
+ */
87
+ declare function handleDelete(res: ServerResponse, filePath: string): void;
88
+ /**
89
+ * Handle MKCOL request (create directory)
90
+ */
91
+ declare function handleMkcol(res: ServerResponse, filePath: string): void;
92
+ /**
93
+ * Handle PROPFIND request
94
+ */
95
+ declare function handlePropfind(res: ServerResponse, filePath: string, webdavPath: string, prefix: string, depth: string): void;
96
+ /**
97
+ * Handle MOVE request
98
+ */
99
+ declare function handleMove(res: ServerResponse, sourcePath: string, destinationPath: string | null, overwrite: boolean): void;
100
+ /**
101
+ * Handle COPY request
102
+ */
103
+ declare function handleCopy(res: ServerResponse, sourcePath: string, destinationPath: string | null, overwrite: boolean): void;
104
+ /**
105
+ * Create WebDAV request handler
106
+ */
107
+ declare function createWebDAVHandler(config: WebDAVConfig): (req: IncomingMessage, res: ServerResponse) => Promise<boolean>;
108
+
109
+ export { WEBDAV_PREFIX, type WebDAVConfig, type WebDAVRequest, type WebDAVResponse, checkAuth, createWebDAVHandler, generatePropfindResponse, handleCopy, handleDelete, handleGet, handleHead, handleMkcol, handleMove, handleOptions, handlePropfind, handlePut, isPathSafe, resolveWebDAVPath };
@@ -0,0 +1,35 @@
1
+ import {
2
+ WEBDAV_PREFIX,
3
+ checkAuth,
4
+ createWebDAVHandler,
5
+ generatePropfindResponse,
6
+ handleCopy,
7
+ handleDelete,
8
+ handleGet,
9
+ handleHead,
10
+ handleMkcol,
11
+ handleMove,
12
+ handleOptions,
13
+ handlePropfind,
14
+ handlePut,
15
+ isPathSafe,
16
+ resolveWebDAVPath
17
+ } from "../chunk-IVRIKYFE.js";
18
+ import "../chunk-2ZDO52B4.js";
19
+ export {
20
+ WEBDAV_PREFIX,
21
+ checkAuth,
22
+ createWebDAVHandler,
23
+ generatePropfindResponse,
24
+ handleCopy,
25
+ handleDelete,
26
+ handleGet,
27
+ handleHead,
28
+ handleMkcol,
29
+ handleMove,
30
+ handleOptions,
31
+ handlePropfind,
32
+ handlePut,
33
+ isPathSafe,
34
+ resolveWebDAVPath
35
+ };
@@ -0,0 +1,8 @@
1
+ declare const clawvaultPlugin: {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ register(): void;
6
+ };
7
+
8
+ export { clawvaultPlugin as default };
@@ -0,0 +1,14 @@
1
+ import "./chunk-2ZDO52B4.js";
2
+
3
+ // src/openclaw-plugin.ts
4
+ var clawvaultPlugin = {
5
+ id: "clawvault",
6
+ name: "ClawVault",
7
+ description: "Structured memory system for AI agents with context death resilience",
8
+ register() {
9
+ }
10
+ };
11
+ var openclaw_plugin_default = clawvaultPlugin;
12
+ export {
13
+ openclaw_plugin_default as default
14
+ };
@@ -0,0 +1,30 @@
1
+ import { FieldDefinition, PrimitiveTypeDefinition, Registry } from './workgraph/types.js';
2
+
3
+ /**
4
+ * Dynamic primitive type registry.
5
+ *
6
+ * Agents can define new primitive types at runtime. The registry is stored
7
+ * as `.clawvault/registry.json` in the vault. Built-in types are seeded on
8
+ * first access and cannot be deleted (but CAN be extended with new fields).
9
+ */
10
+
11
+ declare function registryPath(vaultPath: string): string;
12
+ declare function loadRegistry(vaultPath: string): Registry;
13
+ declare function saveRegistry(vaultPath: string, registry: Registry): void;
14
+ declare function defineType(vaultPath: string, name: string, description: string, fields: Record<string, FieldDefinition>, actor: string, directory?: string): PrimitiveTypeDefinition;
15
+ declare function getType(vaultPath: string, name: string): PrimitiveTypeDefinition | undefined;
16
+ declare function listTypes(vaultPath: string): PrimitiveTypeDefinition[];
17
+ declare function extendType(vaultPath: string, name: string, newFields: Record<string, FieldDefinition>, actor: string): PrimitiveTypeDefinition;
18
+
19
+ declare const registry_defineType: typeof defineType;
20
+ declare const registry_extendType: typeof extendType;
21
+ declare const registry_getType: typeof getType;
22
+ declare const registry_listTypes: typeof listTypes;
23
+ declare const registry_loadRegistry: typeof loadRegistry;
24
+ declare const registry_registryPath: typeof registryPath;
25
+ declare const registry_saveRegistry: typeof saveRegistry;
26
+ declare namespace registry {
27
+ export { registry_defineType as defineType, registry_extendType as extendType, registry_getType as getType, registry_listTypes as listTypes, registry_loadRegistry as loadRegistry, registry_registryPath as registryPath, registry_saveRegistry as saveRegistry };
28
+ }
29
+
30
+ export { loadRegistry as a, registryPath as b, defineType as d, extendType as e, getType as g, listTypes as l, registry as r, saveRegistry as s };
@@ -0,0 +1,34 @@
1
+ import { PrimitiveInstance } from './workgraph/types.js';
2
+
3
+ /**
4
+ * Workgraph store — CRUD for primitive instances.
5
+ *
6
+ * Primitives are markdown files with YAML frontmatter. The store reads/writes
7
+ * them and logs every mutation to the ledger. Schemas are soft: unknown fields
8
+ * are preserved, missing optional fields get defaults.
9
+ */
10
+
11
+ declare function create(vaultPath: string, typeName: string, fields: Record<string, unknown>, body: string, actor: string): PrimitiveInstance;
12
+ declare function read(vaultPath: string, relPath: string): PrimitiveInstance | null;
13
+ declare function list(vaultPath: string, typeName: string): PrimitiveInstance[];
14
+ declare function update(vaultPath: string, relPath: string, fieldUpdates: Record<string, unknown>, bodyUpdate: string | undefined, actor: string): PrimitiveInstance;
15
+ declare function remove(vaultPath: string, relPath: string, actor: string): void;
16
+ declare function findByField(vaultPath: string, typeName: string, field: string, value: unknown): PrimitiveInstance[];
17
+ declare function openThreads(vaultPath: string): PrimitiveInstance[];
18
+ declare function activeThreads(vaultPath: string): PrimitiveInstance[];
19
+ declare function blockedThreads(vaultPath: string): PrimitiveInstance[];
20
+
21
+ declare const store_activeThreads: typeof activeThreads;
22
+ declare const store_blockedThreads: typeof blockedThreads;
23
+ declare const store_create: typeof create;
24
+ declare const store_findByField: typeof findByField;
25
+ declare const store_list: typeof list;
26
+ declare const store_openThreads: typeof openThreads;
27
+ declare const store_read: typeof read;
28
+ declare const store_remove: typeof remove;
29
+ declare const store_update: typeof update;
30
+ declare namespace store {
31
+ export { store_activeThreads as activeThreads, store_blockedThreads as blockedThreads, store_create as create, store_findByField as findByField, store_list as list, store_openThreads as openThreads, store_read as read, store_remove as remove, store_update as update };
32
+ }
33
+
34
+ export { activeThreads as a, blockedThreads as b, create as c, remove as d, findByField as f, list as l, openThreads as o, read as r, store as s, update as u };
@@ -0,0 +1,41 @@
1
+ import { PrimitiveInstance } from './workgraph/types.js';
2
+
3
+ /**
4
+ * Thread lifecycle operations.
5
+ *
6
+ * Threads are the core coordination primitive. This module handles the
7
+ * claim/release/block/done lifecycle with ledger-backed exclusivity.
8
+ */
9
+
10
+ declare function createThread(vaultPath: string, title: string, goal: string, actor: string, opts?: {
11
+ priority?: string;
12
+ deps?: string[];
13
+ parent?: string;
14
+ context_refs?: string[];
15
+ tags?: string[];
16
+ }): PrimitiveInstance;
17
+ declare function claim(vaultPath: string, threadPath: string, actor: string): PrimitiveInstance;
18
+ declare function release(vaultPath: string, threadPath: string, actor: string, reason?: string): PrimitiveInstance;
19
+ declare function block(vaultPath: string, threadPath: string, actor: string, blockedBy: string, reason?: string): PrimitiveInstance;
20
+ declare function unblock(vaultPath: string, threadPath: string, actor: string): PrimitiveInstance;
21
+ declare function done(vaultPath: string, threadPath: string, actor: string, output?: string): PrimitiveInstance;
22
+ declare function cancel(vaultPath: string, threadPath: string, actor: string, reason?: string): PrimitiveInstance;
23
+ declare function decompose(vaultPath: string, parentPath: string, subthreads: Array<{
24
+ title: string;
25
+ goal: string;
26
+ deps?: string[];
27
+ }>, actor: string): PrimitiveInstance[];
28
+
29
+ declare const thread_block: typeof block;
30
+ declare const thread_cancel: typeof cancel;
31
+ declare const thread_claim: typeof claim;
32
+ declare const thread_createThread: typeof createThread;
33
+ declare const thread_decompose: typeof decompose;
34
+ declare const thread_done: typeof done;
35
+ declare const thread_release: typeof release;
36
+ declare const thread_unblock: typeof unblock;
37
+ declare namespace thread {
38
+ export { thread_block as block, thread_cancel as cancel, thread_claim as claim, thread_createThread as createThread, thread_decompose as decompose, thread_done as done, thread_release as release, thread_unblock as unblock };
39
+ }
40
+
41
+ export { claim as a, block as b, cancel as c, createThread as d, decompose as e, done as f, release as r, thread as t, unblock as u };