@dexto/core 1.2.4 → 1.2.6

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 (551) hide show
  1. package/README.md +60 -0
  2. package/dist/agent/DextoAgent.cjs +579 -345
  3. package/dist/agent/DextoAgent.d.ts +131 -83
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +573 -336
  6. package/dist/agent/agentCard.cjs +4 -2
  7. package/dist/agent/agentCard.d.ts +0 -1
  8. package/dist/agent/agentCard.d.ts.map +1 -1
  9. package/dist/agent/agentCard.js +4 -2
  10. package/dist/agent/index.cjs +3 -7
  11. package/dist/agent/index.d.ts +3 -3
  12. package/dist/agent/index.d.ts.map +1 -1
  13. package/dist/agent/index.js +7 -6
  14. package/dist/agent/schemas.cjs +179 -75
  15. package/dist/agent/schemas.d.ts +2678 -586
  16. package/dist/agent/schemas.d.ts.map +1 -1
  17. package/dist/agent/schemas.js +172 -65
  18. package/dist/agent/state-manager.cjs +28 -23
  19. package/dist/agent/state-manager.d.ts +4 -1
  20. package/dist/agent/state-manager.d.ts.map +1 -1
  21. package/dist/agent/state-manager.js +28 -23
  22. package/dist/{preferences/constants.cjs → agent/types.cjs} +2 -14
  23. package/dist/agent/types.d.ts +54 -0
  24. package/dist/agent/types.d.ts.map +1 -0
  25. package/dist/agent/types.js +0 -0
  26. package/dist/approval/errors.cjs +89 -8
  27. package/dist/approval/errors.d.ts +5 -3
  28. package/dist/approval/errors.d.ts.map +1 -1
  29. package/dist/approval/errors.js +89 -8
  30. package/dist/approval/{providers/factory.d.ts → factory.d.ts} +2 -2
  31. package/dist/approval/factory.d.ts.map +1 -0
  32. package/dist/approval/{providers/factory.js → factory.js} +1 -1
  33. package/dist/approval/index.cjs +4 -6
  34. package/dist/approval/index.d.ts +3 -5
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +4 -5
  37. package/dist/approval/manager.cjs +140 -37
  38. package/dist/approval/manager.d.ts +56 -17
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +141 -38
  41. package/dist/approval/schemas.cjs +9 -1
  42. package/dist/approval/schemas.d.ts +120 -35
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +9 -2
  45. package/dist/approval/types.cjs +14 -2
  46. package/dist/approval/types.d.ts +64 -12
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +12 -1
  49. package/dist/context/compression/middle-removal.cjs +11 -11
  50. package/dist/context/compression/middle-removal.d.ts +3 -1
  51. package/dist/context/compression/middle-removal.d.ts.map +1 -1
  52. package/dist/context/compression/middle-removal.js +11 -11
  53. package/dist/context/compression/oldest-removal.cjs +18 -5
  54. package/dist/context/compression/oldest-removal.d.ts +3 -1
  55. package/dist/context/compression/oldest-removal.d.ts.map +1 -1
  56. package/dist/context/compression/oldest-removal.js +18 -5
  57. package/dist/context/manager.cjs +94 -67
  58. package/dist/context/manager.d.ts +13 -10
  59. package/dist/context/manager.d.ts.map +1 -1
  60. package/dist/context/manager.js +94 -67
  61. package/dist/context/utils.cjs +79 -65
  62. package/dist/context/utils.d.ts +15 -12
  63. package/dist/context/utils.d.ts.map +1 -1
  64. package/dist/context/utils.js +45 -31
  65. package/dist/errors/DextoRuntimeError.d.ts +5 -5
  66. package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
  67. package/dist/errors/result-bridge.cjs +2 -3
  68. package/dist/errors/result-bridge.d.ts +5 -3
  69. package/dist/errors/result-bridge.d.ts.map +1 -1
  70. package/dist/errors/result-bridge.js +1 -2
  71. package/dist/errors/types.cjs +1 -2
  72. package/dist/errors/types.d.ts +5 -8
  73. package/dist/errors/types.d.ts.map +1 -1
  74. package/dist/errors/types.js +1 -2
  75. package/dist/events/index.cjs +125 -55
  76. package/dist/events/index.d.ts +204 -97
  77. package/dist/events/index.d.ts.map +1 -1
  78. package/dist/events/index.js +123 -55
  79. package/dist/filesystem/filesystem-service.cjs +40 -30
  80. package/dist/filesystem/filesystem-service.d.ts +9 -1
  81. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  82. package/dist/filesystem/filesystem-service.js +40 -30
  83. package/dist/filesystem/path-validator.cjs +4 -3
  84. package/dist/filesystem/path-validator.d.ts +3 -1
  85. package/dist/filesystem/path-validator.d.ts.map +1 -1
  86. package/dist/filesystem/path-validator.js +4 -3
  87. package/dist/filesystem/types.d.ts +3 -3
  88. package/dist/filesystem/types.d.ts.map +1 -1
  89. package/dist/index.browser.cjs +7 -0
  90. package/dist/index.browser.d.ts +2 -0
  91. package/dist/index.browser.d.ts.map +1 -1
  92. package/dist/index.browser.js +4 -0
  93. package/dist/index.cjs +0 -7
  94. package/dist/index.d.ts +12 -3
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +0 -4
  97. package/dist/llm/formatters/anthropic.cjs +32 -21
  98. package/dist/llm/formatters/anthropic.d.ts +3 -0
  99. package/dist/llm/formatters/anthropic.d.ts.map +1 -1
  100. package/dist/llm/formatters/anthropic.js +32 -21
  101. package/dist/llm/formatters/factory.cjs +6 -7
  102. package/dist/llm/formatters/factory.d.ts +2 -1
  103. package/dist/llm/formatters/factory.d.ts.map +1 -1
  104. package/dist/llm/formatters/factory.js +4 -5
  105. package/dist/llm/formatters/openai.cjs +38 -9
  106. package/dist/llm/formatters/openai.d.ts +3 -0
  107. package/dist/llm/formatters/openai.d.ts.map +1 -1
  108. package/dist/llm/formatters/openai.js +38 -9
  109. package/dist/llm/formatters/vercel.cjs +49 -8
  110. package/dist/llm/formatters/vercel.d.ts +3 -0
  111. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  112. package/dist/llm/formatters/vercel.js +49 -8
  113. package/dist/llm/registry.cjs +153 -17
  114. package/dist/llm/registry.d.ts +5 -2
  115. package/dist/llm/registry.d.ts.map +1 -1
  116. package/dist/llm/registry.js +143 -7
  117. package/dist/llm/resolver.cjs +4 -4
  118. package/dist/llm/resolver.d.ts +3 -2
  119. package/dist/llm/resolver.d.ts.map +1 -1
  120. package/dist/llm/resolver.js +4 -4
  121. package/dist/llm/schemas.cjs +6 -3
  122. package/dist/llm/schemas.d.ts +51 -17
  123. package/dist/llm/schemas.d.ts.map +1 -1
  124. package/dist/llm/schemas.js +5 -3
  125. package/dist/llm/services/anthropic.cjs +216 -183
  126. package/dist/llm/services/anthropic.d.ts +3 -1
  127. package/dist/llm/services/anthropic.d.ts.map +1 -1
  128. package/dist/llm/services/anthropic.js +217 -184
  129. package/dist/llm/services/factory.cjs +15 -9
  130. package/dist/llm/services/factory.d.ts +2 -1
  131. package/dist/llm/services/factory.d.ts.map +1 -1
  132. package/dist/llm/services/factory.js +15 -9
  133. package/dist/llm/services/openai.cjs +262 -225
  134. package/dist/llm/services/openai.d.ts +3 -1
  135. package/dist/llm/services/openai.d.ts.map +1 -1
  136. package/dist/llm/services/openai.js +263 -226
  137. package/dist/llm/services/test-utils.integration.cjs +58 -12
  138. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  139. package/dist/llm/services/test-utils.integration.js +58 -12
  140. package/dist/llm/services/types.d.ts +9 -0
  141. package/dist/llm/services/types.d.ts.map +1 -1
  142. package/dist/llm/services/vercel.cjs +163 -111
  143. package/dist/llm/services/vercel.d.ts +3 -1
  144. package/dist/llm/services/vercel.d.ts.map +1 -1
  145. package/dist/llm/services/vercel.js +157 -105
  146. package/dist/llm/tokenizer/factory.cjs +2 -2
  147. package/dist/llm/tokenizer/factory.d.ts +3 -1
  148. package/dist/llm/tokenizer/factory.d.ts.map +1 -1
  149. package/dist/llm/tokenizer/factory.js +2 -2
  150. package/dist/llm/tokenizer/openai.cjs +16 -9
  151. package/dist/llm/tokenizer/openai.d.ts +4 -1
  152. package/dist/llm/tokenizer/openai.d.ts.map +1 -1
  153. package/dist/llm/tokenizer/openai.js +16 -9
  154. package/dist/llm/validation.cjs +8 -9
  155. package/dist/llm/validation.d.ts +3 -1
  156. package/dist/llm/validation.d.ts.map +1 -1
  157. package/dist/llm/validation.js +5 -6
  158. package/dist/logger/factory.cjs +54 -0
  159. package/dist/logger/factory.d.ts +36 -0
  160. package/dist/logger/factory.d.ts.map +1 -0
  161. package/dist/logger/factory.js +31 -0
  162. package/dist/logger/index.cjs +42 -3
  163. package/dist/logger/index.d.ts +17 -1
  164. package/dist/logger/index.d.ts.map +1 -1
  165. package/dist/logger/index.js +26 -1
  166. package/dist/logger/logger.cjs +30 -17
  167. package/dist/logger/logger.d.ts.map +1 -1
  168. package/dist/logger/logger.js +30 -17
  169. package/dist/logger/v2/dexto-logger.cjs +141 -0
  170. package/dist/logger/v2/dexto-logger.d.ts +54 -0
  171. package/dist/logger/v2/dexto-logger.d.ts.map +1 -0
  172. package/dist/logger/v2/dexto-logger.js +118 -0
  173. package/dist/{preferences → logger/v2}/error-codes.cjs +11 -10
  174. package/dist/logger/v2/error-codes.d.ts +13 -0
  175. package/dist/logger/v2/error-codes.d.ts.map +1 -0
  176. package/dist/logger/v2/error-codes.js +13 -0
  177. package/dist/logger/v2/errors.cjs +107 -0
  178. package/dist/logger/v2/errors.d.ts +32 -0
  179. package/dist/logger/v2/errors.d.ts.map +1 -0
  180. package/dist/logger/v2/errors.js +84 -0
  181. package/dist/logger/v2/schemas.cjs +57 -0
  182. package/dist/logger/v2/schemas.d.ts +147 -0
  183. package/dist/logger/v2/schemas.d.ts.map +1 -0
  184. package/dist/logger/v2/schemas.js +33 -0
  185. package/dist/logger/v2/transport-factory.cjs +53 -0
  186. package/dist/logger/v2/transport-factory.d.ts +21 -0
  187. package/dist/logger/v2/transport-factory.d.ts.map +1 -0
  188. package/dist/logger/v2/transport-factory.js +29 -0
  189. package/dist/logger/v2/transports/console-transport.cjs +79 -0
  190. package/dist/logger/v2/transports/console-transport.d.ts +23 -0
  191. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -0
  192. package/dist/logger/v2/transports/console-transport.js +46 -0
  193. package/dist/logger/v2/transports/file-transport.cjs +161 -0
  194. package/dist/logger/v2/transports/file-transport.d.ts +46 -0
  195. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -0
  196. package/dist/logger/v2/transports/file-transport.js +128 -0
  197. package/dist/logger/v2/types.cjs +49 -0
  198. package/dist/logger/v2/types.d.ts +123 -0
  199. package/dist/logger/v2/types.d.ts.map +1 -0
  200. package/dist/logger/v2/types.js +26 -0
  201. package/dist/mcp/manager.cjs +88 -78
  202. package/dist/mcp/manager.d.ts +3 -1
  203. package/dist/mcp/manager.d.ts.map +1 -1
  204. package/dist/mcp/manager.js +88 -78
  205. package/dist/mcp/mcp-client.cjs +109 -79
  206. package/dist/mcp/mcp-client.d.ts +3 -0
  207. package/dist/mcp/mcp-client.d.ts.map +1 -1
  208. package/dist/mcp/mcp-client.js +102 -72
  209. package/dist/memory/index.cjs +2 -0
  210. package/dist/memory/index.d.ts +1 -1
  211. package/dist/memory/index.d.ts.map +1 -1
  212. package/dist/memory/index.js +3 -1
  213. package/dist/memory/manager.cjs +9 -7
  214. package/dist/memory/manager.d.ts +3 -1
  215. package/dist/memory/manager.d.ts.map +1 -1
  216. package/dist/memory/manager.js +9 -7
  217. package/dist/memory/schemas.cjs +10 -0
  218. package/dist/memory/schemas.d.ts +37 -8
  219. package/dist/memory/schemas.d.ts.map +1 -1
  220. package/dist/memory/schemas.js +9 -0
  221. package/dist/plugins/manager.cjs +21 -19
  222. package/dist/plugins/manager.d.ts +3 -1
  223. package/dist/plugins/manager.d.ts.map +1 -1
  224. package/dist/plugins/manager.js +21 -19
  225. package/dist/plugins/schemas.d.ts +9 -9
  226. package/dist/plugins/types.d.ts +2 -2
  227. package/dist/plugins/types.d.ts.map +1 -1
  228. package/dist/process/command-validator.cjs +30 -20
  229. package/dist/process/command-validator.d.ts +4 -1
  230. package/dist/process/command-validator.d.ts.map +1 -1
  231. package/dist/process/command-validator.js +30 -20
  232. package/dist/process/process-service.cjs +23 -21
  233. package/dist/process/process-service.d.ts +3 -1
  234. package/dist/process/process-service.d.ts.map +1 -1
  235. package/dist/process/process-service.js +23 -21
  236. package/dist/prompts/index.cjs +6 -8
  237. package/dist/prompts/index.d.ts +2 -4
  238. package/dist/prompts/index.d.ts.map +1 -1
  239. package/dist/prompts/index.js +4 -6
  240. package/dist/prompts/prompt-manager.cjs +25 -20
  241. package/dist/prompts/prompt-manager.d.ts +3 -1
  242. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  243. package/dist/prompts/prompt-manager.js +25 -20
  244. package/dist/prompts/providers/config-prompt-provider.cjs +331 -0
  245. package/dist/prompts/providers/config-prompt-provider.d.ts +34 -0
  246. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -0
  247. package/dist/prompts/providers/config-prompt-provider.js +308 -0
  248. package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
  249. package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
  250. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  251. package/dist/prompts/providers/custom-prompt-provider.js +11 -7
  252. package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
  253. package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
  254. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  255. package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
  256. package/dist/prompts/schemas.cjs +42 -23
  257. package/dist/prompts/schemas.d.ts +123 -14
  258. package/dist/prompts/schemas.d.ts.map +1 -1
  259. package/dist/prompts/schemas.js +39 -22
  260. package/dist/prompts/types.d.ts +1 -1
  261. package/dist/prompts/types.d.ts.map +1 -1
  262. package/dist/resources/handlers/blob-handler.cjs +15 -11
  263. package/dist/resources/handlers/blob-handler.d.ts +3 -1
  264. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  265. package/dist/resources/handlers/blob-handler.js +15 -11
  266. package/dist/resources/handlers/factory.cjs +3 -3
  267. package/dist/resources/handlers/factory.d.ts +2 -1
  268. package/dist/resources/handlers/factory.d.ts.map +1 -1
  269. package/dist/resources/handlers/factory.js +3 -3
  270. package/dist/resources/handlers/filesystem-handler.cjs +10 -8
  271. package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
  272. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  273. package/dist/resources/handlers/filesystem-handler.js +10 -8
  274. package/dist/resources/internal-provider.cjs +28 -20
  275. package/dist/resources/internal-provider.d.ts +3 -1
  276. package/dist/resources/internal-provider.d.ts.map +1 -1
  277. package/dist/resources/internal-provider.js +28 -20
  278. package/dist/resources/manager.cjs +34 -25
  279. package/dist/resources/manager.d.ts +3 -1
  280. package/dist/resources/manager.d.ts.map +1 -1
  281. package/dist/resources/manager.js +34 -25
  282. package/dist/resources/schemas.d.ts +6 -6
  283. package/dist/search/search-service.cjs +8 -6
  284. package/dist/search/search-service.d.ts +3 -1
  285. package/dist/search/search-service.d.ts.map +1 -1
  286. package/dist/search/search-service.js +8 -6
  287. package/dist/session/chat-session.cjs +40 -27
  288. package/dist/session/chat-session.d.ts +10 -7
  289. package/dist/session/chat-session.d.ts.map +1 -1
  290. package/dist/session/chat-session.js +40 -27
  291. package/dist/session/history/database.cjs +18 -11
  292. package/dist/session/history/database.d.ts +3 -1
  293. package/dist/session/history/database.d.ts.map +1 -1
  294. package/dist/session/history/database.js +18 -11
  295. package/dist/session/history/factory.cjs +2 -2
  296. package/dist/session/history/factory.d.ts +5 -1
  297. package/dist/session/history/factory.d.ts.map +1 -1
  298. package/dist/session/history/factory.js +2 -2
  299. package/dist/session/session-manager.cjs +37 -53
  300. package/dist/session/session-manager.d.ts +3 -17
  301. package/dist/session/session-manager.d.ts.map +1 -1
  302. package/dist/session/session-manager.js +37 -53
  303. package/dist/session/title-generator.cjs +3 -2
  304. package/dist/session/title-generator.d.ts +2 -1
  305. package/dist/session/title-generator.d.ts.map +1 -1
  306. package/dist/session/title-generator.js +3 -2
  307. package/dist/storage/blob/factory.cjs +9 -18
  308. package/dist/storage/blob/factory.d.ts +5 -4
  309. package/dist/storage/blob/factory.d.ts.map +1 -1
  310. package/dist/storage/blob/factory.js +8 -17
  311. package/dist/storage/blob/local-blob-store.cjs +25 -32
  312. package/dist/storage/blob/local-blob-store.d.ts +3 -2
  313. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  314. package/dist/storage/blob/local-blob-store.js +25 -32
  315. package/dist/storage/blob/memory-blob-store.cjs +326 -0
  316. package/dist/storage/blob/memory-blob-store.d.ts +66 -0
  317. package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
  318. package/dist/storage/blob/memory-blob-store.js +303 -0
  319. package/dist/storage/blob/schemas.cjs +3 -1
  320. package/dist/storage/blob/schemas.d.ts +6 -6
  321. package/dist/storage/blob/schemas.d.ts.map +1 -1
  322. package/dist/storage/blob/schemas.js +3 -1
  323. package/dist/storage/cache/factory.cjs +7 -8
  324. package/dist/storage/cache/factory.d.ts +4 -1
  325. package/dist/storage/cache/factory.d.ts.map +1 -1
  326. package/dist/storage/cache/factory.js +4 -5
  327. package/dist/storage/cache/redis-store.cjs +4 -1
  328. package/dist/storage/cache/redis-store.d.ts +3 -1
  329. package/dist/storage/cache/redis-store.d.ts.map +1 -1
  330. package/dist/storage/cache/redis-store.js +4 -1
  331. package/dist/storage/database/factory.cjs +13 -16
  332. package/dist/storage/database/factory.d.ts +5 -3
  333. package/dist/storage/database/factory.d.ts.map +1 -1
  334. package/dist/storage/database/factory.js +9 -12
  335. package/dist/storage/database/postgres-store.cjs +4 -1
  336. package/dist/storage/database/postgres-store.d.ts +3 -1
  337. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  338. package/dist/storage/database/postgres-store.js +4 -1
  339. package/dist/storage/database/schemas.cjs +3 -4
  340. package/dist/storage/database/schemas.d.ts +8 -16
  341. package/dist/storage/database/schemas.d.ts.map +1 -1
  342. package/dist/storage/database/schemas.js +3 -4
  343. package/dist/storage/database/sqlite-store.cjs +17 -45
  344. package/dist/storage/database/sqlite-store.d.ts +3 -3
  345. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  346. package/dist/storage/database/sqlite-store.js +17 -45
  347. package/dist/storage/schemas.cjs +3 -1
  348. package/dist/storage/schemas.d.ts +16 -23
  349. package/dist/storage/schemas.d.ts.map +1 -1
  350. package/dist/storage/schemas.js +3 -1
  351. package/dist/storage/storage-manager.cjs +15 -15
  352. package/dist/storage/storage-manager.d.ts +6 -6
  353. package/dist/storage/storage-manager.d.ts.map +1 -1
  354. package/dist/storage/storage-manager.js +15 -15
  355. package/dist/systemPrompt/contributors.cjs +15 -15
  356. package/dist/systemPrompt/contributors.d.ts +5 -3
  357. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  358. package/dist/systemPrompt/contributors.js +15 -15
  359. package/dist/systemPrompt/in-built-prompts.cjs +0 -5
  360. package/dist/systemPrompt/in-built-prompts.d.ts +1 -2
  361. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  362. package/dist/systemPrompt/in-built-prompts.js +0 -4
  363. package/dist/systemPrompt/manager.cjs +31 -23
  364. package/dist/systemPrompt/manager.d.ts +5 -3
  365. package/dist/systemPrompt/manager.d.ts.map +1 -1
  366. package/dist/systemPrompt/manager.js +31 -23
  367. package/dist/systemPrompt/registry.cjs +1 -2
  368. package/dist/systemPrompt/registry.d.ts +1 -1
  369. package/dist/systemPrompt/registry.d.ts.map +1 -1
  370. package/dist/systemPrompt/registry.js +1 -2
  371. package/dist/systemPrompt/schemas.cjs +24 -18
  372. package/dist/systemPrompt/schemas.d.ts +46 -222
  373. package/dist/systemPrompt/schemas.d.ts.map +1 -1
  374. package/dist/systemPrompt/schemas.js +14 -18
  375. package/dist/telemetry/decorators.cjs +54 -15
  376. package/dist/telemetry/decorators.d.ts.map +1 -1
  377. package/dist/telemetry/decorators.js +54 -15
  378. package/dist/telemetry/utils.cjs +21 -14
  379. package/dist/telemetry/utils.d.ts +7 -3
  380. package/dist/telemetry/utils.d.ts.map +1 -1
  381. package/dist/telemetry/utils.js +21 -14
  382. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
  383. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
  384. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  385. package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
  386. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
  387. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
  388. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  389. package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
  390. package/dist/tools/errors.cjs +2 -1
  391. package/dist/tools/errors.d.ts.map +1 -1
  392. package/dist/tools/errors.js +2 -1
  393. package/dist/tools/internal-tools/constants.cjs +2 -1
  394. package/dist/tools/internal-tools/constants.d.ts +1 -1
  395. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  396. package/dist/tools/internal-tools/constants.js +2 -1
  397. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
  398. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
  399. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
  400. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
  401. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
  402. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
  403. package/dist/tools/internal-tools/provider.cjs +21 -17
  404. package/dist/tools/internal-tools/provider.d.ts +3 -1
  405. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  406. package/dist/tools/internal-tools/provider.js +21 -17
  407. package/dist/tools/internal-tools/registry.cjs +5 -0
  408. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  409. package/dist/tools/internal-tools/registry.js +5 -0
  410. package/dist/tools/schemas.cjs +16 -4
  411. package/dist/tools/schemas.d.ts +21 -9
  412. package/dist/tools/schemas.d.ts.map +1 -1
  413. package/dist/tools/schemas.js +15 -4
  414. package/dist/tools/tool-manager.cjs +64 -47
  415. package/dist/tools/tool-manager.d.ts +4 -2
  416. package/dist/tools/tool-manager.d.ts.map +1 -1
  417. package/dist/tools/tool-manager.js +61 -44
  418. package/dist/tools/types.d.ts +0 -4
  419. package/dist/tools/types.d.ts.map +1 -1
  420. package/dist/utils/env-file.cjs +118 -0
  421. package/dist/utils/env-file.d.ts +5 -0
  422. package/dist/utils/env-file.d.ts.map +1 -0
  423. package/dist/utils/env-file.js +85 -0
  424. package/dist/utils/error-conversion.cjs +23 -1
  425. package/dist/utils/error-conversion.d.ts +2 -1
  426. package/dist/utils/error-conversion.d.ts.map +1 -1
  427. package/dist/utils/error-conversion.js +23 -1
  428. package/dist/utils/execution-context.d.ts.map +1 -1
  429. package/dist/utils/fs-walk.d.ts.map +1 -1
  430. package/dist/utils/index.cjs +7 -9
  431. package/dist/utils/index.d.ts +3 -4
  432. package/dist/utils/index.d.ts.map +1 -1
  433. package/dist/utils/index.js +3 -4
  434. package/dist/utils/path.cjs +22 -57
  435. package/dist/utils/path.d.ts +8 -7
  436. package/dist/utils/path.d.ts.map +1 -1
  437. package/dist/utils/path.js +21 -54
  438. package/dist/utils/result.cjs +37 -14
  439. package/dist/utils/result.d.ts.map +1 -1
  440. package/dist/utils/result.js +37 -14
  441. package/dist/utils/schema.cjs +2 -3
  442. package/dist/utils/schema.d.ts +2 -1
  443. package/dist/utils/schema.d.ts.map +1 -1
  444. package/dist/utils/schema.js +1 -2
  445. package/dist/utils/service-initializer.cjs +88 -61
  446. package/dist/utils/service-initializer.d.ts +4 -2
  447. package/dist/utils/service-initializer.d.ts.map +1 -1
  448. package/dist/utils/service-initializer.js +70 -43
  449. package/package.json +7 -3
  450. package/dist/Dexto.cjs +0 -251
  451. package/dist/Dexto.d.ts +0 -191
  452. package/dist/Dexto.d.ts.map +0 -1
  453. package/dist/Dexto.js +0 -228
  454. package/dist/agent/registry/error-codes.cjs +0 -44
  455. package/dist/agent/registry/error-codes.d.ts +0 -21
  456. package/dist/agent/registry/error-codes.d.ts.map +0 -1
  457. package/dist/agent/registry/error-codes.js +0 -21
  458. package/dist/agent/registry/errors.cjs +0 -188
  459. package/dist/agent/registry/errors.d.ts +0 -63
  460. package/dist/agent/registry/errors.d.ts.map +0 -1
  461. package/dist/agent/registry/errors.js +0 -165
  462. package/dist/agent/registry/registry.cjs +0 -479
  463. package/dist/agent/registry/registry.d.ts +0 -130
  464. package/dist/agent/registry/registry.d.ts.map +0 -1
  465. package/dist/agent/registry/registry.js +0 -453
  466. package/dist/agent/registry/types.cjs +0 -74
  467. package/dist/agent/registry/types.d.ts +0 -142
  468. package/dist/agent/registry/types.d.ts.map +0 -1
  469. package/dist/agent/registry/types.js +0 -48
  470. package/dist/agent/registry/user-registry.cjs +0 -140
  471. package/dist/agent/registry/user-registry.d.ts +0 -34
  472. package/dist/agent/registry/user-registry.d.ts.map +0 -1
  473. package/dist/agent/registry/user-registry.js +0 -105
  474. package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
  475. package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
  476. package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
  477. package/dist/approval/providers/event-based-approval-provider.js +0 -133
  478. package/dist/approval/providers/factory.d.ts.map +0 -1
  479. package/dist/approval/providers/noop-approval-provider.cjs +0 -54
  480. package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
  481. package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
  482. package/dist/approval/providers/noop-approval-provider.js +0 -31
  483. package/dist/config/agent-resolver.cjs +0 -153
  484. package/dist/config/agent-resolver.d.ts +0 -14
  485. package/dist/config/agent-resolver.d.ts.map +0 -1
  486. package/dist/config/agent-resolver.js +0 -123
  487. package/dist/config/error-codes.cjs +0 -39
  488. package/dist/config/error-codes.d.ts +0 -16
  489. package/dist/config/error-codes.d.ts.map +0 -1
  490. package/dist/config/error-codes.js +0 -16
  491. package/dist/config/errors.cjs +0 -126
  492. package/dist/config/errors.d.ts +0 -34
  493. package/dist/config/errors.d.ts.map +0 -1
  494. package/dist/config/errors.js +0 -103
  495. package/dist/config/index.cjs +0 -26
  496. package/dist/config/index.d.ts +0 -4
  497. package/dist/config/index.d.ts.map +0 -1
  498. package/dist/config/index.js +0 -3
  499. package/dist/config/loader.cjs +0 -119
  500. package/dist/config/loader.d.ts +0 -16
  501. package/dist/config/loader.d.ts.map +0 -1
  502. package/dist/config/loader.js +0 -86
  503. package/dist/config/writer.cjs +0 -182
  504. package/dist/config/writer.d.ts +0 -35
  505. package/dist/config/writer.d.ts.map +0 -1
  506. package/dist/config/writer.js +0 -147
  507. package/dist/preferences/constants.d.ts +0 -2
  508. package/dist/preferences/constants.d.ts.map +0 -1
  509. package/dist/preferences/constants.js +0 -5
  510. package/dist/preferences/error-codes.d.ts +0 -8
  511. package/dist/preferences/error-codes.d.ts.map +0 -1
  512. package/dist/preferences/error-codes.js +0 -12
  513. package/dist/preferences/errors.cjs +0 -75
  514. package/dist/preferences/errors.d.ts +0 -18
  515. package/dist/preferences/errors.d.ts.map +0 -1
  516. package/dist/preferences/errors.js +0 -51
  517. package/dist/preferences/index.cjs +0 -55
  518. package/dist/preferences/index.d.ts +0 -6
  519. package/dist/preferences/index.d.ts.map +0 -1
  520. package/dist/preferences/index.js +0 -32
  521. package/dist/preferences/loader.cjs +0 -138
  522. package/dist/preferences/loader.d.ts +0 -51
  523. package/dist/preferences/loader.d.ts.map +0 -1
  524. package/dist/preferences/loader.js +0 -110
  525. package/dist/preferences/schemas.cjs +0 -75
  526. package/dist/preferences/schemas.d.ts +0 -110
  527. package/dist/preferences/schemas.d.ts.map +0 -1
  528. package/dist/preferences/schemas.js +0 -49
  529. package/dist/prompts/providers/file-prompt-provider.cjs +0 -399
  530. package/dist/prompts/providers/file-prompt-provider.d.ts +0 -47
  531. package/dist/prompts/providers/file-prompt-provider.d.ts.map +0 -1
  532. package/dist/prompts/providers/file-prompt-provider.js +0 -376
  533. package/dist/prompts/providers/starter-prompt-provider.cjs +0 -170
  534. package/dist/prompts/providers/starter-prompt-provider.d.ts +0 -45
  535. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +0 -1
  536. package/dist/prompts/providers/starter-prompt-provider.js +0 -147
  537. package/dist/utils/api-key-store.cjs +0 -56
  538. package/dist/utils/api-key-store.d.ts +0 -24
  539. package/dist/utils/api-key-store.d.ts.map +0 -1
  540. package/dist/utils/api-key-store.js +0 -31
  541. package/dist/utils/env.cjs +0 -154
  542. package/dist/utils/env.d.ts +0 -28
  543. package/dist/utils/env.d.ts.map +0 -1
  544. package/dist/utils/env.js +0 -119
  545. package/dist/utils/port-utils.cjs +0 -37
  546. package/dist/utils/port-utils.d.ts +0 -10
  547. package/dist/utils/port-utils.d.ts.map +0 -1
  548. package/dist/utils/port-utils.js +0 -14
  549. package/dist/utils/port-utils.spec.cjs +0 -26
  550. package/dist/utils/port-utils.spec.js +0 -25
  551. /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
