daycare-cli 2026.2.8 → 2026.2.11

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 (766) hide show
  1. package/dist/commands/add.d.ts.map +1 -1
  2. package/dist/commands/add.js +3 -57
  3. package/dist/commands/add.js.map +1 -1
  4. package/dist/commands/doctor.js +2 -2
  5. package/dist/commands/doctor.js.map +1 -1
  6. package/dist/commands/providers.js +1 -1
  7. package/dist/commands/providers.js.map +1 -1
  8. package/dist/config/configResolve.d.ts.map +1 -1
  9. package/dist/config/configResolve.js +1 -10
  10. package/dist/config/configResolve.js.map +1 -1
  11. package/dist/config/configResolve.spec.js +4 -7
  12. package/dist/config/configResolve.spec.js.map +1 -1
  13. package/dist/config/configSettingsParse.d.ts.map +1 -1
  14. package/dist/config/configSettingsParse.js +0 -1
  15. package/dist/config/configSettingsParse.js.map +1 -1
  16. package/dist/config/configTypes.d.ts +0 -4
  17. package/dist/config/configTypes.d.ts.map +1 -1
  18. package/dist/engine/agents/agent.d.ts +4 -8
  19. package/dist/engine/agents/agent.d.ts.map +1 -1
  20. package/dist/engine/agents/agent.js +36 -59
  21. package/dist/engine/agents/agent.js.map +1 -1
  22. package/dist/engine/agents/agent.spec.js +111 -31
  23. package/dist/engine/agents/agent.spec.js.map +1 -1
  24. package/dist/engine/agents/agentSystem.d.ts +2 -21
  25. package/dist/engine/agents/agentSystem.d.ts.map +1 -1
  26. package/dist/engine/agents/agentSystem.js +11 -91
  27. package/dist/engine/agents/agentSystem.js.map +1 -1
  28. package/dist/engine/agents/agentSystem.spec.js +1 -18
  29. package/dist/engine/agents/agentSystem.spec.js.map +1 -1
  30. package/dist/engine/agents/ops/agentAppFolderPathResolve.d.ts +2 -2
  31. package/dist/engine/agents/ops/agentAppFolderPathResolve.d.ts.map +1 -1
  32. package/dist/engine/agents/ops/agentAppFolderPathResolve.js +3 -6
  33. package/dist/engine/agents/ops/agentAppFolderPathResolve.js.map +1 -1
  34. package/dist/engine/agents/ops/agentAppFolderPathResolve.spec.js +1 -11
  35. package/dist/engine/agents/ops/agentAppFolderPathResolve.spec.js.map +1 -1
  36. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts +2 -2
  37. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts.map +1 -1
  38. package/dist/engine/agents/ops/agentDescriptorWrite.js +2 -22
  39. package/dist/engine/agents/ops/agentDescriptorWrite.js.map +1 -1
  40. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js +12 -7
  41. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js.map +1 -1
  42. package/dist/engine/agents/ops/agentHistoryContext.d.ts +1 -1
  43. package/dist/engine/agents/ops/agentHistoryContext.d.ts.map +1 -1
  44. package/dist/engine/agents/ops/agentHistoryContext.js +1 -1
  45. package/dist/engine/agents/ops/agentHistoryContext.js.map +1 -1
  46. package/dist/engine/agents/ops/agentHistoryLoad.spec.js +7 -3
  47. package/dist/engine/agents/ops/agentHistoryLoad.spec.js.map +1 -1
  48. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js +7 -3
  49. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js.map +1 -1
  50. package/dist/engine/agents/ops/agentHistoryPendingToolResults.js.map +1 -1
  51. package/dist/engine/agents/ops/agentInbox.js +1 -13
  52. package/dist/engine/agents/ops/agentInbox.js.map +1 -1
  53. package/dist/engine/agents/ops/agentInbox.spec.js +5 -7
  54. package/dist/engine/agents/ops/agentInbox.spec.js.map +1 -1
  55. package/dist/engine/agents/ops/agentInferencePromptWrite.spec.js +1 -1
  56. package/dist/engine/agents/ops/agentInferencePromptWrite.spec.js.map +1 -1
  57. package/dist/engine/agents/ops/agentLoopRun.d.ts +2 -2
  58. package/dist/engine/agents/ops/agentLoopRun.d.ts.map +1 -1
  59. package/dist/engine/agents/ops/agentLoopRun.js +9 -6
  60. package/dist/engine/agents/ops/agentLoopRun.js.map +1 -1
  61. package/dist/engine/agents/ops/agentLoopRun.spec.js +106 -74
  62. package/dist/engine/agents/ops/agentLoopRun.spec.js.map +1 -1
  63. package/dist/engine/agents/ops/agentPromptFilesEnsure.d.ts +2 -3
  64. package/dist/engine/agents/ops/agentPromptFilesEnsure.d.ts.map +1 -1
  65. package/dist/engine/agents/ops/agentPromptFilesEnsure.js +2 -10
  66. package/dist/engine/agents/ops/agentPromptFilesEnsure.js.map +1 -1
  67. package/dist/engine/agents/ops/agentPromptPathsResolve.d.ts +3 -3
  68. package/dist/engine/agents/ops/agentPromptPathsResolve.d.ts.map +1 -1
  69. package/dist/engine/agents/ops/agentPromptPathsResolve.js +4 -25
  70. package/dist/engine/agents/ops/agentPromptPathsResolve.js.map +1 -1
  71. package/dist/engine/agents/ops/agentPromptPathsResolve.spec.js +2 -13
  72. package/dist/engine/agents/ops/agentPromptPathsResolve.spec.js.map +1 -1
  73. package/dist/engine/agents/ops/agentPromptResolve.d.ts.map +1 -1
  74. package/dist/engine/agents/ops/agentPromptResolve.js +4 -1
  75. package/dist/engine/agents/ops/agentPromptResolve.js.map +1 -1
  76. package/dist/engine/agents/ops/agentPromptResolve.spec.js +7 -3
  77. package/dist/engine/agents/ops/agentPromptResolve.spec.js.map +1 -1
  78. package/dist/engine/agents/ops/agentStateRead.spec.js +15 -9
  79. package/dist/engine/agents/ops/agentStateRead.spec.js.map +1 -1
  80. package/dist/engine/agents/ops/agentSystemPrompt.spec.js +47 -35
  81. package/dist/engine/agents/ops/agentSystemPrompt.spec.js.map +1 -1
  82. package/dist/engine/agents/ops/agentSystemPromptContext.d.ts +1 -1
  83. package/dist/engine/agents/ops/agentSystemPromptContext.d.ts.map +1 -1
  84. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.d.ts +1 -1
  85. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.d.ts.map +1 -1
  86. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.js +8 -31
  87. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.js.map +1 -1
  88. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.d.ts.map +1 -1
  89. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js +10 -19
  90. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js.map +1 -1
  91. package/dist/engine/agents/ops/agentSystemPromptWrite.spec.js +1 -1
  92. package/dist/engine/agents/ops/agentSystemPromptWrite.spec.js.map +1 -1
  93. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.d.ts +11 -0
  94. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.d.ts.map +1 -0
  95. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.js +73 -0
  96. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.js.map +1 -0
  97. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.spec.d.ts +2 -0
  98. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.spec.d.ts.map +1 -0
  99. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.spec.js +40 -0
  100. package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowIs.spec.js.map +1 -0
  101. package/dist/engine/agents/system/_systemAgents.d.ts.map +1 -1
  102. package/dist/engine/agents/system/_systemAgents.js +0 -5
  103. package/dist/engine/agents/system/_systemAgents.js.map +1 -1
  104. package/dist/engine/agents/system/systemAgentPromptResolve.spec.js +0 -6
  105. package/dist/engine/agents/system/systemAgentPromptResolve.spec.js.map +1 -1
  106. package/dist/engine/apps/appExecute.d.ts.map +1 -1
  107. package/dist/engine/apps/appExecute.js.map +1 -1
  108. package/dist/engine/apps/appExecute.spec.js +6 -18
  109. package/dist/engine/apps/appExecute.spec.js.map +1 -1
  110. package/dist/engine/apps/appInstallToolBuild.spec.js +1 -4
  111. package/dist/engine/apps/appInstallToolBuild.spec.js.map +1 -1
  112. package/dist/engine/apps/appManager.d.ts +1 -3
  113. package/dist/engine/apps/appManager.d.ts.map +1 -1
  114. package/dist/engine/apps/appManager.js +4 -9
  115. package/dist/engine/apps/appManager.js.map +1 -1
  116. package/dist/engine/apps/appManager.spec.js +6 -7
  117. package/dist/engine/apps/appManager.spec.js.map +1 -1
  118. package/dist/engine/apps/appPermissionBuild.d.ts.map +1 -1
  119. package/dist/engine/apps/appPermissionBuild.js +2 -14
  120. package/dist/engine/apps/appPermissionBuild.js.map +1 -1
  121. package/dist/engine/apps/appPermissionBuild.spec.js +6 -18
  122. package/dist/engine/apps/appPermissionBuild.spec.js.map +1 -1
  123. package/dist/engine/apps/appReviewProvidersResolve.spec.js +2 -4
  124. package/dist/engine/apps/appReviewProvidersResolve.spec.js.map +1 -1
  125. package/dist/engine/apps/appRuleToolBuild.d.ts.map +1 -1
  126. package/dist/engine/apps/appRuleToolBuild.js +1 -44
  127. package/dist/engine/apps/appRuleToolBuild.js.map +1 -1
  128. package/dist/engine/apps/appRuleToolBuild.spec.js +16 -44
  129. package/dist/engine/apps/appRuleToolBuild.spec.js.map +1 -1
  130. package/dist/engine/apps/appToolExecutorBuild.js +1 -1
  131. package/dist/engine/apps/appToolExecutorBuild.js.map +1 -1
  132. package/dist/engine/apps/appToolExecutorBuild.spec.js +3 -6
  133. package/dist/engine/apps/appToolExecutorBuild.spec.js.map +1 -1
  134. package/dist/engine/cron/crons.d.ts +0 -4
  135. package/dist/engine/cron/crons.d.ts.map +1 -1
  136. package/dist/engine/cron/crons.js +5 -44
  137. package/dist/engine/cron/crons.js.map +1 -1
  138. package/dist/engine/cron/crons.spec.js +9 -150
  139. package/dist/engine/cron/crons.spec.js.map +1 -1
  140. package/dist/engine/cron/ops/cronFieldParse.js +3 -3
  141. package/dist/engine/cron/ops/cronFieldParse.js.map +1 -1
  142. package/dist/engine/cron/ops/cronScheduler.d.ts +2 -6
  143. package/dist/engine/cron/ops/cronScheduler.d.ts.map +1 -1
  144. package/dist/engine/cron/ops/cronScheduler.js +4 -36
  145. package/dist/engine/cron/ops/cronScheduler.js.map +1 -1
  146. package/dist/engine/cron/ops/cronScheduler.spec.js +9 -81
  147. package/dist/engine/cron/ops/cronScheduler.spec.js.map +1 -1
  148. package/dist/engine/engine.d.ts +0 -4
  149. package/dist/engine/engine.d.ts.map +1 -1
  150. package/dist/engine/engine.js +20 -61
  151. package/dist/engine/engine.js.map +1 -1
  152. package/dist/engine/engine.spec.js +12 -124
  153. package/dist/engine/engine.spec.js.map +1 -1
  154. package/dist/engine/expose/exposes.spec.js +2 -4
  155. package/dist/engine/expose/exposes.spec.js.map +1 -1
  156. package/dist/engine/files/fileFolder.d.ts +21 -0
  157. package/dist/engine/files/fileFolder.d.ts.map +1 -0
  158. package/dist/engine/files/fileFolder.js +48 -0
  159. package/dist/engine/files/fileFolder.js.map +1 -0
  160. package/dist/engine/files/fileFolder.spec.d.ts +2 -0
  161. package/dist/engine/files/fileFolder.spec.d.ts.map +1 -0
  162. package/dist/engine/files/fileFolder.spec.js +41 -0
  163. package/dist/engine/files/fileFolder.spec.js.map +1 -0
  164. package/dist/engine/files/files.d.ts +12 -0
  165. package/dist/engine/files/files.d.ts.map +1 -0
  166. package/dist/engine/files/files.js +17 -0
  167. package/dist/engine/files/files.js.map +1 -0
  168. package/dist/engine/files/files.spec.d.ts +2 -0
  169. package/dist/engine/files/files.spec.d.ts.map +1 -0
  170. package/dist/engine/files/files.spec.js +44 -0
  171. package/dist/engine/files/files.spec.js.map +1 -0
  172. package/dist/engine/heartbeat/heartbeatTypes.d.ts +1 -3
  173. package/dist/engine/heartbeat/heartbeatTypes.d.ts.map +1 -1
  174. package/dist/engine/heartbeat/heartbeats.d.ts +0 -4
  175. package/dist/engine/heartbeat/heartbeats.d.ts.map +1 -1
  176. package/dist/engine/heartbeat/heartbeats.js +5 -23
  177. package/dist/engine/heartbeat/heartbeats.js.map +1 -1
  178. package/dist/engine/heartbeat/heartbeats.spec.js +29 -110
  179. package/dist/engine/heartbeat/heartbeats.spec.js.map +1 -1
  180. package/dist/engine/heartbeat/ops/heartbeatScheduler.d.ts +1 -3
  181. package/dist/engine/heartbeat/ops/heartbeatScheduler.d.ts.map +1 -1
  182. package/dist/engine/heartbeat/ops/heartbeatScheduler.js +5 -36
  183. package/dist/engine/heartbeat/ops/heartbeatScheduler.js.map +1 -1
  184. package/dist/engine/heartbeat/ops/heartbeatScheduler.spec.js +6 -79
  185. package/dist/engine/heartbeat/ops/heartbeatScheduler.spec.js.map +1 -1
  186. package/dist/engine/messages/incomingMessages.js +1 -13
  187. package/dist/engine/messages/incomingMessages.js.map +1 -1
  188. package/dist/engine/messages/incomingMessages.spec.js +3 -4
  189. package/dist/engine/messages/incomingMessages.spec.js.map +1 -1
  190. package/dist/engine/modules/connectorRegistry.d.ts +1 -4
  191. package/dist/engine/modules/connectorRegistry.d.ts.map +1 -1
  192. package/dist/engine/modules/connectorRegistry.js +4 -18
  193. package/dist/engine/modules/connectorRegistry.js.map +1 -1
  194. package/dist/engine/modules/connectors/types.d.ts +0 -44
  195. package/dist/engine/modules/connectors/types.d.ts.map +1 -1
  196. package/dist/engine/modules/executablePrompts/executablePromptExpand.d.ts +6 -1
  197. package/dist/engine/modules/executablePrompts/executablePromptExpand.d.ts.map +1 -1
  198. package/dist/engine/modules/executablePrompts/executablePromptExpand.js +12 -3
  199. package/dist/engine/modules/executablePrompts/executablePromptExpand.js.map +1 -1
  200. package/dist/engine/modules/executablePrompts/executablePromptExpand.spec.js +38 -8
  201. package/dist/engine/modules/executablePrompts/executablePromptExpand.spec.js.map +1 -1
  202. package/dist/engine/modules/images/types.d.ts +2 -2
  203. package/dist/engine/modules/images/types.d.ts.map +1 -1
  204. package/dist/engine/modules/media/pdfExtract.d.ts +33 -0
  205. package/dist/engine/modules/media/pdfExtract.d.ts.map +1 -0
  206. package/dist/engine/modules/media/pdfExtract.js +123 -0
  207. package/dist/engine/modules/media/pdfExtract.js.map +1 -0
  208. package/dist/engine/modules/media/pdfExtract.spec.d.ts +2 -0
  209. package/dist/engine/modules/media/pdfExtract.spec.d.ts.map +1 -0
  210. package/dist/engine/modules/media/pdfExtract.spec.js +25 -0
  211. package/dist/engine/modules/media/pdfExtract.spec.js.map +1 -0
  212. package/dist/engine/modules/monty/montyPythonTypeFromSchemaRuntime.spec.js +1 -4
  213. package/dist/engine/modules/monty/montyPythonTypeFromSchemaRuntime.spec.js.map +1 -1
  214. package/dist/engine/modules/rlm/rlmExecute.spec.js +1 -4
  215. package/dist/engine/modules/rlm/rlmExecute.spec.js.map +1 -1
  216. package/dist/engine/modules/rlm/rlmNoToolsPromptBuild.spec.js +1 -1
  217. package/dist/engine/modules/rlm/rlmNoToolsPromptBuild.spec.js.map +1 -1
  218. package/dist/engine/modules/rlm/rlmPromptSkills.spec.js +0 -6
  219. package/dist/engine/modules/rlm/rlmPromptSkills.spec.js.map +1 -1
  220. package/dist/engine/modules/rlm/rlmRestore.spec.js +1 -4
  221. package/dist/engine/modules/rlm/rlmRestore.spec.js.map +1 -1
  222. package/dist/engine/modules/rlm/rlmTool.spec.js +1 -4
  223. package/dist/engine/modules/rlm/rlmTool.spec.js.map +1 -1
  224. package/dist/engine/modules/rlm/rlmToolDescriptionBuild.spec.js +1 -1
  225. package/dist/engine/modules/rlm/rlmToolDescriptionBuild.spec.js.map +1 -1
  226. package/dist/engine/modules/say/sayFileResolve.d.ts +2 -2
  227. package/dist/engine/modules/say/sayFileResolve.d.ts.map +1 -1
  228. package/dist/engine/modules/say/sayFileResolve.js +2 -29
  229. package/dist/engine/modules/say/sayFileResolve.js.map +1 -1
  230. package/dist/engine/modules/say/sayFileResolve.spec.js +12 -23
  231. package/dist/engine/modules/say/sayFileResolve.spec.js.map +1 -1
  232. package/dist/engine/modules/toolResolver.spec.js +1 -4
  233. package/dist/engine/modules/toolResolver.spec.js.map +1 -1
  234. package/dist/engine/modules/tools/agentCompactTool.spec.js +1 -4
  235. package/dist/engine/modules/tools/agentCompactTool.spec.js.map +1 -1
  236. package/dist/engine/modules/tools/agentResetTool.spec.js +1 -4
  237. package/dist/engine/modules/tools/agentResetTool.spec.js.map +1 -1
  238. package/dist/engine/modules/tools/background.d.ts.map +1 -1
  239. package/dist/engine/modules/tools/background.js +1 -10
  240. package/dist/engine/modules/tools/background.js.map +1 -1
  241. package/dist/engine/modules/tools/background.spec.js +4 -31
  242. package/dist/engine/modules/tools/background.spec.js.map +1 -1
  243. package/dist/engine/modules/tools/channelCreateTool.spec.js +1 -4
  244. package/dist/engine/modules/tools/channelCreateTool.spec.js.map +1 -1
  245. package/dist/engine/modules/tools/channelHistoryTool.spec.js +1 -4
  246. package/dist/engine/modules/tools/channelHistoryTool.spec.js.map +1 -1
  247. package/dist/engine/modules/tools/channelMemberTool.spec.js +1 -4
  248. package/dist/engine/modules/tools/channelMemberTool.spec.js.map +1 -1
  249. package/dist/engine/modules/tools/channelSendTool.spec.js +1 -4
  250. package/dist/engine/modules/tools/channelSendTool.spec.js.map +1 -1
  251. package/dist/engine/modules/tools/cron.d.ts.map +1 -1
  252. package/dist/engine/modules/tools/cron.js +11 -15
  253. package/dist/engine/modules/tools/cron.js.map +1 -1
  254. package/dist/engine/modules/tools/image-generation.d.ts.map +1 -1
  255. package/dist/engine/modules/tools/image-generation.js +59 -18
  256. package/dist/engine/modules/tools/image-generation.js.map +1 -1
  257. package/dist/engine/modules/tools/image-generation.spec.js +8 -9
  258. package/dist/engine/modules/tools/image-generation.spec.js.map +1 -1
  259. package/dist/engine/modules/tools/mermaid-png.d.ts.map +1 -1
  260. package/dist/engine/modules/tools/mermaid-png.js +1 -2
  261. package/dist/engine/modules/tools/mermaid-png.js.map +1 -1
  262. package/dist/engine/modules/tools/mermaid-png.spec.js +3 -9
  263. package/dist/engine/modules/tools/mermaid-png.spec.js.map +1 -1
  264. package/dist/engine/modules/tools/pdf-process.d.ts +27 -0
  265. package/dist/engine/modules/tools/pdf-process.d.ts.map +1 -0
  266. package/dist/engine/modules/tools/pdf-process.js +151 -0
  267. package/dist/engine/modules/tools/pdf-process.js.map +1 -0
  268. package/dist/engine/modules/tools/pdf-process.spec.d.ts +2 -0
  269. package/dist/engine/modules/tools/pdf-process.spec.d.ts.map +1 -0
  270. package/dist/engine/modules/tools/pdf-process.spec.js +56 -0
  271. package/dist/engine/modules/tools/pdf-process.spec.js.map +1 -0
  272. package/dist/engine/modules/tools/permanentAgentToolBuild.d.ts +1 -1
  273. package/dist/engine/modules/tools/permanentAgentToolBuild.d.ts.map +1 -1
  274. package/dist/engine/modules/tools/permanentAgentToolBuild.js +11 -18
  275. package/dist/engine/modules/tools/permanentAgentToolBuild.js.map +1 -1
  276. package/dist/engine/modules/tools/permanentAgentToolBuild.spec.js +15 -45
  277. package/dist/engine/modules/tools/permanentAgentToolBuild.spec.js.map +1 -1
  278. package/dist/engine/modules/tools/send-file.d.ts +0 -1
  279. package/dist/engine/modules/tools/send-file.d.ts.map +1 -1
  280. package/dist/engine/modules/tools/send-file.js +4 -23
  281. package/dist/engine/modules/tools/send-file.js.map +1 -1
  282. package/dist/engine/modules/tools/sendUserMessageTool.spec.js +1 -4
  283. package/dist/engine/modules/tools/sendUserMessageTool.spec.js.map +1 -1
  284. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js +15 -10
  285. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js.map +1 -1
  286. package/dist/engine/modules/tools/signal.spec.js +1 -4
  287. package/dist/engine/modules/tools/signal.spec.js.map +1 -1
  288. package/dist/engine/modules/tools/signalEventsCsvToolBuild.spec.js +1 -4
  289. package/dist/engine/modules/tools/signalEventsCsvToolBuild.spec.js.map +1 -1
  290. package/dist/engine/modules/tools/signalSubscribeToolBuild.spec.js +1 -4
  291. package/dist/engine/modules/tools/signalSubscribeToolBuild.spec.js.map +1 -1
  292. package/dist/engine/modules/tools/signalUnsubscribeToolBuild.spec.js +1 -4
  293. package/dist/engine/modules/tools/signalUnsubscribeToolBuild.spec.js.map +1 -1
  294. package/dist/engine/modules/tools/skillToolBuild.d.ts.map +1 -1
  295. package/dist/engine/modules/tools/skillToolBuild.js +24 -10
  296. package/dist/engine/modules/tools/skillToolBuild.js.map +1 -1
  297. package/dist/engine/modules/tools/skillToolBuild.spec.js +38 -18
  298. package/dist/engine/modules/tools/skillToolBuild.spec.js.map +1 -1
  299. package/dist/engine/modules/tools/toolListContextBuild.d.ts +0 -1
  300. package/dist/engine/modules/tools/toolListContextBuild.d.ts.map +1 -1
  301. package/dist/engine/modules/tools/toolListContextBuild.js.map +1 -1
  302. package/dist/engine/modules/tools/topologyToolBuild.spec.js +17 -16
  303. package/dist/engine/modules/tools/topologyToolBuild.spec.js.map +1 -1
  304. package/dist/engine/modules/tools/types.d.ts +3 -5
  305. package/dist/engine/modules/tools/types.d.ts.map +1 -1
  306. package/dist/engine/permissions/permissionBuildUser.d.ts.map +1 -1
  307. package/dist/engine/permissions/permissionBuildUser.js +1 -17
  308. package/dist/engine/permissions/permissionBuildUser.js.map +1 -1
  309. package/dist/engine/permissions/permissionBuildUser.spec.js +2 -20
  310. package/dist/engine/permissions/permissionBuildUser.spec.js.map +1 -1
  311. package/dist/engine/permissions.d.ts +0 -7
  312. package/dist/engine/permissions.d.ts.map +1 -1
  313. package/dist/engine/permissions.js +2 -42
  314. package/dist/engine/permissions.js.map +1 -1
  315. package/dist/engine/plugins/builtins.spec.js +6 -11
  316. package/dist/engine/plugins/builtins.spec.js.map +1 -1
  317. package/dist/engine/plugins/loader.spec.js +4 -1
  318. package/dist/engine/plugins/loader.spec.js.map +1 -1
  319. package/dist/engine/plugins/manager.d.ts +3 -2
  320. package/dist/engine/plugins/manager.d.ts.map +1 -1
  321. package/dist/engine/plugins/manager.js +8 -0
  322. package/dist/engine/plugins/manager.js.map +1 -1
  323. package/dist/engine/plugins/manager.spec.js +40 -2
  324. package/dist/engine/plugins/manager.spec.js.map +1 -1
  325. package/dist/engine/plugins/types.d.ts +3 -2
  326. package/dist/engine/plugins/types.d.ts.map +1 -1
  327. package/dist/engine/plugins/types.js.map +1 -1
  328. package/dist/engine/processes/processes.d.ts +0 -2
  329. package/dist/engine/processes/processes.d.ts.map +1 -1
  330. package/dist/engine/processes/processes.js +8 -12
  331. package/dist/engine/processes/processes.js.map +1 -1
  332. package/dist/engine/processes/processes.spec.js +22 -31
  333. package/dist/engine/processes/processes.spec.js.map +1 -1
  334. package/dist/engine/scheduling/execGateCheck.d.ts +0 -1
  335. package/dist/engine/scheduling/execGateCheck.d.ts.map +1 -1
  336. package/dist/engine/scheduling/execGateCheck.js +13 -11
  337. package/dist/engine/scheduling/execGateCheck.js.map +1 -1
  338. package/dist/engine/skills/skillListUser.d.ts +3 -4
  339. package/dist/engine/skills/skillListUser.d.ts.map +1 -1
  340. package/dist/engine/skills/skillListUser.js +6 -14
  341. package/dist/engine/skills/skillListUser.js.map +1 -1
  342. package/dist/engine/skills/skillListUser.spec.js +8 -18
  343. package/dist/engine/skills/skillListUser.spec.js.map +1 -1
  344. package/dist/engine/skills/skills.js +1 -1
  345. package/dist/engine/skills/skills.js.map +1 -1
  346. package/dist/engine/users/userHome.d.ts +2 -0
  347. package/dist/engine/users/userHome.d.ts.map +1 -1
  348. package/dist/engine/users/userHome.js +5 -2
  349. package/dist/engine/users/userHome.js.map +1 -1
  350. package/dist/engine/users/userHome.spec.js +3 -2
  351. package/dist/engine/users/userHome.spec.js.map +1 -1
  352. package/dist/engine/users/userHomeEnsure.d.ts.map +1 -1
  353. package/dist/engine/users/userHomeEnsure.js +3 -1
  354. package/dist/engine/users/userHomeEnsure.js.map +1 -1
  355. package/dist/engine/users/userHomeEnsure.spec.js +4 -3
  356. package/dist/engine/users/userHomeEnsure.spec.js.map +1 -1
  357. package/dist/engine/users/userHomeMigrate.d.ts +1 -1
  358. package/dist/engine/users/userHomeMigrate.d.ts.map +1 -1
  359. package/dist/engine/users/userHomeMigrate.js +8 -14
  360. package/dist/engine/users/userHomeMigrate.js.map +1 -1
  361. package/dist/engine/users/userHomeMigrate.spec.js +6 -54
  362. package/dist/engine/users/userHomeMigrate.spec.js.map +1 -1
  363. package/dist/files/types.d.ts +0 -2
  364. package/dist/files/types.d.ts.map +1 -1
  365. package/dist/log.spec.js +3 -1
  366. package/dist/log.spec.js.map +1 -1
  367. package/dist/paths.d.ts +0 -6
  368. package/dist/paths.d.ts.map +1 -1
  369. package/dist/paths.js +0 -6
  370. package/dist/paths.js.map +1 -1
  371. package/dist/plugins/anthropic-fetch/plugin.d.ts.map +1 -1
  372. package/dist/plugins/anthropic-fetch/plugin.js +4 -7
  373. package/dist/plugins/anthropic-fetch/plugin.js.map +1 -1
  374. package/dist/plugins/anthropic-search/plugin.d.ts.map +1 -1
  375. package/dist/plugins/anthropic-search/plugin.js +4 -7
  376. package/dist/plugins/anthropic-search/plugin.js.map +1 -1
  377. package/dist/plugins/brave-search/plugin.d.ts.map +1 -1
  378. package/dist/plugins/brave-search/plugin.js +2 -5
  379. package/dist/plugins/brave-search/plugin.js.map +1 -1
  380. package/dist/plugins/cloudflare-tunnel/plugin.d.ts.map +1 -1
  381. package/dist/plugins/cloudflare-tunnel/plugin.js +1 -4
  382. package/dist/plugins/cloudflare-tunnel/plugin.js.map +1 -1
  383. package/dist/plugins/cloudflare-tunnel/plugin.spec.js +3 -8
  384. package/dist/plugins/cloudflare-tunnel/plugin.spec.js.map +1 -1
  385. package/dist/plugins/custom-tunnel/plugin.spec.js +1 -2
  386. package/dist/plugins/custom-tunnel/plugin.spec.js.map +1 -1
  387. package/dist/plugins/dashboard/site/404.html +1 -1
  388. package/dist/plugins/dashboard/site/agent.html +1 -1
  389. package/dist/plugins/dashboard/site/agent.txt +1 -1
  390. package/dist/plugins/dashboard/site/agents.html +1 -1
  391. package/dist/plugins/dashboard/site/agents.txt +1 -1
  392. package/dist/plugins/dashboard/site/automations.html +1 -1
  393. package/dist/plugins/dashboard/site/automations.txt +1 -1
  394. package/dist/plugins/dashboard/site/connectors.html +1 -1
  395. package/dist/plugins/dashboard/site/connectors.txt +1 -1
  396. package/dist/plugins/dashboard/site/index.html +1 -1
  397. package/dist/plugins/dashboard/site/index.txt +1 -1
  398. package/dist/plugins/dashboard/site/processes.html +1 -1
  399. package/dist/plugins/dashboard/site/processes.txt +1 -1
  400. package/dist/plugins/dashboard/site/providers.html +1 -1
  401. package/dist/plugins/dashboard/site/providers.txt +1 -1
  402. package/dist/plugins/dashboard/site/signals.html +1 -1
  403. package/dist/plugins/dashboard/site/signals.txt +1 -1
  404. package/dist/plugins/dashboard/site/telemetry.html +1 -1
  405. package/dist/plugins/dashboard/site/telemetry.txt +1 -1
  406. package/dist/plugins/dashboard/site/tools.html +1 -1
  407. package/dist/plugins/dashboard/site/tools.txt +1 -1
  408. package/dist/plugins/database/__tests__/plugin.spec.js +9 -8
  409. package/dist/plugins/database/__tests__/plugin.spec.js.map +1 -1
  410. package/dist/plugins/exa-ai/plugin.d.ts.map +1 -1
  411. package/dist/plugins/exa-ai/plugin.js +2 -5
  412. package/dist/plugins/exa-ai/plugin.js.map +1 -1
  413. package/dist/plugins/firecrawl/plugin.d.ts.map +1 -1
  414. package/dist/plugins/firecrawl/plugin.js +2 -5
  415. package/dist/plugins/firecrawl/plugin.js.map +1 -1
  416. package/dist/plugins/gemini-search/plugin.d.ts.map +1 -1
  417. package/dist/plugins/gemini-search/plugin.js +4 -7
  418. package/dist/plugins/gemini-search/plugin.js.map +1 -1
  419. package/dist/plugins/local-expose/plugin.d.ts.map +1 -1
  420. package/dist/plugins/local-expose/plugin.js +1 -4
  421. package/dist/plugins/local-expose/plugin.js.map +1 -1
  422. package/dist/plugins/local-expose/plugin.spec.js +4 -10
  423. package/dist/plugins/local-expose/plugin.spec.js.map +1 -1
  424. package/dist/plugins/monty-python/tool.d.ts.map +1 -1
  425. package/dist/plugins/monty-python/tool.js.map +1 -1
  426. package/dist/plugins/monty-python/tool.spec.js +3 -5
  427. package/dist/plugins/monty-python/tool.spec.js.map +1 -1
  428. package/dist/plugins/nano-banana-pro/__tests__/plugin.integration.spec.js +6 -3
  429. package/dist/plugins/nano-banana-pro/__tests__/plugin.integration.spec.js.map +1 -1
  430. package/dist/plugins/nano-banana-pro/plugin.d.ts.map +1 -1
  431. package/dist/plugins/nano-banana-pro/plugin.js +8 -12
  432. package/dist/plugins/nano-banana-pro/plugin.js.map +1 -1
  433. package/dist/plugins/openai-search/plugin.d.ts.map +1 -1
  434. package/dist/plugins/openai-search/plugin.js +5 -8
  435. package/dist/plugins/openai-search/plugin.js.map +1 -1
  436. package/dist/plugins/perplexity-search/plugin.d.ts.map +1 -1
  437. package/dist/plugins/perplexity-search/plugin.js +3 -6
  438. package/dist/plugins/perplexity-search/plugin.js.map +1 -1
  439. package/dist/plugins/shell/processTools.d.ts.map +1 -1
  440. package/dist/plugins/shell/processTools.js +5 -21
  441. package/dist/plugins/shell/processTools.js.map +1 -1
  442. package/dist/plugins/shell/processTools.spec.js +10 -70
  443. package/dist/plugins/shell/processTools.spec.js.map +1 -1
  444. package/dist/plugins/shell/tool.d.ts.map +1 -1
  445. package/dist/plugins/shell/tool.js +13 -29
  446. package/dist/plugins/shell/tool.js.map +1 -1
  447. package/dist/plugins/shell/tool.spec.js +58 -153
  448. package/dist/plugins/shell/tool.spec.js.map +1 -1
  449. package/dist/plugins/tailscale/plugin.spec.js +1 -2
  450. package/dist/plugins/tailscale/plugin.spec.js.map +1 -1
  451. package/dist/plugins/telegram/connector.d.ts +4 -8
  452. package/dist/plugins/telegram/connector.d.ts.map +1 -1
  453. package/dist/plugins/telegram/connector.js +19 -154
  454. package/dist/plugins/telegram/connector.js.map +1 -1
  455. package/dist/plugins/telegram/connector.spec.js +84 -103
  456. package/dist/plugins/telegram/connector.spec.js.map +1 -1
  457. package/dist/plugins/telegram/markdownToTelegramHtml.js +6 -6
  458. package/dist/plugins/telegram/markdownToTelegramHtml.js.map +1 -1
  459. package/dist/plugins/upgrade/plugin.spec.js +5 -10
  460. package/dist/plugins/upgrade/plugin.spec.js.map +1 -1
  461. package/dist/plugins/web-fetch/plugin.d.ts.map +1 -1
  462. package/dist/plugins/web-fetch/plugin.js +1 -4
  463. package/dist/plugins/web-fetch/plugin.js.map +1 -1
  464. package/dist/plugins/whatsapp/authenticate.d.ts.map +1 -1
  465. package/dist/plugins/whatsapp/authenticate.js.map +1 -1
  466. package/dist/plugins/whatsapp/connector.d.ts +3 -8
  467. package/dist/plugins/whatsapp/connector.d.ts.map +1 -1
  468. package/dist/plugins/whatsapp/connector.js +0 -107
  469. package/dist/plugins/whatsapp/connector.js.map +1 -1
  470. package/dist/plugins/whatsapp/markdownToWhatsAppText.js +9 -9
  471. package/dist/plugins/whatsapp/markdownToWhatsAppText.js.map +1 -1
  472. package/dist/prompts/AGENTS.md +3 -14
  473. package/dist/prompts/PERMISSIONS.md +0 -1
  474. package/dist/prompts/SYSTEM_MEMORY.md +1 -6
  475. package/dist/prompts/SYSTEM_PERMISSIONS.md +0 -1
  476. package/dist/providers/__tests__/inference.integration.spec.js +4 -4
  477. package/dist/providers/__tests__/inference.integration.spec.js.map +1 -1
  478. package/dist/providers/manager.d.ts +2 -2
  479. package/dist/providers/manager.d.ts.map +1 -1
  480. package/dist/providers/manager.js.map +1 -1
  481. package/dist/providers/manager.spec.js +3 -3
  482. package/dist/providers/manager.spec.js.map +1 -1
  483. package/dist/providers/openai-image.d.ts.map +1 -1
  484. package/dist/providers/openai-image.js +1 -2
  485. package/dist/providers/openai-image.js.map +1 -1
  486. package/dist/providers/types.d.ts +2 -2
  487. package/dist/providers/types.d.ts.map +1 -1
  488. package/dist/sandbox/pathResolveSecure.d.ts.map +1 -0
  489. package/dist/sandbox/pathResolveSecure.js.map +1 -0
  490. package/dist/sandbox/pathResolveSecure.spec.d.ts.map +1 -0
  491. package/dist/sandbox/pathResolveSecure.spec.js.map +1 -0
  492. package/dist/sandbox/pathSanitize.d.ts.map +1 -0
  493. package/dist/sandbox/pathSanitize.js.map +1 -0
  494. package/dist/sandbox/pathSanitize.spec.d.ts.map +1 -0
  495. package/dist/{engine/permissions → sandbox}/pathSanitize.spec.js +2 -2
  496. package/dist/sandbox/pathSanitize.spec.js.map +1 -0
  497. package/dist/sandbox/sandboxAllowedDomainsValidate.d.ts +2 -2
  498. package/dist/sandbox/sandboxAllowedDomainsValidate.d.ts.map +1 -1
  499. package/dist/sandbox/sandboxAllowedDomainsValidate.js +4 -7
  500. package/dist/sandbox/sandboxAllowedDomainsValidate.js.map +1 -1
  501. package/dist/sandbox/sandboxAllowedDomainsValidate.spec.js +7 -10
  502. package/dist/sandbox/sandboxAllowedDomainsValidate.spec.js.map +1 -1
  503. package/dist/sandbox/sandboxAppsAccessCheck.js +20 -2
  504. package/dist/sandbox/sandboxAppsAccessCheck.js.map +1 -1
  505. package/dist/sandbox/sandboxAppsDenyPathsBuild.d.ts +3 -2
  506. package/dist/sandbox/sandboxAppsDenyPathsBuild.d.ts.map +1 -1
  507. package/dist/sandbox/sandboxAppsDenyPathsBuild.js.map +1 -1
  508. package/dist/sandbox/sandboxCanRead.js +1 -1
  509. package/dist/sandbox/sandboxCanRead.js.map +1 -1
  510. package/dist/sandbox/sandboxCanRead.spec.js +8 -16
  511. package/dist/sandbox/sandboxCanRead.spec.js.map +1 -1
  512. package/dist/sandbox/sandboxCanWrite.js +1 -1
  513. package/dist/sandbox/sandboxCanWrite.js.map +1 -1
  514. package/dist/sandbox/sandboxCanWrite.spec.js +1 -4
  515. package/dist/sandbox/sandboxCanWrite.spec.js.map +1 -1
  516. package/dist/sandbox/sandboxFilesystemPolicyBuild.d.ts +2 -2
  517. package/dist/sandbox/sandboxFilesystemPolicyBuild.d.ts.map +1 -1
  518. package/dist/sandbox/sandboxFilesystemPolicyBuild.js +4 -2
  519. package/dist/sandbox/sandboxFilesystemPolicyBuild.js.map +1 -1
  520. package/dist/sandbox/sandboxFilesystemPolicyBuild.spec.js +9 -21
  521. package/dist/sandbox/sandboxFilesystemPolicyBuild.spec.js.map +1 -1
  522. package/dist/settings.d.ts +0 -1
  523. package/dist/settings.d.ts.map +1 -1
  524. package/dist/settings.js.map +1 -1
  525. package/dist/storage/agentsRepository.spec.js +1 -5
  526. package/dist/storage/agentsRepository.spec.js.map +1 -1
  527. package/dist/storage/historyRepository.spec.js +1 -5
  528. package/dist/storage/historyRepository.spec.js.map +1 -1
  529. package/dist/storage/migrations/20260219_import_files.js +1 -4
  530. package/dist/storage/migrations/20260219_import_files.js.map +1 -1
  531. package/dist/storage/processesRepository.js +4 -15
  532. package/dist/storage/processesRepository.js.map +1 -1
  533. package/dist/storage/processesRepository.spec.js +1 -4
  534. package/dist/storage/processesRepository.spec.js.map +1 -1
  535. package/dist/storage/sessionsRepository.spec.js +1 -5
  536. package/dist/storage/sessionsRepository.spec.js.map +1 -1
  537. package/dist/storage/storage.spec.js +8 -4
  538. package/dist/storage/storage.spec.js.map +1 -1
  539. package/dist/storage/storageUpgrade.spec.js +1 -2
  540. package/dist/storage/storageUpgrade.spec.js.map +1 -1
  541. package/dist/types.d.ts +1 -1
  542. package/dist/types.d.ts.map +1 -1
  543. package/dist/util/stringUtils.spec.d.ts +2 -0
  544. package/dist/util/stringUtils.spec.d.ts.map +1 -0
  545. package/dist/util/stringUtils.spec.js +53 -0
  546. package/dist/util/stringUtils.spec.js.map +1 -0
  547. package/dist/util/timeFormat.js +17 -17
  548. package/dist/util/timeFormat.js.map +1 -1
  549. package/dist/utils/stringTruncate.js +1 -1
  550. package/dist/utils/stringTruncate.js.map +1 -1
  551. package/package.json +2 -1
  552. package/dist/engine/agents/ops/agentDescriptorIsCron.d.ts +0 -9
  553. package/dist/engine/agents/ops/agentDescriptorIsCron.d.ts.map +0 -1
  554. package/dist/engine/agents/ops/agentDescriptorIsCron.js +0 -8
  555. package/dist/engine/agents/ops/agentDescriptorIsCron.js.map +0 -1
  556. package/dist/engine/apps/appPermissionStateGrant.d.ts +0 -7
  557. package/dist/engine/apps/appPermissionStateGrant.d.ts.map +0 -1
  558. package/dist/engine/apps/appPermissionStateGrant.js +0 -14
  559. package/dist/engine/apps/appPermissionStateGrant.js.map +0 -1
  560. package/dist/engine/apps/appPermissionStateGrant.spec.d.ts +0 -2
  561. package/dist/engine/apps/appPermissionStateGrant.spec.d.ts.map +0 -1
  562. package/dist/engine/apps/appPermissionStateGrant.spec.js +0 -33
  563. package/dist/engine/apps/appPermissionStateGrant.spec.js.map +0 -1
  564. package/dist/engine/apps/appPermissionStatePathBuild.d.ts +0 -6
  565. package/dist/engine/apps/appPermissionStatePathBuild.d.ts.map +0 -1
  566. package/dist/engine/apps/appPermissionStatePathBuild.js +0 -9
  567. package/dist/engine/apps/appPermissionStatePathBuild.js.map +0 -1
  568. package/dist/engine/apps/appPermissionStateRead.d.ts +0 -6
  569. package/dist/engine/apps/appPermissionStateRead.d.ts.map +0 -1
  570. package/dist/engine/apps/appPermissionStateRead.js +0 -40
  571. package/dist/engine/apps/appPermissionStateRead.js.map +0 -1
  572. package/dist/engine/apps/appPermissionStateWrite.d.ts +0 -6
  573. package/dist/engine/apps/appPermissionStateWrite.d.ts.map +0 -1
  574. package/dist/engine/apps/appPermissionStateWrite.js +0 -32
  575. package/dist/engine/apps/appPermissionStateWrite.js.map +0 -1
  576. package/dist/engine/modules/tools/permissionRequestRegistry.d.ts +0 -13
  577. package/dist/engine/modules/tools/permissionRequestRegistry.d.ts.map +0 -1
  578. package/dist/engine/modules/tools/permissionRequestRegistry.js +0 -51
  579. package/dist/engine/modules/tools/permissionRequestRegistry.js.map +0 -1
  580. package/dist/engine/modules/tools/permissionRequestRegistry.spec.d.ts +0 -2
  581. package/dist/engine/modules/tools/permissionRequestRegistry.spec.d.ts.map +0 -1
  582. package/dist/engine/modules/tools/permissionRequestRegistry.spec.js +0 -47
  583. package/dist/engine/modules/tools/permissionRequestRegistry.spec.js.map +0 -1
  584. package/dist/engine/modules/tools/permissions.d.ts +0 -28
  585. package/dist/engine/modules/tools/permissions.d.ts.map +0 -1
  586. package/dist/engine/modules/tools/permissions.js +0 -375
  587. package/dist/engine/modules/tools/permissions.js.map +0 -1
  588. package/dist/engine/modules/tools/permissions.spec.d.ts +0 -2
  589. package/dist/engine/modules/tools/permissions.spec.d.ts.map +0 -1
  590. package/dist/engine/modules/tools/permissions.spec.js +0 -366
  591. package/dist/engine/modules/tools/permissions.spec.js.map +0 -1
  592. package/dist/engine/permissions/pathResolveSecure.d.ts.map +0 -1
  593. package/dist/engine/permissions/pathResolveSecure.js.map +0 -1
  594. package/dist/engine/permissions/pathResolveSecure.spec.d.ts.map +0 -1
  595. package/dist/engine/permissions/pathResolveSecure.spec.js.map +0 -1
  596. package/dist/engine/permissions/pathSanitize.d.ts.map +0 -1
  597. package/dist/engine/permissions/pathSanitize.js.map +0 -1
  598. package/dist/engine/permissions/pathSanitize.spec.d.ts.map +0 -1
  599. package/dist/engine/permissions/pathSanitize.spec.js.map +0 -1
  600. package/dist/engine/permissions/permissionAccessAllows.d.ts +0 -7
  601. package/dist/engine/permissions/permissionAccessAllows.d.ts.map +0 -1
  602. package/dist/engine/permissions/permissionAccessAllows.js +0 -72
  603. package/dist/engine/permissions/permissionAccessAllows.js.map +0 -1
  604. package/dist/engine/permissions/permissionAccessAllows.spec.d.ts +0 -2
  605. package/dist/engine/permissions/permissionAccessAllows.spec.d.ts.map +0 -1
  606. package/dist/engine/permissions/permissionAccessAllows.spec.js +0 -111
  607. package/dist/engine/permissions/permissionAccessAllows.spec.js.map +0 -1
  608. package/dist/engine/permissions/permissionAccessApply.d.ts +0 -7
  609. package/dist/engine/permissions/permissionAccessApply.d.ts.map +0 -1
  610. package/dist/engine/permissions/permissionAccessApply.js +0 -55
  611. package/dist/engine/permissions/permissionAccessApply.js.map +0 -1
  612. package/dist/engine/permissions/permissionAccessApply.spec.d.ts +0 -2
  613. package/dist/engine/permissions/permissionAccessApply.spec.d.ts.map +0 -1
  614. package/dist/engine/permissions/permissionAccessApply.spec.js +0 -56
  615. package/dist/engine/permissions/permissionAccessApply.spec.js.map +0 -1
  616. package/dist/engine/permissions/permissionAccessParse.d.ts +0 -7
  617. package/dist/engine/permissions/permissionAccessParse.d.ts.map +0 -1
  618. package/dist/engine/permissions/permissionAccessParse.js +0 -32
  619. package/dist/engine/permissions/permissionAccessParse.js.map +0 -1
  620. package/dist/engine/permissions/permissionAccessParse.spec.d.ts +0 -2
  621. package/dist/engine/permissions/permissionAccessParse.spec.d.ts.map +0 -1
  622. package/dist/engine/permissions/permissionAccessParse.spec.js +0 -17
  623. package/dist/engine/permissions/permissionAccessParse.spec.js.map +0 -1
  624. package/dist/engine/permissions/permissionApply.d.ts +0 -4
  625. package/dist/engine/permissions/permissionApply.d.ts.map +0 -1
  626. package/dist/engine/permissions/permissionApply.js +0 -10
  627. package/dist/engine/permissions/permissionApply.js.map +0 -1
  628. package/dist/engine/permissions/permissionApply.spec.d.ts +0 -2
  629. package/dist/engine/permissions/permissionApply.spec.d.ts.map +0 -1
  630. package/dist/engine/permissions/permissionApply.spec.js +0 -104
  631. package/dist/engine/permissions/permissionApply.spec.js.map +0 -1
  632. package/dist/engine/permissions/permissionBuildDefault.d.ts +0 -3
  633. package/dist/engine/permissions/permissionBuildDefault.d.ts.map +0 -1
  634. package/dist/engine/permissions/permissionBuildDefault.js +0 -29
  635. package/dist/engine/permissions/permissionBuildDefault.js.map +0 -1
  636. package/dist/engine/permissions/permissionBuildDefault.spec.d.ts +0 -2
  637. package/dist/engine/permissions/permissionBuildDefault.spec.d.ts.map +0 -1
  638. package/dist/engine/permissions/permissionBuildDefault.spec.js +0 -26
  639. package/dist/engine/permissions/permissionBuildDefault.spec.js.map +0 -1
  640. package/dist/engine/permissions/permissionClone.d.ts +0 -7
  641. package/dist/engine/permissions/permissionClone.d.ts.map +0 -1
  642. package/dist/engine/permissions/permissionClone.js +0 -12
  643. package/dist/engine/permissions/permissionClone.js.map +0 -1
  644. package/dist/engine/permissions/permissionClone.spec.d.ts +0 -2
  645. package/dist/engine/permissions/permissionClone.spec.d.ts.map +0 -1
  646. package/dist/engine/permissions/permissionClone.spec.js +0 -18
  647. package/dist/engine/permissions/permissionClone.spec.js.map +0 -1
  648. package/dist/engine/permissions/permissionDescribeDecision.d.ts +0 -3
  649. package/dist/engine/permissions/permissionDescribeDecision.d.ts.map +0 -1
  650. package/dist/engine/permissions/permissionDescribeDecision.js +0 -16
  651. package/dist/engine/permissions/permissionDescribeDecision.js.map +0 -1
  652. package/dist/engine/permissions/permissionDescribeDecision.spec.d.ts +0 -2
  653. package/dist/engine/permissions/permissionDescribeDecision.spec.d.ts.map +0 -1
  654. package/dist/engine/permissions/permissionDescribeDecision.spec.js +0 -17
  655. package/dist/engine/permissions/permissionDescribeDecision.spec.js.map +0 -1
  656. package/dist/engine/permissions/permissionEnsureDefaultFile.d.ts +0 -3
  657. package/dist/engine/permissions/permissionEnsureDefaultFile.d.ts.map +0 -1
  658. package/dist/engine/permissions/permissionEnsureDefaultFile.js +0 -7
  659. package/dist/engine/permissions/permissionEnsureDefaultFile.js.map +0 -1
  660. package/dist/engine/permissions/permissionEnsureDefaultFile.spec.d.ts +0 -2
  661. package/dist/engine/permissions/permissionEnsureDefaultFile.spec.d.ts.map +0 -1
  662. package/dist/engine/permissions/permissionEnsureDefaultFile.spec.js +0 -20
  663. package/dist/engine/permissions/permissionEnsureDefaultFile.spec.js.map +0 -1
  664. package/dist/engine/permissions/permissionFormatTag.d.ts +0 -3
  665. package/dist/engine/permissions/permissionFormatTag.d.ts.map +0 -1
  666. package/dist/engine/permissions/permissionFormatTag.js +0 -13
  667. package/dist/engine/permissions/permissionFormatTag.js.map +0 -1
  668. package/dist/engine/permissions/permissionFormatTag.spec.d.ts +0 -2
  669. package/dist/engine/permissions/permissionFormatTag.spec.d.ts.map +0 -1
  670. package/dist/engine/permissions/permissionFormatTag.spec.js +0 -17
  671. package/dist/engine/permissions/permissionFormatTag.spec.js.map +0 -1
  672. package/dist/engine/permissions/permissionMergeDefault.d.ts +0 -3
  673. package/dist/engine/permissions/permissionMergeDefault.d.ts.map +0 -1
  674. package/dist/engine/permissions/permissionMergeDefault.js +0 -14
  675. package/dist/engine/permissions/permissionMergeDefault.js.map +0 -1
  676. package/dist/engine/permissions/permissionMergeDefault.spec.d.ts +0 -2
  677. package/dist/engine/permissions/permissionMergeDefault.spec.d.ts.map +0 -1
  678. package/dist/engine/permissions/permissionMergeDefault.spec.js +0 -72
  679. package/dist/engine/permissions/permissionMergeDefault.spec.js.map +0 -1
  680. package/dist/engine/permissions/permissionTagsApply.d.ts +0 -7
  681. package/dist/engine/permissions/permissionTagsApply.d.ts.map +0 -1
  682. package/dist/engine/permissions/permissionTagsApply.js +0 -16
  683. package/dist/engine/permissions/permissionTagsApply.js.map +0 -1
  684. package/dist/engine/permissions/permissionTagsApply.spec.d.ts +0 -2
  685. package/dist/engine/permissions/permissionTagsApply.spec.d.ts.map +0 -1
  686. package/dist/engine/permissions/permissionTagsApply.spec.js +0 -22
  687. package/dist/engine/permissions/permissionTagsApply.spec.js.map +0 -1
  688. package/dist/engine/permissions/permissionTagsNormalize.d.ts +0 -6
  689. package/dist/engine/permissions/permissionTagsNormalize.d.ts.map +0 -1
  690. package/dist/engine/permissions/permissionTagsNormalize.js +0 -43
  691. package/dist/engine/permissions/permissionTagsNormalize.js.map +0 -1
  692. package/dist/engine/permissions/permissionTagsNormalize.spec.d.ts +0 -2
  693. package/dist/engine/permissions/permissionTagsNormalize.spec.d.ts.map +0 -1
  694. package/dist/engine/permissions/permissionTagsNormalize.spec.js +0 -19
  695. package/dist/engine/permissions/permissionTagsNormalize.spec.js.map +0 -1
  696. package/dist/engine/permissions/permissionTagsValidate.d.ts +0 -9
  697. package/dist/engine/permissions/permissionTagsValidate.d.ts.map +0 -1
  698. package/dist/engine/permissions/permissionTagsValidate.js +0 -18
  699. package/dist/engine/permissions/permissionTagsValidate.js.map +0 -1
  700. package/dist/engine/permissions/permissionTagsValidate.spec.d.ts +0 -2
  701. package/dist/engine/permissions/permissionTagsValidate.spec.d.ts.map +0 -1
  702. package/dist/engine/permissions/permissionTagsValidate.spec.js +0 -96
  703. package/dist/engine/permissions/permissionTagsValidate.spec.js.map +0 -1
  704. package/dist/engine/permissions/permissionWorkspaceGranted.d.ts +0 -7
  705. package/dist/engine/permissions/permissionWorkspaceGranted.d.ts.map +0 -1
  706. package/dist/engine/permissions/permissionWorkspaceGranted.js +0 -12
  707. package/dist/engine/permissions/permissionWorkspaceGranted.js.map +0 -1
  708. package/dist/engine/permissions/permissionWorkspaceGranted.spec.d.ts +0 -2
  709. package/dist/engine/permissions/permissionWorkspaceGranted.spec.d.ts.map +0 -1
  710. package/dist/engine/permissions/permissionWorkspaceGranted.spec.js +0 -35
  711. package/dist/engine/permissions/permissionWorkspaceGranted.spec.js.map +0 -1
  712. package/dist/engine/permissions/permissionWorkspacePathResolve.d.ts +0 -7
  713. package/dist/engine/permissions/permissionWorkspacePathResolve.d.ts.map +0 -1
  714. package/dist/engine/permissions/permissionWorkspacePathResolve.js +0 -42
  715. package/dist/engine/permissions/permissionWorkspacePathResolve.js.map +0 -1
  716. package/dist/engine/permissions/permissionWorkspacePathResolve.spec.d.ts +0 -2
  717. package/dist/engine/permissions/permissionWorkspacePathResolve.spec.d.ts.map +0 -1
  718. package/dist/engine/permissions/permissionWorkspacePathResolve.spec.js +0 -36
  719. package/dist/engine/permissions/permissionWorkspacePathResolve.spec.js.map +0 -1
  720. package/dist/engine/scheduling/gatePermissionRequest.d.ts +0 -21
  721. package/dist/engine/scheduling/gatePermissionRequest.d.ts.map +0 -1
  722. package/dist/engine/scheduling/gatePermissionRequest.js +0 -98
  723. package/dist/engine/scheduling/gatePermissionRequest.js.map +0 -1
  724. package/dist/engine/scheduling/gatePermissionRequest.spec.d.ts +0 -2
  725. package/dist/engine/scheduling/gatePermissionRequest.spec.d.ts.map +0 -1
  726. package/dist/engine/scheduling/gatePermissionRequest.spec.js +0 -126
  727. package/dist/engine/scheduling/gatePermissionRequest.spec.js.map +0 -1
  728. package/dist/engine/scheduling/gatePermissionsCheck.d.ts +0 -11
  729. package/dist/engine/scheduling/gatePermissionsCheck.d.ts.map +0 -1
  730. package/dist/engine/scheduling/gatePermissionsCheck.js +0 -58
  731. package/dist/engine/scheduling/gatePermissionsCheck.js.map +0 -1
  732. package/dist/engine/scheduling/gatePermissionsCheck.spec.d.ts +0 -2
  733. package/dist/engine/scheduling/gatePermissionsCheck.spec.d.ts.map +0 -1
  734. package/dist/engine/scheduling/gatePermissionsCheck.spec.js +0 -67
  735. package/dist/engine/scheduling/gatePermissionsCheck.spec.js.map +0 -1
  736. package/dist/files/store.d.ts +0 -24
  737. package/dist/files/store.d.ts.map +0 -1
  738. package/dist/files/store.js +0 -74
  739. package/dist/files/store.js.map +0 -1
  740. package/dist/files/store.spec.d.ts +0 -2
  741. package/dist/files/store.spec.d.ts.map +0 -1
  742. package/dist/files/store.spec.js +0 -27
  743. package/dist/files/store.spec.js.map +0 -1
  744. package/dist/plugins/memory/plugin.d.ts +0 -3
  745. package/dist/plugins/memory/plugin.d.ts.map +0 -1
  746. package/dist/plugins/memory/plugin.js +0 -30
  747. package/dist/plugins/memory/plugin.js.map +0 -1
  748. package/dist/plugins/memory/plugin.json +0 -6
  749. package/dist/plugins/memory/store.d.ts +0 -30
  750. package/dist/plugins/memory/store.d.ts.map +0 -1
  751. package/dist/plugins/memory/store.js +0 -264
  752. package/dist/plugins/memory/store.js.map +0 -1
  753. package/dist/plugins/memory/tool.d.ts +0 -6
  754. package/dist/plugins/memory/tool.d.ts.map +0 -1
  755. package/dist/plugins/memory/tool.js +0 -161
  756. package/dist/plugins/memory/tool.js.map +0 -1
  757. package/dist/prompts/CRON.md +0 -8
  758. /package/dist/plugins/dashboard/site/_next/static/{2ofcp37OFpSUQ4Jtt6bPH → aRKOz6Bb-vvt0oWuU7inW}/_buildManifest.js +0 -0
  759. /package/dist/plugins/dashboard/site/_next/static/{2ofcp37OFpSUQ4Jtt6bPH → aRKOz6Bb-vvt0oWuU7inW}/_ssgManifest.js +0 -0
  760. /package/dist/{engine/permissions → sandbox}/pathResolveSecure.d.ts +0 -0
  761. /package/dist/{engine/permissions → sandbox}/pathResolveSecure.js +0 -0
  762. /package/dist/{engine/permissions → sandbox}/pathResolveSecure.spec.d.ts +0 -0
  763. /package/dist/{engine/permissions → sandbox}/pathResolveSecure.spec.js +0 -0
  764. /package/dist/{engine/permissions → sandbox}/pathSanitize.d.ts +0 -0
  765. /package/dist/{engine/permissions → sandbox}/pathSanitize.js +0 -0
  766. /package/dist/{engine/permissions → sandbox}/pathSanitize.spec.d.ts +0 -0
