@bastani/atomic 0.9.11-alpha.2 → 0.9.11-alpha.3

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 (435) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/builtin/cursor/package.json +2 -2
  3. package/dist/builtin/intercom/package.json +1 -1
  4. package/dist/builtin/mcp/package.json +1 -1
  5. package/dist/builtin/subagents/CHANGELOG.md +6 -0
  6. package/dist/builtin/subagents/package.json +1 -1
  7. package/dist/builtin/subagents/src/runs/background/notify.ts +3 -1
  8. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +5 -2
  9. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +2 -1
  10. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +5 -2
  11. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +34 -0
  12. package/dist/builtin/web-access/package.json +1 -1
  13. package/dist/builtin/workflows/package.json +1 -1
  14. package/dist/builtin/workflows/src/extension/ui-surface.ts +4 -0
  15. package/dist/builtin/workflows/src/tui/host-input-form.ts +1 -1
  16. package/dist/cli/args.js +2 -2
  17. package/dist/cli/args.js.map +1 -1
  18. package/dist/cli/config-selector.d.ts +4 -2
  19. package/dist/cli/config-selector.d.ts.map +1 -1
  20. package/dist/cli/config-selector.js +1 -1
  21. package/dist/cli/config-selector.js.map +1 -1
  22. package/dist/cli/startup-ui.d.ts +3 -0
  23. package/dist/cli/startup-ui.d.ts.map +1 -1
  24. package/dist/cli/startup-ui.js +50 -1
  25. package/dist/cli/startup-ui.js.map +1 -1
  26. package/dist/config-command-parser.d.ts +9 -0
  27. package/dist/config-command-parser.d.ts.map +1 -0
  28. package/dist/config-command-parser.js +22 -0
  29. package/dist/config-command-parser.js.map +1 -0
  30. package/dist/config-self-update.d.ts +6 -2
  31. package/dist/config-self-update.d.ts.map +1 -1
  32. package/dist/config-self-update.js +17 -10
  33. package/dist/config-self-update.js.map +1 -1
  34. package/dist/config.d.ts +3 -3
  35. package/dist/config.d.ts.map +1 -1
  36. package/dist/config.js +4 -4
  37. package/dist/config.js.map +1 -1
  38. package/dist/core/agent-session-export.d.ts.map +1 -1
  39. package/dist/core/agent-session-export.js +32 -25
  40. package/dist/core/agent-session-export.js.map +1 -1
  41. package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
  42. package/dist/core/agent-session-extension-bindings.js +9 -3
  43. package/dist/core/agent-session-extension-bindings.js.map +1 -1
  44. package/dist/core/agent-session-prompt.d.ts.map +1 -1
  45. package/dist/core/agent-session-prompt.js +5 -0
  46. package/dist/core/agent-session-prompt.js.map +1 -1
  47. package/dist/core/agent-session-services.d.ts +2 -0
  48. package/dist/core/agent-session-services.d.ts.map +1 -1
  49. package/dist/core/agent-session-services.js +8 -5
  50. package/dist/core/agent-session-services.js.map +1 -1
  51. package/dist/core/agent-session-tree.d.ts.map +1 -1
  52. package/dist/core/agent-session-tree.js +3 -1
  53. package/dist/core/agent-session-tree.js.map +1 -1
  54. package/dist/core/agent-session-types.d.ts +5 -0
  55. package/dist/core/agent-session-types.d.ts.map +1 -1
  56. package/dist/core/agent-session-types.js.map +1 -1
  57. package/dist/core/auth-storage.d.ts +6 -2
  58. package/dist/core/auth-storage.d.ts.map +1 -1
  59. package/dist/core/auth-storage.js +5 -1
  60. package/dist/core/auth-storage.js.map +1 -1
  61. package/dist/core/cache-stats.d.ts +25 -0
  62. package/dist/core/cache-stats.d.ts.map +1 -0
  63. package/dist/core/cache-stats.js +68 -0
  64. package/dist/core/cache-stats.js.map +1 -0
  65. package/dist/core/compaction/branch-summarization.d.ts +2 -1
  66. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  67. package/dist/core/compaction/branch-summarization.js +1 -0
  68. package/dist/core/compaction/branch-summarization.js.map +1 -1
  69. package/dist/core/extensions/agent-events.d.ts +10 -0
  70. package/dist/core/extensions/agent-events.d.ts.map +1 -1
  71. package/dist/core/extensions/agent-events.js.map +1 -1
  72. package/dist/core/extensions/api-types.d.ts +8 -2
  73. package/dist/core/extensions/api-types.d.ts.map +1 -1
  74. package/dist/core/extensions/api-types.js.map +1 -1
  75. package/dist/core/extensions/event-types.d.ts +2 -2
  76. package/dist/core/extensions/event-types.d.ts.map +1 -1
  77. package/dist/core/extensions/event-types.js.map +1 -1
  78. package/dist/core/extensions/index.d.ts +1 -1
  79. package/dist/core/extensions/index.d.ts.map +1 -1
  80. package/dist/core/extensions/index.js.map +1 -1
  81. package/dist/core/extensions/loader-api.d.ts.map +1 -1
  82. package/dist/core/extensions/loader-api.js +13 -2
  83. package/dist/core/extensions/loader-api.js.map +1 -1
  84. package/dist/core/extensions/loader-core.d.ts.map +1 -1
  85. package/dist/core/extensions/loader-core.js +1 -0
  86. package/dist/core/extensions/loader-core.js.map +1 -1
  87. package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
  88. package/dist/core/extensions/loader-runtime.js +15 -7
  89. package/dist/core/extensions/loader-runtime.js.map +1 -1
  90. package/dist/core/extensions/message-types.d.ts +5 -0
  91. package/dist/core/extensions/message-types.d.ts.map +1 -1
  92. package/dist/core/extensions/message-types.js.map +1 -1
  93. package/dist/core/extensions/provider-types.d.ts +46 -0
  94. package/dist/core/extensions/provider-types.d.ts.map +1 -1
  95. package/dist/core/extensions/provider-types.js.map +1 -1
  96. package/dist/core/extensions/runner-registries.d.ts +2 -1
  97. package/dist/core/extensions/runner-registries.d.ts.map +1 -1
  98. package/dist/core/extensions/runner-registries.js +8 -0
  99. package/dist/core/extensions/runner-registries.js.map +1 -1
  100. package/dist/core/extensions/runner.d.ts +5 -2
  101. package/dist/core/extensions/runner.d.ts.map +1 -1
  102. package/dist/core/extensions/runner.js +35 -13
  103. package/dist/core/extensions/runner.js.map +1 -1
  104. package/dist/core/extensions/runtime-types.d.ts +8 -2
  105. package/dist/core/extensions/runtime-types.d.ts.map +1 -1
  106. package/dist/core/extensions/runtime-types.js.map +1 -1
  107. package/dist/core/extensions/ui-types.d.ts +4 -0
  108. package/dist/core/extensions/ui-types.d.ts.map +1 -1
  109. package/dist/core/extensions/ui-types.js.map +1 -1
  110. package/dist/core/http-dispatcher.d.ts +1 -0
  111. package/dist/core/http-dispatcher.d.ts.map +1 -1
  112. package/dist/core/http-dispatcher.js +16 -2
  113. package/dist/core/http-dispatcher.js.map +1 -1
  114. package/dist/core/keybindings.d.ts +6 -1
  115. package/dist/core/keybindings.d.ts.map +1 -1
  116. package/dist/core/keybindings.js +3 -1
  117. package/dist/core/keybindings.js.map +1 -1
  118. package/dist/core/model-registry-auth.d.ts +2 -0
  119. package/dist/core/model-registry-auth.d.ts.map +1 -1
  120. package/dist/core/model-registry-auth.js +18 -1
  121. package/dist/core/model-registry-auth.js.map +1 -1
  122. package/dist/core/model-registry-custom-loader.d.ts.map +1 -1
  123. package/dist/core/model-registry-custom-loader.js +14 -2
  124. package/dist/core/model-registry-custom-loader.js.map +1 -1
  125. package/dist/core/model-registry-dynamic.js +2 -2
  126. package/dist/core/model-registry-dynamic.js.map +1 -1
  127. package/dist/core/model-registry-loader.d.ts.map +1 -1
  128. package/dist/core/model-registry-loader.js +2 -1
  129. package/dist/core/model-registry-loader.js.map +1 -1
  130. package/dist/core/model-registry-schemas.d.ts +17 -0
  131. package/dist/core/model-registry-schemas.d.ts.map +1 -1
  132. package/dist/core/model-registry-schemas.js +2 -0
  133. package/dist/core/model-registry-schemas.js.map +1 -1
  134. package/dist/core/model-registry-types.d.ts +10 -1
  135. package/dist/core/model-registry-types.d.ts.map +1 -1
  136. package/dist/core/model-registry-types.js.map +1 -1
  137. package/dist/core/model-registry.d.ts +26 -36
  138. package/dist/core/model-registry.d.ts.map +1 -1
  139. package/dist/core/model-registry.js +72 -67
  140. package/dist/core/model-registry.js.map +1 -1
  141. package/dist/core/model-resolver-defaults.d.ts.map +1 -1
  142. package/dist/core/model-resolver-defaults.js +3 -0
  143. package/dist/core/model-resolver-defaults.js.map +1 -1
  144. package/dist/core/model-runtime.d.ts +52 -0
  145. package/dist/core/model-runtime.d.ts.map +1 -0
  146. package/dist/core/model-runtime.js +120 -0
  147. package/dist/core/model-runtime.js.map +1 -0
  148. package/dist/core/oauth-provider-bridge.d.ts +3 -1
  149. package/dist/core/oauth-provider-bridge.d.ts.map +1 -1
  150. package/dist/core/oauth-provider-bridge.js +6 -4
  151. package/dist/core/oauth-provider-bridge.js.map +1 -1
  152. package/dist/core/package-manager-resolver.js +22 -11
  153. package/dist/core/package-manager-resolver.js.map +1 -1
  154. package/dist/core/package-manager-resource-collector.d.ts.map +1 -1
  155. package/dist/core/package-manager-resource-collector.js +8 -2
  156. package/dist/core/package-manager-resource-collector.js.map +1 -1
  157. package/dist/core/package-manager-resource-patterns.d.ts +1 -0
  158. package/dist/core/package-manager-resource-patterns.d.ts.map +1 -1
  159. package/dist/core/package-manager-resource-patterns.js +15 -0
  160. package/dist/core/package-manager-resource-patterns.js.map +1 -1
  161. package/dist/core/package-manager-source.d.ts.map +1 -1
  162. package/dist/core/package-manager-source.js +15 -8
  163. package/dist/core/package-manager-source.js.map +1 -1
  164. package/dist/core/package-manager-types.d.ts +1 -0
  165. package/dist/core/package-manager-types.d.ts.map +1 -1
  166. package/dist/core/package-manager-types.js.map +1 -1
  167. package/dist/core/provider-display-names.d.ts.map +1 -1
  168. package/dist/core/provider-display-names.js +4 -0
  169. package/dist/core/provider-display-names.js.map +1 -1
  170. package/dist/core/resource-loader-core.d.ts.map +1 -1
  171. package/dist/core/resource-loader-core.js.map +1 -1
  172. package/dist/core/resource-loader-extensions.d.ts.map +1 -1
  173. package/dist/core/resource-loader-extensions.js +5 -2
  174. package/dist/core/resource-loader-extensions.js.map +1 -1
  175. package/dist/core/resource-loader-helpers.d.ts.map +1 -1
  176. package/dist/core/resource-loader-helpers.js +1 -0
  177. package/dist/core/resource-loader-helpers.js.map +1 -1
  178. package/dist/core/resource-loader-internals.d.ts +2 -2
  179. package/dist/core/resource-loader-internals.d.ts.map +1 -1
  180. package/dist/core/resource-loader-internals.js.map +1 -1
  181. package/dist/core/resource-loader-types.d.ts +3 -3
  182. package/dist/core/resource-loader-types.d.ts.map +1 -1
  183. package/dist/core/resource-loader-types.js.map +1 -1
  184. package/dist/core/sdk-exports.d.ts +1 -1
  185. package/dist/core/sdk-exports.d.ts.map +1 -1
  186. package/dist/core/sdk-exports.js.map +1 -1
  187. package/dist/core/sdk-types.d.ts +3 -0
  188. package/dist/core/sdk-types.d.ts.map +1 -1
  189. package/dist/core/sdk-types.js.map +1 -1
  190. package/dist/core/sdk.js +6 -2
  191. package/dist/core/sdk.js.map +1 -1
  192. package/dist/core/session-manager-core.d.ts +1 -1
  193. package/dist/core/session-manager-core.d.ts.map +1 -1
  194. package/dist/core/session-manager-core.js +2 -2
  195. package/dist/core/session-manager-core.js.map +1 -1
  196. package/dist/core/session-manager-entries.d.ts +2 -2
  197. package/dist/core/session-manager-entries.d.ts.map +1 -1
  198. package/dist/core/session-manager-entries.js +2 -1
  199. package/dist/core/session-manager-entries.js.map +1 -1
  200. package/dist/core/session-manager-history.d.ts +5 -0
  201. package/dist/core/session-manager-history.d.ts.map +1 -1
  202. package/dist/core/session-manager-history.js +33 -0
  203. package/dist/core/session-manager-history.js.map +1 -1
  204. package/dist/core/session-manager-types.d.ts +4 -2
  205. package/dist/core/session-manager-types.d.ts.map +1 -1
  206. package/dist/core/session-manager-types.js.map +1 -1
  207. package/dist/core/session-manager.d.ts +1 -1
  208. package/dist/core/session-manager.d.ts.map +1 -1
  209. package/dist/core/session-manager.js +1 -1
  210. package/dist/core/session-manager.js.map +1 -1
  211. package/dist/core/settings-manager-basic-accessors.d.ts +7 -0
  212. package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
  213. package/dist/core/settings-manager-basic-accessors.js +35 -0
  214. package/dist/core/settings-manager-basic-accessors.js.map +1 -1
  215. package/dist/core/settings-manager-resource-accessors.d.ts +3 -0
  216. package/dist/core/settings-manager-resource-accessors.d.ts.map +1 -1
  217. package/dist/core/settings-manager-resource-accessors.js +16 -0
  218. package/dist/core/settings-manager-resource-accessors.js.map +1 -1
  219. package/dist/core/settings-types.d.ts +8 -2
  220. package/dist/core/settings-types.d.ts.map +1 -1
  221. package/dist/core/settings-types.js.map +1 -1
  222. package/dist/core/slash-commands.d.ts +1 -0
  223. package/dist/core/slash-commands.d.ts.map +1 -1
  224. package/dist/core/slash-commands.js +1 -1
  225. package/dist/core/slash-commands.js.map +1 -1
  226. package/dist/core/usage-totals.d.ts +18 -0
  227. package/dist/core/usage-totals.d.ts.map +1 -0
  228. package/dist/core/usage-totals.js +40 -0
  229. package/dist/core/usage-totals.js.map +1 -0
  230. package/dist/extensions/index.d.ts +3 -0
  231. package/dist/extensions/index.d.ts.map +1 -0
  232. package/dist/extensions/index.js +5 -0
  233. package/dist/extensions/index.js.map +1 -0
  234. package/dist/extensions/llama/client.d.ts +61 -0
  235. package/dist/extensions/llama/client.d.ts.map +1 -0
  236. package/dist/extensions/llama/client.js +300 -0
  237. package/dist/extensions/llama/client.js.map +1 -0
  238. package/dist/extensions/llama/huggingface-ui.d.ts +33 -0
  239. package/dist/extensions/llama/huggingface-ui.d.ts.map +1 -0
  240. package/dist/extensions/llama/huggingface-ui.js +166 -0
  241. package/dist/extensions/llama/huggingface-ui.js.map +1 -0
  242. package/dist/extensions/llama/huggingface.d.ts +23 -0
  243. package/dist/extensions/llama/huggingface.d.ts.map +1 -0
  244. package/dist/extensions/llama/huggingface.js +139 -0
  245. package/dist/extensions/llama/huggingface.js.map +1 -0
  246. package/dist/extensions/llama/index.d.ts +3 -0
  247. package/dist/extensions/llama/index.d.ts.map +1 -0
  248. package/dist/extensions/llama/index.js +208 -0
  249. package/dist/extensions/llama/index.js.map +1 -0
  250. package/dist/extensions/llama/provider.d.ts +11 -0
  251. package/dist/extensions/llama/provider.d.ts.map +1 -0
  252. package/dist/extensions/llama/provider.js +93 -0
  253. package/dist/extensions/llama/provider.js.map +1 -0
  254. package/dist/extensions/llama/ui.d.ts +42 -0
  255. package/dist/extensions/llama/ui.d.ts.map +1 -0
  256. package/dist/extensions/llama/ui.js +237 -0
  257. package/dist/extensions/llama/ui.js.map +1 -0
  258. package/dist/index-extensions.d.ts +1 -1
  259. package/dist/index-extensions.d.ts.map +1 -1
  260. package/dist/index-extensions.js.map +1 -1
  261. package/dist/index.d.ts +4 -3
  262. package/dist/index.d.ts.map +1 -1
  263. package/dist/index.js +4 -3
  264. package/dist/index.js.map +1 -1
  265. package/dist/main-first-time-setup.d.ts +6 -0
  266. package/dist/main-first-time-setup.d.ts.map +1 -0
  267. package/dist/main-first-time-setup.js +10 -0
  268. package/dist/main-first-time-setup.js.map +1 -0
  269. package/dist/main-types.d.ts +2 -2
  270. package/dist/main-types.d.ts.map +1 -1
  271. package/dist/main-types.js.map +1 -1
  272. package/dist/main.d.ts.map +1 -1
  273. package/dist/main.js +17 -7
  274. package/dist/main.js.map +1 -1
  275. package/dist/modes/interactive/chat-input-actions.d.ts.map +1 -1
  276. package/dist/modes/interactive/chat-input-actions.js +14 -2
  277. package/dist/modes/interactive/chat-input-actions.js.map +1 -1
  278. package/dist/modes/interactive/components/config-selector-list.d.ts +6 -6
  279. package/dist/modes/interactive/components/config-selector-list.d.ts.map +1 -1
  280. package/dist/modes/interactive/components/config-selector-list.js +64 -125
  281. package/dist/modes/interactive/components/config-selector-list.js.map +1 -1
  282. package/dist/modes/interactive/components/config-selector-project-scope.d.ts +4 -0
  283. package/dist/modes/interactive/components/config-selector-project-scope.d.ts.map +1 -0
  284. package/dist/modes/interactive/components/config-selector-project-scope.js +61 -0
  285. package/dist/modes/interactive/components/config-selector-project-scope.js.map +1 -0
  286. package/dist/modes/interactive/components/config-selector.d.ts +8 -5
  287. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  288. package/dist/modes/interactive/components/config-selector.js +46 -22
  289. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  290. package/dist/modes/interactive/components/custom-entry.d.ts +16 -0
  291. package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -0
  292. package/dist/modes/interactive/components/custom-entry.js +45 -0
  293. package/dist/modes/interactive/components/custom-entry.js.map +1 -0
  294. package/dist/modes/interactive/components/first-time-setup.d.ts +24 -0
  295. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -0
  296. package/dist/modes/interactive/components/first-time-setup.js +69 -0
  297. package/dist/modes/interactive/components/first-time-setup.js.map +1 -0
  298. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  299. package/dist/modes/interactive/components/footer.js +46 -24
  300. package/dist/modes/interactive/components/footer.js.map +1 -1
  301. package/dist/modes/interactive/components/host-input-form.d.ts +2 -0
  302. package/dist/modes/interactive/components/host-input-form.d.ts.map +1 -1
  303. package/dist/modes/interactive/components/host-input-form.js +6 -3
  304. package/dist/modes/interactive/components/host-input-form.js.map +1 -1
  305. package/dist/modes/interactive/components/idle-status.d.ts +8 -0
  306. package/dist/modes/interactive/components/idle-status.d.ts.map +1 -0
  307. package/dist/modes/interactive/components/idle-status.js +13 -0
  308. package/dist/modes/interactive/components/idle-status.js.map +1 -0
  309. package/dist/modes/interactive/components/index.d.ts +3 -0
  310. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  311. package/dist/modes/interactive/components/index.js +3 -0
  312. package/dist/modes/interactive/components/index.js.map +1 -1
  313. package/dist/modes/interactive/components/login-dialog.d.ts +5 -5
  314. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  315. package/dist/modes/interactive/components/login-dialog.js +14 -6
  316. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  317. package/dist/modes/interactive/components/oauth-selector.d.ts +1 -1
  318. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  319. package/dist/modes/interactive/components/oauth-selector.js +10 -6
  320. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  321. package/dist/modes/interactive/components/settings-selector-handlers.d.ts.map +1 -1
  322. package/dist/modes/interactive/components/settings-selector-handlers.js +6 -0
  323. package/dist/modes/interactive/components/settings-selector-handlers.js.map +1 -1
  324. package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
  325. package/dist/modes/interactive/components/settings-selector-items.js +14 -0
  326. package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
  327. package/dist/modes/interactive/components/settings-selector-types.d.ts +4 -0
  328. package/dist/modes/interactive/components/settings-selector-types.d.ts.map +1 -1
  329. package/dist/modes/interactive/components/settings-selector-types.js.map +1 -1
  330. package/dist/modes/interactive/interactive-agent-events.js +21 -0
  331. package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
  332. package/dist/modes/interactive/interactive-auth-login.js +17 -8
  333. package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
  334. package/dist/modes/interactive/interactive-auth-routing.d.ts +2 -0
  335. package/dist/modes/interactive/interactive-auth-routing.d.ts.map +1 -1
  336. package/dist/modes/interactive/interactive-auth-routing.js +88 -40
  337. package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
  338. package/dist/modes/interactive/interactive-autocomplete.js +6 -0
  339. package/dist/modes/interactive/interactive-autocomplete.js.map +1 -1
  340. package/dist/modes/interactive/interactive-extension-runtime.js +4 -0
  341. package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
  342. package/dist/modes/interactive/interactive-global-clear.d.ts +10 -2
  343. package/dist/modes/interactive/interactive-global-clear.d.ts.map +1 -1
  344. package/dist/modes/interactive/interactive-global-clear.js +3 -1
  345. package/dist/modes/interactive/interactive-global-clear.js.map +1 -1
  346. package/dist/modes/interactive/interactive-input-handling.js +6 -4
  347. package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
  348. package/dist/modes/interactive/interactive-mode-helpers.d.ts +2 -1
  349. package/dist/modes/interactive/interactive-mode-helpers.d.ts.map +1 -1
  350. package/dist/modes/interactive/interactive-mode-helpers.js +6 -10
  351. package/dist/modes/interactive/interactive-mode-helpers.js.map +1 -1
  352. package/dist/modes/interactive/interactive-mode-surface.d.ts +11 -2
  353. package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
  354. package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
  355. package/dist/modes/interactive/interactive-render-chat.js +69 -12
  356. package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
  357. package/dist/modes/interactive/interactive-resource-rendering.js +1 -1
  358. package/dist/modes/interactive/interactive-resource-rendering.js.map +1 -1
  359. package/dist/modes/interactive/interactive-selectors.js +10 -0
  360. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  361. package/dist/modes/interactive/interactive-session-routing.js +3 -0
  362. package/dist/modes/interactive/interactive-session-routing.js.map +1 -1
  363. package/dist/modes/interactive/interactive-slash-commands.js +14 -0
  364. package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
  365. package/dist/modes/interactive/login-provider-options.d.ts +21 -0
  366. package/dist/modes/interactive/login-provider-options.d.ts.map +1 -0
  367. package/dist/modes/interactive/login-provider-options.js +51 -0
  368. package/dist/modes/interactive/login-provider-options.js.map +1 -0
  369. package/dist/modes/interactive-engine/engine-input-form.d.ts +1 -1
  370. package/dist/modes/interactive-engine/engine-input-form.d.ts.map +1 -1
  371. package/dist/modes/interactive-engine/engine-input-form.js +10 -2
  372. package/dist/modes/interactive-engine/engine-input-form.js.map +1 -1
  373. package/dist/modes/interactive-engine/input-form-host.d.ts.map +1 -1
  374. package/dist/modes/interactive-engine/input-form-host.js +7 -2
  375. package/dist/modes/interactive-engine/input-form-host.js.map +1 -1
  376. package/dist/modes/interactive-engine/isolated-runtime.js +1 -1
  377. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  378. package/dist/modes/interactive-engine/protocol.d.ts +5 -0
  379. package/dist/modes/interactive-engine/protocol.d.ts.map +1 -1
  380. package/dist/modes/interactive-engine/protocol.js +9 -1
  381. package/dist/modes/interactive-engine/protocol.js.map +1 -1
  382. package/dist/modes/interactive-engine/remote-model-catalog.d.ts +2 -0
  383. package/dist/modes/interactive-engine/remote-model-catalog.d.ts.map +1 -1
  384. package/dist/modes/interactive-engine/remote-model-catalog.js +33 -0
  385. package/dist/modes/interactive-engine/remote-model-catalog.js.map +1 -1
  386. package/dist/modes/rpc/rpc-client-api.d.ts +3 -1
  387. package/dist/modes/rpc/rpc-client-api.d.ts.map +1 -1
  388. package/dist/modes/rpc/rpc-client-api.js +15 -0
  389. package/dist/modes/rpc/rpc-client-api.js.map +1 -1
  390. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  391. package/dist/modes/rpc/rpc-client.js +1 -0
  392. package/dist/modes/rpc/rpc-client.js.map +1 -1
  393. package/dist/modes/rpc/rpc-command-handler.d.ts +5 -1
  394. package/dist/modes/rpc/rpc-command-handler.d.ts.map +1 -1
  395. package/dist/modes/rpc/rpc-command-handler.js +62 -2
  396. package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
  397. package/dist/modes/rpc/rpc-input-scheduler.d.ts.map +1 -1
  398. package/dist/modes/rpc/rpc-input-scheduler.js +1 -0
  399. package/dist/modes/rpc/rpc-input-scheduler.js.map +1 -1
  400. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  401. package/dist/modes/rpc/rpc-mode.js +1 -0
  402. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  403. package/dist/modes/rpc/rpc-types.d.ts +31 -0
  404. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  405. package/dist/modes/rpc/rpc-types.js.map +1 -1
  406. package/dist/package-manager-cli.d.ts +3 -3
  407. package/dist/package-manager-cli.d.ts.map +1 -1
  408. package/dist/package-manager-cli.js +55 -51
  409. package/dist/package-manager-cli.js.map +1 -1
  410. package/dist/self-update-plan.d.ts +12 -0
  411. package/dist/self-update-plan.d.ts.map +1 -0
  412. package/dist/self-update-plan.js +42 -0
  413. package/dist/self-update-plan.js.map +1 -0
  414. package/dist/utils/clipboard-native.d.ts +1 -0
  415. package/dist/utils/clipboard-native.d.ts.map +1 -1
  416. package/dist/utils/clipboard-native.js.map +1 -1
  417. package/dist/utils/clipboard.d.ts +3 -0
  418. package/dist/utils/clipboard.d.ts.map +1 -1
  419. package/dist/utils/clipboard.js +10 -0
  420. package/dist/utils/clipboard.js.map +1 -1
  421. package/dist/utils/version-check.d.ts +1 -0
  422. package/dist/utils/version-check.d.ts.map +1 -1
  423. package/dist/utils/version-check.js +3 -3
  424. package/dist/utils/version-check.js.map +1 -1
  425. package/docs/docs.json +2 -1
  426. package/docs/extensions.md +56 -4
  427. package/docs/keybindings.md +3 -0
  428. package/docs/llama-cpp.md +70 -0
  429. package/docs/models.md +8 -3
  430. package/docs/packages.md +4 -2
  431. package/docs/providers.md +37 -3
  432. package/docs/sdk.md +18 -0
  433. package/docs/settings.md +19 -3
  434. package/npm-shrinkwrap.json +23 -23
  435. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-resource-patterns.js","sourceRoot":"","sources":["../../src/core/package-manager-resource-patterns.ts"],"names":[],"mappings":"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","sourcesContent":["import { basename, dirname, relative, sep } from \"node:path\";\nimport { minimatch } from \"minimatch\";\n\nexport function toPosixPath(p: string): string {\n\treturn p.split(sep).join(\"/\");\n}\n\nexport function isPattern(s: string): boolean {\n\treturn s.startsWith(\"!\") || s.startsWith(\"+\") || s.startsWith(\"-\") || s.includes(\"*\") || s.includes(\"?\");\n}\n\nexport function isOverridePattern(s: string): boolean {\n\treturn s.startsWith(\"!\") || s.startsWith(\"+\") || s.startsWith(\"-\");\n}\n\nexport function hasGlobPattern(s: string): boolean {\n\treturn s.includes(\"*\") || s.includes(\"?\");\n}\n\nexport function splitPatterns(entries: string[]): { plain: string[]; patterns: string[] } {\n\tconst plain: string[] = [];\n\tconst patterns: string[] = [];\n\tfor (const entry of entries) {\n\t\tif (isPattern(entry)) {\n\t\t\tpatterns.push(entry);\n\t\t} else {\n\t\t\tplain.push(entry);\n\t\t}\n\t}\n\treturn { plain, patterns };\n}\n\nexport function matchesAnyPattern(filePath: string, patterns: string[], baseDir: string): boolean {\n\tconst rel = toPosixPath(relative(baseDir, filePath));\n\tconst name = basename(filePath);\n\tconst filePathPosix = toPosixPath(filePath);\n\tconst isSkillFile = name === \"SKILL.md\";\n\tconst parentDir = isSkillFile ? dirname(filePath) : undefined;\n\tconst parentRel = isSkillFile ? toPosixPath(relative(baseDir, parentDir!)) : undefined;\n\tconst parentName = isSkillFile ? basename(parentDir!) : undefined;\n\tconst parentDirPosix = isSkillFile ? toPosixPath(parentDir!) : undefined;\n\n\treturn patterns.some((pattern) => {\n\t\tconst normalizedPattern = toPosixPath(pattern);\n\t\tif (\n\t\t\tminimatch(rel, normalizedPattern) ||\n\t\t\tminimatch(name, normalizedPattern) ||\n\t\t\tminimatch(filePathPosix, normalizedPattern)\n\t\t) {\n\t\t\treturn true;\n\t\t}\n\t\tif (!isSkillFile) return false;\n\t\treturn (\n\t\t\tminimatch(parentRel!, normalizedPattern) ||\n\t\t\tminimatch(parentName!, normalizedPattern) ||\n\t\t\tminimatch(parentDirPosix!, normalizedPattern)\n\t\t);\n\t});\n}\n\nfunction normalizeExactPattern(pattern: string): string {\n\tconst normalized = pattern.startsWith(\"./\") || pattern.startsWith(\".\\\\\") ? pattern.slice(2) : pattern;\n\treturn toPosixPath(normalized);\n}\n\nfunction matchesAnyExactPattern(filePath: string, patterns: string[], baseDir: string): boolean {\n\tif (patterns.length === 0) return false;\n\tconst rel = toPosixPath(relative(baseDir, filePath));\n\tconst name = basename(filePath);\n\tconst filePathPosix = toPosixPath(filePath);\n\tconst isSkillFile = name === \"SKILL.md\";\n\tconst parentDir = isSkillFile ? dirname(filePath) : undefined;\n\tconst parentRel = isSkillFile ? toPosixPath(relative(baseDir, parentDir!)) : undefined;\n\tconst parentDirPosix = isSkillFile ? toPosixPath(parentDir!) : undefined;\n\n\treturn patterns.some((pattern) => {\n\t\tconst normalized = normalizeExactPattern(pattern);\n\t\tif (normalized === rel || normalized === filePathPosix) {\n\t\t\treturn true;\n\t\t}\n\t\tif (!isSkillFile) return false;\n\t\treturn normalized === parentRel || normalized === parentDirPosix;\n\t});\n}\n\nfunction getOverridePatterns(entries: string[]): string[] {\n\treturn entries.filter((pattern) => pattern.startsWith(\"!\") || pattern.startsWith(\"+\") || pattern.startsWith(\"-\"));\n}\n\nexport function isEnabledByOverrides(filePath: string, patterns: string[], baseDir: string): boolean {\n\tconst overrides = getOverridePatterns(patterns);\n\tconst excludes = overrides.filter((pattern) => pattern.startsWith(\"!\")).map((pattern) => pattern.slice(1));\n\tconst forceIncludes = overrides.filter((pattern) => pattern.startsWith(\"+\")).map((pattern) => pattern.slice(1));\n\tconst forceExcludes = overrides.filter((pattern) => pattern.startsWith(\"-\")).map((pattern) => pattern.slice(1));\n\n\tlet enabled = true;\n\tif (excludes.length > 0 && matchesAnyPattern(filePath, excludes, baseDir)) {\n\t\tenabled = false;\n\t}\n\tif (forceIncludes.length > 0 && matchesAnyExactPattern(filePath, forceIncludes, baseDir)) {\n\t\tenabled = true;\n\t}\n\tif (forceExcludes.length > 0 && matchesAnyExactPattern(filePath, forceExcludes, baseDir)) {\n\t\tenabled = false;\n\t}\n\treturn enabled;\n}\n\nexport function applyPatterns(allPaths: string[], patterns: string[], baseDir: string): Set<string> {\n\tconst includes: string[] = [];\n\tconst excludes: string[] = [];\n\tconst forceIncludes: string[] = [];\n\tconst forceExcludes: string[] = [];\n\n\tfor (const p of patterns) {\n\t\tif (p.startsWith(\"+\")) {\n\t\t\tforceIncludes.push(p.slice(1));\n\t\t} else if (p.startsWith(\"-\")) {\n\t\t\tforceExcludes.push(p.slice(1));\n\t\t} else if (p.startsWith(\"!\")) {\n\t\t\texcludes.push(p.slice(1));\n\t\t} else {\n\t\t\tincludes.push(p);\n\t\t}\n\t}\n\n\tlet result: string[];\n\tif (includes.length === 0) {\n\t\tresult = [...allPaths];\n\t} else {\n\t\tresult = allPaths.filter((filePath) => matchesAnyPattern(filePath, includes, baseDir));\n\t}\n\tif (excludes.length > 0) {\n\t\tresult = result.filter((filePath) => !matchesAnyPattern(filePath, excludes, baseDir));\n\t}\n\tif (forceIncludes.length > 0) {\n\t\tfor (const filePath of allPaths) {\n\t\t\tif (!result.includes(filePath) && matchesAnyExactPattern(filePath, forceIncludes, baseDir)) {\n\t\t\t\tresult.push(filePath);\n\t\t\t}\n\t\t}\n\t}\n\tif (forceExcludes.length > 0) {\n\t\tresult = result.filter((filePath) => !matchesAnyExactPattern(filePath, forceExcludes, baseDir));\n\t}\n\n\treturn new Set(result);\n}\n"]}
