@dexto/core 1.1.11 → 1.2.1

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 (416) hide show
  1. package/README.md +24 -4
  2. package/dist/Dexto.cjs +4 -14
  3. package/dist/Dexto.d.ts +8 -29
  4. package/dist/Dexto.d.ts.map +1 -1
  5. package/dist/Dexto.js +4 -12
  6. package/dist/agent/DextoAgent.cjs +92 -3
  7. package/dist/agent/DextoAgent.d.ts +12 -4
  8. package/dist/agent/DextoAgent.d.ts.map +1 -1
  9. package/dist/agent/DextoAgent.js +52 -3
  10. package/dist/agent/agentCard.js +1 -0
  11. package/dist/agent/error-codes.cjs +1 -0
  12. package/dist/agent/error-codes.d.ts +1 -0
  13. package/dist/agent/error-codes.d.ts.map +1 -1
  14. package/dist/agent/error-codes.js +2 -0
  15. package/dist/agent/errors.cjs +13 -0
  16. package/dist/agent/errors.d.ts +4 -0
  17. package/dist/agent/errors.d.ts.map +1 -1
  18. package/dist/agent/errors.js +14 -0
  19. package/dist/agent/index.js +1 -0
  20. package/dist/agent/registry/error-codes.js +1 -0
  21. package/dist/agent/registry/errors.js +1 -0
  22. package/dist/agent/registry/registry.js +1 -0
  23. package/dist/agent/registry/types.js +1 -0
  24. package/dist/agent/registry/user-registry.js +1 -0
  25. package/dist/agent/schemas.cjs +6 -1
  26. package/dist/agent/schemas.d.ts +113 -3
  27. package/dist/agent/schemas.d.ts.map +1 -1
  28. package/dist/agent/schemas.js +7 -1
  29. package/dist/agent/state-manager.js +1 -0
  30. package/dist/approval/error-codes.js +1 -0
  31. package/dist/approval/errors.js +1 -0
  32. package/dist/approval/index.js +1 -0
  33. package/dist/approval/manager.cjs +30 -0
  34. package/dist/approval/manager.d.ts +23 -1
  35. package/dist/approval/manager.d.ts.map +1 -1
  36. package/dist/approval/manager.js +31 -0
  37. package/dist/approval/providers/event-based-approval-provider.js +1 -0
  38. package/dist/approval/providers/factory.js +1 -0
  39. package/dist/approval/providers/noop-approval-provider.js +1 -0
  40. package/dist/approval/schemas.cjs +36 -0
  41. package/dist/approval/schemas.d.ts +173 -0
  42. package/dist/approval/schemas.d.ts.map +1 -1
  43. package/dist/approval/schemas.js +33 -0
  44. package/dist/approval/types.cjs +1 -0
  45. package/dist/approval/types.d.ts +27 -1
  46. package/dist/approval/types.d.ts.map +1 -1
  47. package/dist/approval/types.js +2 -0
  48. package/dist/chunk-C6A6W6XS.js +53 -0
  49. package/dist/config/agent-resolver.js +1 -0
  50. package/dist/config/error-codes.js +1 -0
  51. package/dist/config/errors.js +1 -0
  52. package/dist/config/loader.js +1 -0
  53. package/dist/config/writer.js +1 -0
  54. package/dist/context/compression/middle-removal.js +1 -0
  55. package/dist/context/compression/oldest-removal.js +1 -0
  56. package/dist/context/error-codes.js +1 -0
  57. package/dist/context/errors.js +1 -0
  58. package/dist/context/index.js +1 -0
  59. package/dist/context/manager.cjs +36 -1
  60. package/dist/context/manager.d.ts.map +1 -1
  61. package/dist/context/manager.js +27 -1
  62. package/dist/context/media-helpers.js +1 -0
  63. package/dist/context/utils.cjs +102 -6
  64. package/dist/context/utils.d.ts +35 -2
  65. package/dist/context/utils.d.ts.map +1 -1
  66. package/dist/context/utils.js +100 -6
  67. package/dist/errors/DextoBaseError.js +1 -0
  68. package/dist/errors/DextoRuntimeError.js +1 -0
  69. package/dist/errors/DextoValidationError.js +1 -0
  70. package/dist/errors/index.js +1 -0
  71. package/dist/errors/result-bridge.js +1 -0
  72. package/dist/errors/types.cjs +3 -0
  73. package/dist/errors/types.d.ts +7 -2
  74. package/dist/errors/types.d.ts.map +1 -1
  75. package/dist/errors/types.js +4 -0
  76. package/dist/events/index.cjs +1 -0
  77. package/dist/events/index.d.ts +6 -2
  78. package/dist/events/index.d.ts.map +1 -1
  79. package/dist/events/index.js +2 -0
  80. package/dist/filesystem/error-codes.cjs +53 -0
  81. package/dist/filesystem/error-codes.d.ts +31 -0
  82. package/dist/filesystem/error-codes.d.ts.map +1 -0
  83. package/dist/filesystem/error-codes.js +30 -0
  84. package/dist/filesystem/errors.cjs +303 -0
  85. package/dist/filesystem/errors.d.ts +109 -0
  86. package/dist/filesystem/errors.d.ts.map +1 -0
  87. package/dist/filesystem/errors.js +280 -0
  88. package/dist/filesystem/filesystem-service.cjs +482 -0
  89. package/dist/filesystem/filesystem-service.d.ts +57 -0
  90. package/dist/filesystem/filesystem-service.d.ts.map +1 -0
  91. package/dist/filesystem/filesystem-service.js +449 -0
  92. package/dist/filesystem/index.cjs +37 -0
  93. package/dist/filesystem/index.d.ts +11 -0
  94. package/dist/filesystem/index.d.ts.map +1 -0
  95. package/dist/filesystem/index.js +11 -0
  96. package/dist/filesystem/path-validator.cjs +172 -0
  97. package/dist/filesystem/path-validator.d.ts +53 -0
  98. package/dist/filesystem/path-validator.d.ts.map +1 -0
  99. package/dist/filesystem/path-validator.js +139 -0
  100. package/dist/filesystem/types.cjs +16 -0
  101. package/dist/filesystem/types.d.ts +171 -0
  102. package/dist/filesystem/types.d.ts.map +1 -0
  103. package/dist/filesystem/types.js +0 -0
  104. package/dist/index.browser.js +1 -0
  105. package/dist/index.cjs +3 -3
  106. package/dist/index.d.ts +2 -1
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +3 -2
  109. package/dist/llm/error-codes.js +1 -0
  110. package/dist/llm/errors.js +1 -0
  111. package/dist/llm/formatters/anthropic.js +1 -0
  112. package/dist/llm/formatters/factory.js +1 -0
  113. package/dist/llm/formatters/openai.js +1 -0
  114. package/dist/llm/formatters/vercel.js +1 -0
  115. package/dist/llm/registry.cjs +15 -15
  116. package/dist/llm/registry.d.ts +1 -1
  117. package/dist/llm/registry.js +16 -15
  118. package/dist/llm/resolver.js +1 -0
  119. package/dist/llm/schemas.cjs +6 -2
  120. package/dist/llm/schemas.d.ts +10 -0
  121. package/dist/llm/schemas.d.ts.map +1 -1
  122. package/dist/llm/schemas.js +7 -2
  123. package/dist/llm/services/anthropic.cjs +67 -0
  124. package/dist/llm/services/anthropic.d.ts +6 -0
  125. package/dist/llm/services/anthropic.d.ts.map +1 -1
  126. package/dist/llm/services/anthropic.js +27 -0
  127. package/dist/llm/services/factory.js +1 -0
  128. package/dist/llm/services/openai.cjs +87 -0
  129. package/dist/llm/services/openai.d.ts +6 -0
  130. package/dist/llm/services/openai.d.ts.map +1 -1
  131. package/dist/llm/services/openai.js +47 -0
  132. package/dist/llm/services/test-utils.integration.cjs +1 -1
  133. package/dist/llm/services/test-utils.integration.js +2 -1
  134. package/dist/llm/services/vercel.cjs +144 -97
  135. package/dist/llm/services/vercel.d.ts +6 -1
  136. package/dist/llm/services/vercel.d.ts.map +1 -1
  137. package/dist/llm/services/vercel.js +105 -98
  138. package/dist/llm/tokenizer/anthropic.js +1 -0
  139. package/dist/llm/tokenizer/default.js +1 -0
  140. package/dist/llm/tokenizer/factory.js +1 -0
  141. package/dist/llm/tokenizer/google.js +1 -0
  142. package/dist/llm/tokenizer/openai.cjs +1 -1
  143. package/dist/llm/tokenizer/openai.d.ts +1 -1
  144. package/dist/llm/tokenizer/openai.js +2 -1
  145. package/dist/llm/tokenizer/types.js +1 -0
  146. package/dist/llm/types.d.ts +2 -2
  147. package/dist/llm/types.d.ts.map +1 -1
  148. package/dist/llm/types.js +1 -0
  149. package/dist/llm/validation.js +1 -0
  150. package/dist/logger/browser.js +1 -0
  151. package/dist/logger/logger.d.ts +42 -0
  152. package/dist/logger/logger.d.ts.map +1 -1
  153. package/dist/logger/logger.js +1 -0
  154. package/dist/mcp/error-codes.cjs +1 -0
  155. package/dist/mcp/error-codes.d.ts +1 -0
  156. package/dist/mcp/error-codes.d.ts.map +1 -1
  157. package/dist/mcp/error-codes.js +2 -0
  158. package/dist/mcp/errors.cjs +12 -0
  159. package/dist/mcp/errors.d.ts +7 -0
  160. package/dist/mcp/errors.d.ts.map +1 -1
  161. package/dist/mcp/errors.js +13 -0
  162. package/dist/mcp/manager.cjs +66 -16
  163. package/dist/mcp/manager.d.ts +7 -0
  164. package/dist/mcp/manager.d.ts.map +1 -1
  165. package/dist/mcp/manager.js +67 -16
  166. package/dist/mcp/mcp-client.js +1 -0
  167. package/dist/mcp/resolver.js +1 -0
  168. package/dist/mcp/schemas.js +1 -0
  169. package/dist/mcp/types.d.ts +1 -1
  170. package/dist/mcp/types.d.ts.map +1 -1
  171. package/dist/memory/error-codes.js +1 -0
  172. package/dist/memory/errors.js +1 -0
  173. package/dist/memory/index.js +1 -0
  174. package/dist/memory/manager.js +1 -0
  175. package/dist/memory/schemas.js +1 -0
  176. package/dist/plugins/builtins/content-policy.js +1 -0
  177. package/dist/plugins/builtins/response-sanitizer.js +1 -0
  178. package/dist/plugins/error-codes.js +1 -0
  179. package/dist/plugins/index.js +1 -0
  180. package/dist/plugins/loader.js +1 -0
  181. package/dist/plugins/manager.js +1 -0
  182. package/dist/plugins/registrations/builtins.js +1 -0
  183. package/dist/plugins/schemas.js +1 -0
  184. package/dist/preferences/constants.js +1 -0
  185. package/dist/preferences/error-codes.js +1 -0
  186. package/dist/preferences/errors.js +1 -0
  187. package/dist/preferences/index.js +1 -0
  188. package/dist/preferences/loader.cjs +3 -1
  189. package/dist/preferences/loader.d.ts +10 -1
  190. package/dist/preferences/loader.d.ts.map +1 -1
  191. package/dist/preferences/loader.js +4 -1
  192. package/dist/preferences/schemas.cjs +2 -1
  193. package/dist/preferences/schemas.d.ts +8 -0
  194. package/dist/preferences/schemas.d.ts.map +1 -1
  195. package/dist/preferences/schemas.js +3 -1
  196. package/dist/process/command-validator.cjs +544 -0
  197. package/dist/process/command-validator.d.ts +46 -0
  198. package/dist/process/command-validator.d.ts.map +1 -0
  199. package/dist/process/command-validator.js +521 -0
  200. package/dist/process/error-codes.cjs +47 -0
  201. package/dist/process/error-codes.d.ts +25 -0
  202. package/dist/process/error-codes.d.ts.map +1 -0
  203. package/dist/process/error-codes.js +24 -0
  204. package/dist/process/errors.cjs +244 -0
  205. package/dist/process/errors.d.ts +87 -0
  206. package/dist/process/errors.d.ts.map +1 -0
  207. package/dist/process/errors.js +221 -0
  208. package/dist/process/index.cjs +37 -0
  209. package/dist/process/index.d.ts +11 -0
  210. package/dist/process/index.d.ts.map +1 -0
  211. package/dist/process/index.js +11 -0
  212. package/dist/process/process-service.cjs +443 -0
  213. package/dist/process/process-service.d.ts +62 -0
  214. package/dist/process/process-service.d.ts.map +1 -0
  215. package/dist/process/process-service.js +410 -0
  216. package/dist/process/types.cjs +16 -0
  217. package/dist/process/types.d.ts +107 -0
  218. package/dist/process/types.d.ts.map +1 -0
  219. package/dist/process/types.js +0 -0
  220. package/dist/prompts/error-codes.js +1 -0
  221. package/dist/prompts/errors.js +1 -0
  222. package/dist/prompts/index.js +1 -0
  223. package/dist/prompts/name-validation.js +1 -0
  224. package/dist/prompts/prompt-manager.js +1 -0
  225. package/dist/prompts/providers/custom-prompt-provider.js +1 -0
  226. package/dist/prompts/providers/file-prompt-provider.js +1 -0
  227. package/dist/prompts/providers/mcp-prompt-provider.js +1 -0
  228. package/dist/prompts/providers/starter-prompt-provider.js +1 -0
  229. package/dist/prompts/schemas.js +1 -0
  230. package/dist/prompts/utils.js +1 -0
  231. package/dist/resources/error-codes.js +1 -0
  232. package/dist/resources/errors.js +1 -0
  233. package/dist/resources/handlers/blob-handler.js +1 -0
  234. package/dist/resources/handlers/factory.js +1 -0
  235. package/dist/resources/handlers/filesystem-handler.cjs +1 -1
  236. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  237. package/dist/resources/handlers/filesystem-handler.js +2 -1
  238. package/dist/resources/index.js +1 -0
  239. package/dist/resources/internal-provider.js +1 -0
  240. package/dist/resources/manager.js +1 -0
  241. package/dist/resources/reference-parser.js +1 -0
  242. package/dist/resources/schemas.js +1 -0
  243. package/dist/search/index.js +1 -0
  244. package/dist/search/search-service.js +1 -0
  245. package/dist/session/chat-session.cjs +2 -2
  246. package/dist/session/chat-session.d.ts +2 -2
  247. package/dist/session/chat-session.js +3 -2
  248. package/dist/session/error-codes.js +1 -0
  249. package/dist/session/errors.js +1 -0
  250. package/dist/session/history/database.js +1 -0
  251. package/dist/session/history/factory.js +1 -0
  252. package/dist/session/history/memory.js +1 -0
  253. package/dist/session/index.js +1 -0
  254. package/dist/session/schemas.js +1 -0
  255. package/dist/session/session-manager.d.ts +6 -0
  256. package/dist/session/session-manager.d.ts.map +1 -1
  257. package/dist/session/session-manager.js +1 -0
  258. package/dist/session/title-generator.js +1 -0
  259. package/dist/storage/blob/factory.cjs +3 -3
  260. package/dist/storage/blob/factory.d.ts +3 -1
  261. package/dist/storage/blob/factory.d.ts.map +1 -1
  262. package/dist/storage/blob/factory.js +4 -3
  263. package/dist/storage/blob/local-blob-store.cjs +18 -2
  264. package/dist/storage/blob/local-blob-store.d.ts +2 -1
  265. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  266. package/dist/storage/blob/local-blob-store.js +19 -2
  267. package/dist/storage/blob/schemas.js +1 -0
  268. package/dist/storage/cache/factory.js +1 -0
  269. package/dist/storage/cache/memory-cache-store.js +1 -0
  270. package/dist/storage/cache/redis-store.js +1 -0
  271. package/dist/storage/cache/schemas.js +1 -0
  272. package/dist/storage/database/factory.cjs +7 -5
  273. package/dist/storage/database/factory.d.ts +3 -1
  274. package/dist/storage/database/factory.d.ts.map +1 -1
  275. package/dist/storage/database/factory.js +8 -5
  276. package/dist/storage/database/memory-database-store.js +1 -0
  277. package/dist/storage/database/postgres-store.js +1 -0
  278. package/dist/storage/database/schemas.cjs +1 -1
  279. package/dist/storage/database/schemas.js +2 -1
  280. package/dist/storage/database/sqlite-store.cjs +20 -2
  281. package/dist/storage/database/sqlite-store.d.ts +2 -1
  282. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  283. package/dist/storage/database/sqlite-store.js +21 -2
  284. package/dist/storage/error-codes.cjs +1 -0
  285. package/dist/storage/error-codes.d.ts +1 -0
  286. package/dist/storage/error-codes.d.ts.map +1 -1
  287. package/dist/storage/error-codes.js +2 -0
  288. package/dist/storage/errors.cjs +15 -0
  289. package/dist/storage/errors.d.ts +4 -0
  290. package/dist/storage/errors.d.ts.map +1 -1
  291. package/dist/storage/errors.js +16 -0
  292. package/dist/storage/index.js +1 -0
  293. package/dist/storage/schemas.js +1 -0
  294. package/dist/storage/storage-manager.cjs +7 -5
  295. package/dist/storage/storage-manager.d.ts +5 -2
  296. package/dist/storage/storage-manager.d.ts.map +1 -1
  297. package/dist/storage/storage-manager.js +8 -5
  298. package/dist/systemPrompt/contributors.js +1 -0
  299. package/dist/systemPrompt/error-codes.js +1 -0
  300. package/dist/systemPrompt/errors.js +1 -0
  301. package/dist/systemPrompt/in-built-prompts.js +1 -0
  302. package/dist/systemPrompt/index.js +1 -0
  303. package/dist/systemPrompt/manager.js +1 -0
  304. package/dist/systemPrompt/registry.js +1 -0
  305. package/dist/systemPrompt/schemas.js +1 -0
  306. package/dist/telemetry/decorators.cjs +175 -0
  307. package/dist/telemetry/decorators.d.ts +17 -0
  308. package/dist/telemetry/decorators.d.ts.map +1 -0
  309. package/dist/telemetry/decorators.js +157 -0
  310. package/dist/telemetry/exporters.cjs +108 -0
  311. package/dist/telemetry/exporters.d.ts +29 -0
  312. package/dist/telemetry/exporters.d.ts.map +1 -0
  313. package/dist/telemetry/exporters.js +85 -0
  314. package/dist/telemetry/index.cjs +28 -0
  315. package/dist/telemetry/index.d.ts +2 -0
  316. package/dist/telemetry/index.d.ts.map +1 -0
  317. package/dist/telemetry/index.js +5 -0
  318. package/dist/telemetry/schemas.cjs +71 -0
  319. package/dist/telemetry/schemas.d.ts +54 -0
  320. package/dist/telemetry/schemas.d.ts.map +1 -0
  321. package/dist/telemetry/schemas.js +48 -0
  322. package/dist/telemetry/telemetry.cjs +228 -0
  323. package/dist/telemetry/telemetry.d.ts +74 -0
  324. package/dist/telemetry/telemetry.d.ts.map +1 -0
  325. package/dist/telemetry/telemetry.js +205 -0
  326. package/dist/telemetry/types.cjs +16 -0
  327. package/dist/telemetry/types.d.ts +22 -0
  328. package/dist/telemetry/types.d.ts.map +1 -0
  329. package/dist/telemetry/types.js +0 -0
  330. package/dist/telemetry/utils.cjs +87 -0
  331. package/dist/telemetry/utils.d.ts +21 -0
  332. package/dist/telemetry/utils.d.ts.map +1 -0
  333. package/dist/telemetry/utils.js +62 -0
  334. package/dist/tools/confirmation/allowed-tools-provider/factory.js +1 -0
  335. package/dist/tools/confirmation/allowed-tools-provider/in-memory.js +1 -0
  336. package/dist/tools/confirmation/allowed-tools-provider/storage.js +1 -0
  337. package/dist/tools/error-codes.js +1 -0
  338. package/dist/tools/errors.js +1 -0
  339. package/dist/tools/index.js +1 -0
  340. package/dist/tools/internal-tools/constants.cjs +39 -0
  341. package/dist/tools/internal-tools/constants.d.ts +12 -0
  342. package/dist/tools/internal-tools/constants.d.ts.map +1 -0
  343. package/dist/tools/internal-tools/constants.js +16 -0
  344. package/dist/tools/internal-tools/implementations/ask-user-tool.js +1 -0
  345. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +106 -0
  346. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts +13 -0
  347. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts.map +1 -0
  348. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +73 -0
  349. package/dist/tools/internal-tools/implementations/bash-output-tool.cjs +49 -0
  350. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts +12 -0
  351. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts.map +1 -0
  352. package/dist/tools/internal-tools/implementations/bash-output-tool.js +26 -0
  353. package/dist/tools/internal-tools/implementations/edit-file-tool.cjs +62 -0
  354. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts +12 -0
  355. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts.map +1 -0
  356. package/dist/tools/internal-tools/implementations/edit-file-tool.js +39 -0
  357. package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +57 -0
  358. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts +12 -0
  359. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts.map +1 -0
  360. package/dist/tools/internal-tools/implementations/glob-files-tool.js +34 -0
  361. package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +71 -0
  362. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts +12 -0
  363. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts.map +1 -0
  364. package/dist/tools/internal-tools/implementations/grep-content-tool.js +48 -0
  365. package/dist/tools/internal-tools/implementations/kill-process-tool.cjs +47 -0
  366. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts +12 -0
  367. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts.map +1 -0
  368. package/dist/tools/internal-tools/implementations/kill-process-tool.js +24 -0
  369. package/dist/tools/internal-tools/implementations/read-file-tool.cjs +55 -0
  370. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts +12 -0
  371. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts.map +1 -0
  372. package/dist/tools/internal-tools/implementations/read-file-tool.js +32 -0
  373. package/dist/tools/internal-tools/implementations/search-history-tool.js +1 -0
  374. package/dist/tools/internal-tools/implementations/write-file-tool.cjs +56 -0
  375. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts +12 -0
  376. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts.map +1 -0
  377. package/dist/tools/internal-tools/implementations/write-file-tool.js +33 -0
  378. package/dist/tools/internal-tools/index.cjs +3 -1
  379. package/dist/tools/internal-tools/index.d.ts +1 -0
  380. package/dist/tools/internal-tools/index.d.ts.map +1 -1
  381. package/dist/tools/internal-tools/index.js +1 -0
  382. package/dist/tools/internal-tools/provider.js +1 -0
  383. package/dist/tools/internal-tools/registry.cjs +40 -4
  384. package/dist/tools/internal-tools/registry.d.ts +5 -9
  385. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  386. package/dist/tools/internal-tools/registry.js +41 -3
  387. package/dist/tools/schemas.cjs +18 -5
  388. package/dist/tools/schemas.d.ts +30 -1
  389. package/dist/tools/schemas.d.ts.map +1 -1
  390. package/dist/tools/schemas.js +15 -2
  391. package/dist/tools/tool-manager.cjs +158 -19
  392. package/dist/tools/tool-manager.d.ts +48 -2
  393. package/dist/tools/tool-manager.d.ts.map +1 -1
  394. package/dist/tools/tool-manager.js +118 -19
  395. package/dist/utils/api-key-resolver.js +1 -0
  396. package/dist/utils/api-key-store.js +1 -0
  397. package/dist/utils/async-context.js +1 -0
  398. package/dist/utils/debug.js +1 -0
  399. package/dist/utils/env.js +1 -0
  400. package/dist/utils/error-conversion.js +1 -0
  401. package/dist/utils/execution-context.js +1 -0
  402. package/dist/utils/fs-walk.js +1 -0
  403. package/dist/utils/path.js +1 -0
  404. package/dist/utils/port-utils.js +1 -0
  405. package/dist/utils/redactor.js +1 -0
  406. package/dist/utils/result.js +1 -0
  407. package/dist/utils/safe-stringify.js +1 -0
  408. package/dist/utils/schema-metadata.js +1 -0
  409. package/dist/utils/schema.js +1 -0
  410. package/dist/utils/service-initializer.cjs +42 -4
  411. package/dist/utils/service-initializer.d.ts +2 -1
  412. package/dist/utils/service-initializer.d.ts.map +1 -1
  413. package/dist/utils/service-initializer.js +33 -4
  414. package/dist/utils/user-info.js +1 -0
  415. package/dist/utils/zod-schema-converter.js +1 -0
  416. package/package.json +11 -1