@@ -1,58 +0,0 @@
1
- import { permissionAccessAllows } from "../permissions/permissionAccessAllows.js";
2
- /**
3
- * Checks gate permission tags against the current permissions.
4
- * Expects: tags are @network, @events, @workspace, @read:<path>, or @write:<path>.
5
- */
6
- export async function gatePermissionsCheck(permissions, tags) {
7
- if (!tags || tags.length === 0) {
8
- return { allowed: true, missing: [] };
9
- }
10
- const missing = [];
11
- for (const entry of tags) {
12
- const trimmed = entry.trim();
13
- if (!trimmed) {
14
- missing.push("<blank> (Permission tag cannot be blank.)");
15
- continue;
16
- }
17
- const parsed = parsePermissionAccess(trimmed);
18
- if (!parsed.access) {
19
- missing.push(`${trimmed} (${parsed.error ?? "Invalid gate permission."})`);
20
- continue;
21
- }
22
- const allowed = await permissionAccessAllows(permissions, parsed.access);
23
- if (!allowed) {
24
- missing.push(trimmed);
25
- }
26
- }
27
- return { allowed: missing.length === 0, missing };
28
- }
29
- function parsePermissionAccess(tag) {
30
- if (tag === "@network") {
31
- return { access: { kind: "network" } };
32
- }
33
- if (tag === "@events") {
34
- return { access: { kind: "events" } };
35
- }
36
- if (tag === "@workspace") {
37
- return { access: { kind: "workspace" } };
38
- }
39
- if (tag.startsWith("@read:")) {
40
- const pathValue = tag.slice("@read:".length).trim();
41
- if (!pathValue) {
42
- return { access: null, error: "Read permission requires a path." };
43
- }
44
- return { access: { kind: "read", path: pathValue } };
45
- }
46
- if (tag.startsWith("@write:")) {
47
- const pathValue = tag.slice("@write:".length).trim();
48
- if (!pathValue) {
49
- return { access: null, error: "Write permission requires a path." };
50
- }
51
- return { access: { kind: "write", path: pathValue } };
52
- }
53
- return {
54
- access: null,
55
- error: "Permission must be @network, @events, @workspace, @read:<path>, or @write:<path>."
56
- };
57
- }
58
- //# sourceMappingURL=gatePermissionsCheck.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gatePermissionsCheck.js","sourceRoot":"","sources":["../../../sources/engine/scheduling/gatePermissionsCheck.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAOlF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACtC,WAA+B,EAC/B,IAAe;IAEf,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YAC1D,SAAS;QACb,CAAC;QACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,KAAK,MAAM,CAAC,KAAK,IAAI,0BAA0B,GAAG,CAAC,CAAC;YAC3E,SAAS;QACb,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW;IACtC,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IAC3C,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;IAC1C,CAAC;IACD,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;QACvE,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC;QACxE,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IAC1D,CAAC;IAED,OAAO;QACH,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,mFAAmF;KAC7F,CAAC;AACN,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=gatePermissionsCheck.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gatePermissionsCheck.spec.d.ts","sourceRoot":"","sources":["../../../sources/engine/scheduling/gatePermissionsCheck.spec.ts"],"names":[],"mappings":""}
@@ -1,67 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { gatePermissionsCheck } from "./gatePermissionsCheck.js";
3
- const basePermissions = {
4
- workspaceDir: "/tmp",
5
- workingDir: "/tmp",
6
- readDirs: ["/tmp"],
7
- writeDirs: ["/tmp"],
8
- network: false,
9
- events: false
10
- };
11
- describe("gatePermissionsCheck", () => {
12
- it("allows empty tags", async () => {
13
- const result = await gatePermissionsCheck(basePermissions);
14
- expect(result).toEqual({ allowed: true, missing: [] });
15
- });
16
- it("denies network when not allowed", async () => {
17
- const result = await gatePermissionsCheck(basePermissions, ["@network"]);
18
- expect(result.allowed).toBe(false);
19
- expect(result.missing).toEqual(["@network"]);
20
- });
21
- it("allows network when permitted", async () => {
22
- const permissions = { ...basePermissions, network: true };
23
- const result = await gatePermissionsCheck(permissions, ["@network"]);
24
- expect(result).toEqual({ allowed: true, missing: [] });
25
- });
26
- it("denies events when not allowed", async () => {
27
- const result = await gatePermissionsCheck(basePermissions, ["@events"]);
28
- expect(result.allowed).toBe(false);
29
- expect(result.missing).toEqual(["@events"]);
30
- });
31
- it("allows events when permitted", async () => {
32
- const permissions = { ...basePermissions, events: true };
33
- const result = await gatePermissionsCheck(permissions, ["@events"]);
34
- expect(result).toEqual({ allowed: true, missing: [] });
35
- });
36
- it("denies workspace when not allowed", async () => {
37
- const appPermissions = {
38
- workspaceDir: "/tmp",
39
- workingDir: "/tmp/apps/my-app/data",
40
- readDirs: ["/tmp"],
41
- writeDirs: ["/tmp/apps/my-app/data"],
42
- network: false,
43
- events: false
44
- };
45
- const result = await gatePermissionsCheck(appPermissions, ["@workspace"]);
46
- expect(result.allowed).toBe(false);
47
- expect(result.missing).toEqual(["@workspace"]);
48
- });
49
- it("allows workspace when permitted", async () => {
50
- const permissions = { ...basePermissions };
51
- const result = await gatePermissionsCheck(permissions, ["@workspace"]);
52
- expect(result).toEqual({ allowed: true, missing: [] });
53
- });
54
- it("denies paths outside allowed roots", async () => {
55
- const result = await gatePermissionsCheck(basePermissions, ["@read:/etc"]);
56
- expect(result.allowed).toBe(false);
57
- expect(result.missing).toEqual(["@read:/etc"]);
58
- });
59
- it("reports invalid permission tags", async () => {
60
- const result = await gatePermissionsCheck(basePermissions, ["@banana"]);
61
- expect(result.allowed).toBe(false);
62
- expect(result.missing).toEqual([
63
- "@banana (Permission must be @network, @events, @workspace, @read:<path>, or @write:<path>.)"
64
- ]);
65
- });
66
- });
67
- //# sourceMappingURL=gatePermissionsCheck.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gatePermissionsCheck.spec.js","sourceRoot":"","sources":["../../../sources/engine/scheduling/gatePermissionsCheck.spec.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import type { Config } from "@/types";
2
- import type { StoredFile } from "./types.js";
3
- export declare class FileStore {
4
- private basePath;
5
- constructor(configOrBasePath: Config | string);
6
- resolvePath(): string;
7
- ensureDir(): Promise<void>;
8
- saveBuffer(options: {
9
- name: string;
10
- mimeType: string;
11
- data: Buffer;
12
- source: string;
13
- }): Promise<StoredFile>;
14
- saveFromPath(options: {
15
- name: string;
16
- mimeType: string;
17
- source: string;
18
- path: string;
19
- }): Promise<StoredFile>;
20
- get(id: string): Promise<StoredFile | null>;
21
- private metadataPath;
22
- private writeMetadata;
23
- }
24
- //# sourceMappingURL=store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../sources/files/store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,qBAAa,SAAS;IAClB,OAAO,CAAC,QAAQ,CAAS;gBAEb,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAI7C,WAAW,IAAI,MAAM;IAIf,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1B,UAAU,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAoB1G,YAAY,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAoB5G,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAYjD,OAAO,CAAC,YAAY;YAIN,aAAa;CAI9B"}
@@ -1,74 +0,0 @@
1
- import { promises as fs } from "node:fs";
2
- import path from "node:path";
3
- import { createId } from "@paralleldrive/cuid2";
4
- import { sanitizeFilename } from "../util/filename.js";
5
- export class FileStore {
6
- basePath;
7
- constructor(configOrBasePath) {
8
- this.basePath = typeof configOrBasePath === "string" ? configOrBasePath : configOrBasePath.filesDir;
9
- }
10
- resolvePath() {
11
- return path.resolve(this.basePath);
12
- }
13
- async ensureDir() {
14
- await fs.mkdir(this.resolvePath(), { recursive: true });
15
- }
16
- async saveBuffer(options) {
17
- await this.ensureDir();
18
- const id = createId();
19
- const filename = `${id}__${sanitizeFilename(options.name)}`;
20
- const filePath = path.join(this.resolvePath(), filename);
21
- await fs.writeFile(filePath, options.data);
22
- const stats = await fs.stat(filePath);
23
- const record = {
24
- id,
25
- name: options.name,
26
- path: filePath,
27
- mimeType: options.mimeType,
28
- size: stats.size,
29
- source: options.source,
30
- createdAt: new Date().toISOString()
31
- };
32
- await this.writeMetadata(record);
33
- return record;
34
- }
35
- async saveFromPath(options) {
36
- await this.ensureDir();
37
- const id = createId();
38
- const filename = `${id}__${sanitizeFilename(options.name)}`;
39
- const filePath = path.join(this.resolvePath(), filename);
40
- await fs.copyFile(options.path, filePath);
41
- const stats = await fs.stat(filePath);
42
- const record = {
43
- id,
44
- name: options.name,
45
- path: filePath,
46
- mimeType: options.mimeType,
47
- size: stats.size,
48
- source: options.source,
49
- createdAt: new Date().toISOString()
50
- };
51
- await this.writeMetadata(record);
52
- return record;
53
- }
54
- async get(id) {
55
- try {
56
- const content = await fs.readFile(this.metadataPath(id), "utf8");
57
- return JSON.parse(content);
58
- }
59
- catch (error) {
60
- if (error.code === "ENOENT") {
61
- return null;
62
- }
63
- throw error;
64
- }
65
- }
66
- metadataPath(id) {
67
- return path.join(this.resolvePath(), `${id}.json`);
68
- }
69
- async writeMetadata(record) {
70
- const payload = `${JSON.stringify(record, null, 2)}\n`;
71
- await fs.writeFile(this.metadataPath(record.id), payload, "utf8");
72
- }
73
- }
74
- //# sourceMappingURL=store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../sources/files/store.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=store.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.spec.d.ts","sourceRoot":"","sources":["../../sources/files/store.spec.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- import { mkdtemp, rm } from "node:fs/promises";
2
- import os from "node:os";
3
- import path from "node:path";
4
- import { afterEach, beforeEach, describe, expect, it } from "vitest";
5
- import { FileStore } from "./store.js";
6
- describe("FileStore", () => {
7
- let rootDir;
8
- beforeEach(async () => {
9
- rootDir = await mkdtemp(path.join(os.tmpdir(), "daycare-file-store-"));
10
- });
11
- afterEach(async () => {
12
- await rm(rootDir, { recursive: true, force: true });
13
- });
14
- it("stores files under a direct base path", async () => {
15
- const basePath = path.join(rootDir, "user-home", "desktop");
16
- const store = new FileStore(basePath);
17
- const saved = await store.saveBuffer({
18
- name: "hello.txt",
19
- mimeType: "text/plain",
20
- data: Buffer.from("hello"),
21
- source: "test"
22
- });
23
- expect(saved.path.startsWith(path.resolve(basePath))).toBe(true);
24
- expect(saved.name).toBe("hello.txt");
25
- });
26
- });
27
- //# sourceMappingURL=store.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.spec.js","sourceRoot":"","sources":["../../sources/files/store.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,IAAI,OAAe,CAAC;IAEpB,UAAU,CAAC,KAAK,IAAI,EAAE;QAClB,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC;YACjC,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,YAAY;YACtB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YAC1B,MAAM,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- import { z } from "zod";
2
- export declare const plugin: import("../../types.js").PluginModule<z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
3
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../sources/plugins/memory/plugin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,MAAM,2FAsBjB,CAAC"}
@@ -1,30 +0,0 @@
1
- import path from "node:path";
2
- import { z } from "zod";
3
- import { resolveWorkspaceDir } from "../../engine/permissions.js";
4
- import { definePlugin } from "../../engine/plugins/types.js";
5
- import { MemoryStore } from "./store.js";
6
- import { buildMemoryCreateEntityTool, buildMemoryListEntitiesTool, buildMemoryUpsertRecordTool } from "./tool.js";
7
- const settingsSchema = z.object({}).passthrough();
8
- export const plugin = definePlugin({
9
- settingsSchema,
10
- create: (api) => {
11
- const configDir = path.resolve(api.engineSettings.engine?.dataDir ?? ".daycare");
12
- const workspaceDir = resolveWorkspaceDir(configDir, api.engineSettings.assistant ?? null);
13
- const basePath = path.join(workspaceDir, "memory");
14
- const store = new MemoryStore(basePath);
15
- return {
16
- load: async () => {
17
- await store.ensure();
18
- api.registrar.registerTool(buildMemoryCreateEntityTool(store));
19
- api.registrar.registerTool(buildMemoryUpsertRecordTool(store));
20
- api.registrar.registerTool(buildMemoryListEntitiesTool(store));
21
- },
22
- unload: async () => {
23
- api.registrar.unregisterTool("memory_create_entity");
24
- api.registrar.unregisterTool("memory_upsert_record");
25
- api.registrar.unregisterTool("memory_list_entities");
26
- }
27
- };
28
- }
29
- });
30
- //# sourceMappingURL=plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../sources/plugins/memory/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAElH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC;IAC/B,cAAc;IACd,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,IAAI,UAAU,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC;QAExC,OAAO;YACH,IAAI,EAAE,KAAK,IAAI,EAAE;gBACb,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/D,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/D,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,EAAE,KAAK,IAAI,EAAE;gBACf,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;gBACrD,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;gBACrD,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC;YACzD,CAAC;SACJ,CAAC;IACN,CAAC;CACJ,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- {
2
- "id": "memory",
3
- "name": "Memory",
4
- "description": "Structured memory entities stored as markdown.",
5
- "entry": "./plugin.js"
6
- }
@@ -1,30 +0,0 @@
1
- export type MemoryEntityResult = {
2
- entity: string;
3
- created: boolean;
4
- path: string;
5
- };
6
- export type MemoryRecordResult = {
7
- entity: string;
8
- record: string;
9
- created: boolean;
10
- path: string;
11
- };
12
- export type MemoryEntitySummary = {
13
- entity: string;
14
- name: string;
15
- description: string;
16
- path: string;
17
- };
18
- export declare class MemoryStore {
19
- private basePath;
20
- constructor(basePath: string);
21
- ensure(): Promise<void>;
22
- createEntity(entityInput: string, nameInput: string, descriptionInput: string): Promise<MemoryEntityResult>;
23
- upsertRecord(entityInput: string, recordInput: string, contentInput: string): Promise<MemoryRecordResult>;
24
- listEntitySummaries(limit?: number): Promise<MemoryEntitySummary[]>;
25
- private indexPath;
26
- private entityPath;
27
- private listEntities;
28
- private writeIndex;
29
- }
30
- //# sourceMappingURL=store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../sources/plugins/memory/store.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,kBAAkB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,qBAAa,WAAW;IACpB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM;IAItB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAUvB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgC3G,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0CzG,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAyBzE,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,UAAU;YAIJ,YAAY;YAkBZ,UAAU;CAI3B"}
@@ -1,264 +0,0 @@
1
- import { promises as fs } from "node:fs";
2
- import path from "node:path";
3
- import { getLogger } from "../../log.js";
4
- const logger = getLogger("plugin.memory");
5
- const INDEX_FILENAME = "INDEX.md";
6
- const ENTITY_PATTERN = /^[a-z]+$/;
7
- const MAX_NAME_LENGTH = 60;
8
- const MAX_DESC_LENGTH = 160;
9
- export class MemoryStore {
10
- basePath;
11
- constructor(basePath) {
12
- this.basePath = path.resolve(basePath);
13
- }
14
- async ensure() {
15
- await fs.mkdir(this.basePath, { recursive: true });
16
- const indexPath = this.indexPath();
17
- try {
18
- await fs.access(indexPath);
19
- }
20
- catch {
21
- await fs.writeFile(indexPath, "# Memory Index\n", "utf8");
22
- }
23
- }
24
- async createEntity(entityInput, nameInput, descriptionInput) {
25
- const entity = validateEntity(entityInput);
26
- const name = validateShortText(nameInput, "Name", MAX_NAME_LENGTH);
27
- const description = validateShortText(descriptionInput, "Description", MAX_DESC_LENGTH);
28
- await this.ensure();
29
- const entityPath = this.entityPath(entity);
30
- const exists = await fileExists(entityPath);
31
- let body = `# ${entity}`;
32
- if (exists) {
33
- const raw = await fs.readFile(entityPath, "utf8");
34
- const parsed = parseEntityFile(raw);
35
- body = parsed.body.trim().length > 0 ? parsed.body.trimEnd() : body;
36
- }
37
- const frontmatter = { name, description };
38
- const content = serializeEntity(frontmatter, body);
39
- await fs.writeFile(entityPath, content, "utf8");
40
- const entities = await this.listEntities();
41
- if (!entities.includes(entity)) {
42
- entities.push(entity);
43
- entities.sort();
44
- await this.writeIndex(entities);
45
- }
46
- logger.info({ entity, created: !exists }, "ready: Memory entity ready");
47
- return { entity, created: !exists, path: entityPath };
48
- }
49
- async upsertRecord(entityInput, recordInput, contentInput) {
50
- const entity = validateEntity(entityInput);
51
- const record = validateRecord(recordInput);
52
- const content = normalizeContent(contentInput);
53
- await this.ensure();
54
- const entities = await this.listEntities();
55
- if (!entities.includes(entity)) {
56
- throw new Error(`Unknown entity: ${entity}. Create it first.`);
57
- }
58
- const entityPath = this.entityPath(entity);
59
- const exists = await fileExists(entityPath);
60
- if (!exists) {
61
- throw new Error(`Entity file missing for ${entity}. Create it first.`);
62
- }
63
- const raw = await fs.readFile(entityPath, "utf8");
64
- const parsedFile = parseEntityFile(raw);
65
- const frontmatter = normalizeFrontmatter(parsedFile.frontmatter);
66
- const parsedRecords = parseRecords(parsedFile.body, entity);
67
- const match = parsedRecords.records.find((entry) => entry.key === record);
68
- const created = !match;
69
- if (match) {
70
- match.body = content;
71
- }
72
- else {
73
- parsedRecords.records.push({ key: record, body: content });
74
- }
75
- const updated = serializeEntity(frontmatter, serializeRecords(parsedRecords.prefix, parsedRecords.records, entity));
76
- await fs.writeFile(entityPath, updated, "utf8");
77
- logger.info({ entity, record, created }, "event: Memory record upserted");
78
- return { entity, record, created, path: entityPath };
79
- }
80
- async listEntitySummaries(limit) {
81
- await this.ensure();
82
- const entities = await this.listEntities();
83
- const summaries = [];
84
- const max = limit ?? entities.length;
85
- for (const entity of entities) {
86
- if (summaries.length >= max) {
87
- break;
88
- }
89
- const entityPath = this.entityPath(entity);
90
- const raw = await fs.readFile(entityPath, "utf8");
91
- const parsedFile = parseEntityFile(raw);
92
- const frontmatter = normalizeFrontmatter(parsedFile.frontmatter);
93
- summaries.push({
94
- entity,
95
- name: frontmatter.name,
96
- description: frontmatter.description,
97
- path: entityPath
98
- });
99
- }
100
- return summaries;
101
- }
102
- indexPath() {
103
- return path.join(this.basePath, INDEX_FILENAME);
104
- }
105
- entityPath(entity) {
106
- return path.join(this.basePath, `${entity}.md`);
107
- }
108
- async listEntities() {
109
- await this.ensure();
110
- const indexPath = this.indexPath();
111
- const raw = await fs.readFile(indexPath, "utf8");
112
- const lines = raw.split(/\r?\n/);
113
- const entities = [];
114
- for (const line of lines) {
115
- const match = line.match(/^\s*-\s*([a-z]+)\s*$/);
116
- if (match) {
117
- const entry = match[1];
118
- if (entry) {
119
- entities.push(entry);
120
- }
121
- }
122
- }
123
- return Array.from(new Set(entities));
124
- }
125
- async writeIndex(entities) {
126
- const lines = ["# Memory Index", "", ...entities.map((entity) => `- ${entity}`), ""];
127
- await fs.writeFile(this.indexPath(), lines.join("\n"), "utf8");
128
- }
129
- }
130
- function parseEntityFile(markdown) {
131
- const content = markdown ?? "";
132
- const frontmatterMatch = content.match(/^---\s*\r?\n([\s\S]*?)\r?\n---\s*\r?\n?/);
133
- if (!frontmatterMatch) {
134
- return { frontmatter: {}, body: content };
135
- }
136
- const frontmatterBlock = frontmatterMatch[1] ?? "";
137
- const frontmatter = parseFrontmatter(frontmatterBlock);
138
- const body = content.slice(frontmatterMatch[0].length);
139
- return { frontmatter, body };
140
- }
141
- function parseFrontmatter(block) {
142
- const lines = block.split(/\r?\n/);
143
- const frontmatter = {};
144
- for (const line of lines) {
145
- const trimmed = line.trim();
146
- if (!trimmed) {
147
- continue;
148
- }
149
- const separatorIndex = trimmed.indexOf(":");
150
- if (separatorIndex <= 0) {
151
- continue;
152
- }
153
- const key = trimmed.slice(0, separatorIndex).trim();
154
- let value = trimmed.slice(separatorIndex + 1).trim();
155
- value = value.replace(/^"|"$/g, "").replace(/^'|'$/g, "");
156
- if (!value) {
157
- continue;
158
- }
159
- if (key === "name") {
160
- frontmatter.name = value;
161
- }
162
- if (key === "description") {
163
- frontmatter.description = value;
164
- }
165
- }
166
- return frontmatter;
167
- }
168
- function normalizeFrontmatter(frontmatter) {
169
- const name = validateShortText(frontmatter.name ?? "", "Name", MAX_NAME_LENGTH);
170
- const description = validateShortText(frontmatter.description ?? "", "Description", MAX_DESC_LENGTH);
171
- return { name, description };
172
- }
173
- function serializeEntity(frontmatter, body) {
174
- const lines = [
175
- "---",
176
- `name: "${escapeYaml(frontmatter.name ?? "")}"`,
177
- `description: "${escapeYaml(frontmatter.description ?? "")}"`,
178
- "---",
179
- ""
180
- ];
181
- const trimmedBody = body.trim().length > 0 ? body.trimEnd() : "";
182
- const content = `${lines.join("\n")}${trimmedBody}\n`;
183
- return content;
184
- }
185
- function parseRecords(markdown, entity) {
186
- const normalized = markdown ?? "";
187
- const headerRegex = /^##\s+(.+)$/gm;
188
- const matches = Array.from(normalized.matchAll(headerRegex));
189
- if (matches.length === 0) {
190
- const prefix = normalized.trim().length > 0 ? normalized.trimEnd() : `# ${entity}`;
191
- return { prefix, records: [] };
192
- }
193
- const firstMatch = matches[0];
194
- if (!firstMatch) {
195
- const prefix = normalized.trim().length > 0 ? normalized.trimEnd() : `# ${entity}`;
196
- return { prefix, records: [] };
197
- }
198
- const prefix = normalized.slice(0, firstMatch.index ?? 0).trimEnd();
199
- const records = matches.map((match, index) => {
200
- const start = match.index ?? 0;
201
- const header = match[1]?.trim() ?? "";
202
- const contentStart = start + match[0].length;
203
- const nextStart = matches[index + 1]?.index ?? normalized.length;
204
- let body = normalized.slice(contentStart, nextStart);
205
- body = body.replace(/^\s*\n/, "").replace(/\s*$/, "");
206
- return { key: header, body };
207
- });
208
- return { prefix, records };
209
- }
210
- function serializeRecords(prefix, records, entity) {
211
- const cleanedPrefix = prefix.trim().length > 0 ? prefix.trimEnd() : `# ${entity}`;
212
- const sections = records.map((record) => {
213
- const body = record.body.trim();
214
- return body.length > 0 ? `## ${record.key}\n${body}` : `## ${record.key}`;
215
- });
216
- const content = [cleanedPrefix, ...sections].join("\n\n");
217
- return `${content.trimEnd()}\n`;
218
- }
219
- function validateEntity(value) {
220
- const trimmed = value.trim();
221
- if (!ENTITY_PATTERN.test(trimmed)) {
222
- throw new Error("Entity must be a lowercase english word (a-z only, no underscores).");
223
- }
224
- return trimmed;
225
- }
226
- function validateRecord(value) {
227
- const trimmed = value.trim();
228
- if (!trimmed) {
229
- throw new Error("Record name is required.");
230
- }
231
- if (/\r|\n/.test(trimmed)) {
232
- throw new Error("Record name must be a single line.");
233
- }
234
- return trimmed;
235
- }
236
- function validateShortText(value, label, max) {
237
- const trimmed = value.trim();
238
- if (!trimmed) {
239
- throw new Error(`${label} is required.`);
240
- }
241
- if (trimmed.length > max) {
242
- throw new Error(`${label} must be at most ${max} characters.`);
243
- }
244
- if (/\r|\n/.test(trimmed)) {
245
- throw new Error(`${label} must be a single line.`);
246
- }
247
- return trimmed;
248
- }
249
- function normalizeContent(value) {
250
- return value.trim();
251
- }
252
- function escapeYaml(value) {
253
- return value.replace(/"/g, '\\"');
254
- }
255
- async function fileExists(target) {
256
- try {
257
- await fs.access(target);
258
- return true;
259
- }
260
- catch {
261
- return false;
262
- }
263
- }
264
- //# sourceMappingURL=store.js.map