1
+ {"version":3,"file":"package-manager-resource-patterns.js","sourceRoot":"","sources":["../../src/core/package-manager-resource-patterns.ts"],"names":[],"mappings":"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","sourcesContent":["import { basename, dirname, relative, sep } from \"node:path\";\nimport { minimatch } from \"minimatch\";\n\nexport function toPosixPath(p: string): string {\n\treturn p.split(sep).join(\"/\");\n}\n\nexport function isPattern(s: string): boolean {\n\treturn s.startsWith(\"!\") || s.startsWith(\"+\") || s.startsWith(\"-\") || s.includes(\"*\") || s.includes(\"?\");\n}\n\nexport function isOverridePattern(s: string): boolean {\n\treturn s.startsWith(\"!\") || s.startsWith(\"+\") || s.startsWith(\"-\");\n}\n\nexport function hasGlobPattern(s: string): boolean {\n\treturn s.includes(\"*\") || s.includes(\"?\");\n}\n\nexport function splitPatterns(entries: string[]): { plain: string[]; patterns: string[] } {\n\tconst plain: string[] = [];\n\tconst patterns: string[] = [];\n\tfor (const entry of entries) {\n\t\tif (isPattern(entry)) {\n\t\t\tpatterns.push(entry);\n\t\t} else {\n\t\t\tplain.push(entry);\n\t\t}\n\t}\n\treturn { plain, patterns };\n}\n\nexport function matchesAnyPattern(filePath: string, patterns: string[], baseDir: string): boolean {\n\tconst rel = toPosixPath(relative(baseDir, filePath));\n\tconst name = basename(filePath);\n\tconst filePathPosix = toPosixPath(filePath);\n\tconst isSkillFile = name === \"SKILL.md\";\n\tconst parentDir = isSkillFile ? dirname(filePath) : undefined;\n\tconst parentRel = isSkillFile ? toPosixPath(relative(baseDir, parentDir!)) : undefined;\n\tconst parentName = isSkillFile ? basename(parentDir!) : undefined;\n\tconst parentDirPosix = isSkillFile ? toPosixPath(parentDir!) : undefined;\n\n\treturn patterns.some((pattern) => {\n\t\tconst normalizedPattern = toPosixPath(pattern);\n\t\tif (\n\t\t\tminimatch(rel, normalizedPattern) ||\n\t\t\tminimatch(name, normalizedPattern) ||\n\t\t\tminimatch(filePathPosix, normalizedPattern)\n\t\t) {\n\t\t\treturn true;\n\t\t}\n\t\tif (!isSkillFile) return false;\n\t\treturn (\n\t\t\tminimatch(parentRel!, normalizedPattern) ||\n\t\t\tminimatch(parentName!, normalizedPattern) ||\n\t\t\tminimatch(parentDirPosix!, normalizedPattern)\n\t\t);\n\t});\n}\n\nfunction normalizeExactPattern(pattern: string): string {\n\tconst normalized = pattern.startsWith(\"./\") || pattern.startsWith(\".\\\\\") ? pattern.slice(2) : pattern;\n\treturn toPosixPath(normalized);\n}\n\nfunction matchesAnyExactPattern(filePath: string, patterns: string[], baseDir: string): boolean {\n\tif (patterns.length === 0) return false;\n\tconst rel = toPosixPath(relative(baseDir, filePath));\n\tconst name = basename(filePath);\n\tconst filePathPosix = toPosixPath(filePath);\n\tconst isSkillFile = name === \"SKILL.md\";\n\tconst parentDir = isSkillFile ? dirname(filePath) : undefined;\n\tconst parentRel = isSkillFile ? toPosixPath(relative(baseDir, parentDir!)) : undefined;\n\tconst parentDirPosix = isSkillFile ? toPosixPath(parentDir!) : undefined;\n\n\treturn patterns.some((pattern) => {\n\t\tconst normalized = normalizeExactPattern(pattern);\n\t\tif (normalized === rel || normalized === filePathPosix) {\n\t\t\treturn true;\n\t\t}\n\t\tif (!isSkillFile) return false;\n\t\treturn normalized === parentRel || normalized === parentDirPosix;\n\t});\n}\n\nfunction getOverridePatterns(entries: string[]): string[] {\n\treturn entries.filter((pattern) => pattern.startsWith(\"!\") || pattern.startsWith(\"+\") || pattern.startsWith(\"-\"));\n}\n\nexport function isEnabledByOverrides(filePath: string, patterns: string[], baseDir: string): boolean {\n\tconst overrides = getOverridePatterns(patterns);\n\tconst excludes = overrides.filter((pattern) => pattern.startsWith(\"!\")).map((pattern) => pattern.slice(1));\n\tconst forceIncludes = overrides.filter((pattern) => pattern.startsWith(\"+\")).map((pattern) => pattern.slice(1));\n\tconst forceExcludes = overrides.filter((pattern) => pattern.startsWith(\"-\")).map((pattern) => pattern.slice(1));\n\n\tlet enabled = true;\n\tif (excludes.length > 0 && matchesAnyPattern(filePath, excludes, baseDir)) {\n\t\tenabled = false;\n\t}\n\tif (forceIncludes.length > 0 && matchesAnyExactPattern(filePath, forceIncludes, baseDir)) {\n\t\tenabled = true;\n\t}\n\tif (forceExcludes.length > 0 && matchesAnyExactPattern(filePath, forceExcludes, baseDir)) {\n\t\tenabled = false;\n\t}\n\treturn enabled;\n}\n\nexport function applyPatterns(allPaths: string[], patterns: string[], baseDir: string): Set<string> {\n\tconst includes: string[] = [];\n\tconst excludes: string[] = [];\n\tconst forceIncludes: string[] = [];\n\tconst forceExcludes: string[] = [];\n\n\tfor (const p of patterns) {\n\t\tif (p.startsWith(\"+\")) {\n\t\t\tforceIncludes.push(p.slice(1));\n\t\t} else if (p.startsWith(\"-\")) {\n\t\t\tforceExcludes.push(p.slice(1));\n\t\t} else if (p.startsWith(\"!\")) {\n\t\t\texcludes.push(p.slice(1));\n\t\t} else {\n\t\t\tincludes.push(p);\n\t\t}\n\t}\n\n\tlet result: string[];\n\tif (includes.length === 0) {\n\t\tresult = [...allPaths];\n\t} else {\n\t\tresult = allPaths.filter((filePath) => matchesAnyPattern(filePath, includes, baseDir));\n\t}\n\tif (excludes.length > 0) {\n\t\tresult = result.filter((filePath) => !matchesAnyPattern(filePath, excludes, baseDir));\n\t}\n\tif (forceIncludes.length > 0) {\n\t\tfor (const filePath of allPaths) {\n\t\t\tif (!result.includes(filePath) && matchesAnyExactPattern(filePath, forceIncludes, baseDir)) {\n\t\t\t\tresult.push(filePath);\n\t\t\t}\n\t\t}\n\t}\n\tif (forceExcludes.length > 0) {\n\t\tresult = result.filter((filePath) => !matchesAnyExactPattern(filePath, forceExcludes, baseDir));\n\t}\n\n\treturn new Set(result);\n}\n\nexport function applyAutoloadDisabledPatterns(\n\tallPaths: string[],\n\tpatterns: string[],\n\tbaseDir: string,\n): Map<string, boolean> {\n\tconst result = new Map<string, boolean>();\n\tfor (const pattern of patterns) {\n\t\tconst prefixed = pattern.startsWith(\"+\") || pattern.startsWith(\"-\") || pattern.startsWith(\"!\");\n\t\tconst target = prefixed ? pattern.slice(1) : pattern;\n\t\tconst enabled = !pattern.startsWith(\"-\") && !pattern.startsWith(\"!\");\n\t\tconst exact = pattern.startsWith(\"+\") || pattern.startsWith(\"-\");\n\t\tfor (const filePath of allPaths) {\n\t\t\tif (exact ? matchesAnyExactPattern(filePath, [target], baseDir) : matchesAnyPattern(filePath, [target], baseDir)) {\n\t\t\t\tresult.set(filePath, enabled);\n\t\t\t}\n\t\t}\n\t}\n\treturn result;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-source.d.ts","sourceRoot":"","sources":["../../src/core/package-manager-source.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAU3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAS7E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAwBxD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAEjE;AA6BD,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,aAAa,EACvB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,WAAW,GAChB,OAAO,CAIT;AAED,wBAAgB,iCAAiC,CAChD,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,WAAW,GAChB,MAAM,CASR;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,MAAM,CAa9G;AAED,wBAAgB,cAAc,CAC7B,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,GACzD,KAAK,CAAC;IAAE,GAAG,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,CAenD;AAED,wBAAgB,6BAA6B,CAC5C,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,aAAa,EAAE,GACjC,MAAM,CAMR;AA+BD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAIrG"}
1
+ {"version":3,"file":"package-manager-source.d.ts","sourceRoot":"","sources":["../../src/core/package-manager-source.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAU3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAS7E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAwBxD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAEjE;AA6BD,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,aAAa,EACvB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,WAAW,GAChB,OAAO,CAIT;AAED,wBAAgB,iCAAiC,CAChD,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,WAAW,GAChB,MAAM,CASR;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,MAAM,CAa9G;AAED,wBAAgB,cAAc,CAC7B,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,GACzD,KAAK,CAAC;IAAE,GAAG,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAC,CAmBnD;AAED,wBAAgB,6BAA6B,CAC5C,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,aAAa,EAAE,GACjC,MAAM,CAMR;AA+BD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAIrG"}
@@ -95,19 +95,26 @@ export function getPackageIdentity(context, source, scope) {
95
95
  return `local:${resolveManagerPath(context, parsed.path)}`;
96
96
  }
97
97
  export function dedupePackages(context, packages) {
98
+ const result = [];
98
99
  const seen = new Map();
99
100
  for (const entry of packages) {
100
- const sourceStr = getPackageSourceString(entry.pkg);
101
- const identity = getPackageIdentity(context, sourceStr, entry.scope);
102
- const existing = seen.get(identity);
103
- if (!existing) {
104
- seen.set(identity, entry);
101
+ const identity = getPackageIdentity(context, getPackageSourceString(entry.pkg), entry.scope);
102
+ const index = seen.get(identity);
103
+ if (index === undefined) {
104
+ seen.set(identity, result.length);
105
+ result.push(entry);
106
+ continue;
107
+ }
108
+ const existing = result[index];
109
+ if (existing?.scope === "project" && entry.scope === "user") {
110
+ if (typeof existing.pkg === "object" && existing.pkg.autoload === false)
111
+ result.push(entry);
105
112
  }
106
- else if (entry.scope === "project" && existing.scope === "user") {
107
- seen.set(identity, entry);
113
+ else if (entry.scope === "project") {
114
+ result[index] = entry;
108
115
  }
109
116
  }
110
- return Array.from(seen.values());
117
+ return result;
111
118
  }
112
119
  export function buildNoMatchingPackageMessage(context, source, configuredPackages) {
113
120
  const suggestion = findSuggestedConfiguredSource(context, source, configuredPackages);
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-source.js","sourceRoot":"","sources":["../../src/core/package-manager-source.ts"],"names":[],"mappings":"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","sourcesContent":["import { relative } from \"node:path\";\nimport { valid, validRange } from \"semver\";\nimport { isLocalPath } from \"../utils/paths.ts\";\nimport { parseGitUrl } from \"../utils/git.ts\";\nimport { getBaseDirForScope, resolveManagerPath, resolvePathFromBase } from \"./package-manager-paths.ts\";\nimport type { PackageManagerContext, ParsedSource, SourceScope } from \"./package-manager-types.ts\";\nimport type { PackageSource } from \"./settings-manager.ts\";\n\nfunction isExactNpmVersion(version: string | undefined): boolean {\n\treturn valid(version ?? \"\") !== null;\n}\n\nfunction getNpmVersionRange(version: string | undefined): string | undefined {\n\treturn version ? (validRange(version) ?? undefined) : undefined;\n}\n\nexport function parseNpmSpec(spec: string): { name: string; version?: string } {\n\tconst versionSeparator = spec.startsWith(\"@\") ? spec.indexOf(\"@\", spec.indexOf(\"/\") + 1) : spec.indexOf(\"@\");\n\tif (versionSeparator <= 0) {\n\t\treturn { name: spec };\n\t}\n\treturn {\n\t\tname: spec.slice(0, versionSeparator),\n\t\tversion: spec.slice(versionSeparator + 1),\n\t};\n}\n\nexport function parseSource(source: string): ParsedSource {\n\tif (source.startsWith(\"npm:\")) {\n\t\tconst spec = source.slice(\"npm:\".length).trim();\n\t\tconst { name, version } = parseNpmSpec(spec);\n\t\treturn {\n\t\t\ttype: \"npm\",\n\t\t\tspec,\n\t\t\tname,\n\t\t\tversion,\n\t\t\trange: getNpmVersionRange(version),\n\t\t\tpinned: isExactNpmVersion(version),\n\t\t};\n\t}\n\n\tif (isLocalPath(source)) {\n\t\treturn { type: \"local\", path: source };\n\t}\n\n\tconst gitParsed = parseGitUrl(source);\n\tif (gitParsed) {\n\t\treturn gitParsed;\n\t}\n\n\treturn { type: \"local\", path: source };\n}\n\nexport function getPackageSourceString(pkg: PackageSource): string {\n\treturn typeof pkg === \"string\" ? pkg : pkg.source;\n}\n\nfunction getSourceMatchKeyForInput(context: PackageManagerContext, source: string): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\treturn `local:${resolveManagerPath(context, parsed.path)}`;\n}\n\nfunction getSourceMatchKeyForSettings(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tscope: SourceScope,\n): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\tconst baseDir = getBaseDirForScope(context, scope);\n\treturn `local:${resolvePathFromBase(parsed.path, baseDir)}`;\n}\n\nexport function packageSourcesMatch(\n\tcontext: PackageManagerContext,\n\texisting: PackageSource,\n\tinputSource: string,\n\tscope: SourceScope,\n): boolean {\n\tconst left = getSourceMatchKeyForSettings(context, getPackageSourceString(existing), scope);\n\tconst right = getSourceMatchKeyForInput(context, inputSource);\n\treturn left === right;\n}\n\nexport function normalizePackageSourceForSettings(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tscope: SourceScope,\n): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type !== \"local\") {\n\t\treturn source;\n\t}\n\tconst baseDir = getBaseDirForScope(context, scope);\n\tconst resolved = resolveManagerPath(context, parsed.path);\n\tconst rel = relative(baseDir, resolved);\n\treturn rel || \".\";\n}\n\nexport function getPackageIdentity(context: PackageManagerContext, source: string, scope?: SourceScope): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\tif (scope) {\n\t\tconst baseDir = getBaseDirForScope(context, scope);\n\t\treturn `local:${resolvePathFromBase(parsed.path, baseDir)}`;\n\t}\n\treturn `local:${resolveManagerPath(context, parsed.path)}`;\n}\n\nexport function dedupePackages(\n\tcontext: PackageManagerContext,\n\tpackages: Array<{ pkg: PackageSource; scope: SourceScope }>,\n): Array<{ pkg: PackageSource; scope: SourceScope }> {\n\tconst seen = new Map<string, { pkg: PackageSource; scope: SourceScope }>();\n\n\tfor (const entry of packages) {\n\t\tconst sourceStr = getPackageSourceString(entry.pkg);\n\t\tconst identity = getPackageIdentity(context, sourceStr, entry.scope);\n\t\tconst existing = seen.get(identity);\n\t\tif (!existing) {\n\t\t\tseen.set(identity, entry);\n\t\t} else if (entry.scope === \"project\" && existing.scope === \"user\") {\n\t\t\tseen.set(identity, entry);\n\t\t}\n\t}\n\n\treturn Array.from(seen.values());\n}\n\nexport function buildNoMatchingPackageMessage(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tconfiguredPackages: PackageSource[],\n): string {\n\tconst suggestion = findSuggestedConfiguredSource(context, source, configuredPackages);\n\tif (!suggestion) {\n\t\treturn `No matching package found for ${source}`;\n\t}\n\treturn `No matching package found for ${source}. Did you mean ${suggestion}?`;\n}\n\nfunction findSuggestedConfiguredSource(\n\t_context: PackageManagerContext,\n\tsource: string,\n\tconfiguredPackages: PackageSource[],\n): string | undefined {\n\tconst trimmedSource = source.trim();\n\tconst suggestions = new Set<string>();\n\n\tfor (const pkg of configuredPackages) {\n\t\tconst sourceStr = getPackageSourceString(pkg);\n\t\tconst parsed = parseSource(sourceStr);\n\t\tif (parsed.type === \"npm\") {\n\t\t\tif (trimmedSource === parsed.name || trimmedSource === parsed.spec) {\n\t\t\t\tsuggestions.add(sourceStr);\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tif (parsed.type === \"git\") {\n\t\t\tconst shorthand = `${parsed.host}/${parsed.path}`;\n\t\t\tconst shorthandWithRef = parsed.ref ? `${shorthand}@${parsed.ref}` : undefined;\n\t\t\tif (trimmedSource === shorthand || (shorthandWithRef && trimmedSource === shorthandWithRef)) {\n\t\t\t\tsuggestions.add(sourceStr);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn suggestions.values().next().value;\n}\n\nexport function assertProjectTrustedForScope(context: PackageManagerContext, scope: SourceScope): void {\n\tif (scope === \"project\" && !context.settingsManager.isProjectTrusted()) {\n\t\tthrow new Error(\"Project is not trusted; refusing to access project package storage\");\n\t}\n}\n\n"]}
1
+ {"version":3,"file":"package-manager-source.js","sourceRoot":"","sources":["../../src/core/package-manager-source.ts"],"names":[],"mappings":"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","sourcesContent":["import { relative } from \"node:path\";\nimport { valid, validRange } from \"semver\";\nimport { isLocalPath } from \"../utils/paths.ts\";\nimport { parseGitUrl } from \"../utils/git.ts\";\nimport { getBaseDirForScope, resolveManagerPath, resolvePathFromBase } from \"./package-manager-paths.ts\";\nimport type { PackageManagerContext, ParsedSource, SourceScope } from \"./package-manager-types.ts\";\nimport type { PackageSource } from \"./settings-manager.ts\";\n\nfunction isExactNpmVersion(version: string | undefined): boolean {\n\treturn valid(version ?? \"\") !== null;\n}\n\nfunction getNpmVersionRange(version: string | undefined): string | undefined {\n\treturn version ? (validRange(version) ?? undefined) : undefined;\n}\n\nexport function parseNpmSpec(spec: string): { name: string; version?: string } {\n\tconst versionSeparator = spec.startsWith(\"@\") ? spec.indexOf(\"@\", spec.indexOf(\"/\") + 1) : spec.indexOf(\"@\");\n\tif (versionSeparator <= 0) {\n\t\treturn { name: spec };\n\t}\n\treturn {\n\t\tname: spec.slice(0, versionSeparator),\n\t\tversion: spec.slice(versionSeparator + 1),\n\t};\n}\n\nexport function parseSource(source: string): ParsedSource {\n\tif (source.startsWith(\"npm:\")) {\n\t\tconst spec = source.slice(\"npm:\".length).trim();\n\t\tconst { name, version } = parseNpmSpec(spec);\n\t\treturn {\n\t\t\ttype: \"npm\",\n\t\t\tspec,\n\t\t\tname,\n\t\t\tversion,\n\t\t\trange: getNpmVersionRange(version),\n\t\t\tpinned: isExactNpmVersion(version),\n\t\t};\n\t}\n\n\tif (isLocalPath(source)) {\n\t\treturn { type: \"local\", path: source };\n\t}\n\n\tconst gitParsed = parseGitUrl(source);\n\tif (gitParsed) {\n\t\treturn gitParsed;\n\t}\n\n\treturn { type: \"local\", path: source };\n}\n\nexport function getPackageSourceString(pkg: PackageSource): string {\n\treturn typeof pkg === \"string\" ? pkg : pkg.source;\n}\n\nfunction getSourceMatchKeyForInput(context: PackageManagerContext, source: string): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\treturn `local:${resolveManagerPath(context, parsed.path)}`;\n}\n\nfunction getSourceMatchKeyForSettings(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tscope: SourceScope,\n): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\tconst baseDir = getBaseDirForScope(context, scope);\n\treturn `local:${resolvePathFromBase(parsed.path, baseDir)}`;\n}\n\nexport function packageSourcesMatch(\n\tcontext: PackageManagerContext,\n\texisting: PackageSource,\n\tinputSource: string,\n\tscope: SourceScope,\n): boolean {\n\tconst left = getSourceMatchKeyForSettings(context, getPackageSourceString(existing), scope);\n\tconst right = getSourceMatchKeyForInput(context, inputSource);\n\treturn left === right;\n}\n\nexport function normalizePackageSourceForSettings(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tscope: SourceScope,\n): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type !== \"local\") {\n\t\treturn source;\n\t}\n\tconst baseDir = getBaseDirForScope(context, scope);\n\tconst resolved = resolveManagerPath(context, parsed.path);\n\tconst rel = relative(baseDir, resolved);\n\treturn rel || \".\";\n}\n\nexport function getPackageIdentity(context: PackageManagerContext, source: string, scope?: SourceScope): string {\n\tconst parsed = parseSource(source);\n\tif (parsed.type === \"npm\") {\n\t\treturn `npm:${parsed.name}`;\n\t}\n\tif (parsed.type === \"git\") {\n\t\treturn `git:${parsed.host}/${parsed.path}`;\n\t}\n\tif (scope) {\n\t\tconst baseDir = getBaseDirForScope(context, scope);\n\t\treturn `local:${resolvePathFromBase(parsed.path, baseDir)}`;\n\t}\n\treturn `local:${resolveManagerPath(context, parsed.path)}`;\n}\n\nexport function dedupePackages(\n\tcontext: PackageManagerContext,\n\tpackages: Array<{ pkg: PackageSource; scope: SourceScope }>,\n): Array<{ pkg: PackageSource; scope: SourceScope }> {\n\tconst result: Array<{ pkg: PackageSource; scope: SourceScope }> = [];\n\tconst seen = new Map<string, number>();\n\tfor (const entry of packages) {\n\t\tconst identity = getPackageIdentity(context, getPackageSourceString(entry.pkg), entry.scope);\n\t\tconst index = seen.get(identity);\n\t\tif (index === undefined) {\n\t\t\tseen.set(identity, result.length);\n\t\t\tresult.push(entry);\n\t\t\tcontinue;\n\t\t}\n\t\tconst existing = result[index];\n\t\tif (existing?.scope === \"project\" && entry.scope === \"user\") {\n\t\t\tif (typeof existing.pkg === \"object\" && existing.pkg.autoload === false) result.push(entry);\n\t\t} else if (entry.scope === \"project\") {\n\t\t\tresult[index] = entry;\n\t\t}\n\t}\n\treturn result;\n}\n\nexport function buildNoMatchingPackageMessage(\n\tcontext: PackageManagerContext,\n\tsource: string,\n\tconfiguredPackages: PackageSource[],\n): string {\n\tconst suggestion = findSuggestedConfiguredSource(context, source, configuredPackages);\n\tif (!suggestion) {\n\t\treturn `No matching package found for ${source}`;\n\t}\n\treturn `No matching package found for ${source}. Did you mean ${suggestion}?`;\n}\n\nfunction findSuggestedConfiguredSource(\n\t_context: PackageManagerContext,\n\tsource: string,\n\tconfiguredPackages: PackageSource[],\n): string | undefined {\n\tconst trimmedSource = source.trim();\n\tconst suggestions = new Set<string>();\n\n\tfor (const pkg of configuredPackages) {\n\t\tconst sourceStr = getPackageSourceString(pkg);\n\t\tconst parsed = parseSource(sourceStr);\n\t\tif (parsed.type === \"npm\") {\n\t\t\tif (trimmedSource === parsed.name || trimmedSource === parsed.spec) {\n\t\t\t\tsuggestions.add(sourceStr);\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tif (parsed.type === \"git\") {\n\t\t\tconst shorthand = `${parsed.host}/${parsed.path}`;\n\t\t\tconst shorthandWithRef = parsed.ref ? `${shorthand}@${parsed.ref}` : undefined;\n\t\t\tif (trimmedSource === shorthand || (shorthandWithRef && trimmedSource === shorthandWithRef)) {\n\t\t\t\tsuggestions.add(sourceStr);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn suggestions.values().next().value;\n}\n\nexport function assertProjectTrustedForScope(context: PackageManagerContext, scope: SourceScope): void {\n\tif (scope === \"project\" && !context.settingsManager.isProjectTrusted()) {\n\t\tthrow new Error(\"Project is not trusted; refusing to access project package storage\");\n\t}\n}\n\n"]}
@@ -155,6 +155,7 @@ export interface ResourceAccumulator {
155
155
  workflows: ResourceMap;
156
156
  }
157
157
  export interface PackageFilter {
158
+ autoload?: boolean;
158
159
  extensions?: string[];
159
160
  skills?: string[];
160
161
  prompts?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-types.d.ts","sourceRoot":"","sources":["../../src/core/package-manager-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-manager-types.d.ts","sourceRoot":"","sources":["../../src/core/package-manager-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-types.js","sourceRoot":"","sources":["../../src/core/package-manager-types.ts"],"names":[],"mappings":"AAwJA,MAAM,CAAC,MAAM,cAAc,GAAmB,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AAEzG,MAAM,CAAC,MAAM,aAAa,GAAiC;IAC1D,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,oBAAoB;CAC/B,CAAC","sourcesContent":["import type { GitSource } from \"../utils/git.ts\";\nimport type { PackageSource, SettingsManager } from \"./settings-manager.ts\";\n\nexport interface PathMetadata {\n\tsource: string;\n\tscope: SourceScope;\n\torigin: \"package\" | \"top-level\";\n\tbaseDir?: string;\n\t/** True for project-local resources borrowed from an explicit temporary extension source. */\n\tborrowedProjectLocal?: true;\n}\n\nexport interface ResolvedResource {\n\tpath: string;\n\tenabled: boolean;\n\tmetadata: PathMetadata;\n}\n\nexport interface ResolvedPaths {\n\textensions: ResolvedResource[];\n\tskills: ResolvedResource[];\n\tprompts: ResolvedResource[];\n\tthemes: ResolvedResource[];\n\tworkflows: ResolvedResource[];\n}\n\nexport type MissingSourceAction = \"install\" | \"skip\" | \"error\";\n\nexport interface ProgressEvent {\n\ttype: \"start\" | \"progress\" | \"complete\" | \"error\";\n\taction: \"install\" | \"remove\" | \"update\" | \"clone\" | \"pull\";\n\tsource: string;\n\tmessage?: string;\n}\n\nexport type ProgressCallback = (event: ProgressEvent) => void;\n\nexport interface PackageUpdate {\n\tsource: string;\n\tdisplayName: string;\n\ttype: \"npm\" | \"git\";\n\tscope: Exclude<SourceScope, \"temporary\">;\n}\n\nexport interface ConfiguredPackage {\n\tsource: string;\n\tscope: \"user\" | \"project\";\n\tfiltered: boolean;\n\tinstalledPath?: string;\n}\n\nexport interface PackageManager {\n\tresolve(onMissing?: (source: string) => Promise<MissingSourceAction>): Promise<ResolvedPaths>;\n\tinstall(source: string, options?: { local?: boolean }): Promise<void>;\n\tinstallAndPersist(source: string, options?: { local?: boolean }): Promise<void>;\n\tremove(source: string, options?: { local?: boolean }): Promise<void>;\n\tremoveAndPersist(source: string, options?: { local?: boolean }): Promise<boolean>;\n\tupdate(source?: string): Promise<void>;\n\tlistConfiguredPackages(): ConfiguredPackage[];\n\tresolveExtensionSources(sources: PackageSource[], options?: ResolveExtensionSourcesOptions): Promise<ResolvedPaths>;\n\taddSourceToSettings(source: string, options?: { local?: boolean }): boolean;\n\tremoveSourceFromSettings(source: string, options?: { local?: boolean }): boolean;\n\tsetProgressCallback(callback: ProgressCallback | undefined): void;\n\tgetInstalledPath(source: string, scope: \"user\" | \"project\"): string | undefined;\n}\n\nexport interface PackageManagerOptions {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n}\n\nexport interface GitUpdateTargetInfo {\n\tref: string;\n\thead: string;\n\tfetchArgs: string[];\n}\n\nexport interface PackageManagerDriver {\n\trunCommand(command: string, args: string[], options?: { cwd?: string }): Promise<void>;\n\trunCommandCapture(\n\t\tcommand: string,\n\t\targs: string[],\n\t\toptions?: { cwd?: string; timeoutMs?: number; env?: Record<string, string> },\n\t): Promise<string>;\n\trunCommandSync(command: string, args: string[]): string;\n\tinstallParsedSource(parsed: ParsedSource, scope: SourceScope): Promise<void>;\n\tupdateGit(source: GitSource, scope: SourceScope): Promise<void>;\n\tgitHasAvailableUpdate(installedPath: string): Promise<boolean>;\n\trefreshTemporaryGitSource(source: GitSource, sourceStr: string): Promise<void>;\n\tgetLocalGitUpdateTarget(installedPath: string): Promise<GitUpdateTargetInfo>;\n\tgetGlobalNpmRoot(): string;\n\tparseSource(source: string): ParsedSource;\n\tgetPackageIdentity(source: string, scope?: SourceScope): string;\n\tgetGitInstallPath(source: GitSource, scope: SourceScope): string;\n\tgetLatestNpmVersion(packageSpec: string, range?: string): Promise<string>;\n}\n\nexport interface PackageManagerContext {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n\tglobalNpmRoot?: string;\n\tglobalNpmRootCommandKey?: string;\n\tprogressCallback?: ProgressCallback;\n\tdriver?: PackageManagerDriver;\n}\n\nexport type SourceScope = \"user\" | \"project\" | \"temporary\";\n\nexport type NpmSource = {\n\ttype: \"npm\";\n\tspec: string;\n\tname: string;\n\tversion?: string;\n\trange?: string;\n\tpinned: boolean;\n};\n\nexport type LocalSource = {\n\ttype: \"local\";\n\tpath: string;\n};\n\nexport type ParsedSource = NpmSource | GitSource | LocalSource;\n\nexport type InstalledSourceScope = Exclude<SourceScope, \"temporary\">;\n\nexport interface ConfiguredUpdateSource {\n\tsource: string;\n\tscope: InstalledSourceScope;\n}\n\nexport interface NpmUpdateTarget extends ConfiguredUpdateSource {\n\tparsed: NpmSource;\n}\n\nexport interface GitUpdateTarget extends ConfiguredUpdateSource {\n\tparsed: GitSource;\n}\n\nexport interface PiManifest {\n\textensions?: string[];\n\tskills?: string[];\n\tprompts?: string[];\n\tthemes?: string[];\n\tworkflows?: string[];\n\tworkflow?: string[];\n}\n\nexport type ResourceType = \"extensions\" | \"skills\" | \"prompts\" | \"themes\" | \"workflows\";\n\nexport const RESOURCE_TYPES: ResourceType[] = [\"extensions\", \"skills\", \"prompts\", \"themes\", \"workflows\"];\n\nexport const FILE_PATTERNS: Record<ResourceType, RegExp> = {\n\textensions: /\\.(ts|js)$/,\n\tskills: /\\.md$/,\n\tprompts: /\\.md$/,\n\tthemes: /\\.json$/,\n\tworkflows: /\\.(ts|js|mjs|cjs)$/,\n};\n\nexport type ResourceEntry = { metadata: PathMetadata; enabled: boolean };\nexport type ResourceMap = Map<string, ResourceEntry>;\n\nexport interface ResourceAccumulator {\n\textensions: ResourceMap;\n\tskills: ResourceMap;\n\tprompts: ResourceMap;\n\tthemes: ResourceMap;\n\tworkflows: ResourceMap;\n}\n\nexport interface PackageFilter {\n\textensions?: string[];\n\tskills?: string[];\n\tprompts?: string[];\n\tthemes?: string[];\n\tworkflows?: string[];\n}\n\nexport interface ResolveExtensionSourcesOptions {\n\tlocal?: boolean;\n\ttemporary?: boolean;\n\tincludeProjectLocalResources?: boolean;\n}\n"]}
1
+ {"version":3,"file":"package-manager-types.js","sourceRoot":"","sources":["../../src/core/package-manager-types.ts"],"names":[],"mappings":"AAwJA,MAAM,CAAC,MAAM,cAAc,GAAmB,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AAEzG,MAAM,CAAC,MAAM,aAAa,GAAiC;IAC1D,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,oBAAoB;CAC/B,CAAC","sourcesContent":["import type { GitSource } from \"../utils/git.ts\";\nimport type { PackageSource, SettingsManager } from \"./settings-manager.ts\";\n\nexport interface PathMetadata {\n\tsource: string;\n\tscope: SourceScope;\n\torigin: \"package\" | \"top-level\";\n\tbaseDir?: string;\n\t/** True for project-local resources borrowed from an explicit temporary extension source. */\n\tborrowedProjectLocal?: true;\n}\n\nexport interface ResolvedResource {\n\tpath: string;\n\tenabled: boolean;\n\tmetadata: PathMetadata;\n}\n\nexport interface ResolvedPaths {\n\textensions: ResolvedResource[];\n\tskills: ResolvedResource[];\n\tprompts: ResolvedResource[];\n\tthemes: ResolvedResource[];\n\tworkflows: ResolvedResource[];\n}\n\nexport type MissingSourceAction = \"install\" | \"skip\" | \"error\";\n\nexport interface ProgressEvent {\n\ttype: \"start\" | \"progress\" | \"complete\" | \"error\";\n\taction: \"install\" | \"remove\" | \"update\" | \"clone\" | \"pull\";\n\tsource: string;\n\tmessage?: string;\n}\n\nexport type ProgressCallback = (event: ProgressEvent) => void;\n\nexport interface PackageUpdate {\n\tsource: string;\n\tdisplayName: string;\n\ttype: \"npm\" | \"git\";\n\tscope: Exclude<SourceScope, \"temporary\">;\n}\n\nexport interface ConfiguredPackage {\n\tsource: string;\n\tscope: \"user\" | \"project\";\n\tfiltered: boolean;\n\tinstalledPath?: string;\n}\n\nexport interface PackageManager {\n\tresolve(onMissing?: (source: string) => Promise<MissingSourceAction>): Promise<ResolvedPaths>;\n\tinstall(source: string, options?: { local?: boolean }): Promise<void>;\n\tinstallAndPersist(source: string, options?: { local?: boolean }): Promise<void>;\n\tremove(source: string, options?: { local?: boolean }): Promise<void>;\n\tremoveAndPersist(source: string, options?: { local?: boolean }): Promise<boolean>;\n\tupdate(source?: string): Promise<void>;\n\tlistConfiguredPackages(): ConfiguredPackage[];\n\tresolveExtensionSources(sources: PackageSource[], options?: ResolveExtensionSourcesOptions): Promise<ResolvedPaths>;\n\taddSourceToSettings(source: string, options?: { local?: boolean }): boolean;\n\tremoveSourceFromSettings(source: string, options?: { local?: boolean }): boolean;\n\tsetProgressCallback(callback: ProgressCallback | undefined): void;\n\tgetInstalledPath(source: string, scope: \"user\" | \"project\"): string | undefined;\n}\n\nexport interface PackageManagerOptions {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n}\n\nexport interface GitUpdateTargetInfo {\n\tref: string;\n\thead: string;\n\tfetchArgs: string[];\n}\n\nexport interface PackageManagerDriver {\n\trunCommand(command: string, args: string[], options?: { cwd?: string }): Promise<void>;\n\trunCommandCapture(\n\t\tcommand: string,\n\t\targs: string[],\n\t\toptions?: { cwd?: string; timeoutMs?: number; env?: Record<string, string> },\n\t): Promise<string>;\n\trunCommandSync(command: string, args: string[]): string;\n\tinstallParsedSource(parsed: ParsedSource, scope: SourceScope): Promise<void>;\n\tupdateGit(source: GitSource, scope: SourceScope): Promise<void>;\n\tgitHasAvailableUpdate(installedPath: string): Promise<boolean>;\n\trefreshTemporaryGitSource(source: GitSource, sourceStr: string): Promise<void>;\n\tgetLocalGitUpdateTarget(installedPath: string): Promise<GitUpdateTargetInfo>;\n\tgetGlobalNpmRoot(): string;\n\tparseSource(source: string): ParsedSource;\n\tgetPackageIdentity(source: string, scope?: SourceScope): string;\n\tgetGitInstallPath(source: GitSource, scope: SourceScope): string;\n\tgetLatestNpmVersion(packageSpec: string, range?: string): Promise<string>;\n}\n\nexport interface PackageManagerContext {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n\tglobalNpmRoot?: string;\n\tglobalNpmRootCommandKey?: string;\n\tprogressCallback?: ProgressCallback;\n\tdriver?: PackageManagerDriver;\n}\n\nexport type SourceScope = \"user\" | \"project\" | \"temporary\";\n\nexport type NpmSource = {\n\ttype: \"npm\";\n\tspec: string;\n\tname: string;\n\tversion?: string;\n\trange?: string;\n\tpinned: boolean;\n};\n\nexport type LocalSource = {\n\ttype: \"local\";\n\tpath: string;\n};\n\nexport type ParsedSource = NpmSource | GitSource | LocalSource;\n\nexport type InstalledSourceScope = Exclude<SourceScope, \"temporary\">;\n\nexport interface ConfiguredUpdateSource {\n\tsource: string;\n\tscope: InstalledSourceScope;\n}\n\nexport interface NpmUpdateTarget extends ConfiguredUpdateSource {\n\tparsed: NpmSource;\n}\n\nexport interface GitUpdateTarget extends ConfiguredUpdateSource {\n\tparsed: GitSource;\n}\n\nexport interface PiManifest {\n\textensions?: string[];\n\tskills?: string[];\n\tprompts?: string[];\n\tthemes?: string[];\n\tworkflows?: string[];\n\tworkflow?: string[];\n}\n\nexport type ResourceType = \"extensions\" | \"skills\" | \"prompts\" | \"themes\" | \"workflows\";\n\nexport const RESOURCE_TYPES: ResourceType[] = [\"extensions\", \"skills\", \"prompts\", \"themes\", \"workflows\"];\n\nexport const FILE_PATTERNS: Record<ResourceType, RegExp> = {\n\textensions: /\\.(ts|js)$/,\n\tskills: /\\.md$/,\n\tprompts: /\\.md$/,\n\tthemes: /\\.json$/,\n\tworkflows: /\\.(ts|js|mjs|cjs)$/,\n};\n\nexport type ResourceEntry = { metadata: PathMetadata; enabled: boolean };\nexport type ResourceMap = Map<string, ResourceEntry>;\n\nexport interface ResourceAccumulator {\n\textensions: ResourceMap;\n\tskills: ResourceMap;\n\tprompts: ResourceMap;\n\tthemes: ResourceMap;\n\tworkflows: ResourceMap;\n}\n\nexport interface PackageFilter {\n\tautoload?: boolean;\n\textensions?: string[];\n\tskills?: string[];\n\tprompts?: string[];\n\tthemes?: string[];\n\tworkflows?: string[];\n}\n\nexport interface ResolveExtensionSourcesOptions {\n\tlocal?: boolean;\n\ttemporary?: boolean;\n\tincludeProjectLocalResources?: boolean;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-display-names.d.ts","sourceRoot":"","sources":["../../src/core/provider-display-names.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkClE,CAAC"}
1
+ {"version":3,"file":"provider-display-names.d.ts","sourceRoot":"","sources":["../../src/core/provider-display-names.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAsClE,CAAC"}
@@ -11,6 +11,7 @@ export const BUILT_IN_PROVIDER_DISPLAY_NAMES = {
11
11
  google: "Google Gemini",
12
12
  "google-vertex": "Google Vertex AI",
13
13
  groq: "Groq",
14
+ "github-copilot": "GitHub Copilot",
14
15
  huggingface: "Hugging Face",
15
16
  "kimi-coding": "Kimi For Coding",
16
17
  mistral: "Mistral",
@@ -22,6 +23,9 @@ export const BUILT_IN_PROVIDER_DISPLAY_NAMES = {
22
23
  opencode: "OpenCode Zen",
23
24
  "opencode-go": "OpenCode Go",
24
25
  openai: "OpenAI",
26
+ "qwen-token-plan": "Qwen Token Plan",
27
+ "qwen-token-plan-cn": "Qwen Token Plan (China)",
28
+ radius: "Radius",
25
29
  openrouter: "OpenRouter",
26
30
  together: "Together AI",
27
31
  "vercel-ai-gateway": "Vercel AI Gateway",
@@ -1 +1 @@
1
- {"version":3,"file":"provider-display-names.js","sourceRoot":"","sources":["../../src/core/provider-display-names.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAA2B;IACtE,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,gBAAgB;IAClC,UAAU,EAAE,UAAU;IACtB,wBAAwB,EAAE,wBAAwB;IAClD,QAAQ,EAAE,UAAU;IACpB,uBAAuB,EAAE,uBAAuB;IAChD,uBAAuB,EAAE,uBAAuB;IAChD,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,eAAe;IACvB,eAAe,EAAE,kBAAkB;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,cAAc;IAC3B,aAAa,EAAE,iBAAiB;IAChC,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,iBAAiB;IAC/B,UAAU,EAAE,aAAa;IACzB,eAAe,EAAE,qBAAqB;IACtC,MAAM,EAAE,YAAY;IACpB,QAAQ,EAAE,cAAc;IACxB,aAAa,EAAE,aAAa;IAC5B,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,aAAa;IACvB,mBAAmB,EAAE,mBAAmB;IACxC,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,eAAe,EAAE,yBAAyB;IAC1C,MAAM,EAAE,aAAa;IACrB,sBAAsB,EAAE,gCAAgC;IACxD,uBAAuB,EAAE,oCAAoC;IAC7D,uBAAuB,EAAE,oCAAoC;CAC7D,CAAC","sourcesContent":["export const BUILT_IN_PROVIDER_DISPLAY_NAMES: Record<string, string> = {\n\tanthropic: \"Anthropic\",\n\t\"amazon-bedrock\": \"Amazon Bedrock\",\n\t\"ant-ling\": \"Ant Ling\",\n\t\"azure-openai-responses\": \"Azure OpenAI Responses\",\n\tcerebras: \"Cerebras\",\n\t\"cloudflare-ai-gateway\": \"Cloudflare AI Gateway\",\n\t\"cloudflare-workers-ai\": \"Cloudflare Workers AI\",\n\tdeepseek: \"DeepSeek\",\n\tfireworks: \"Fireworks\",\n\tgoogle: \"Google Gemini\",\n\t\"google-vertex\": \"Google Vertex AI\",\n\tgroq: \"Groq\",\n\thuggingface: \"Hugging Face\",\n\t\"kimi-coding\": \"Kimi For Coding\",\n\tmistral: \"Mistral\",\n\tminimax: \"MiniMax\",\n\t\"minimax-cn\": \"MiniMax (China)\",\n\tmoonshotai: \"Moonshot AI\",\n\t\"moonshotai-cn\": \"Moonshot AI (China)\",\n\tnvidia: \"NVIDIA NIM\",\n\topencode: \"OpenCode Zen\",\n\t\"opencode-go\": \"OpenCode Go\",\n\topenai: \"OpenAI\",\n\topenrouter: \"OpenRouter\",\n\ttogether: \"Together AI\",\n\t\"vercel-ai-gateway\": \"Vercel AI Gateway\",\n\txai: \"xAI\",\n\tzai: \"ZAI\",\n\t\"zai-coding-cn\": \"ZAI Coding Plan (China)\",\n\txiaomi: \"Xiaomi MiMo\",\n\t\"xiaomi-token-plan-cn\": \"Xiaomi MiMo Token Plan (China)\",\n\t\"xiaomi-token-plan-ams\": \"Xiaomi MiMo Token Plan (Amsterdam)\",\n\t\"xiaomi-token-plan-sgp\": \"Xiaomi MiMo Token Plan (Singapore)\",\n};\n"]}
1
+ {"version":3,"file":"provider-display-names.js","sourceRoot":"","sources":["../../src/core/provider-display-names.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAA2B;IACtE,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,gBAAgB;IAClC,UAAU,EAAE,UAAU;IACtB,wBAAwB,EAAE,wBAAwB;IAClD,QAAQ,EAAE,UAAU;IACpB,uBAAuB,EAAE,uBAAuB;IAChD,uBAAuB,EAAE,uBAAuB;IAChD,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,eAAe;IACvB,eAAe,EAAE,kBAAkB;IACnC,IAAI,EAAE,MAAM;IACZ,gBAAgB,EAAE,gBAAgB;IAClC,WAAW,EAAE,cAAc;IAC3B,aAAa,EAAE,iBAAiB;IAChC,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,iBAAiB;IAC/B,UAAU,EAAE,aAAa;IACzB,eAAe,EAAE,qBAAqB;IACtC,MAAM,EAAE,YAAY;IACpB,QAAQ,EAAE,cAAc;IACxB,aAAa,EAAE,aAAa;IAC5B,MAAM,EAAE,QAAQ;IAChB,iBAAiB,EAAE,iBAAiB;IACpC,oBAAoB,EAAE,yBAAyB;IAC/C,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,aAAa;IACvB,mBAAmB,EAAE,mBAAmB;IACxC,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,eAAe,EAAE,yBAAyB;IAC1C,MAAM,EAAE,aAAa;IACrB,sBAAsB,EAAE,gCAAgC;IACxD,uBAAuB,EAAE,oCAAoC;IAC7D,uBAAuB,EAAE,oCAAoC;CAC7D,CAAC","sourcesContent":["export const BUILT_IN_PROVIDER_DISPLAY_NAMES: Record<string, string> = {\n\tanthropic: \"Anthropic\",\n\t\"amazon-bedrock\": \"Amazon Bedrock\",\n\t\"ant-ling\": \"Ant Ling\",\n\t\"azure-openai-responses\": \"Azure OpenAI Responses\",\n\tcerebras: \"Cerebras\",\n\t\"cloudflare-ai-gateway\": \"Cloudflare AI Gateway\",\n\t\"cloudflare-workers-ai\": \"Cloudflare Workers AI\",\n\tdeepseek: \"DeepSeek\",\n\tfireworks: \"Fireworks\",\n\tgoogle: \"Google Gemini\",\n\t\"google-vertex\": \"Google Vertex AI\",\n\tgroq: \"Groq\",\n\t\"github-copilot\": \"GitHub Copilot\",\n\thuggingface: \"Hugging Face\",\n\t\"kimi-coding\": \"Kimi For Coding\",\n\tmistral: \"Mistral\",\n\tminimax: \"MiniMax\",\n\t\"minimax-cn\": \"MiniMax (China)\",\n\tmoonshotai: \"Moonshot AI\",\n\t\"moonshotai-cn\": \"Moonshot AI (China)\",\n\tnvidia: \"NVIDIA NIM\",\n\topencode: \"OpenCode Zen\",\n\t\"opencode-go\": \"OpenCode Go\",\n\topenai: \"OpenAI\",\n\t\"qwen-token-plan\": \"Qwen Token Plan\",\n\t\"qwen-token-plan-cn\": \"Qwen Token Plan (China)\",\n\tradius: \"Radius\",\n\topenrouter: \"OpenRouter\",\n\ttogether: \"Together AI\",\n\t\"vercel-ai-gateway\": \"Vercel AI Gateway\",\n\txai: \"xAI\",\n\tzai: \"ZAI\",\n\t\"zai-coding-cn\": \"ZAI Coding Plan (China)\",\n\txiaomi: \"Xiaomi MiMo\",\n\t\"xiaomi-token-plan-cn\": \"Xiaomi MiMo Token Plan (China)\",\n\t\"xiaomi-token-plan-ams\": \"Xiaomi MiMo Token Plan (Amsterdam)\",\n\t\"xiaomi-token-plan-sgp\": \"Xiaomi MiMo Token Plan (Singapore)\",\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-core.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-loader-core.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-core.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-core.js","sourceRoot":"","sources":["../../src/core/resource-loader-core.ts"],"names":[],"mappings":"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","sourcesContent":["import { resolvePath } from \"../utils/paths.ts\";\nimport { createEventBus, type EventBus } from \"./event-bus.ts\";\nimport { createExtensionRuntime } from \"./extensions/loader.ts\";\nimport type { ExtensionFactory, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport { DefaultPackageManager, type ResolvedResource } from \"./package-manager.ts\";\nimport type { PromptTemplate } from \"./prompt-templates.ts\";\nimport { SettingsManager, type PackageSource } from \"./settings-manager.ts\";\nimport type { Skill } from \"./skills.ts\";\nimport type { SourceInfo } from \"./source-info.ts\";\nimport type { ResourceDiagnostic } from \"./diagnostics.ts\";\nimport type { Theme } from \"../modes/interactive/theme/theme.ts\";\nimport { updatePromptsFromPathsAsync, updateSkillsFromPathsAsync, updateThemesFromPathsAsync } from \"./resource-loader-assets.ts\";\nimport { clonePackageSources, mergeInheritedStrings } from \"./resource-loader-helpers.ts\";\nimport {\n\tcollectWorkflowResources,\n\tnormalizeExtensionPaths,\n\trecordExtensionSourceInfo,\n\tresolvePackageResourcePaths,\n} from \"./resource-loader-package-resources.ts\";\nimport { mergeResourcePaths } from \"./resource-loader-paths.ts\";\nimport { loadProjectTrustExtensions, reloadDefaultResourceLoader } from \"./resource-loader-reload.ts\";\nimport type {\n\tDefaultResourceLoaderInheritanceSnapshot,\n\tDefaultResourceLoaderOptions,\n\tResourceExtensionPaths,\n\tResourceLoader,\n\tResourceLoaderReloadOptions,\n} from \"./resource-loader-types.ts\";\n\nexport class DefaultResourceLoader implements ResourceLoader {\n\tprivate cwd: string;\n\tprivate agentDir: string;\n\tprivate settingsManager: SettingsManager;\n\tprivate eventBus: EventBus;\n\tprivate packageManager: DefaultPackageManager;\n\tprivate additionalExtensionPaths: string[];\n\tprivate additionalSkillPaths: string[];\n\tprivate additionalPromptTemplatePaths: string[];\n\tprivate additionalThemePaths: string[];\n\tprivate builtinPackagePaths: PackageSource[];\n\tprivate extensionFactories: ExtensionFactory[];\n\tprivate noExtensions: boolean;\n\tprivate noSkills: boolean;\n\tprivate noPromptTemplates: boolean;\n\tprivate noThemes: boolean;\n\tprivate noContextFiles: boolean;\n\tprivate systemPromptSource?: string;\n\tprivate appendSystemPromptSource?: string[];\n\tprivate extensionsOverride?: (base: LoadExtensionsResult) => LoadExtensionsResult;\n\tprivate skillsOverride?: (base: { skills: Skill[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tskills: Skill[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate promptsOverride?: (base: { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tprompts: PromptTemplate[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate themesOverride?: (base: { themes: Theme[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tthemes: Theme[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate agentsFilesOverride?: (base: { agentsFiles: Array<{ path: string; content: string }> }) => {\n\t\tagentsFiles: Array<{ path: string; content: string }>;\n\t};\n\tprivate systemPromptOverride?: (base: string | undefined) => string | undefined;\n\tprivate appendSystemPromptOverride?: (base: string[]) => string[];\n\tprivate extensionsResult: LoadExtensionsResult;\n\tprivate skills: Skill[];\n\tprivate skillDiagnostics: ResourceDiagnostic[];\n\tprivate prompts: PromptTemplate[];\n\tprivate promptDiagnostics: ResourceDiagnostic[];\n\tprivate themes: Theme[];\n\tprivate themeDiagnostics: ResourceDiagnostic[];\n\tprivate agentsFiles: Array<{ path: string; content: string }>;\n\tprivate systemPrompt?: string;\n\tprivate appendSystemPrompt: string[];\n\tprivate workflowResources: ResolvedResource[];\n\tprivate trustedBorrowedProjectLocalSources?: Set<string>;\n\tprivate lastSkillPaths: string[];\n\tprivate extensionSkillSourceInfos: Map<string, SourceInfo>;\n\tprivate extensionPromptSourceInfos: Map<string, SourceInfo>;\n\tprivate extensionThemeSourceInfos: Map<string, SourceInfo>;\n\tprivate lastPromptPaths: string[];\n\tprivate lastThemePaths: string[];\n\tprivate loaded: boolean;\n\n\tconstructor(options: DefaultResourceLoaderOptions) {\n\t\tconst inheritanceSnapshot = options.resourceLoaderInheritanceSnapshot;\n\t\tconst inheritedSettingsOptions = inheritanceSnapshot?.projectTrusted === undefined\n\t\t\t? undefined\n\t\t\t: { projectTrusted: inheritanceSnapshot.projectTrusted };\n\t\tthis.cwd = resolvePath(options.cwd);\n\t\tthis.agentDir = resolvePath(options.agentDir);\n\t\tthis.settingsManager = options.settingsManager ?? SettingsManager.create(\n\t\t\tthis.cwd,\n\t\t\tthis.agentDir,\n\t\t\tinheritedSettingsOptions,\n\t\t);\n\t\tthis.eventBus = options.eventBus ?? createEventBus();\n\t\tthis.packageManager = new DefaultPackageManager({\n\t\t\tcwd: this.cwd,\n\t\t\tagentDir: this.agentDir,\n\t\t\tsettingsManager: this.settingsManager,\n\t\t});\n\t\tthis.additionalExtensionPaths = mergeInheritedStrings(\n\t\t\tinheritanceSnapshot?.additionalExtensionPaths,\n\t\t\toptions.additionalExtensionPaths,\n\t\t);\n\t\tthis.additionalSkillPaths = mergeInheritedStrings(inheritanceSnapshot?.additionalSkillPaths, options.additionalSkillPaths);\n\t\tthis.additionalPromptTemplatePaths = mergeInheritedStrings(\n\t\t\tinheritanceSnapshot?.additionalPromptTemplatePaths,\n\t\t\toptions.additionalPromptTemplatePaths,\n\t\t);\n\t\tthis.additionalThemePaths = mergeInheritedStrings(inheritanceSnapshot?.additionalThemePaths, options.additionalThemePaths);\n\t\tthis.builtinPackagePaths = options.builtinPackagePaths !== undefined\n\t\t\t? clonePackageSources(options.builtinPackagePaths)\n\t\t\t: clonePackageSources(inheritanceSnapshot?.builtinPackagePaths);\n\t\tthis.extensionFactories = [...(inheritanceSnapshot?.extensionFactories ?? []), ...(options.extensionFactories ?? [])];\n\t\tthis.noExtensions = options.noExtensions ?? inheritanceSnapshot?.noExtensions ?? false;\n\t\tthis.noSkills = options.noSkills ?? inheritanceSnapshot?.noSkills ?? false;\n\t\tthis.noPromptTemplates = options.noPromptTemplates ?? inheritanceSnapshot?.noPromptTemplates ?? false;\n\t\tthis.noThemes = options.noThemes ?? inheritanceSnapshot?.noThemes ?? false;\n\t\tthis.noContextFiles = options.noContextFiles ?? inheritanceSnapshot?.noContextFiles ?? false;\n\t\tthis.systemPromptSource = options.systemPrompt ?? inheritanceSnapshot?.systemPrompt;\n\t\tthis.appendSystemPromptSource = options.appendSystemPrompt !== undefined\n\t\t\t? [...options.appendSystemPrompt]\n\t\t\t: inheritanceSnapshot?.appendSystemPrompt === undefined\n\t\t\t\t? undefined\n\t\t\t\t: [...inheritanceSnapshot.appendSystemPrompt];\n\t\tthis.extensionsOverride = options.extensionsOverride;\n\t\tthis.skillsOverride = options.skillsOverride;\n\t\tthis.promptsOverride = options.promptsOverride;\n\t\tthis.themesOverride = options.themesOverride;\n\t\tthis.agentsFilesOverride = options.agentsFilesOverride;\n\t\tthis.systemPromptOverride = options.systemPromptOverride;\n\t\tthis.appendSystemPromptOverride = options.appendSystemPromptOverride;\n\t\tthis.extensionsResult = { extensions: [], errors: [], runtime: createExtensionRuntime() };\n\t\tthis.skills = [];\n\t\tthis.skillDiagnostics = [];\n\t\tthis.prompts = [];\n\t\tthis.promptDiagnostics = [];\n\t\tthis.themes = [];\n\t\tthis.themeDiagnostics = [];\n\t\tthis.agentsFiles = [];\n\t\tthis.appendSystemPrompt = [];\n\t\tthis.workflowResources = [];\n\t\tthis.trustedBorrowedProjectLocalSources = inheritanceSnapshot?.trustedBorrowedProjectLocalSources === undefined\n\t\t\t? undefined\n\t\t\t: new Set(inheritanceSnapshot.trustedBorrowedProjectLocalSources);\n\t\tthis.lastSkillPaths = [];\n\t\tthis.extensionSkillSourceInfos = new Map();\n\t\tthis.extensionPromptSourceInfos = new Map();\n\t\tthis.extensionThemeSourceInfos = new Map();\n\t\tthis.lastPromptPaths = [];\n\t\tthis.lastThemePaths = [];\n\t\tthis.loaded = false;\n\t\tthis.touchInternalFieldsForSplit();\n\t}\n\n\tgetExtensions(): LoadExtensionsResult {\n\t\treturn this.extensionsResult;\n\t}\n\n\tgetSkills(): { skills: Skill[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { skills: this.skills, diagnostics: this.skillDiagnostics };\n\t}\n\n\tgetPrompts(): { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { prompts: this.prompts, diagnostics: this.promptDiagnostics };\n\t}\n\n\tgetThemes(): { themes: Theme[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { themes: this.themes, diagnostics: this.themeDiagnostics };\n\t}\n\n\tgetAgentsFiles(): { agentsFiles: Array<{ path: string; content: string }> } {\n\t\treturn { agentsFiles: this.agentsFiles };\n\t}\n\n\tgetSystemPrompt(): string | undefined {\n\t\treturn this.systemPrompt;\n\t}\n\n\tgetAppendSystemPrompt(): string[] {\n\t\treturn this.appendSystemPrompt;\n\t}\n\n\tgetWorkflowResources(): ResolvedResource[] {\n\t\treturn [...this.workflowResources];\n\t}\n\n\tgetInheritanceSnapshot(): DefaultResourceLoaderInheritanceSnapshot {\n\t\treturn {\n\t\t\tprojectTrusted: this.settingsManager.isProjectTrusted(),\n\t\t\tadditionalExtensionPaths: [...this.additionalExtensionPaths],\n\t\t\tadditionalSkillPaths: [...this.additionalSkillPaths],\n\t\t\tadditionalPromptTemplatePaths: [...this.additionalPromptTemplatePaths],\n\t\t\tadditionalThemePaths: [...this.additionalThemePaths],\n\t\t\tbuiltinPackagePaths: clonePackageSources(this.builtinPackagePaths),\n\t\t\textensionFactories: [...this.extensionFactories],\n\t\t\tnoExtensions: this.noExtensions,\n\t\t\tnoSkills: this.noSkills,\n\t\t\tnoPromptTemplates: this.noPromptTemplates,\n\t\t\tnoThemes: this.noThemes,\n\t\t\tnoContextFiles: this.noContextFiles,\n\t\t\t...(this.systemPromptSource === undefined ? {} : { systemPrompt: this.systemPromptSource }),\n\t\t\t...(this.appendSystemPromptSource === undefined ? {} : { appendSystemPrompt: [...this.appendSystemPromptSource] }),\n\t\t\t...(this.trustedBorrowedProjectLocalSources === undefined\n\t\t\t\t? {}\n\t\t\t\t: { trustedBorrowedProjectLocalSources: [...this.trustedBorrowedProjectLocalSources] }),\n\t\t};\n\t}\n\n\tasync refreshWorkflowResources(): Promise<ResolvedResource[]> {\n\t\tconst { resolvedPaths, cliExtensionPaths, builtinPackagePaths } = await resolvePackageResourcePaths(this, {\n\t\t\ttrustedBorrowedProjectLocalSources: this.trustedBorrowedProjectLocalSources,\n\t\t});\n\t\tconst workflowResources = collectWorkflowResources(resolvedPaths, cliExtensionPaths, builtinPackagePaths);\n\t\tthis.workflowResources = workflowResources;\n\t\treturn [...this.workflowResources];\n\t}\n\n\tasync extendResources(paths: ResourceExtensionPaths): Promise<void> {\n\t\tconst skillPaths = normalizeExtensionPaths(this, paths.skillPaths ?? []);\n\t\tconst promptPaths = normalizeExtensionPaths(this, paths.promptPaths ?? []);\n\t\tconst themePaths = normalizeExtensionPaths(this, paths.themePaths ?? []);\n\t\trecordExtensionSourceInfo(this, skillPaths, \"skill\");\n\t\trecordExtensionSourceInfo(this, promptPaths, \"prompt\");\n\t\trecordExtensionSourceInfo(this, themePaths, \"theme\");\n\n\t\tif (skillPaths.length > 0) {\n\t\t\tthis.lastSkillPaths = mergeResourcePaths(this.cwd, this.lastSkillPaths, skillPaths.map((entry) => entry.path));\n\t\t\tawait updateSkillsFromPathsAsync(this, this.lastSkillPaths);\n\t\t}\n\t\tif (promptPaths.length > 0) {\n\t\t\tthis.lastPromptPaths = mergeResourcePaths(this.cwd, this.lastPromptPaths, promptPaths.map((entry) => entry.path));\n\t\t\tawait updatePromptsFromPathsAsync(this, this.lastPromptPaths);\n\t\t}\n\t\tif (themePaths.length > 0) {\n\t\t\tthis.lastThemePaths = mergeResourcePaths(this.cwd, this.lastThemePaths, themePaths.map((entry) => entry.path));\n\t\t\tawait updateThemesFromPathsAsync(this, this.lastThemePaths);\n\t\t}\n\t}\n\n\tasync loadProjectTrustExtensions(): Promise<LoadExtensionsResult> {\n\t\treturn loadProjectTrustExtensions(this);\n\t}\n\n\tasync reload(options?: ResourceLoaderReloadOptions): Promise<void> {\n\t\treturn reloadDefaultResourceLoader(this, options);\n\t}\n\n\tprivate touchInternalFieldsForSplit(): void {\n\t\tvoid this.eventBus;\n\t\tvoid this.packageManager;\n\t\tvoid this.noContextFiles;\n\t\tvoid this.extensionsOverride;\n\t\tvoid this.skillsOverride;\n\t\tvoid this.promptsOverride;\n\t\tvoid this.themesOverride;\n\t\tvoid this.agentsFilesOverride;\n\t\tvoid this.systemPromptOverride;\n\t\tvoid this.appendSystemPromptOverride;\n\t\tvoid this.extensionSkillSourceInfos;\n\t\tvoid this.extensionPromptSourceInfos;\n\t\tvoid this.extensionThemeSourceInfos;\n\t\tvoid this.loaded;\n\t}\n}\n"]}
1
+ {"version":3,"file":"resource-loader-core.js","sourceRoot":"","sources":["../../src/core/resource-loader-core.ts"],"names":[],"mappings":"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","sourcesContent":["import { resolvePath } from \"../utils/paths.ts\";\nimport { createEventBus, type EventBus } from \"./event-bus.ts\";\nimport { createExtensionRuntime } from \"./extensions/loader.ts\";\nimport type { InlineExtension, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport { DefaultPackageManager, type ResolvedResource } from \"./package-manager.ts\";\nimport type { PromptTemplate } from \"./prompt-templates.ts\";\nimport { SettingsManager, type PackageSource } from \"./settings-manager.ts\";\nimport type { Skill } from \"./skills.ts\";\nimport type { SourceInfo } from \"./source-info.ts\";\nimport type { ResourceDiagnostic } from \"./diagnostics.ts\";\nimport type { Theme } from \"../modes/interactive/theme/theme.ts\";\nimport { updatePromptsFromPathsAsync, updateSkillsFromPathsAsync, updateThemesFromPathsAsync } from \"./resource-loader-assets.ts\";\nimport { clonePackageSources, mergeInheritedStrings } from \"./resource-loader-helpers.ts\";\nimport {\n\tcollectWorkflowResources,\n\tnormalizeExtensionPaths,\n\trecordExtensionSourceInfo,\n\tresolvePackageResourcePaths,\n} from \"./resource-loader-package-resources.ts\";\nimport { mergeResourcePaths } from \"./resource-loader-paths.ts\";\nimport { loadProjectTrustExtensions, reloadDefaultResourceLoader } from \"./resource-loader-reload.ts\";\nimport type {\n\tDefaultResourceLoaderInheritanceSnapshot,\n\tDefaultResourceLoaderOptions,\n\tResourceExtensionPaths,\n\tResourceLoader,\n\tResourceLoaderReloadOptions,\n} from \"./resource-loader-types.ts\";\n\nexport class DefaultResourceLoader implements ResourceLoader {\n\tprivate cwd: string;\n\tprivate agentDir: string;\n\tprivate settingsManager: SettingsManager;\n\tprivate eventBus: EventBus;\n\tprivate packageManager: DefaultPackageManager;\n\tprivate additionalExtensionPaths: string[];\n\tprivate additionalSkillPaths: string[];\n\tprivate additionalPromptTemplatePaths: string[];\n\tprivate additionalThemePaths: string[];\n\tprivate builtinPackagePaths: PackageSource[];\n\tprivate extensionFactories: InlineExtension[];\n\tprivate noExtensions: boolean;\n\tprivate noSkills: boolean;\n\tprivate noPromptTemplates: boolean;\n\tprivate noThemes: boolean;\n\tprivate noContextFiles: boolean;\n\tprivate systemPromptSource?: string;\n\tprivate appendSystemPromptSource?: string[];\n\tprivate extensionsOverride?: (base: LoadExtensionsResult) => LoadExtensionsResult;\n\tprivate skillsOverride?: (base: { skills: Skill[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tskills: Skill[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate promptsOverride?: (base: { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tprompts: PromptTemplate[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate themesOverride?: (base: { themes: Theme[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tthemes: Theme[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tprivate agentsFilesOverride?: (base: { agentsFiles: Array<{ path: string; content: string }> }) => {\n\t\tagentsFiles: Array<{ path: string; content: string }>;\n\t};\n\tprivate systemPromptOverride?: (base: string | undefined) => string | undefined;\n\tprivate appendSystemPromptOverride?: (base: string[]) => string[];\n\tprivate extensionsResult: LoadExtensionsResult;\n\tprivate skills: Skill[];\n\tprivate skillDiagnostics: ResourceDiagnostic[];\n\tprivate prompts: PromptTemplate[];\n\tprivate promptDiagnostics: ResourceDiagnostic[];\n\tprivate themes: Theme[];\n\tprivate themeDiagnostics: ResourceDiagnostic[];\n\tprivate agentsFiles: Array<{ path: string; content: string }>;\n\tprivate systemPrompt?: string;\n\tprivate appendSystemPrompt: string[];\n\tprivate workflowResources: ResolvedResource[];\n\tprivate trustedBorrowedProjectLocalSources?: Set<string>;\n\tprivate lastSkillPaths: string[];\n\tprivate extensionSkillSourceInfos: Map<string, SourceInfo>;\n\tprivate extensionPromptSourceInfos: Map<string, SourceInfo>;\n\tprivate extensionThemeSourceInfos: Map<string, SourceInfo>;\n\tprivate lastPromptPaths: string[];\n\tprivate lastThemePaths: string[];\n\tprivate loaded: boolean;\n\n\tconstructor(options: DefaultResourceLoaderOptions) {\n\t\tconst inheritanceSnapshot = options.resourceLoaderInheritanceSnapshot;\n\t\tconst inheritedSettingsOptions = inheritanceSnapshot?.projectTrusted === undefined\n\t\t\t? undefined\n\t\t\t: { projectTrusted: inheritanceSnapshot.projectTrusted };\n\t\tthis.cwd = resolvePath(options.cwd);\n\t\tthis.agentDir = resolvePath(options.agentDir);\n\t\tthis.settingsManager = options.settingsManager ?? SettingsManager.create(\n\t\t\tthis.cwd,\n\t\t\tthis.agentDir,\n\t\t\tinheritedSettingsOptions,\n\t\t);\n\t\tthis.eventBus = options.eventBus ?? createEventBus();\n\t\tthis.packageManager = new DefaultPackageManager({\n\t\t\tcwd: this.cwd,\n\t\t\tagentDir: this.agentDir,\n\t\t\tsettingsManager: this.settingsManager,\n\t\t});\n\t\tthis.additionalExtensionPaths = mergeInheritedStrings(\n\t\t\tinheritanceSnapshot?.additionalExtensionPaths,\n\t\t\toptions.additionalExtensionPaths,\n\t\t);\n\t\tthis.additionalSkillPaths = mergeInheritedStrings(inheritanceSnapshot?.additionalSkillPaths, options.additionalSkillPaths);\n\t\tthis.additionalPromptTemplatePaths = mergeInheritedStrings(\n\t\t\tinheritanceSnapshot?.additionalPromptTemplatePaths,\n\t\t\toptions.additionalPromptTemplatePaths,\n\t\t);\n\t\tthis.additionalThemePaths = mergeInheritedStrings(inheritanceSnapshot?.additionalThemePaths, options.additionalThemePaths);\n\t\tthis.builtinPackagePaths = options.builtinPackagePaths !== undefined\n\t\t\t? clonePackageSources(options.builtinPackagePaths)\n\t\t\t: clonePackageSources(inheritanceSnapshot?.builtinPackagePaths);\n\t\tthis.extensionFactories = [...(inheritanceSnapshot?.extensionFactories ?? []), ...(options.extensionFactories ?? [])];\n\t\tthis.noExtensions = options.noExtensions ?? inheritanceSnapshot?.noExtensions ?? false;\n\t\tthis.noSkills = options.noSkills ?? inheritanceSnapshot?.noSkills ?? false;\n\t\tthis.noPromptTemplates = options.noPromptTemplates ?? inheritanceSnapshot?.noPromptTemplates ?? false;\n\t\tthis.noThemes = options.noThemes ?? inheritanceSnapshot?.noThemes ?? false;\n\t\tthis.noContextFiles = options.noContextFiles ?? inheritanceSnapshot?.noContextFiles ?? false;\n\t\tthis.systemPromptSource = options.systemPrompt ?? inheritanceSnapshot?.systemPrompt;\n\t\tthis.appendSystemPromptSource = options.appendSystemPrompt !== undefined\n\t\t\t? [...options.appendSystemPrompt]\n\t\t\t: inheritanceSnapshot?.appendSystemPrompt === undefined\n\t\t\t\t? undefined\n\t\t\t\t: [...inheritanceSnapshot.appendSystemPrompt];\n\t\tthis.extensionsOverride = options.extensionsOverride;\n\t\tthis.skillsOverride = options.skillsOverride;\n\t\tthis.promptsOverride = options.promptsOverride;\n\t\tthis.themesOverride = options.themesOverride;\n\t\tthis.agentsFilesOverride = options.agentsFilesOverride;\n\t\tthis.systemPromptOverride = options.systemPromptOverride;\n\t\tthis.appendSystemPromptOverride = options.appendSystemPromptOverride;\n\t\tthis.extensionsResult = { extensions: [], errors: [], runtime: createExtensionRuntime() };\n\t\tthis.skills = [];\n\t\tthis.skillDiagnostics = [];\n\t\tthis.prompts = [];\n\t\tthis.promptDiagnostics = [];\n\t\tthis.themes = [];\n\t\tthis.themeDiagnostics = [];\n\t\tthis.agentsFiles = [];\n\t\tthis.appendSystemPrompt = [];\n\t\tthis.workflowResources = [];\n\t\tthis.trustedBorrowedProjectLocalSources = inheritanceSnapshot?.trustedBorrowedProjectLocalSources === undefined\n\t\t\t? undefined\n\t\t\t: new Set(inheritanceSnapshot.trustedBorrowedProjectLocalSources);\n\t\tthis.lastSkillPaths = [];\n\t\tthis.extensionSkillSourceInfos = new Map();\n\t\tthis.extensionPromptSourceInfos = new Map();\n\t\tthis.extensionThemeSourceInfos = new Map();\n\t\tthis.lastPromptPaths = [];\n\t\tthis.lastThemePaths = [];\n\t\tthis.loaded = false;\n\t\tthis.touchInternalFieldsForSplit();\n\t}\n\n\tgetExtensions(): LoadExtensionsResult {\n\t\treturn this.extensionsResult;\n\t}\n\n\tgetSkills(): { skills: Skill[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { skills: this.skills, diagnostics: this.skillDiagnostics };\n\t}\n\n\tgetPrompts(): { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { prompts: this.prompts, diagnostics: this.promptDiagnostics };\n\t}\n\n\tgetThemes(): { themes: Theme[]; diagnostics: ResourceDiagnostic[] } {\n\t\treturn { themes: this.themes, diagnostics: this.themeDiagnostics };\n\t}\n\n\tgetAgentsFiles(): { agentsFiles: Array<{ path: string; content: string }> } {\n\t\treturn { agentsFiles: this.agentsFiles };\n\t}\n\n\tgetSystemPrompt(): string | undefined {\n\t\treturn this.systemPrompt;\n\t}\n\n\tgetAppendSystemPrompt(): string[] {\n\t\treturn this.appendSystemPrompt;\n\t}\n\n\tgetWorkflowResources(): ResolvedResource[] {\n\t\treturn [...this.workflowResources];\n\t}\n\n\tgetInheritanceSnapshot(): DefaultResourceLoaderInheritanceSnapshot {\n\t\treturn {\n\t\t\tprojectTrusted: this.settingsManager.isProjectTrusted(),\n\t\t\tadditionalExtensionPaths: [...this.additionalExtensionPaths],\n\t\t\tadditionalSkillPaths: [...this.additionalSkillPaths],\n\t\t\tadditionalPromptTemplatePaths: [...this.additionalPromptTemplatePaths],\n\t\t\tadditionalThemePaths: [...this.additionalThemePaths],\n\t\t\tbuiltinPackagePaths: clonePackageSources(this.builtinPackagePaths),\n\t\t\textensionFactories: [...this.extensionFactories],\n\t\t\tnoExtensions: this.noExtensions,\n\t\t\tnoSkills: this.noSkills,\n\t\t\tnoPromptTemplates: this.noPromptTemplates,\n\t\t\tnoThemes: this.noThemes,\n\t\t\tnoContextFiles: this.noContextFiles,\n\t\t\t...(this.systemPromptSource === undefined ? {} : { systemPrompt: this.systemPromptSource }),\n\t\t\t...(this.appendSystemPromptSource === undefined ? {} : { appendSystemPrompt: [...this.appendSystemPromptSource] }),\n\t\t\t...(this.trustedBorrowedProjectLocalSources === undefined\n\t\t\t\t? {}\n\t\t\t\t: { trustedBorrowedProjectLocalSources: [...this.trustedBorrowedProjectLocalSources] }),\n\t\t};\n\t}\n\n\tasync refreshWorkflowResources(): Promise<ResolvedResource[]> {\n\t\tconst { resolvedPaths, cliExtensionPaths, builtinPackagePaths } = await resolvePackageResourcePaths(this, {\n\t\t\ttrustedBorrowedProjectLocalSources: this.trustedBorrowedProjectLocalSources,\n\t\t});\n\t\tconst workflowResources = collectWorkflowResources(resolvedPaths, cliExtensionPaths, builtinPackagePaths);\n\t\tthis.workflowResources = workflowResources;\n\t\treturn [...this.workflowResources];\n\t}\n\n\tasync extendResources(paths: ResourceExtensionPaths): Promise<void> {\n\t\tconst skillPaths = normalizeExtensionPaths(this, paths.skillPaths ?? []);\n\t\tconst promptPaths = normalizeExtensionPaths(this, paths.promptPaths ?? []);\n\t\tconst themePaths = normalizeExtensionPaths(this, paths.themePaths ?? []);\n\t\trecordExtensionSourceInfo(this, skillPaths, \"skill\");\n\t\trecordExtensionSourceInfo(this, promptPaths, \"prompt\");\n\t\trecordExtensionSourceInfo(this, themePaths, \"theme\");\n\n\t\tif (skillPaths.length > 0) {\n\t\t\tthis.lastSkillPaths = mergeResourcePaths(this.cwd, this.lastSkillPaths, skillPaths.map((entry) => entry.path));\n\t\t\tawait updateSkillsFromPathsAsync(this, this.lastSkillPaths);\n\t\t}\n\t\tif (promptPaths.length > 0) {\n\t\t\tthis.lastPromptPaths = mergeResourcePaths(this.cwd, this.lastPromptPaths, promptPaths.map((entry) => entry.path));\n\t\t\tawait updatePromptsFromPathsAsync(this, this.lastPromptPaths);\n\t\t}\n\t\tif (themePaths.length > 0) {\n\t\t\tthis.lastThemePaths = mergeResourcePaths(this.cwd, this.lastThemePaths, themePaths.map((entry) => entry.path));\n\t\t\tawait updateThemesFromPathsAsync(this, this.lastThemePaths);\n\t\t}\n\t}\n\n\tasync loadProjectTrustExtensions(): Promise<LoadExtensionsResult> {\n\t\treturn loadProjectTrustExtensions(this);\n\t}\n\n\tasync reload(options?: ResourceLoaderReloadOptions): Promise<void> {\n\t\treturn reloadDefaultResourceLoader(this, options);\n\t}\n\n\tprivate touchInternalFieldsForSplit(): void {\n\t\tvoid this.eventBus;\n\t\tvoid this.packageManager;\n\t\tvoid this.noContextFiles;\n\t\tvoid this.extensionsOverride;\n\t\tvoid this.skillsOverride;\n\t\tvoid this.promptsOverride;\n\t\tvoid this.themesOverride;\n\t\tvoid this.agentsFilesOverride;\n\t\tvoid this.systemPromptOverride;\n\t\tvoid this.appendSystemPromptOverride;\n\t\tvoid this.extensionSkillSourceInfos;\n\t\tvoid this.extensionPromptSourceInfos;\n\t\tvoid this.extensionThemeSourceInfos;\n\t\tvoid this.loaded;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-extensions.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-extensions.ts"],"names":[],"mappings":"AAGA,OAAO,EAGN,KAAK,wBAAwB,EAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,4BAA4B,CAAC;AAM3F,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,qBAAqB,EAC7B,cAAc,EAAE,MAAM,EAAE,EACxB,kBAAkB,EAAE,oBAAoB,GAAG,SAAS,EACpD,wBAAwB,EAAE,wBAAwB,EAClD,2BAA2B,EAAE,MAAM,wCAAwC,GACzE,OAAO,CAAC,oBAAoB,CAAC,CAmE/B;AAED,wBAAsB,sBAAsB,CAC3C,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,gBAAgB,EACzB,wBAAwB,EAAE,wBAAwB,EAClD,2BAA2B,EAAE,MAAM,wCAAwC,GACzE,OAAO,CAAC;IACV,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C,CAAC,CA4BD"}
1
+ {"version":3,"file":"resource-loader-extensions.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-extensions.ts"],"names":[],"mappings":"AAGA,OAAO,EAGN,KAAK,wBAAwB,EAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,4BAA4B,CAAC;AAM3F,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,qBAAqB,EAC7B,cAAc,EAAE,MAAM,EAAE,EACxB,kBAAkB,EAAE,oBAAoB,GAAG,SAAS,EACpD,wBAAwB,EAAE,wBAAwB,EAClD,2BAA2B,EAAE,MAAM,wCAAwC,GACzE,OAAO,CAAC,oBAAoB,CAAC,CAmE/B;AAED,wBAAsB,sBAAsB,CAC3C,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,gBAAgB,EACzB,wBAAwB,EAAE,wBAAwB,EAClD,2BAA2B,EAAE,MAAM,wCAAwC,GACzE,OAAO,CAAC;IACV,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C,CAAC,CA+BD"}
@@ -52,13 +52,16 @@ export async function loadExtensionFactories(loader, runtime, workflowResourcePr
52
52
  const state = resourceInternals(loader);
53
53
  const extensions = [];
54
54
  const errors = [];
55
- for (const [index, factory] of state.extensionFactories.entries()) {
55
+ for (const [index, inlineExtension] of state.extensionFactories.entries()) {
56
56
  if (index > 0) {
57
57
  await yieldToEventLoop();
58
58
  }
59
- const extensionPath = `<inline:${index + 1}>`;
59
+ const descriptor = typeof inlineExtension === "function" ? undefined : inlineExtension;
60
+ const factory = typeof inlineExtension === "function" ? inlineExtension : inlineExtension.factory;
61
+ const extensionPath = `<inline:${descriptor?.name ?? index + 1}>`;
60
62
  try {
61
63
  const extension = await loadExtensionFromFactory(factory, state.cwd, state.eventBus, runtime, extensionPath, workflowResourceProvider, inheritanceSnapshotProvider);
64
+ extension.hidden = descriptor?.hidden;
62
65
  extensions.push(extension);
63
66
  }
64
67
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-extensions.js","sourceRoot":"","sources":["../../src/core/resource-loader-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EACN,wBAAwB,EACxB,oBAAoB,GAEpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAInE,SAAS,wBAAwB,CAAC,MAA6B,EAAE,IAAY;IAC5E,OAAO,WAAW,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,MAA6B,EAC7B,cAAwB,EACxB,kBAAoD,EACpD,wBAAkD,EAClD,2BAA2E;IAE3E,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACzB,MAAM,kBAAkB,GAAG,eAAe,CAAC,6CAA6C,CAAC,CAAC;QAC1F,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAClD,cAAc,EACd,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,QAAQ,EACd,wBAAwB,EACxB,SAAS,EACT,2BAA2B,CAC3B,CAAC;QACF,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAClC,MAAM,oBAAoB,GAAG,eAAe,CAAC,2DAA2D,CAAC,CAAC;QAC1G,MAAM,gBAAgB,GAAG,MAAM,sBAAsB,CACpD,MAAM,EACN,gBAAgB,CAAC,OAAO,EACxB,wBAAwB,EACxB,2BAA2B,CAC3B,CAAC;QACF,aAAa,CAAC,oBAAoB,CAAC,CAAC;QACpC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACjE,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,+BAA+B,CAAC,gBAAgB,CAAC,CAAC;QAClD,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAC9B,kBAAkB,CAAC,UAAU;SAC3B,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;SAC7D,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CACzD,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CACjC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CACtF,CAAC;IACF,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACrD,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5D,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IACH,MAAM,kBAAkB,GAAG,eAAe,CAAC,6CAA6C,CAAC,CAAC;IAC1F,MAAM,mBAAmB,GAAG,MAAM,oBAAoB,CACrD,cAAc,EACd,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,QAAQ,EACd,wBAAwB,EACxB,kBAAkB,CAAC,OAAO,EAC1B,2BAA2B,CAC3B,CAAC;IACF,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAClC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;IAC9C,KAAK,MAAM,SAAS,IAAI,mBAAmB,CAAC,UAAU,EAAE,CAAC;QACxD,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACpH,MAAM,iBAAiB,GAAG,cAAc;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;SACvE,MAAM,CAAC,CAAC,SAAS,EAA0B,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IACzE,iBAAiB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAE5C,MAAM,gBAAgB,GAAyB;QAC9C,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC;QACrE,OAAO,EAAE,kBAAkB,CAAC,OAAO;KACnC,CAAC;IACF,+BAA+B,CAAC,gBAAgB,CAAC,CAAC;IAClD,OAAO,gBAAgB,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,MAA6B,EAC7B,OAAyB,EACzB,wBAAkD,EAClD,2BAA2E;IAK3E,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,UAAU,GAAgB,EAAE,CAAC;IACnC,MAAM,MAAM,GAA2C,EAAE,CAAC;IAE1D,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC;QACnE,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACf,MAAM,gBAAgB,EAAE,CAAC;QAC1B,CAAC;QACD,MAAM,aAAa,GAAG,WAAW,KAAK,GAAG,CAAC,GAAG,CAAC;QAC9C,IAAI,CAAC;YACJ,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAC/C,OAAO,EACP,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,QAAQ,EACd,OAAO,EACP,aAAa,EACb,wBAAwB,EACxB,2BAA2B,CAC3B,CAAC;YACF,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC;YACpF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,+BAA+B,CAAC,gBAAsC;IAC9E,gGAAgG;IAChG,8GAA8G;IAC9G,MAAM,SAAS,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB,CAAC,UAAuB;IACxD,MAAM,SAAS,GAA6C,EAAE,CAAC;IAE/D,sDAAsD;IACtD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,cAAc;QACd,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,aAAa,IAAI,aAAa,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjD,SAAS,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,SAAS,QAAQ,oBAAoB,aAAa,EAAE;iBAC7D,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;QACF,CAAC;QAED,cAAc;QACd,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,aAAa,IAAI,aAAa,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjD,SAAS,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,WAAW,QAAQ,oBAAoB,aAAa,EAAE;iBAC/D,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC","sourcesContent":["import { resolvePath } from \"../utils/paths.ts\";\nimport { yieldToEventLoop } from \"../utils/event-loop.ts\";\nimport { startTimingSpan, endTimingSpan } from \"./timings.ts\";\nimport {\n\tloadExtensionFromFactory,\n\tloadExtensionsCached,\n\ttype WorkflowResourceProvider,\n} from \"./extensions/loader.ts\";\nimport type { Extension, ExtensionRuntime, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport { resourceInternals } from \"./resource-loader-internals.ts\";\nimport type { DefaultResourceLoader } from \"./resource-loader-core.ts\";\nimport type { DefaultResourceLoaderInheritanceSnapshot } from \"./resource-loader-types.ts\";\n\nfunction resolveExtensionLoadPath(loader: DefaultResourceLoader, path: string): string {\n\treturn resolvePath(path, resourceInternals(loader).cwd, { normalizeUnicodeSpaces: true });\n}\n\nexport async function loadFinalExtensionSet(\n\tloader: DefaultResourceLoader,\n\textensionPaths: string[],\n\tpreTrustExtensions: LoadExtensionsResult | undefined,\n\tworkflowResourceProvider: WorkflowResourceProvider,\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot,\n): Promise<LoadExtensionsResult> {\n\tconst state = resourceInternals(loader);\n\tif (!preTrustExtensions) {\n\t\tconst loadExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadExtensions\");\n\t\tconst extensionsResult = await loadExtensionsCached(\n\t\t\textensionPaths,\n\t\t\tstate.cwd,\n\t\t\tstate.eventBus,\n\t\t\tworkflowResourceProvider,\n\t\t\tundefined,\n\t\t\tinheritanceSnapshotProvider,\n\t\t);\n\t\tendTimingSpan(loadExtensionsSpan);\n\t\tconst inlineExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadInlineExtensionFactories\");\n\t\tconst inlineExtensions = await loadExtensionFactories(\n\t\t\tloader,\n\t\t\textensionsResult.runtime,\n\t\t\tworkflowResourceProvider,\n\t\t\tinheritanceSnapshotProvider,\n\t\t);\n\t\tendTimingSpan(inlineExtensionsSpan);\n\t\textensionsResult.extensions.push(...inlineExtensions.extensions);\n\t\textensionsResult.errors.push(...inlineExtensions.errors);\n\t\taddExtensionConflictDiagnostics(extensionsResult);\n\t\treturn extensionsResult;\n\t}\n\n\tconst preloadedByPath = new Map(\n\t\tpreTrustExtensions.extensions\n\t\t\t.filter((extension) => !extension.path.startsWith(\"<inline:\"))\n\t\t\t.map((extension) => [extension.resolvedPath, extension]),\n\t);\n\tconst failedPreloadPaths = new Set(\n\t\tpreTrustExtensions.errors.map((error) => resolveExtensionLoadPath(loader, error.path)),\n\t);\n\tconst remainingPaths = extensionPaths.filter((path) => {\n\t\tconst resolvedPath = resolveExtensionLoadPath(loader, path);\n\t\treturn !preloadedByPath.has(resolvedPath) && !failedPreloadPaths.has(resolvedPath);\n\t});\n\tconst loadExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadExtensions\");\n\tconst remainingExtensions = await loadExtensionsCached(\n\t\tremainingPaths,\n\t\tstate.cwd,\n\t\tstate.eventBus,\n\t\tworkflowResourceProvider,\n\t\tpreTrustExtensions.runtime,\n\t\tinheritanceSnapshotProvider,\n\t);\n\tendTimingSpan(loadExtensionsSpan);\n\tconst loadedByPath = new Map(preloadedByPath);\n\tfor (const extension of remainingExtensions.extensions) {\n\t\tloadedByPath.set(extension.resolvedPath, extension);\n\t}\n\n\tconst inlineExtensions = preTrustExtensions.extensions.filter((extension) => extension.path.startsWith(\"<inline:\"));\n\tconst orderedExtensions = extensionPaths\n\t\t.map((path) => loadedByPath.get(resolveExtensionLoadPath(loader, path)))\n\t\t.filter((extension): extension is Extension => extension !== undefined);\n\torderedExtensions.push(...inlineExtensions);\n\n\tconst extensionsResult: LoadExtensionsResult = {\n\t\textensions: orderedExtensions,\n\t\terrors: [...preTrustExtensions.errors, ...remainingExtensions.errors],\n\t\truntime: preTrustExtensions.runtime,\n\t};\n\taddExtensionConflictDiagnostics(extensionsResult);\n\treturn extensionsResult;\n}\n\nexport async function loadExtensionFactories(\n\tloader: DefaultResourceLoader,\n\truntime: ExtensionRuntime,\n\tworkflowResourceProvider: WorkflowResourceProvider,\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot,\n): Promise<{\n\textensions: Extension[];\n\terrors: Array<{ path: string; error: string }>;\n}> {\n\tconst state = resourceInternals(loader);\n\tconst extensions: Extension[] = [];\n\tconst errors: Array<{ path: string; error: string }> = [];\n\n\tfor (const [index, factory] of state.extensionFactories.entries()) {\n\t\tif (index > 0) {\n\t\t\tawait yieldToEventLoop();\n\t\t}\n\t\tconst extensionPath = `<inline:${index + 1}>`;\n\t\ttry {\n\t\t\tconst extension = await loadExtensionFromFactory(\n\t\t\t\tfactory,\n\t\t\t\tstate.cwd,\n\t\t\t\tstate.eventBus,\n\t\t\t\truntime,\n\t\t\t\textensionPath,\n\t\t\t\tworkflowResourceProvider,\n\t\t\t\tinheritanceSnapshotProvider,\n\t\t\t);\n\t\t\textensions.push(extension);\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"failed to load extension\";\n\t\t\terrors.push({ path: extensionPath, error: message });\n\t\t}\n\t}\n\n\treturn { extensions, errors };\n}\n\nfunction addExtensionConflictDiagnostics(extensionsResult: LoadExtensionsResult): void {\n\t// Detect extension conflicts (tools, commands, flags with same names from different extensions)\n\t// Keep all extensions loaded. Conflicts are reported as diagnostics, and precedence is handled by load order.\n\tconst conflicts = detectExtensionConflicts(extensionsResult.extensions);\n\tfor (const conflict of conflicts) {\n\t\textensionsResult.errors.push({ path: conflict.path, error: conflict.message });\n\t}\n}\n\nfunction detectExtensionConflicts(extensions: Extension[]): Array<{ path: string; message: string }> {\n\tconst conflicts: Array<{ path: string; message: string }> = [];\n\n\t// Track which extension registered each tool and flag\n\tconst toolOwners = new Map<string, string>();\n\tconst flagOwners = new Map<string, string>();\n\n\tfor (const ext of extensions) {\n\t\t// Check tools\n\t\tfor (const toolName of ext.tools.keys()) {\n\t\t\tconst existingOwner = toolOwners.get(toolName);\n\t\t\tif (existingOwner && existingOwner !== ext.path) {\n\t\t\t\tconflicts.push({\n\t\t\t\t\tpath: ext.path,\n\t\t\t\t\tmessage: `Tool \"${toolName}\" conflicts with ${existingOwner}`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\ttoolOwners.set(toolName, ext.path);\n\t\t\t}\n\t\t}\n\n\t\t// Check flags\n\t\tfor (const flagName of ext.flags.keys()) {\n\t\t\tconst existingOwner = flagOwners.get(flagName);\n\t\t\tif (existingOwner && existingOwner !== ext.path) {\n\t\t\t\tconflicts.push({\n\t\t\t\t\tpath: ext.path,\n\t\t\t\t\tmessage: `Flag \"--${flagName}\" conflicts with ${existingOwner}`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tflagOwners.set(flagName, ext.path);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn conflicts;\n}\n"]}
1
+ {"version":3,"file":"resource-loader-extensions.js","sourceRoot":"","sources":["../../src/core/resource-loader-extensions.ts"],"names":[],"mappings":"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","sourcesContent":["import { resolvePath } from \"../utils/paths.ts\";\nimport { yieldToEventLoop } from \"../utils/event-loop.ts\";\nimport { startTimingSpan, endTimingSpan } from \"./timings.ts\";\nimport {\n\tloadExtensionFromFactory,\n\tloadExtensionsCached,\n\ttype WorkflowResourceProvider,\n} from \"./extensions/loader.ts\";\nimport type { Extension, ExtensionRuntime, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport { resourceInternals } from \"./resource-loader-internals.ts\";\nimport type { DefaultResourceLoader } from \"./resource-loader-core.ts\";\nimport type { DefaultResourceLoaderInheritanceSnapshot } from \"./resource-loader-types.ts\";\n\nfunction resolveExtensionLoadPath(loader: DefaultResourceLoader, path: string): string {\n\treturn resolvePath(path, resourceInternals(loader).cwd, { normalizeUnicodeSpaces: true });\n}\n\nexport async function loadFinalExtensionSet(\n\tloader: DefaultResourceLoader,\n\textensionPaths: string[],\n\tpreTrustExtensions: LoadExtensionsResult | undefined,\n\tworkflowResourceProvider: WorkflowResourceProvider,\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot,\n): Promise<LoadExtensionsResult> {\n\tconst state = resourceInternals(loader);\n\tif (!preTrustExtensions) {\n\t\tconst loadExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadExtensions\");\n\t\tconst extensionsResult = await loadExtensionsCached(\n\t\t\textensionPaths,\n\t\t\tstate.cwd,\n\t\t\tstate.eventBus,\n\t\t\tworkflowResourceProvider,\n\t\t\tundefined,\n\t\t\tinheritanceSnapshotProvider,\n\t\t);\n\t\tendTimingSpan(loadExtensionsSpan);\n\t\tconst inlineExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadInlineExtensionFactories\");\n\t\tconst inlineExtensions = await loadExtensionFactories(\n\t\t\tloader,\n\t\t\textensionsResult.runtime,\n\t\t\tworkflowResourceProvider,\n\t\t\tinheritanceSnapshotProvider,\n\t\t);\n\t\tendTimingSpan(inlineExtensionsSpan);\n\t\textensionsResult.extensions.push(...inlineExtensions.extensions);\n\t\textensionsResult.errors.push(...inlineExtensions.errors);\n\t\taddExtensionConflictDiagnostics(extensionsResult);\n\t\treturn extensionsResult;\n\t}\n\n\tconst preloadedByPath = new Map(\n\t\tpreTrustExtensions.extensions\n\t\t\t.filter((extension) => !extension.path.startsWith(\"<inline:\"))\n\t\t\t.map((extension) => [extension.resolvedPath, extension]),\n\t);\n\tconst failedPreloadPaths = new Set(\n\t\tpreTrustExtensions.errors.map((error) => resolveExtensionLoadPath(loader, error.path)),\n\t);\n\tconst remainingPaths = extensionPaths.filter((path) => {\n\t\tconst resolvedPath = resolveExtensionLoadPath(loader, path);\n\t\treturn !preloadedByPath.has(resolvedPath) && !failedPreloadPaths.has(resolvedPath);\n\t});\n\tconst loadExtensionsSpan = startTimingSpan(\"DefaultResourceLoader.reload.loadExtensions\");\n\tconst remainingExtensions = await loadExtensionsCached(\n\t\tremainingPaths,\n\t\tstate.cwd,\n\t\tstate.eventBus,\n\t\tworkflowResourceProvider,\n\t\tpreTrustExtensions.runtime,\n\t\tinheritanceSnapshotProvider,\n\t);\n\tendTimingSpan(loadExtensionsSpan);\n\tconst loadedByPath = new Map(preloadedByPath);\n\tfor (const extension of remainingExtensions.extensions) {\n\t\tloadedByPath.set(extension.resolvedPath, extension);\n\t}\n\n\tconst inlineExtensions = preTrustExtensions.extensions.filter((extension) => extension.path.startsWith(\"<inline:\"));\n\tconst orderedExtensions = extensionPaths\n\t\t.map((path) => loadedByPath.get(resolveExtensionLoadPath(loader, path)))\n\t\t.filter((extension): extension is Extension => extension !== undefined);\n\torderedExtensions.push(...inlineExtensions);\n\n\tconst extensionsResult: LoadExtensionsResult = {\n\t\textensions: orderedExtensions,\n\t\terrors: [...preTrustExtensions.errors, ...remainingExtensions.errors],\n\t\truntime: preTrustExtensions.runtime,\n\t};\n\taddExtensionConflictDiagnostics(extensionsResult);\n\treturn extensionsResult;\n}\n\nexport async function loadExtensionFactories(\n\tloader: DefaultResourceLoader,\n\truntime: ExtensionRuntime,\n\tworkflowResourceProvider: WorkflowResourceProvider,\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot,\n): Promise<{\n\textensions: Extension[];\n\terrors: Array<{ path: string; error: string }>;\n}> {\n\tconst state = resourceInternals(loader);\n\tconst extensions: Extension[] = [];\n\tconst errors: Array<{ path: string; error: string }> = [];\n\n\tfor (const [index, inlineExtension] of state.extensionFactories.entries()) {\n\t\tif (index > 0) {\n\t\t\tawait yieldToEventLoop();\n\t\t}\n\t\tconst descriptor = typeof inlineExtension === \"function\" ? undefined : inlineExtension;\n\t\tconst factory = typeof inlineExtension === \"function\" ? inlineExtension : inlineExtension.factory;\n\t\tconst extensionPath = `<inline:${descriptor?.name ?? index + 1}>`;\n\t\ttry {\n\t\t\tconst extension = await loadExtensionFromFactory(\n\t\t\t\tfactory,\n\t\t\t\tstate.cwd,\n\t\t\t\tstate.eventBus,\n\t\t\t\truntime,\n\t\t\t\textensionPath,\n\t\t\t\tworkflowResourceProvider,\n\t\t\t\tinheritanceSnapshotProvider,\n\t\t\t);\n\t\t\textension.hidden = descriptor?.hidden;\n\t\t\textensions.push(extension);\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"failed to load extension\";\n\t\t\terrors.push({ path: extensionPath, error: message });\n\t\t}\n\t}\n\n\treturn { extensions, errors };\n}\n\nfunction addExtensionConflictDiagnostics(extensionsResult: LoadExtensionsResult): void {\n\t// Detect extension conflicts (tools, commands, flags with same names from different extensions)\n\t// Keep all extensions loaded. Conflicts are reported as diagnostics, and precedence is handled by load order.\n\tconst conflicts = detectExtensionConflicts(extensionsResult.extensions);\n\tfor (const conflict of conflicts) {\n\t\textensionsResult.errors.push({ path: conflict.path, error: conflict.message });\n\t}\n}\n\nfunction detectExtensionConflicts(extensions: Extension[]): Array<{ path: string; message: string }> {\n\tconst conflicts: Array<{ path: string; message: string }> = [];\n\n\t// Track which extension registered each tool and flag\n\tconst toolOwners = new Map<string, string>();\n\tconst flagOwners = new Map<string, string>();\n\n\tfor (const ext of extensions) {\n\t\t// Check tools\n\t\tfor (const toolName of ext.tools.keys()) {\n\t\t\tconst existingOwner = toolOwners.get(toolName);\n\t\t\tif (existingOwner && existingOwner !== ext.path) {\n\t\t\t\tconflicts.push({\n\t\t\t\t\tpath: ext.path,\n\t\t\t\t\tmessage: `Tool \"${toolName}\" conflicts with ${existingOwner}`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\ttoolOwners.set(toolName, ext.path);\n\t\t\t}\n\t\t}\n\n\t\t// Check flags\n\t\tfor (const flagName of ext.flags.keys()) {\n\t\t\tconst existingOwner = flagOwners.get(flagName);\n\t\t\tif (existingOwner && existingOwner !== ext.path) {\n\t\t\t\tconflicts.push({\n\t\t\t\t\tpath: ext.path,\n\t\t\t\t\tmessage: `Flag \"--${flagName}\" conflicts with ${existingOwner}`,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tflagOwners.set(flagName, ext.path);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn conflicts;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-helpers.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EACxC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,MAAM,EAAE,CAEV;AAgBD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,GAAG,aAAa,EAAE,CAElG"}
1
+ {"version":3,"file":"resource-loader-helpers.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EACxC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GACpC,MAAM,EAAE,CAEV;AAiBD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,GAAG,aAAa,EAAE,CAElG"}
@@ -10,6 +10,7 @@ function clonePackageSource(source) {
10
10
  }
11
11
  return {
12
12
  source: source.source,
13
+ ...(source.autoload === undefined ? {} : { autoload: source.autoload }),
13
14
  ...(source.extensions === undefined ? {} : { extensions: [...source.extensions] }),
14
15
  ...(source.skills === undefined ? {} : { skills: [...source.skills] }),
15
16
  ...(source.prompts === undefined ? {} : { prompts: [...source.prompts] }),
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-helpers.js","sourceRoot":"","sources":["../../src/core/resource-loader-helpers.ts"],"names":[],"mappings":"AAEA,SAAS,gBAAgB,CAAC,MAAqC;IAC9D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,SAAwC,EACxC,OAAsC;IAEtC,OAAO,CAAC,GAAG,gBAAgB,CAAC,SAAS,CAAC,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAqB;IAChD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IACD,OAAO;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;KAC/E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA6C;IAChF,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AACzF,CAAC","sourcesContent":["import type { PackageSource } from \"./settings-manager.ts\";\n\nfunction cloneStringArray(values: readonly string[] | undefined): string[] {\n\treturn values === undefined ? [] : [...values];\n}\n\nexport function mergeInheritedStrings(\n\tinherited: readonly string[] | undefined,\n\tcurrent: readonly string[] | undefined,\n): string[] {\n\treturn [...cloneStringArray(inherited), ...cloneStringArray(current)];\n}\n\nfunction clonePackageSource(source: PackageSource): PackageSource {\n\tif (typeof source === \"string\") {\n\t\treturn source;\n\t}\n\treturn {\n\t\tsource: source.source,\n\t\t...(source.extensions === undefined ? {} : { extensions: [...source.extensions] }),\n\t\t...(source.skills === undefined ? {} : { skills: [...source.skills] }),\n\t\t...(source.prompts === undefined ? {} : { prompts: [...source.prompts] }),\n\t\t...(source.themes === undefined ? {} : { themes: [...source.themes] }),\n\t\t...(source.workflows === undefined ? {} : { workflows: [...source.workflows] }),\n\t};\n}\n\nexport function clonePackageSources(sources: readonly PackageSource[] | undefined): PackageSource[] {\n\treturn sources === undefined ? [] : sources.map((source) => clonePackageSource(source));\n}\n"]}
1
+ {"version":3,"file":"resource-loader-helpers.js","sourceRoot":"","sources":["../../src/core/resource-loader-helpers.ts"],"names":[],"mappings":"AAEA,SAAS,gBAAgB,CAAC,MAAqC;IAC9D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACpC,SAAwC,EACxC,OAAsC;IAEtC,OAAO,CAAC,GAAG,gBAAgB,CAAC,SAAS,CAAC,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAqB;IAChD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IACf,CAAC;IACD,OAAO;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;KAC/E,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA6C;IAChF,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AACzF,CAAC","sourcesContent":["import type { PackageSource } from \"./settings-manager.ts\";\n\nfunction cloneStringArray(values: readonly string[] | undefined): string[] {\n\treturn values === undefined ? [] : [...values];\n}\n\nexport function mergeInheritedStrings(\n\tinherited: readonly string[] | undefined,\n\tcurrent: readonly string[] | undefined,\n): string[] {\n\treturn [...cloneStringArray(inherited), ...cloneStringArray(current)];\n}\n\nfunction clonePackageSource(source: PackageSource): PackageSource {\n\tif (typeof source === \"string\") {\n\t\treturn source;\n\t}\n\treturn {\n\t\tsource: source.source,\n\t\t...(source.autoload === undefined ? {} : { autoload: source.autoload }),\n\t\t...(source.extensions === undefined ? {} : { extensions: [...source.extensions] }),\n\t\t...(source.skills === undefined ? {} : { skills: [...source.skills] }),\n\t\t...(source.prompts === undefined ? {} : { prompts: [...source.prompts] }),\n\t\t...(source.themes === undefined ? {} : { themes: [...source.themes] }),\n\t\t...(source.workflows === undefined ? {} : { workflows: [...source.workflows] }),\n\t};\n}\n\nexport function clonePackageSources(sources: readonly PackageSource[] | undefined): PackageSource[] {\n\treturn sources === undefined ? [] : sources.map((source) => clonePackageSource(source));\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { EventBus } from "./event-bus.ts";
2
- import type { ExtensionFactory, ExtensionRuntime, LoadExtensionsResult } from "./extensions/types.ts";
2
+ import type { InlineExtension, ExtensionRuntime, LoadExtensionsResult } from "./extensions/types.ts";
3
3
  import type { WorkflowResourceProvider } from "./extensions/loader.ts";
4
4
  import type { DefaultPackageManager, ResolvedResource } from "./package-manager.ts";
5
5
  import type { PromptTemplate } from "./prompt-templates.ts";
@@ -20,7 +20,7 @@ export interface ResourceLoaderInternals {
20
20
  additionalPromptTemplatePaths: string[];
21
21
  additionalThemePaths: string[];
22
22
  builtinPackagePaths: PackageSource[];
23
- extensionFactories: ExtensionFactory[];
23
+ extensionFactories: InlineExtension[];
24
24
  noExtensions: boolean;
25
25
  noSkills: boolean;
26
26
  noPromptTemplates: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-internals.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-internals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,4BAA4B,CAAC;AAE3F,MAAM,WAAW,uBAAuB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,qBAAqB,CAAC;IACtC,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,6BAA6B,EAAE,MAAM,EAAE,CAAC;IACxC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,mBAAmB,EAAE,aAAa,EAAE,CAAC;IACrC,kBAAkB,EAAE,gBAAgB,EAAE,CAAC;IACvC,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,oBAAoB,CAAC;IAC1E,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAAE,KAAK;QAClF,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,WAAW,EAAE,kBAAkB,EAAE,CAAC;KAClC,CAAC;IACF,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAAC,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAAE,KAAK;QAC7F,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,WAAW,EAAE,kBAAkB,EAAE,CAAC;KAClC,CAAC;IACF,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,WAAW,EAAE,kBAAkB,EAAE,CAAA;KAAE,KAAK;QAClF,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,WAAW,EAAE,kBAAkB,EAAE,CAAC;KAClC,CAAC;IACF,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,KAAK;QAC1F,WAAW,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACtD,CAAC;IACF,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC;IACxE,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1D,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;IACvC,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,iBAAiB,EAAE,kBAAkB,EAAE,CAAC;IACxC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,gBAAgB,EAAE,kBAAkB,EAAE,CAAC;IACvC,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,kCAAkC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,yBAAyB,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnD,0BAA0B,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpD,yBAAyB,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,sBAAsB,IAAI,wCAAwC,CAAC;IACnE,wBAAwB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,yBAAyB;IACzC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;CAC5E;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,uBAAuB,CAEzE"}
1
+ {"version":3,"file":"resource-loader-internals.d.ts","sourceRoot":"","sources":["../../src/core/resource-loader-internals.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader-internals.js","sourceRoot":"","sources":["../../src/core/resource-loader-internals.ts"],"names":[],"mappings":"AA8EA,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC/C,OAAO,MAA4C,CAAC;AACrD,CAAC","sourcesContent":["import type { EventBus } from \"./event-bus.ts\";\nimport type { ExtensionFactory, ExtensionRuntime, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport type { WorkflowResourceProvider } from \"./extensions/loader.ts\";\nimport type { DefaultPackageManager, ResolvedResource } from \"./package-manager.ts\";\nimport type { PromptTemplate } from \"./prompt-templates.ts\";\nimport type { SettingsManager, PackageSource } from \"./settings-manager.ts\";\nimport type { Skill } from \"./skills.ts\";\nimport type { SourceInfo } from \"./source-info.ts\";\nimport type { ResourceDiagnostic } from \"./diagnostics.ts\";\nimport type { Theme } from \"../modes/interactive/theme/theme.ts\";\nimport type { DefaultResourceLoaderInheritanceSnapshot } from \"./resource-loader-types.ts\";\n\nexport interface ResourceLoaderInternals {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n\teventBus: EventBus;\n\tpackageManager: DefaultPackageManager;\n\tadditionalExtensionPaths: string[];\n\tadditionalSkillPaths: string[];\n\tadditionalPromptTemplatePaths: string[];\n\tadditionalThemePaths: string[];\n\tbuiltinPackagePaths: PackageSource[];\n\textensionFactories: ExtensionFactory[];\n\tnoExtensions: boolean;\n\tnoSkills: boolean;\n\tnoPromptTemplates: boolean;\n\tnoThemes: boolean;\n\tnoContextFiles: boolean;\n\tsystemPromptSource?: string;\n\tappendSystemPromptSource?: string[];\n\textensionsOverride?: (base: LoadExtensionsResult) => LoadExtensionsResult;\n\tskillsOverride?: (base: { skills: Skill[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tskills: Skill[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tpromptsOverride?: (base: { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tprompts: PromptTemplate[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tthemesOverride?: (base: { themes: Theme[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tthemes: Theme[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tagentsFilesOverride?: (base: { agentsFiles: Array<{ path: string; content: string }> }) => {\n\t\tagentsFiles: Array<{ path: string; content: string }>;\n\t};\n\tsystemPromptOverride?: (base: string | undefined) => string | undefined;\n\tappendSystemPromptOverride?: (base: string[]) => string[];\n\textensionsResult: LoadExtensionsResult;\n\tskills: Skill[];\n\tskillDiagnostics: ResourceDiagnostic[];\n\tprompts: PromptTemplate[];\n\tpromptDiagnostics: ResourceDiagnostic[];\n\tthemes: Theme[];\n\tthemeDiagnostics: ResourceDiagnostic[];\n\tagentsFiles: Array<{ path: string; content: string }>;\n\tsystemPrompt?: string;\n\tappendSystemPrompt: string[];\n\tworkflowResources: ResolvedResource[];\n\ttrustedBorrowedProjectLocalSources?: Set<string>;\n\tlastSkillPaths: string[];\n\textensionSkillSourceInfos: Map<string, SourceInfo>;\n\textensionPromptSourceInfos: Map<string, SourceInfo>;\n\textensionThemeSourceInfos: Map<string, SourceInfo>;\n\tlastPromptPaths: string[];\n\tlastThemePaths: string[];\n\tloaded: boolean;\n\tgetInheritanceSnapshot(): DefaultResourceLoaderInheritanceSnapshot;\n\trefreshWorkflowResources(): Promise<ResolvedResource[]>;\n}\n\nexport interface ExtensionLoadDependencies {\n\truntime: ExtensionRuntime;\n\tworkflowResourceProvider: WorkflowResourceProvider;\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot;\n}\n\nexport function resourceInternals(loader: object): ResourceLoaderInternals {\n\treturn loader as unknown as ResourceLoaderInternals;\n}\n"]}
1
+ {"version":3,"file":"resource-loader-internals.js","sourceRoot":"","sources":["../../src/core/resource-loader-internals.ts"],"names":[],"mappings":"AA8EA,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC/C,OAAO,MAA4C,CAAC;AACrD,CAAC","sourcesContent":["import type { EventBus } from \"./event-bus.ts\";\nimport type { InlineExtension, ExtensionRuntime, LoadExtensionsResult } from \"./extensions/types.ts\";\nimport type { WorkflowResourceProvider } from \"./extensions/loader.ts\";\nimport type { DefaultPackageManager, ResolvedResource } from \"./package-manager.ts\";\nimport type { PromptTemplate } from \"./prompt-templates.ts\";\nimport type { SettingsManager, PackageSource } from \"./settings-manager.ts\";\nimport type { Skill } from \"./skills.ts\";\nimport type { SourceInfo } from \"./source-info.ts\";\nimport type { ResourceDiagnostic } from \"./diagnostics.ts\";\nimport type { Theme } from \"../modes/interactive/theme/theme.ts\";\nimport type { DefaultResourceLoaderInheritanceSnapshot } from \"./resource-loader-types.ts\";\n\nexport interface ResourceLoaderInternals {\n\tcwd: string;\n\tagentDir: string;\n\tsettingsManager: SettingsManager;\n\teventBus: EventBus;\n\tpackageManager: DefaultPackageManager;\n\tadditionalExtensionPaths: string[];\n\tadditionalSkillPaths: string[];\n\tadditionalPromptTemplatePaths: string[];\n\tadditionalThemePaths: string[];\n\tbuiltinPackagePaths: PackageSource[];\n\textensionFactories: InlineExtension[];\n\tnoExtensions: boolean;\n\tnoSkills: boolean;\n\tnoPromptTemplates: boolean;\n\tnoThemes: boolean;\n\tnoContextFiles: boolean;\n\tsystemPromptSource?: string;\n\tappendSystemPromptSource?: string[];\n\textensionsOverride?: (base: LoadExtensionsResult) => LoadExtensionsResult;\n\tskillsOverride?: (base: { skills: Skill[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tskills: Skill[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tpromptsOverride?: (base: { prompts: PromptTemplate[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tprompts: PromptTemplate[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tthemesOverride?: (base: { themes: Theme[]; diagnostics: ResourceDiagnostic[] }) => {\n\t\tthemes: Theme[];\n\t\tdiagnostics: ResourceDiagnostic[];\n\t};\n\tagentsFilesOverride?: (base: { agentsFiles: Array<{ path: string; content: string }> }) => {\n\t\tagentsFiles: Array<{ path: string; content: string }>;\n\t};\n\tsystemPromptOverride?: (base: string | undefined) => string | undefined;\n\tappendSystemPromptOverride?: (base: string[]) => string[];\n\textensionsResult: LoadExtensionsResult;\n\tskills: Skill[];\n\tskillDiagnostics: ResourceDiagnostic[];\n\tprompts: PromptTemplate[];\n\tpromptDiagnostics: ResourceDiagnostic[];\n\tthemes: Theme[];\n\tthemeDiagnostics: ResourceDiagnostic[];\n\tagentsFiles: Array<{ path: string; content: string }>;\n\tsystemPrompt?: string;\n\tappendSystemPrompt: string[];\n\tworkflowResources: ResolvedResource[];\n\ttrustedBorrowedProjectLocalSources?: Set<string>;\n\tlastSkillPaths: string[];\n\textensionSkillSourceInfos: Map<string, SourceInfo>;\n\textensionPromptSourceInfos: Map<string, SourceInfo>;\n\textensionThemeSourceInfos: Map<string, SourceInfo>;\n\tlastPromptPaths: string[];\n\tlastThemePaths: string[];\n\tloaded: boolean;\n\tgetInheritanceSnapshot(): DefaultResourceLoaderInheritanceSnapshot;\n\trefreshWorkflowResources(): Promise<ResolvedResource[]>;\n}\n\nexport interface ExtensionLoadDependencies {\n\truntime: ExtensionRuntime;\n\tworkflowResourceProvider: WorkflowResourceProvider;\n\tinheritanceSnapshotProvider: () => DefaultResourceLoaderInheritanceSnapshot;\n}\n\nexport function resourceInternals(loader: object): ResourceLoaderInternals {\n\treturn loader as unknown as ResourceLoaderInternals;\n}\n"]}