@@ -0,0 +1,410 @@
1
+ import "../chunk-C6A6W6XS.js";
2
+ import { spawn } from "node:child_process";
3
+ import * as crypto from "node:crypto";
4
+ import * as path from "node:path";
5
+ import { CommandValidator } from "./command-validator.js";
6
+ import { ProcessError } from "./errors.js";
7
+ import { logger } from "../logger/index.js";
8
+ const DEFAULT_TIMEOUT = 12e4;
9
+ const DEFAULT_MAX_TIMEOUT = 6e5;
10
+ const DEFAULT_MAX_CONCURRENT_PROCESSES = 5;
11
+ const DEFAULT_MAX_OUTPUT_BUFFER = 1024 * 1024;
12
+ class ProcessService {
13
+ config;
14
+ commandValidator;
15
+ initialized = false;
16
+ backgroundProcesses = /* @__PURE__ */ new Map();
17
+ constructor(config = {}) {
18
+ this.config = {
19
+ securityLevel: config.securityLevel || "moderate",
20
+ maxTimeout: config.maxTimeout || DEFAULT_MAX_TIMEOUT,
21
+ maxConcurrentProcesses: config.maxConcurrentProcesses || DEFAULT_MAX_CONCURRENT_PROCESSES,
22
+ maxOutputBuffer: config.maxOutputBuffer || DEFAULT_MAX_OUTPUT_BUFFER,
23
+ allowedCommands: config.allowedCommands || [],
24
+ blockedCommands: config.blockedCommands || [],
25
+ environment: config.environment || {},
26
+ workingDirectory: config.workingDirectory
27
+ };
28
+ this.commandValidator = new CommandValidator(this.config);
29
+ }
30
+ /**
31
+ * Initialize the service
32
+ */
33
+ async initialize() {
34
+ if (this.initialized) {
35
+ logger.debug("ProcessService already initialized");
36
+ return;
37
+ }
38
+ this.backgroundProcesses.clear();
39
+ this.initialized = true;
40
+ logger.info("ProcessService initialized successfully");
41
+ }
42
+ /**
43
+ * Execute a command
44
+ */
45
+ async executeCommand(command, options = {}) {
46
+ if (!this.initialized) {
47
+ throw ProcessError.notInitialized();
48
+ }
49
+ const validation = this.commandValidator.validateCommand(command);
50
+ if (!validation.isValid || !validation.normalizedCommand) {
51
+ throw ProcessError.invalidCommand(command, validation.error || "Unknown error");
52
+ }
53
+ const normalizedCommand = validation.normalizedCommand;
54
+ if (validation.requiresApproval) {
55
+ if (!options.approvalFunction) {
56
+ throw ProcessError.approvalRequired(
57
+ normalizedCommand,
58
+ "Command requires approval but no approval mechanism provided"
59
+ );
60
+ }
61
+ logger.info(
62
+ `Command requires approval: ${normalizedCommand} - requesting user confirmation`
63
+ );
64
+ const approved = await options.approvalFunction(normalizedCommand);
65
+ if (!approved) {
66
+ logger.info(`Command approval denied: ${normalizedCommand}`);
67
+ throw ProcessError.approvalDenied(normalizedCommand);
68
+ }
69
+ logger.info(`Command approved: ${normalizedCommand}`);
70
+ }
71
+ const rawTimeout = options.timeout !== void 0 && Number.isFinite(options.timeout) ? options.timeout : DEFAULT_TIMEOUT;
72
+ const timeout = Math.max(1, Math.min(rawTimeout, this.config.maxTimeout));
73
+ const cwd = this.resolveSafeCwd(options.cwd);
74
+ const env = {};
75
+ for (const [key, value] of Object.entries({
76
+ ...process.env,
77
+ ...this.config.environment,
78
+ ...options.env
79
+ })) {
80
+ if (value !== void 0) {
81
+ env[key] = value;
82
+ }
83
+ }
84
+ if (options.runInBackground) {
85
+ return await this.executeInBackground(normalizedCommand, options);
86
+ }
87
+ return await this.executeForeground(normalizedCommand, {
88
+ cwd,
89
+ timeout,
90
+ env,
91
+ ...options.description !== void 0 && { description: options.description }
92
+ });
93
+ }
94
+ /**
95
+ * Execute command in foreground with timeout
96
+ */
97
+ executeForeground(command, options) {
98
+ return new Promise((resolve, reject) => {
99
+ const startTime = Date.now();
100
+ let stdout = "";
101
+ let stderr = "";
102
+ let killed = false;
103
+ let closed = false;
104
+ logger.debug(`Executing command: ${command}`);
105
+ const child = spawn(command, {
106
+ cwd: options.cwd,
107
+ env: options.env,
108
+ shell: true
109
+ });
110
+ const timeoutHandle = setTimeout(() => {
111
+ killed = true;
112
+ child.kill("SIGTERM");
113
+ setTimeout(() => {
114
+ if (!closed && child.exitCode === null) {
115
+ child.kill("SIGKILL");
116
+ }
117
+ }, 5e3);
118
+ }, options.timeout);
119
+ child.stdout?.on("data", (data) => {
120
+ stdout += data.toString();
121
+ });
122
+ child.stderr?.on("data", (data) => {
123
+ stderr += data.toString();
124
+ });
125
+ child.on("close", (code, signal) => {
126
+ closed = true;
127
+ clearTimeout(timeoutHandle);
128
+ const duration = Date.now() - startTime;
129
+ if (killed) {
130
+ reject(ProcessError.timeout(command, options.timeout));
131
+ return;
132
+ }
133
+ let exitCode = typeof code === "number" ? code : 1;
134
+ if (code === null) {
135
+ stderr += `
136
+ Process terminated by signal ${signal ?? "UNKNOWN"}`;
137
+ }
138
+ logger.debug(
139
+ `Command completed with exit code ${exitCode} in ${duration}ms: ${command}`
140
+ );
141
+ resolve({
142
+ stdout,
143
+ stderr,
144
+ exitCode,
145
+ duration
146
+ });
147
+ });
148
+ child.on("error", (error) => {
149
+ clearTimeout(timeoutHandle);
150
+ if (error.code === "ENOENT") {
151
+ reject(ProcessError.commandNotFound(command));
152
+ } else if (error.code === "EACCES") {
153
+ reject(ProcessError.permissionDenied(command));
154
+ } else {
155
+ reject(ProcessError.executionFailed(command, error.message));
156
+ }
157
+ });
158
+ });
159
+ }
160
+ /**
161
+ * Execute command in background
162
+ */
163
+ async executeInBackground(command, options) {
164
+ const runningCount = Array.from(this.backgroundProcesses.values()).filter(
165
+ (p) => p.status === "running"
166
+ ).length;
167
+ if (runningCount >= this.config.maxConcurrentProcesses) {
168
+ throw ProcessError.tooManyProcesses(runningCount, this.config.maxConcurrentProcesses);
169
+ }
170
+ const processId = crypto.randomBytes(4).toString("hex");
171
+ const cwd = this.resolveSafeCwd(options.cwd);
172
+ const env = {};
173
+ for (const [key, value] of Object.entries({
174
+ ...process.env,
175
+ ...this.config.environment,
176
+ ...options.env
177
+ })) {
178
+ if (value !== void 0) {
179
+ env[key] = value;
180
+ }
181
+ }
182
+ logger.debug(`Starting background process ${processId}: ${command}`);
183
+ const child = spawn(command, {
184
+ cwd,
185
+ env,
186
+ shell: true,
187
+ detached: false
188
+ });
189
+ const outputBuffer = {
190
+ stdout: [],
191
+ stderr: [],
192
+ complete: false,
193
+ lastRead: Date.now(),
194
+ bytesUsed: 0,
195
+ truncated: false
196
+ };
197
+ const bgProcess = {
198
+ processId,
199
+ command,
200
+ child,
201
+ startedAt: /* @__PURE__ */ new Date(),
202
+ status: "running",
203
+ outputBuffer,
204
+ description: options.description
205
+ };
206
+ this.backgroundProcesses.set(processId, bgProcess);
207
+ const bgTimeout = Math.max(
208
+ 1,
209
+ Math.min(options.timeout || DEFAULT_TIMEOUT, this.config.maxTimeout)
210
+ );
211
+ const killTimer = setTimeout(() => {
212
+ if (bgProcess.status === "running") {
213
+ logger.warn(
214
+ `Background process ${processId} timed out after ${bgTimeout}ms, sending SIGTERM`
215
+ );
216
+ child.kill("SIGTERM");
217
+ setTimeout(() => {
218
+ if (bgProcess.status === "running") {
219
+ logger.warn(
220
+ `Background process ${processId} did not respond to SIGTERM, sending SIGKILL`
221
+ );
222
+ child.kill("SIGKILL");
223
+ }
224
+ }, 5e3);
225
+ }
226
+ }, bgTimeout);
227
+ child.stdout?.on("data", (data) => {
228
+ const chunk = data.toString();
229
+ const chunkBytes = Buffer.byteLength(chunk, "utf8");
230
+ if (outputBuffer.bytesUsed + chunkBytes <= this.config.maxOutputBuffer) {
231
+ outputBuffer.stdout.push(chunk);
232
+ outputBuffer.bytesUsed += chunkBytes;
233
+ } else {
234
+ if (!outputBuffer.truncated) {
235
+ outputBuffer.truncated = true;
236
+ logger.warn(`Output buffer full for process ${processId}`);
237
+ }
238
+ }
239
+ });
240
+ child.stderr?.on("data", (data) => {
241
+ const chunk = data.toString();
242
+ const chunkBytes = Buffer.byteLength(chunk, "utf8");
243
+ if (outputBuffer.bytesUsed + chunkBytes <= this.config.maxOutputBuffer) {
244
+ outputBuffer.stderr.push(chunk);
245
+ outputBuffer.bytesUsed += chunkBytes;
246
+ } else {
247
+ if (!outputBuffer.truncated) {
248
+ outputBuffer.truncated = true;
249
+ logger.warn(`Error buffer full for process ${processId}`);
250
+ }
251
+ }
252
+ });
253
+ child.on("close", (code) => {
254
+ clearTimeout(killTimer);
255
+ bgProcess.status = code === 0 ? "completed" : "failed";
256
+ bgProcess.exitCode = code ?? void 0;
257
+ bgProcess.completedAt = /* @__PURE__ */ new Date();
258
+ bgProcess.outputBuffer.complete = true;
259
+ logger.debug(`Background process ${processId} completed with exit code ${code}`);
260
+ });
261
+ child.on("error", (error) => {
262
+ clearTimeout(killTimer);
263
+ bgProcess.status = "failed";
264
+ bgProcess.completedAt = /* @__PURE__ */ new Date();
265
+ bgProcess.outputBuffer.complete = true;
266
+ const chunk = `Error: ${error.message}`;
267
+ const chunkBytes = Buffer.byteLength(chunk, "utf8");
268
+ if (bgProcess.outputBuffer.bytesUsed + chunkBytes <= this.config.maxOutputBuffer) {
269
+ bgProcess.outputBuffer.stderr.push(chunk);
270
+ bgProcess.outputBuffer.bytesUsed += chunkBytes;
271
+ } else {
272
+ if (!bgProcess.outputBuffer.truncated) {
273
+ bgProcess.outputBuffer.truncated = true;
274
+ logger.warn(`Error buffer full for process ${processId}`);
275
+ }
276
+ }
277
+ logger.error(`Background process ${processId} failed: ${error.message}`);
278
+ });
279
+ return {
280
+ processId,
281
+ command,
282
+ pid: child.pid,
283
+ startedAt: bgProcess.startedAt,
284
+ description: options.description
285
+ };
286
+ }
287
+ /**
288
+ * Get output from a background process
289
+ */
290
+ async getProcessOutput(processId) {
291
+ if (!this.initialized) {
292
+ throw ProcessError.notInitialized();
293
+ }
294
+ const bgProcess = this.backgroundProcesses.get(processId);
295
+ if (!bgProcess) {
296
+ throw ProcessError.processNotFound(processId);
297
+ }
298
+ const stdout = bgProcess.outputBuffer.stdout.join("");
299
+ const stderr = bgProcess.outputBuffer.stderr.join("");
300
+ bgProcess.outputBuffer.stdout = [];
301
+ bgProcess.outputBuffer.stderr = [];
302
+ bgProcess.outputBuffer.lastRead = Date.now();
303
+ bgProcess.outputBuffer.bytesUsed = 0;
304
+ return {
305
+ stdout,
306
+ stderr,
307
+ status: bgProcess.status,
308
+ exitCode: bgProcess.exitCode,
309
+ duration: bgProcess.completedAt ? bgProcess.completedAt.getTime() - bgProcess.startedAt.getTime() : void 0
310
+ };
311
+ }
312
+ /**
313
+ * Kill a background process
314
+ */
315
+ async killProcess(processId) {
316
+ if (!this.initialized) {
317
+ throw ProcessError.notInitialized();
318
+ }
319
+ const bgProcess = this.backgroundProcesses.get(processId);
320
+ if (!bgProcess) {
321
+ throw ProcessError.processNotFound(processId);
322
+ }
323
+ if (bgProcess.status !== "running") {
324
+ logger.debug(`Process ${processId} is not running (status: ${bgProcess.status})`);
325
+ return;
326
+ }
327
+ try {
328
+ bgProcess.child.kill("SIGTERM");
329
+ setTimeout(() => {
330
+ if (bgProcess.child.exitCode === null) {
331
+ bgProcess.child.kill("SIGKILL");
332
+ }
333
+ }, 5e3);
334
+ logger.debug(`Process ${processId} sent SIGTERM`);
335
+ } catch (error) {
336
+ throw ProcessError.killFailed(
337
+ processId,
338
+ error instanceof Error ? error.message : String(error)
339
+ );
340
+ }
341
+ }
342
+ /**
343
+ * List all background processes
344
+ */
345
+ async listProcesses() {
346
+ if (!this.initialized) {
347
+ throw ProcessError.notInitialized();
348
+ }
349
+ return Array.from(this.backgroundProcesses.values()).map((bgProcess) => ({
350
+ processId: bgProcess.processId,
351
+ command: bgProcess.command,
352
+ pid: bgProcess.child.pid,
353
+ status: bgProcess.status,
354
+ startedAt: bgProcess.startedAt,
355
+ completedAt: bgProcess.completedAt,
356
+ exitCode: bgProcess.exitCode,
357
+ description: bgProcess.description
358
+ }));
359
+ }
360
+ /**
361
+ * Get buffer size in bytes
362
+ */
363
+ getBufferSize(buffer) {
364
+ const stdoutSize = buffer.stdout.reduce((sum, line) => sum + line.length, 0);
365
+ const stderrSize = buffer.stderr.reduce((sum, line) => sum + line.length, 0);
366
+ return stdoutSize + stderrSize;
367
+ }
368
+ /**
369
+ * Get service configuration
370
+ */
371
+ getConfig() {
372
+ return { ...this.config };
373
+ }
374
+ /**
375
+ * Resolve and confine cwd to the configured working directory
376
+ */
377
+ resolveSafeCwd(cwd) {
378
+ const baseDir = this.config.workingDirectory || process.cwd();
379
+ if (!cwd) return baseDir;
380
+ const candidate = path.isAbsolute(cwd) ? path.resolve(cwd) : path.resolve(baseDir, cwd);
381
+ const rel = path.relative(baseDir, candidate);
382
+ const outside = rel.startsWith("..") || path.isAbsolute(rel);
383
+ if (outside) {
384
+ throw ProcessError.invalidWorkingDirectory(
385
+ cwd,
386
+ `Working directory must be within ${baseDir}`
387
+ );
388
+ }
389
+ return candidate;
390
+ }
391
+ /**
392
+ * Cleanup completed processes
393
+ */
394
+ async cleanup() {
395
+ const now = Date.now();
396
+ const CLEANUP_AGE = 36e5;
397
+ for (const [processId, bgProcess] of this.backgroundProcesses.entries()) {
398
+ if (bgProcess.status !== "running" && bgProcess.completedAt) {
399
+ const age = now - bgProcess.completedAt.getTime();
400
+ if (age > CLEANUP_AGE) {
401
+ this.backgroundProcesses.delete(processId);
402
+ logger.debug(`Cleaned up old process ${processId}`);
403
+ }
404
+ }
405
+ }
406
+ }
407
+ }
408
+ export {
409
+ ProcessService
410
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var types_exports = {};
16
+ module.exports = __toCommonJS(types_exports);
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Process Service Types
3
+ *
4
+ * Types and interfaces for command execution and process management
5
+ */
6
+ /**
7
+ * Process execution options
8
+ */
9
+ export interface ExecuteOptions {
10
+ /** Working directory */
11
+ cwd?: string | undefined;
12
+ /** Timeout in milliseconds (max: 600000) */
13
+ timeout?: number | undefined;
14
+ /** Run command in background */
15
+ runInBackground?: boolean | undefined;
16
+ /** Environment variables */
17
+ env?: Record<string, string> | undefined;
18
+ /** Description of what the command does (5-10 words) */
19
+ description?: string | undefined;
20
+ /** Optional approval function for dangerous commands - called when CommandValidator flags requiresApproval */
21
+ approvalFunction?: (command: string) => Promise<boolean>;
22
+ }
23
+ /**
24
+ * Process execution result (foreground execution only)
25
+ * For background execution, see ProcessHandle
26
+ */
27
+ export interface ProcessResult {
28
+ stdout: string;
29
+ stderr: string;
30
+ exitCode: number;
31
+ duration: number;
32
+ }
33
+ /**
34
+ * Background process handle
35
+ */
36
+ export interface ProcessHandle {
37
+ processId: string;
38
+ command: string;
39
+ pid?: number | undefined;
40
+ startedAt: Date;
41
+ description?: string | undefined;
42
+ }
43
+ /**
44
+ * Process output (for retrieving from background processes)
45
+ */
46
+ export interface ProcessOutput {
47
+ stdout: string;
48
+ stderr: string;
49
+ status: 'running' | 'completed' | 'failed';
50
+ exitCode?: number | undefined;
51
+ duration?: number | undefined;
52
+ }
53
+ /**
54
+ * Process information
55
+ */
56
+ export interface ProcessInfo {
57
+ processId: string;
58
+ command: string;
59
+ pid?: number | undefined;
60
+ status: 'running' | 'completed' | 'failed';
61
+ startedAt: Date;
62
+ completedAt?: Date | undefined;
63
+ exitCode?: number | undefined;
64
+ description?: string | undefined;
65
+ }
66
+ /**
67
+ * Command validation result
68
+ */
69
+ export interface CommandValidation {
70
+ isValid: boolean;
71
+ error?: string;
72
+ normalizedCommand?: string;
73
+ requiresApproval?: boolean;
74
+ }
75
+ /**
76
+ * Process service configuration
77
+ */
78
+ export interface ProcessConfig {
79
+ /** Security level for command execution */
80
+ securityLevel: 'strict' | 'moderate' | 'permissive';
81
+ /** Maximum timeout for commands in milliseconds */
82
+ maxTimeout: number;
83
+ /** Maximum concurrent background processes */
84
+ maxConcurrentProcesses: number;
85
+ /** Maximum output buffer size in bytes */
86
+ maxOutputBuffer: number;
87
+ /** Explicitly allowed commands (empty = all allowed with approval) */
88
+ allowedCommands: string[];
89
+ /** Blocked command patterns */
90
+ blockedCommands: string[];
91
+ /** Custom environment variables */
92
+ environment: Record<string, string>;
93
+ /** Working directory (defaults to process.cwd()) */
94
+ workingDirectory?: string | undefined;
95
+ }
96
+ /**
97
+ * Output buffer management
98
+ */
99
+ export interface OutputBuffer {
100
+ stdout: string[];
101
+ stderr: string[];
102
+ complete: boolean;
103
+ lastRead: number;
104
+ bytesUsed: number;
105
+ truncated?: boolean;
106
+ }
107
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/process/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,wBAAwB;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,gCAAgC;IAChC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,4BAA4B;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACzC,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,8GAA8G;IAC9G,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5D;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,2CAA2C;IAC3C,aAAa,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;IACpD,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,sEAAsE;IACtE,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,+BAA+B;IAC/B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB"}
File without changes
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  var PromptErrorCode = /* @__PURE__ */ ((PromptErrorCode2) => {
2
3
  PromptErrorCode2["PROMPT_NOT_FOUND"] = "prompt_not_found";
3
4
  PromptErrorCode2["PROMPT_EMPTY_CONTENT"] = "prompt_empty_content";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
2
3
  import { DextoValidationError } from "../errors/DextoValidationError.js";
3
4
  import { ErrorScope, ErrorType } from "../errors/types.js";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { PromptManager } from "./prompt-manager.js";
2
3
  import { MCPPromptProvider } from "./providers/mcp-prompt-provider.js";
3
4
  import { FilePromptProvider } from "./providers/file-prompt-provider.js";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { PromptError } from "./errors.js";
2
3
  const PROMPT_NAME_REGEX = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
3
4
  const PROMPT_NAME_GUIDANCE = "kebab-case (lowercase letters and numbers separated by single hyphens)";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { MCPPromptProvider } from "./providers/mcp-prompt-provider.js";
2
3
  import { FilePromptProvider } from "./providers/file-prompt-provider.js";
3
4
  import { StarterPromptProvider } from "./providers/starter-prompt-provider.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../../logger/index.js";
2
3
  import { expandPlaceholders } from "../utils.js";
3
4
  import { PromptError } from "../errors.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { expandPlaceholders } from "../utils.js";
2
3
  import { assertValidPromptName } from "../name-validation.js";
3
4
  import { logger } from "../../logger/index.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../../logger/index.js";
2
3
  class MCPPromptProvider {
3
4
  mcpManager;
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../../logger/index.js";
2
3
  import { PromptError } from "../errors.js";
3
4
  class StarterPromptProvider {
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { z } from "zod";
2
3
  import { PROMPT_NAME_REGEX, PROMPT_NAME_GUIDANCE } from "./name-validation.js";
3
4
  const StarterPromptsSchema = z.array(
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  function isValidResourceUri(uri) {
2
3
  try {
3
4
  if (uri.includes(":")) {
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  const ResourceErrorCodes = {
2
3
  INVALID_URI_FORMAT: "resource_invalid_uri_format",
3
4
  EMPTY_URI: "resource_empty_uri",
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
2
3
  import { ErrorScope, ErrorType } from "../errors/types.js";
3
4
  import { ResourceErrorCodes } from "./error-codes.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../../logger/index.js";
2
3
  import { ResourceError } from "../errors.js";
3
4
  class BlobResourceHandler {
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { ResourceError } from "../errors.js";
2
3
  import { FileSystemResourceHandler } from "./filesystem-handler.js";
3
4
  import { BlobResourceHandler } from "./blob-handler.js";
@@ -232,7 +232,7 @@ class FileSystemResourceHandler {
232
232
  const { maxDepth, maxFiles, includeHidden, includeExtensions } = this.config;
233
233
  if (this.fileCount >= maxFiles) return;
234
234
  if (currentDepth > maxDepth) {
235
- import_logger.logger.debug(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
235
+ import_logger.logger.silly(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
236
236
  return;
237
237
  }
238
238
  if (this.visitedPaths.has(canonical)) return;
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem-handler.d.ts","sourceRoot":"","sources":["../../../src/resources/handlers/filesystem-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEpF,qBAAa,yBAA0B,YAAW,uBAAuB;IACrE,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,eAAe,CAAqB;gBAEhC,MAAM,EAAE,iCAAiC,EAAE,eAAe,CAAC,EAAE,MAAM;IAK/E,OAAO,IAAI,MAAM;IAIX,UAAU,CAAC,SAAS,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9D,aAAa,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIlD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI/B,OAAO,CAAC,aAAa;IAWrB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAexB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0D5D,OAAO,CAAC,YAAY;IAoDd,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAIhB,kBAAkB;YA8BlB,QAAQ;IAmEtB,OAAO,CAAC,iBAAiB;IAwCzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B,OAAO,CAAC,WAAW;CA8CtB"}
1
+ {"version":3,"file":"filesystem-handler.d.ts","sourceRoot":"","sources":["../../../src/resources/handlers/filesystem-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEpF,qBAAa,yBAA0B,YAAW,uBAAuB;IACrE,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,eAAe,CAAqB;gBAEhC,MAAM,EAAE,iCAAiC,EAAE,eAAe,CAAC,EAAE,MAAM;IAK/E,OAAO,IAAI,MAAM;IAIX,UAAU,CAAC,SAAS,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9D,aAAa,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIlD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI/B,OAAO,CAAC,aAAa;IAWrB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAexB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0D5D,OAAO,CAAC,YAAY;IAoDd,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAIhB,kBAAkB;YA8BlB,QAAQ;IAoEtB,OAAO,CAAC,iBAAiB;IAwCzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B,OAAO,CAAC,WAAW;CA8CtB"}
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { promises as fs } from "fs";
2
3
  import path from "path";
3
4
  import { logger } from "../../logger/index.js";
@@ -199,7 +200,7 @@ class FileSystemResourceHandler {
199
200
  const { maxDepth, maxFiles, includeHidden, includeExtensions } = this.config;
200
201
  if (this.fileCount >= maxFiles) return;
201
202
  if (currentDepth > maxDepth) {
202
- logger.debug(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
203
+ logger.silly(`Skipping path due to depth limit (${maxDepth}): ${canonical}`);
203
204
  return;
204
205
  }
205
206
  if (this.visitedPaths.has(canonical)) return;
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { ResourceManager } from "./manager.js";
2
3
  import { ResourceError } from "./errors.js";
3
4
  import { ResourceErrorCodes } from "./error-codes.js";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../logger/index.js";
2
3
  import { createInternalResourceHandler } from "./handlers/factory.js";
3
4
  import { InternalResourceConfigSchema } from "./schemas.js";