@@ -4,6 +4,7 @@
4
4
  * Security-focused command validation for process execution
5
5
  */
6
6
  import { ProcessConfig, CommandValidation } from './types.js';
7
+ import type { IDextoLogger } from '../logger/v2/types.js';
7
8
  /**
8
9
  * CommandValidator - Validates commands for security and policy compliance
9
10
  *
@@ -17,7 +18,8 @@ import { ProcessConfig, CommandValidation } from './types.js';
17
18
  */
18
19
  export declare class CommandValidator {
19
20
  private config;
20
- constructor(config: ProcessConfig);
21
+ private logger;
22
+ constructor(config: ProcessConfig, logger: IDextoLogger);
21
23
  /**
22
24
  * Validate a command for security and policy compliance
23
25
  */
@@ -28,6 +30,7 @@ export declare class CommandValidator {
28
30
  private detectInjection;
29
31
  /**
30
32
  * Determine if a command requires approval
33
+ * Handles compound commands (with &&, ||, ;) by checking each sub-command
31
34
  */
32
35
  private determineApprovalRequirement;
33
36
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"command-validator.d.ts","sourceRoot":"","sources":["../../src/process/command-validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAqQ9D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAgB;gBAElB,MAAM,EAAE,aAAa;IAKjC;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB;IAuEnD;;OAEG;IACH,OAAO,CAAC,eAAe;IAgCvB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAsBpC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,gBAAgB,IAAI,MAAM;CAG7B"}
1
+ {"version":3,"file":"command-validator.d.ts","sourceRoot":"","sources":["../../src/process/command-validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAkQ1D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY;IAQvD;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB;IAgFnD;;OAEG;IACH,OAAO,CAAC,eAAe;IAgCvB;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAyCpC;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,gBAAgB,IAAI,MAAM;CAG7B"}
@@ -1,5 +1,4 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
- import { logger } from "../logger/index.js";
3
2
  const MAX_COMMAND_LENGTH = 1e4;
4
3
  const DANGEROUS_PATTERNS = [
5
4
  // File system destruction
@@ -120,21 +119,13 @@ const DANGEROUS_PATTERNS = [
120
119
  // Remove packages
121
120
  ];
122
121
  const INJECTION_PATTERNS = [
123
- // Command chaining with dangerous commands
122
+ // Command chaining with dangerous commands using semicolon (more suspicious)
124
123
  /;\s*rm\s+-rf/,
125
124
  // ; rm -rf
126
- /&&\s*rm\s+-rf/,
127
- // && rm -rf
128
- /\|\s*rm\s+-rf/,
129
- // | rm -rf
130
125
  /;\s*chmod\s+777/,
131
126
  // ; chmod 777
132
- /&&\s*chmod\s+777/,
133
- // && chmod 777
134
127
  /;\s*chown\s+root/,
135
128
  // ; chown root
136
- /&&\s*chown\s+root/,
137
- // && chown root
138
129
  // Command substitution with dangerous commands
139
130
  /`.*rm.*`/,
140
131
  // backticks with rm
@@ -391,9 +382,13 @@ const WRITE_PATTERNS = [
391
382
  ];
392
383
  class CommandValidator {
393
384
  config;
394
- constructor(config) {
385
+ logger;
386
+ constructor(config, logger) {
395
387
  this.config = config;
396
- logger.debug(`CommandValidator initialized with security level: ${config.securityLevel}`);
388
+ this.logger = logger;
389
+ this.logger.debug(
390
+ `CommandValidator initialized with security level: ${config.securityLevel}`
391
+ );
397
392
  }
398
393
  /**
399
394
  * Validate a command for security and policy compliance
@@ -406,6 +401,12 @@ class CommandValidator {
406
401
  };
407
402
  }
408
403
  const trimmedCommand = command.trim();
404
+ if (/&\s*$/.test(trimmedCommand)) {
405
+ return {
406
+ isValid: false,
407
+ error: "Commands ending with & (shell backgrounding) are not allowed. Use run_in_background parameter instead for proper process management."
408
+ };
409
+ }
409
410
  if (trimmedCommand.length > MAX_COMMAND_LENGTH) {
410
411
  return {
411
412
  isValid: false,
@@ -482,18 +483,27 @@ class CommandValidator {
482
483
  }
483
484
  /**
484
485
  * Determine if a command requires approval
486
+ * Handles compound commands (with &&, ||, ;) by checking each sub-command
485
487
  */
486
488
  determineApprovalRequirement(command) {
487
- for (const pattern of REQUIRES_APPROVAL_PATTERNS) {
488
- if (pattern.test(command)) {
489
+ const subCommands = command.split(/\s*(?:&&|\|\||;)\s*/).map((cmd) => cmd.trim());
490
+ for (const subCmd of subCommands) {
491
+ if (!subCmd) continue;
492
+ const normalizedSubCmd = subCmd.replace(/^(?:then|do|else)\b\s*/, "").replace(/^\{\s*/, "").trim();
493
+ if (!normalizedSubCmd) continue;
494
+ for (const pattern of REQUIRES_APPROVAL_PATTERNS) {
495
+ if (pattern.test(normalizedSubCmd)) {
496
+ return true;
497
+ }
498
+ }
499
+ if (this.config.securityLevel === "strict") {
489
500
  return true;
490
501
  }
491
- }
492
- if (this.config.securityLevel === "strict") {
493
- return true;
494
- }
495
- if (this.config.securityLevel === "moderate") {
496
- return WRITE_PATTERNS.some((pattern) => pattern.test(command));
502
+ if (this.config.securityLevel === "moderate") {
503
+ if (WRITE_PATTERNS.some((pattern) => pattern.test(normalizedSubCmd))) {
504
+ return true;
505
+ }
506
+ }
497
507
  }
498
508
  return false;
499
509
  }
@@ -36,7 +36,7 @@ var crypto = __toESM(require("node:crypto"), 1);
36
36
  var path = __toESM(require("node:path"), 1);
37
37
  var import_command_validator = require("./command-validator.js");
38
38
  var import_errors = require("./errors.js");
39
- var import_logger = require("../logger/index.js");
39
+ var import_types2 = require("../logger/v2/types.js");
40
40
  const DEFAULT_TIMEOUT = 12e4;
41
41
  const DEFAULT_MAX_TIMEOUT = 6e5;
42
42
  const DEFAULT_MAX_CONCURRENT_PROCESSES = 5;
@@ -46,7 +46,8 @@ class ProcessService {
46
46
  commandValidator;
47
47
  initialized = false;
48
48
  backgroundProcesses = /* @__PURE__ */ new Map();
49
- constructor(config = {}) {
49
+ logger;
50
+ constructor(config = {}, logger) {
50
51
  this.config = {
51
52
  securityLevel: config.securityLevel || "moderate",
52
53
  maxTimeout: config.maxTimeout || DEFAULT_MAX_TIMEOUT,
@@ -57,19 +58,20 @@ class ProcessService {
57
58
  environment: config.environment || {},
58
59
  workingDirectory: config.workingDirectory
59
60
  };
60
- this.commandValidator = new import_command_validator.CommandValidator(this.config);
61
+ this.logger = logger.createChild(import_types2.DextoLogComponent.PROCESS);
62
+ this.commandValidator = new import_command_validator.CommandValidator(this.config, this.logger);
61
63
  }
62
64
  /**
63
65
  * Initialize the service
64
66
  */
65
67
  async initialize() {
66
68
  if (this.initialized) {
67
- import_logger.logger.debug("ProcessService already initialized");
69
+ this.logger.debug("ProcessService already initialized");
68
70
  return;
69
71
  }
70
72
  this.backgroundProcesses.clear();
71
73
  this.initialized = true;
72
- import_logger.logger.info("ProcessService initialized successfully");
74
+ this.logger.info("ProcessService initialized successfully");
73
75
  }
74
76
  /**
75
77
  * Execute a command
@@ -90,15 +92,15 @@ class ProcessService {
90
92
  "Command requires approval but no approval mechanism provided"
91
93
  );
92
94
  }
93
- import_logger.logger.info(
95
+ this.logger.info(
94
96
  `Command requires approval: ${normalizedCommand} - requesting user confirmation`
95
97
  );
96
98
  const approved = await options.approvalFunction(normalizedCommand);
97
99
  if (!approved) {
98
- import_logger.logger.info(`Command approval denied: ${normalizedCommand}`);
100
+ this.logger.info(`Command approval denied: ${normalizedCommand}`);
99
101
  throw import_errors.ProcessError.approvalDenied(normalizedCommand);
100
102
  }
101
- import_logger.logger.info(`Command approved: ${normalizedCommand}`);
103
+ this.logger.info(`Command approved: ${normalizedCommand}`);
102
104
  }
103
105
  const rawTimeout = options.timeout !== void 0 && Number.isFinite(options.timeout) ? options.timeout : DEFAULT_TIMEOUT;
104
106
  const timeout = Math.max(1, Math.min(rawTimeout, this.config.maxTimeout));
@@ -133,7 +135,7 @@ class ProcessService {
133
135
  let stderr = "";
134
136
  let killed = false;
135
137
  let closed = false;
136
- import_logger.logger.debug(`Executing command: ${command}`);
138
+ this.logger.debug(`Executing command: ${command}`);
137
139
  const child = (0, import_node_child_process.spawn)(command, {
138
140
  cwd: options.cwd,
139
141
  env: options.env,
@@ -167,7 +169,7 @@ class ProcessService {
167
169
  stderr += `
168
170
  Process terminated by signal ${signal ?? "UNKNOWN"}`;
169
171
  }
170
- import_logger.logger.debug(
172
+ this.logger.debug(
171
173
  `Command completed with exit code ${exitCode} in ${duration}ms: ${command}`
172
174
  );
173
175
  resolve({
@@ -211,7 +213,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
211
213
  env[key] = value;
212
214
  }
213
215
  }
214
- import_logger.logger.debug(`Starting background process ${processId}: ${command}`);
216
+ this.logger.debug(`Starting background process ${processId}: ${command}`);
215
217
  const child = (0, import_node_child_process.spawn)(command, {
216
218
  cwd,
217
219
  env,
@@ -242,13 +244,13 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
242
244
  );
243
245
  const killTimer = setTimeout(() => {
244
246
  if (bgProcess.status === "running") {
245
- import_logger.logger.warn(
247
+ this.logger.warn(
246
248
  `Background process ${processId} timed out after ${bgTimeout}ms, sending SIGTERM`
247
249
  );
248
250
  child.kill("SIGTERM");
249
251
  setTimeout(() => {
250
252
  if (bgProcess.status === "running") {
251
- import_logger.logger.warn(
253
+ this.logger.warn(
252
254
  `Background process ${processId} did not respond to SIGTERM, sending SIGKILL`
253
255
  );
254
256
  child.kill("SIGKILL");
@@ -265,7 +267,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
265
267
  } else {
266
268
  if (!outputBuffer.truncated) {
267
269
  outputBuffer.truncated = true;
268
- import_logger.logger.warn(`Output buffer full for process ${processId}`);
270
+ this.logger.warn(`Output buffer full for process ${processId}`);
269
271
  }
270
272
  }
271
273
  });
@@ -278,7 +280,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
278
280
  } else {
279
281
  if (!outputBuffer.truncated) {
280
282
  outputBuffer.truncated = true;
281
- import_logger.logger.warn(`Error buffer full for process ${processId}`);
283
+ this.logger.warn(`Error buffer full for process ${processId}`);
282
284
  }
283
285
  }
284
286
  });
@@ -288,7 +290,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
288
290
  bgProcess.exitCode = code ?? void 0;
289
291
  bgProcess.completedAt = /* @__PURE__ */ new Date();
290
292
  bgProcess.outputBuffer.complete = true;
291
- import_logger.logger.debug(`Background process ${processId} completed with exit code ${code}`);
293
+ this.logger.debug(`Background process ${processId} completed with exit code ${code}`);
292
294
  });
293
295
  child.on("error", (error) => {
294
296
  clearTimeout(killTimer);
@@ -303,10 +305,10 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
303
305
  } else {
304
306
  if (!bgProcess.outputBuffer.truncated) {
305
307
  bgProcess.outputBuffer.truncated = true;
306
- import_logger.logger.warn(`Error buffer full for process ${processId}`);
308
+ this.logger.warn(`Error buffer full for process ${processId}`);
307
309
  }
308
310
  }
309
- import_logger.logger.error(`Background process ${processId} failed: ${error.message}`);
311
+ this.logger.error(`Background process ${processId} failed: ${error.message}`);
310
312
  });
311
313
  return {
312
314
  processId,
@@ -353,7 +355,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
353
355
  throw import_errors.ProcessError.processNotFound(processId);
354
356
  }
355
357
  if (bgProcess.status !== "running") {
356
- import_logger.logger.debug(`Process ${processId} is not running (status: ${bgProcess.status})`);
358
+ this.logger.debug(`Process ${processId} is not running (status: ${bgProcess.status})`);
357
359
  return;
358
360
  }
359
361
  try {
@@ -363,7 +365,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
363
365
  bgProcess.child.kill("SIGKILL");
364
366
  }
365
367
  }, 5e3);
366
- import_logger.logger.debug(`Process ${processId} sent SIGTERM`);
368
+ this.logger.debug(`Process ${processId} sent SIGTERM`);
367
369
  } catch (error) {
368
370
  throw import_errors.ProcessError.killFailed(
369
371
  processId,
@@ -431,7 +433,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
431
433
  const age = now - bgProcess.completedAt.getTime();
432
434
  if (age > CLEANUP_AGE) {
433
435
  this.backgroundProcesses.delete(processId);
434
- import_logger.logger.debug(`Cleaned up old process ${processId}`);
436
+ this.logger.debug(`Cleaned up old process ${processId}`);
435
437
  }
436
438
  }
437
439
  }
@@ -4,6 +4,7 @@
4
4
  * Secure command execution and process management for Dexto internal tools
5
5
  */
6
6
  import { ProcessConfig, ExecuteOptions, ProcessResult, ProcessHandle, ProcessOutput, ProcessInfo } from './types.js';
7
+ import type { IDextoLogger } from '../logger/v2/types.js';
7
8
  /**
8
9
  * ProcessService - Handles command execution and process management
9
10
  * TODO: Add tests for this class
@@ -13,7 +14,8 @@ export declare class ProcessService {
13
14
  private commandValidator;
14
15
  private initialized;
15
16
  private backgroundProcesses;
16
- constructor(config?: Partial<ProcessConfig>);
17
+ private logger;
18
+ constructor(config: Partial<ProcessConfig> | undefined, logger: IDextoLogger);
17
19
  /**
18
20
  * Initialize the service
19
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"process-service.d.ts","sourceRoot":"","sources":["../../src/process/process-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EACH,aAAa,EACb,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,WAAW,EAEd,MAAM,YAAY,CAAC;AAyBpB;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,mBAAmB,CAA6C;gBAE5D,MAAM,GAAE,OAAO,CAAC,aAAa,CAAM;IAiB/C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC;;OAEG;IACG,cAAc,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,cAAmB,GAC7B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IAwEzC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsFzB;;OAEG;YACW,mBAAmB;IAiKjC;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+BjE;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCnD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB7C;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,aAAa,CAAC;IAIpC;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAcjC"}
1
+ {"version":3,"file":"process-service.d.ts","sourceRoot":"","sources":["../../src/process/process-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EACH,aAAa,EACb,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,WAAW,EAEd,MAAM,YAAY,CAAC;AAGpB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAuB1D;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,mBAAmB,CAA6C;IACxE,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,YAAK,EAAE,MAAM,EAAE,YAAY;IAkBrE;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC;;OAEG;IACG,cAAc,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,cAAmB,GAC7B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IAwEzC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsFzB;;OAEG;YACW,mBAAmB;IAiKjC;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+BjE;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCnD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB7C;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,aAAa,CAAC;IAIpC;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAcjC"}
@@ -4,7 +4,7 @@ import * as crypto from "node:crypto";
4
4
  import * as path from "node:path";
5
5
  import { CommandValidator } from "./command-validator.js";
6
6
  import { ProcessError } from "./errors.js";
7
- import { logger } from "../logger/index.js";
7
+ import { DextoLogComponent } from "../logger/v2/types.js";
8
8
  const DEFAULT_TIMEOUT = 12e4;
9
9
  const DEFAULT_MAX_TIMEOUT = 6e5;
10
10
  const DEFAULT_MAX_CONCURRENT_PROCESSES = 5;
@@ -14,7 +14,8 @@ class ProcessService {
14
14
  commandValidator;
15
15
  initialized = false;
16
16
  backgroundProcesses = /* @__PURE__ */ new Map();
17
- constructor(config = {}) {
17
+ logger;
18
+ constructor(config = {}, logger) {
18
19
  this.config = {
19
20
  securityLevel: config.securityLevel || "moderate",
20
21
  maxTimeout: config.maxTimeout || DEFAULT_MAX_TIMEOUT,
@@ -25,19 +26,20 @@ class ProcessService {
25
26
  environment: config.environment || {},
26
27
  workingDirectory: config.workingDirectory
27
28
  };
28
- this.commandValidator = new CommandValidator(this.config);
29
+ this.logger = logger.createChild(DextoLogComponent.PROCESS);
30
+ this.commandValidator = new CommandValidator(this.config, this.logger);
29
31
  }
30
32
  /**
31
33
  * Initialize the service
32
34
  */
33
35
  async initialize() {
34
36
  if (this.initialized) {
35
- logger.debug("ProcessService already initialized");
37
+ this.logger.debug("ProcessService already initialized");
36
38
  return;
37
39
  }
38
40
  this.backgroundProcesses.clear();
39
41
  this.initialized = true;
40
- logger.info("ProcessService initialized successfully");
42
+ this.logger.info("ProcessService initialized successfully");
41
43
  }
42
44
  /**
43
45
  * Execute a command
@@ -58,15 +60,15 @@ class ProcessService {
58
60
  "Command requires approval but no approval mechanism provided"
59
61
  );
60
62
  }
61
- logger.info(
63
+ this.logger.info(
62
64
  `Command requires approval: ${normalizedCommand} - requesting user confirmation`
63
65
  );
64
66
  const approved = await options.approvalFunction(normalizedCommand);
65
67
  if (!approved) {
66
- logger.info(`Command approval denied: ${normalizedCommand}`);
68
+ this.logger.info(`Command approval denied: ${normalizedCommand}`);
67
69
  throw ProcessError.approvalDenied(normalizedCommand);
68
70
  }
69
- logger.info(`Command approved: ${normalizedCommand}`);
71
+ this.logger.info(`Command approved: ${normalizedCommand}`);
70
72
  }
71
73
  const rawTimeout = options.timeout !== void 0 && Number.isFinite(options.timeout) ? options.timeout : DEFAULT_TIMEOUT;
72
74
  const timeout = Math.max(1, Math.min(rawTimeout, this.config.maxTimeout));
@@ -101,7 +103,7 @@ class ProcessService {
101
103
  let stderr = "";
102
104
  let killed = false;
103
105
  let closed = false;
104
- logger.debug(`Executing command: ${command}`);
106
+ this.logger.debug(`Executing command: ${command}`);
105
107
  const child = spawn(command, {
106
108
  cwd: options.cwd,
107
109
  env: options.env,
@@ -135,7 +137,7 @@ class ProcessService {
135
137
  stderr += `
136
138
  Process terminated by signal ${signal ?? "UNKNOWN"}`;
137
139
  }
138
- logger.debug(
140
+ this.logger.debug(
139
141
  `Command completed with exit code ${exitCode} in ${duration}ms: ${command}`
140
142
  );
141
143
  resolve({
@@ -179,7 +181,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
179
181
  env[key] = value;
180
182
  }
181
183
  }
182
- logger.debug(`Starting background process ${processId}: ${command}`);
184
+ this.logger.debug(`Starting background process ${processId}: ${command}`);
183
185
  const child = spawn(command, {
184
186
  cwd,
185
187
  env,
@@ -210,13 +212,13 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
210
212
  );
211
213
  const killTimer = setTimeout(() => {
212
214
  if (bgProcess.status === "running") {
213
- logger.warn(
215
+ this.logger.warn(
214
216
  `Background process ${processId} timed out after ${bgTimeout}ms, sending SIGTERM`
215
217
  );
216
218
  child.kill("SIGTERM");
217
219
  setTimeout(() => {
218
220
  if (bgProcess.status === "running") {
219
- logger.warn(
221
+ this.logger.warn(
220
222
  `Background process ${processId} did not respond to SIGTERM, sending SIGKILL`
221
223
  );
222
224
  child.kill("SIGKILL");
@@ -233,7 +235,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
233
235
  } else {
234
236
  if (!outputBuffer.truncated) {
235
237
  outputBuffer.truncated = true;
236
- logger.warn(`Output buffer full for process ${processId}`);
238
+ this.logger.warn(`Output buffer full for process ${processId}`);
237
239
  }
238
240
  }
239
241
  });
@@ -246,7 +248,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
246
248
  } else {
247
249
  if (!outputBuffer.truncated) {
248
250
  outputBuffer.truncated = true;
249
- logger.warn(`Error buffer full for process ${processId}`);
251
+ this.logger.warn(`Error buffer full for process ${processId}`);
250
252
  }
251
253
  }
252
254
  });
@@ -256,7 +258,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
256
258
  bgProcess.exitCode = code ?? void 0;
257
259
  bgProcess.completedAt = /* @__PURE__ */ new Date();
258
260
  bgProcess.outputBuffer.complete = true;
259
- logger.debug(`Background process ${processId} completed with exit code ${code}`);
261
+ this.logger.debug(`Background process ${processId} completed with exit code ${code}`);
260
262
  });
261
263
  child.on("error", (error) => {
262
264
  clearTimeout(killTimer);
@@ -271,10 +273,10 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
271
273
  } else {
272
274
  if (!bgProcess.outputBuffer.truncated) {
273
275
  bgProcess.outputBuffer.truncated = true;
274
- logger.warn(`Error buffer full for process ${processId}`);
276
+ this.logger.warn(`Error buffer full for process ${processId}`);
275
277
  }
276
278
  }
277
- logger.error(`Background process ${processId} failed: ${error.message}`);
279
+ this.logger.error(`Background process ${processId} failed: ${error.message}`);
278
280
  });
279
281
  return {
280
282
  processId,
@@ -321,7 +323,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
321
323
  throw ProcessError.processNotFound(processId);
322
324
  }
323
325
  if (bgProcess.status !== "running") {
324
- logger.debug(`Process ${processId} is not running (status: ${bgProcess.status})`);
326
+ this.logger.debug(`Process ${processId} is not running (status: ${bgProcess.status})`);
325
327
  return;
326
328
  }
327
329
  try {
@@ -331,7 +333,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
331
333
  bgProcess.child.kill("SIGKILL");
332
334
  }
333
335
  }, 5e3);
334
- logger.debug(`Process ${processId} sent SIGTERM`);
336
+ this.logger.debug(`Process ${processId} sent SIGTERM`);
335
337
  } catch (error) {
336
338
  throw ProcessError.killFailed(
337
339
  processId,
@@ -399,7 +401,7 @@ Process terminated by signal ${signal ?? "UNKNOWN"}`;
399
401
  const age = now - bgProcess.completedAt.getTime();
400
402
  if (age > CLEANUP_AGE) {
401
403
  this.backgroundProcesses.delete(processId);
402
- logger.debug(`Cleaned up old process ${processId}`);
404
+ this.logger.debug(`Cleaned up old process ${processId}`);
403
405
  }
404
406
  }
405
407
  }
@@ -19,12 +19,12 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var prompts_exports = {};
20
20
  __export(prompts_exports, {
21
21
  CustomPromptProvider: () => import_custom_prompt_provider.CustomPromptProvider,
22
- FilePromptProvider: () => import_file_prompt_provider.FilePromptProvider,
22
+ FilePromptSchema: () => import_schemas.FilePromptSchema,
23
+ InlinePromptSchema: () => import_schemas.InlinePromptSchema,
23
24
  MCPPromptProvider: () => import_mcp_prompt_provider.MCPPromptProvider,
24
25
  PromptError: () => import_errors.PromptError,
25
26
  PromptManager: () => import_prompt_manager.PromptManager,
26
- StarterPromptProvider: () => import_starter_prompt_provider.StarterPromptProvider,
27
- StarterPromptsSchema: () => import_schemas.StarterPromptsSchema,
27
+ PromptsSchema: () => import_schemas.PromptsSchema,
28
28
  appendContext: () => import_utils.appendContext,
29
29
  flattenPromptResult: () => import_utils.flattenPromptResult,
30
30
  normalizePromptArgs: () => import_utils.normalizePromptArgs
@@ -32,8 +32,6 @@ __export(prompts_exports, {
32
32
  module.exports = __toCommonJS(prompts_exports);
33
33
  var import_prompt_manager = require("./prompt-manager.js");
34
34
  var import_mcp_prompt_provider = require("./providers/mcp-prompt-provider.js");
35
- var import_file_prompt_provider = require("./providers/file-prompt-provider.js");
36
- var import_starter_prompt_provider = require("./providers/starter-prompt-provider.js");
37
35
  var import_custom_prompt_provider = require("./providers/custom-prompt-provider.js");
38
36
  var import_errors = require("./errors.js");
39
37
  var import_schemas = require("./schemas.js");
@@ -41,12 +39,12 @@ var import_utils = require("./utils.js");
41
39
  // Annotate the CommonJS export names for ESM import in node:
42
40
  0 && (module.exports = {
43
41
  CustomPromptProvider,
44
- FilePromptProvider,
42
+ FilePromptSchema,
43
+ InlinePromptSchema,
45
44
  MCPPromptProvider,
46
45
  PromptError,
47
46
  PromptManager,
48
- StarterPromptProvider,
49
- StarterPromptsSchema,
47
+ PromptsSchema,
50
48
  appendContext,
51
49
  flattenPromptResult,
52
50
  normalizePromptArgs
@@ -1,12 +1,10 @@
1
1
  export { PromptManager } from './prompt-manager.js';
2
2
  export { MCPPromptProvider } from './providers/mcp-prompt-provider.js';
3
- export { FilePromptProvider } from './providers/file-prompt-provider.js';
4
- export { StarterPromptProvider } from './providers/starter-prompt-provider.js';
5
3
  export { CustomPromptProvider } from './providers/custom-prompt-provider.js';
6
4
  export type { CreateCustomPromptInput } from './providers/custom-prompt-provider.js';
7
5
  export { PromptError } from './errors.js';
8
- export { StarterPromptsSchema } from './schemas.js';
9
- export type { ValidatedStarterPromptsConfig } from './schemas.js';
6
+ export { PromptsSchema, InlinePromptSchema, FilePromptSchema } from './schemas.js';
7
+ export type { ValidatedPromptsConfig, ValidatedInlinePrompt, ValidatedFilePrompt, ValidatedPrompt, PromptsConfig, } from './schemas.js';
10
8
  export type { PromptInfo, PromptSet, PromptProvider, PromptArgument, PromptDefinition, } from './types.js';
11
9
  export { flattenPromptResult, normalizePromptArgs, appendContext } from './utils.js';
12
10
  export type { FlattenedPromptResult } from './utils.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,YAAY,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,YAAY,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAClE,YAAY,EACR,UAAU,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,gBAAgB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,YAAY,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACnF,YAAY,EACR,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,aAAa,GAChB,MAAM,cAAc,CAAC;AACtB,YAAY,EACR,UAAU,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,gBAAgB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,20 +1,18 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
2
  import { PromptManager } from "./prompt-manager.js";
3
3
  import { MCPPromptProvider } from "./providers/mcp-prompt-provider.js";
4
- import { FilePromptProvider } from "./providers/file-prompt-provider.js";
5
- import { StarterPromptProvider } from "./providers/starter-prompt-provider.js";
6
4
  import { CustomPromptProvider } from "./providers/custom-prompt-provider.js";
7
5
  import { PromptError } from "./errors.js";
8
- import { StarterPromptsSchema } from "./schemas.js";
6
+ import { PromptsSchema, InlinePromptSchema, FilePromptSchema } from "./schemas.js";
9
7
  import { flattenPromptResult, normalizePromptArgs, appendContext } from "./utils.js";
10
8
  export {
11
9
  CustomPromptProvider,
12
- FilePromptProvider,
10
+ FilePromptSchema,
11
+ InlinePromptSchema,
13
12
  MCPPromptProvider,
14
13
  PromptError,
15
14
  PromptManager,
16
- StarterPromptProvider,
17
- StarterPromptsSchema,
15
+ PromptsSchema,
18
16
  appendContext,
19
17
  flattenPromptResult,
20
18
  normalizePromptArgs