@daniel156161/prism 0.2.100 → 0.2.105

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 (1248) hide show
  1. package/README.md +2 -2
  2. package/dist/pi/pi-env.d.ts +1 -1
  3. package/dist/pi/pi-env.js +1 -1
  4. package/dist/prism-extensions/integrations/ai-memory-system.js +16 -9
  5. package/dist/prism-extensions/integrations/ai-memory-system.js.map +1 -1
  6. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  7. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +23 -25
  8. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  9. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts.map +1 -1
  10. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js +3 -1
  11. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js.map +1 -1
  12. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts +3 -2
  13. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
  14. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js +13 -3
  15. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
  16. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.d.ts.map +1 -1
  17. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js +14 -1
  18. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js.map +1 -1
  19. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +3 -2
  20. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
  21. package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
  22. package/node_modules/@earendil-works/pi-agent-core/package.json +4 -4
  23. package/node_modules/@earendil-works/pi-ai/README.md +5 -3
  24. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  25. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +34 -19
  26. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  27. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts +2 -0
  28. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
  29. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +9 -2
  30. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
  31. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  32. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +131 -7
  33. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
  34. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts +2 -2
  35. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts.map +1 -1
  36. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +17 -13
  37. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js.map +1 -1
  38. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts +5 -2
  39. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts.map +1 -1
  40. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +16 -0
  41. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js.map +1 -1
  42. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts +2 -2
  43. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts.map +1 -1
  44. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +15 -11
  45. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js.map +1 -1
  46. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.d.ts.map +1 -1
  47. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +7 -2
  48. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js.map +1 -1
  49. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
  50. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +4 -1
  51. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
  52. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +3 -2
  53. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  54. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +160 -86
  55. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  56. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
  57. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +6 -2
  58. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
  59. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts.map +1 -1
  60. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +1 -1
  61. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +1 -1
  62. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +4 -0
  63. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
  64. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +17 -10
  65. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
  66. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts +1 -0
  67. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts.map +1 -1
  68. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js +1 -1
  69. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js.map +1 -1
  70. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.d.ts.map +1 -1
  71. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js +98 -34
  72. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js.map +1 -1
  73. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.d.ts.map +1 -1
  74. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js +1 -14
  75. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js.map +1 -1
  76. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +75 -0
  77. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
  78. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +75 -0
  79. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  80. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +1 -1
  81. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
  82. package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
  83. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.d.ts +3 -1
  84. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.d.ts.map +1 -1
  85. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.js.map +1 -1
  86. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  87. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
  88. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
  89. package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -1
  90. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
  91. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cerebras.json +1 -1
  92. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  93. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
  94. package/node_modules/@earendil-works/pi-ai/dist/providers/data/deepseek.json +1 -1
  95. package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -1
  96. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
  97. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google-vertex.json +1 -1
  98. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google.json +1 -1
  99. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  100. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax-cn.json +1 -1
  101. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax.json +1 -1
  102. package/node_modules/@earendil-works/pi-ai/dist/providers/data/mistral.json +1 -1
  103. package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -1
  104. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
  105. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  106. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
  107. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  108. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
  109. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-individual.json +1 -1
  110. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan.json +1 -1
  111. package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -1
  112. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  113. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
  114. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
  115. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
  116. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
  117. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -1
  118. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
  119. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
  120. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts +1 -1
  121. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts.map +1 -1
  122. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js +1 -5
  123. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js.map +1 -1
  124. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +29 -4
  125. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  126. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  127. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts +2 -0
  128. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts.map +1 -0
  129. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js +15 -0
  130. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js.map +1 -0
  131. package/node_modules/@earendil-works/pi-ai/package.json +3 -4
  132. package/node_modules/@earendil-works/pi-client/CHANGELOG.md +4 -0
  133. package/node_modules/@earendil-works/pi-client/package.json +2 -2
  134. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +127 -0
  135. package/node_modules/@earendil-works/pi-coding-agent/README.md +13 -8
  136. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic-messages-JWX2WP65.js +45 -0
  137. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic.js +75 -0
  138. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/azure-openai-responses-5ENVCQ7U.js +2 -0
  139. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/bedrock-converse-stream.js +74 -0
  140. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-2KVJKXS2.js +50 -0
  141. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-4L3WN2XY.js +2 -0
  142. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
  143. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6R7UI4IY.js +2 -0
  144. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-AXIIZGTV.js +2 -0
  145. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-DRQDKNXA.js +2 -0
  146. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-GMWCTUPB.js +2 -0
  147. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-JUUC5AZY.js +2 -0
  148. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
  149. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-MNAIPA3J.js +2 -0
  150. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NBBFIJUL.js +11 -0
  151. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NUHFSC37.js +25 -0
  152. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-OMWWHBTG.js +1548 -0
  153. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PGXDEOVV.js +2 -0
  154. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PJACZCIR.js +2 -0
  155. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PRRNXB7S.js +2 -0
  156. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
  157. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TRDNDS6A.js +4 -0
  158. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-UAQELI3K.js +2 -0
  159. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XDUWOHPL.js +6 -0
  160. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XNGRGP62.js +2 -0
  161. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/github-copilot.js +2 -0
  162. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-generative-ai-YMUPJBKR.js +2 -0
  163. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-vertex-MPWMV4OF.js +2 -0
  164. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/https-proxy-agent-2VXB7436.js +13 -0
  165. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/image-resize-worker.js +2 -0
  166. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/kimi-coding.js +2 -0
  167. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/lib-HGQMNYVT.js +9 -0
  168. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/mistral-conversations-Q3AWZJAZ.js +5 -0
  169. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
  170. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex-responses-GJVBJXLB.js +8 -0
  171. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex.js +75 -0
  172. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-completions-ERMU2SS7.js +7 -0
  173. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-responses-BSOJMSEV.js +2 -0
  174. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter-images-N4XVVFSD.js +2 -0
  175. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter.js +75 -0
  176. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/pi-messages-TPFH44NP.js +8 -0
  177. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/radius.js +75 -0
  178. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/src-UK77SYZE.js +4 -0
  179. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/xai.js +2 -0
  180. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +3 -0
  181. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/client.js +2 -0
  182. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +2 -0
  183. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +3 -0
  184. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +1 -0
  185. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
  186. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +29 -9
  187. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
  188. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -1
  189. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js +2 -1
  190. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js.map +1 -1
  191. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts.map +1 -1
  192. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js +2 -1
  193. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js.map +1 -1
  194. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts +4 -3
  195. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts.map +1 -1
  196. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +22 -14
  197. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js.map +1 -1
  198. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +38 -8
  199. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  200. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +240 -104
  201. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  202. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
  203. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +6 -7
  204. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
  205. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  206. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js +7 -3
  207. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -1
  208. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts +9 -3
  209. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts.map +1 -1
  210. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js +59 -36
  211. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js.map +1 -1
  212. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts +1 -0
  213. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts.map +1 -1
  214. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js +9 -0
  215. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js.map +1 -1
  216. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +2 -2
  217. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
  218. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js +1 -1
  219. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
  220. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
  221. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +115 -48
  222. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
  223. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts +5 -0
  224. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
  225. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js +45 -1
  226. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
  227. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +56 -10
  228. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
  229. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js +3 -0
  230. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
  231. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts +1 -1
  232. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -1
  233. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js +1 -1
  234. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -1
  235. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts +20 -19
  236. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -1
  237. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js +26 -5
  238. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js.map +1 -1
  239. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts +5 -0
  240. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts.map +1 -1
  241. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js +3 -1
  242. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js.map +1 -1
  243. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +1 -0
  244. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
  245. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +14 -8
  246. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
  247. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.d.ts.map +1 -1
  248. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js +2 -1
  249. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js.map +1 -1
  250. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  251. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +22 -14
  252. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  253. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.d.ts.map +1 -1
  254. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js +2 -1
  255. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js.map +1 -1
  256. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.d.ts.map +1 -1
  257. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js +2 -1
  258. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js.map +1 -1
  259. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
  260. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +3 -2
  261. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
  262. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts +2 -2
  263. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts.map +1 -1
  264. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +10 -3
  265. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js.map +1 -1
  266. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts +4 -0
  267. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts.map +1 -0
  268. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js +32 -0
  269. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js.map +1 -0
  270. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
  271. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +6 -3
  272. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
  273. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts +9 -0
  274. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts.map +1 -0
  275. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js +21 -0
  276. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js.map +1 -0
  277. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +17 -1
  278. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
  279. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +69 -10
  280. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  281. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.d.ts.map +1 -1
  282. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js +51 -33
  283. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js.map +1 -1
  284. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -1
  285. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js +2 -1
  286. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js.map +1 -1
  287. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -1
  288. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js +11 -2
  289. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js.map +1 -1
  290. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts +14 -1
  291. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  292. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +36 -20
  293. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  294. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts +0 -5
  295. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts.map +1 -1
  296. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js +2 -5
  297. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js.map +1 -1
  298. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
  299. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +20 -4
  300. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
  301. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts +4 -1
  302. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts.map +1 -1
  303. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js +18 -1
  304. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js.map +1 -1
  305. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts +16 -0
  306. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts.map +1 -0
  307. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js +39 -0
  308. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js.map +1 -0
  309. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.d.ts.map +1 -1
  310. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js +2 -1
  311. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js.map +1 -1
  312. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.d.ts +6 -0
  313. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.d.ts.map +1 -1
  314. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.js +7 -0
  315. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/client.js.map +1 -1
  316. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.d.ts.map +1 -1
  317. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js +2 -0
  318. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js.map +1 -1
  319. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts +3 -1
  320. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts.map +1 -1
  321. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js +29 -4
  322. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js.map +1 -1
  323. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +6 -5
  324. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
  325. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +5 -4
  326. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
  327. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts +4 -0
  328. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
  329. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +20 -15
  330. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
  331. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.d.ts.map +1 -1
  332. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js +4 -3
  333. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js.map +1 -1
  334. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +9 -3
  335. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  336. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +56 -12
  337. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -1
  338. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +9 -2
  339. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  340. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +128 -56
  341. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
  342. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts +72 -0
  343. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -0
  344. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js +165 -0
  345. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js.map +1 -0
  346. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts +15 -3
  347. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  348. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js +74 -17
  349. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  350. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.d.ts.map +1 -1
  351. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js +2 -1
  352. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js.map +1 -1
  353. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +15 -0
  354. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  355. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +230 -136
  356. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
  357. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts +16 -0
  358. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts.map +1 -0
  359. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js +188 -0
  360. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js.map +1 -0
  361. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  362. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +4 -3
  363. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -1
  364. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts +16 -13
  365. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts.map +1 -1
  366. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js +20 -6
  367. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js.map +1 -1
  368. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +7 -0
  369. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  370. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js +7 -0
  371. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -1
  372. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  373. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +3 -0
  374. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
  375. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts +12 -0
  376. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  377. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.js.map +1 -1
  378. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts +1 -0
  379. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
  380. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +186 -2
  381. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
  382. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.d.ts.map +1 -1
  383. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js +2 -1
  384. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js.map +1 -1
  385. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts +5 -3
  386. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts.map +1 -1
  387. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js +14 -10
  388. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js.map +1 -1
  389. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts +3 -0
  390. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts.map +1 -1
  391. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js +23 -9
  392. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js.map +1 -1
  393. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts +1 -0
  394. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts.map +1 -1
  395. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js +60 -1
  396. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js.map +1 -1
  397. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts +8 -0
  398. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts.map +1 -0
  399. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js +9 -0
  400. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js.map +1 -0
  401. package/node_modules/@earendil-works/pi-coding-agent/docs/compaction.md +17 -0
  402. package/node_modules/@earendil-works/pi-coding-agent/docs/custom-provider.md +12 -9
  403. package/node_modules/@earendil-works/pi-coding-agent/docs/environment-variables.md +11 -8
  404. package/node_modules/@earendil-works/pi-coding-agent/docs/extensions.md +35 -7
  405. package/node_modules/@earendil-works/pi-coding-agent/docs/json.md +7 -2
  406. package/node_modules/@earendil-works/pi-coding-agent/docs/keybindings.md +9 -9
  407. package/node_modules/@earendil-works/pi-coding-agent/docs/llama-cpp.md +2 -0
  408. package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +8 -2
  409. package/node_modules/@earendil-works/pi-coding-agent/docs/packages.md +2 -2
  410. package/node_modules/@earendil-works/pi-coding-agent/docs/quickstart.md +1 -1
  411. package/node_modules/@earendil-works/pi-coding-agent/docs/rpc.md +32 -3
  412. package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +7 -2
  413. package/node_modules/@earendil-works/pi-coding-agent/docs/settings.md +23 -7
  414. package/node_modules/@earendil-works/pi-coding-agent/docs/skills.md +4 -3
  415. package/node_modules/@earendil-works/pi-coding-agent/docs/terminal-setup.md +23 -9
  416. package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +10 -5
  417. package/node_modules/@earendil-works/pi-coding-agent/docs/windows.md +24 -2
  418. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/border-status-editor.ts +1 -1
  419. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  420. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
  421. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  422. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/git-checkpoint.ts +2 -2
  423. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package-lock.json +2 -2
  424. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package.json +1 -1
  425. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/notify.ts +3 -1
  426. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package-lock.json +2 -2
  427. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
  428. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/README.md +1 -1
  429. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/index.ts +6 -1
  430. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/titlebar-spinner.ts +1 -1
  431. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package-lock.json +2 -2
  432. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
  433. package/node_modules/@earendil-works/pi-coding-agent/examples/rpc-extension-ui.ts +1 -1
  434. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/06-extensions.ts +1 -1
  435. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/README.md +1 -1
  436. package/node_modules/@earendil-works/pi-coding-agent/package.json +12 -14
  437. package/node_modules/@earendil-works/pi-protocol/package.json +1 -1
  438. package/node_modules/@earendil-works/pi-telemetry/package.json +2 -2
  439. package/node_modules/@earendil-works/pi-tui/README.md +1 -1
  440. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +1 -0
  441. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
  442. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js +36 -3
  443. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
  444. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
  445. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +9 -4
  446. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
  447. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts +8 -2
  448. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +1 -1
  449. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js +24 -4
  450. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +1 -1
  451. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +1 -1
  452. package/node_modules/@earendil-works/pi-tui/dist/components/text.js +5 -4
  453. package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +1 -1
  454. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
  455. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  456. package/node_modules/@earendil-works/pi-tui/dist/index.js +1 -1
  457. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  458. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +2 -2
  459. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +1 -1
  460. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js +2 -2
  461. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +1 -1
  462. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +1 -1
  463. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +2 -8
  464. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +1 -1
  465. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts +7 -0
  466. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts.map +1 -0
  467. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js +19 -0
  468. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js.map +1 -0
  469. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +2 -0
  470. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
  471. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +37 -2
  472. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
  473. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  474. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +4 -10
  475. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  476. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts +11 -0
  477. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -1
  478. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +63 -16
  479. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -1
  480. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.d.ts.map +1 -1
  481. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js +105 -45
  482. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js.map +1 -1
  483. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  484. package/node_modules/@types/node/README.md +1 -1
  485. package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
  486. package/node_modules/@types/node/crypto.d.ts +2 -4
  487. package/node_modules/@types/node/dgram.d.ts +119 -4
  488. package/node_modules/@types/node/fs/promises.d.ts +61 -65
  489. package/node_modules/@types/node/fs.d.ts +86 -76
  490. package/node_modules/@types/node/http.d.ts +17 -1
  491. package/node_modules/@types/node/http2.d.ts +12 -4
  492. package/node_modules/@types/node/index.d.ts +1 -0
  493. package/node_modules/@types/node/inspector.d.ts +2 -1
  494. package/node_modules/@types/node/net.d.ts +108 -16
  495. package/node_modules/@types/node/package.json +2 -2
  496. package/node_modules/@types/node/process.d.ts +52 -0
  497. package/node_modules/@types/node/quic.d.ts +246 -38
  498. package/node_modules/@types/node/sqlite.d.ts +6 -2
  499. package/node_modules/@types/node/stream/iter.d.ts +4 -4
  500. package/node_modules/@types/node/test.d.ts +36 -0
  501. package/node_modules/@types/node/tls.d.ts +24 -0
  502. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
  503. package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
  504. package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
  505. package/node_modules/@types/node/tty.d.ts +4 -3
  506. package/node_modules/@types/node/vfs.d.ts +210 -0
  507. package/node_modules/@types/node/vm.d.ts +1 -1
  508. package/node_modules/brace-expansion/README.md +1 -2
  509. package/node_modules/brace-expansion/dist/commonjs/index.js +30 -4
  510. package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
  511. package/node_modules/brace-expansion/dist/esm/index.js +30 -4
  512. package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
  513. package/node_modules/brace-expansion/package.json +1 -1
  514. package/package.json +9 -9
  515. package/src/prism-extensions/integrations/ai-memory-system.ts +14 -9
  516. package/node_modules/@opentelemetry/api/LICENSE +0 -201
  517. package/node_modules/@opentelemetry/api/README.md +0 -116
  518. package/node_modules/@opentelemetry/api/build/esm/api/context.d.ts +0 -41
  519. package/node_modules/@opentelemetry/api/build/esm/api/context.js +0 -110
  520. package/node_modules/@opentelemetry/api/build/esm/api/context.js.map +0 -1
  521. package/node_modules/@opentelemetry/api/build/esm/api/diag.d.ts +0 -30
  522. package/node_modules/@opentelemetry/api/build/esm/api/diag.js +0 -121
  523. package/node_modules/@opentelemetry/api/build/esm/api/diag.js.map +0 -1
  524. package/node_modules/@opentelemetry/api/build/esm/api/metrics.d.ts +0 -28
  525. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js +0 -60
  526. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js.map +0 -1
  527. package/node_modules/@opentelemetry/api/build/esm/api/propagation.d.ts +0 -49
  528. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js +0 -89
  529. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js.map +0 -1
  530. package/node_modules/@opentelemetry/api/build/esm/api/trace.d.ts +0 -40
  531. package/node_modules/@opentelemetry/api/build/esm/api/trace.js +0 -77
  532. package/node_modules/@opentelemetry/api/build/esm/api/trace.js.map +0 -1
  533. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.d.ts +0 -29
  534. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js +0 -56
  535. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js.map +0 -1
  536. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.d.ts +0 -12
  537. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js +0 -98
  538. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js.map +0 -1
  539. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.d.ts +0 -5
  540. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js +0 -20
  541. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js.map +0 -1
  542. package/node_modules/@opentelemetry/api/build/esm/baggage/types.d.ts +0 -60
  543. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js +0 -17
  544. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js.map +0 -1
  545. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.d.ts +0 -15
  546. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js +0 -47
  547. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js.map +0 -1
  548. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.d.ts +0 -15
  549. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js +0 -17
  550. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js.map +0 -1
  551. package/node_modules/@opentelemetry/api/build/esm/common/Exception.d.ts +0 -26
  552. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js +0 -17
  553. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js.map +0 -1
  554. package/node_modules/@opentelemetry/api/build/esm/common/Time.d.ts +0 -20
  555. package/node_modules/@opentelemetry/api/build/esm/common/Time.js +0 -2
  556. package/node_modules/@opentelemetry/api/build/esm/common/Time.js.map +0 -1
  557. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.d.ts +0 -9
  558. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js +0 -67
  559. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js.map +0 -1
  560. package/node_modules/@opentelemetry/api/build/esm/context/context.d.ts +0 -6
  561. package/node_modules/@opentelemetry/api/build/esm/context/context.js +0 -52
  562. package/node_modules/@opentelemetry/api/build/esm/context/context.js.map +0 -1
  563. package/node_modules/@opentelemetry/api/build/esm/context/types.d.ts +0 -52
  564. package/node_modules/@opentelemetry/api/build/esm/context/types.js +0 -17
  565. package/node_modules/@opentelemetry/api/build/esm/context/types.js.map +0 -1
  566. package/node_modules/@opentelemetry/api/build/esm/context-api.d.ts +0 -4
  567. package/node_modules/@opentelemetry/api/build/esm/context-api.js +0 -21
  568. package/node_modules/@opentelemetry/api/build/esm/context-api.js.map +0 -1
  569. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.d.ts +0 -20
  570. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js +0 -102
  571. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js.map +0 -1
  572. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.d.ts +0 -38
  573. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js +0 -59
  574. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js.map +0 -1
  575. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.d.ts +0 -3
  576. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js +0 -41
  577. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js.map +0 -1
  578. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.d.ts +0 -8
  579. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js +0 -31
  580. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js.map +0 -1
  581. package/node_modules/@opentelemetry/api/build/esm/diag/types.d.ts +0 -100
  582. package/node_modules/@opentelemetry/api/build/esm/diag/types.js +0 -41
  583. package/node_modules/@opentelemetry/api/build/esm/diag/types.js.map +0 -1
  584. package/node_modules/@opentelemetry/api/build/esm/diag-api.d.ts +0 -9
  585. package/node_modules/@opentelemetry/api/build/esm/diag-api.js +0 -26
  586. package/node_modules/@opentelemetry/api/build/esm/diag-api.js.map +0 -1
  587. package/node_modules/@opentelemetry/api/build/esm/experimental/index.d.ts +0 -3
  588. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js +0 -17
  589. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js.map +0 -1
  590. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.d.ts +0 -13
  591. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js +0 -17
  592. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js.map +0 -1
  593. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.d.ts +0 -64
  594. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js +0 -92
  595. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js.map +0 -1
  596. package/node_modules/@opentelemetry/api/build/esm/index.d.ts +0 -54
  597. package/node_modules/@opentelemetry/api/build/esm/index.js +0 -53
  598. package/node_modules/@opentelemetry/api/build/esm/index.js.map +0 -1
  599. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.d.ts +0 -18
  600. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js +0 -59
  601. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js.map +0 -1
  602. package/node_modules/@opentelemetry/api/build/esm/internal/semver.d.ts +0 -34
  603. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js +0 -118
  604. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js.map +0 -1
  605. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.d.ts +0 -110
  606. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js +0 -17
  607. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js.map +0 -1
  608. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.d.ts +0 -17
  609. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js +0 -17
  610. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js.map +0 -1
  611. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.d.ts +0 -115
  612. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js +0 -22
  613. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js.map +0 -1
  614. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.d.ts +0 -82
  615. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js +0 -181
  616. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js.map +0 -1
  617. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.d.ts +0 -11
  618. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js +0 -31
  619. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js.map +0 -1
  620. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.d.ts +0 -31
  621. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js +0 -17
  622. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js.map +0 -1
  623. package/node_modules/@opentelemetry/api/build/esm/metrics-api.d.ts +0 -4
  624. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js +0 -21
  625. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js.map +0 -1
  626. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.d.ts +0 -10
  627. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js +0 -35
  628. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js.map +0 -1
  629. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.d.ts +0 -2
  630. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js +0 -17
  631. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js.map +0 -1
  632. package/node_modules/@opentelemetry/api/build/esm/platform/index.d.ts +0 -2
  633. package/node_modules/@opentelemetry/api/build/esm/platform/index.js +0 -17
  634. package/node_modules/@opentelemetry/api/build/esm/platform/index.js.map +0 -1
  635. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.d.ts +0 -3
  636. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js +0 -19
  637. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js.map +0 -1
  638. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.d.ts +0 -2
  639. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js +0 -17
  640. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js.map +0 -1
  641. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.d.ts +0 -13
  642. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js +0 -34
  643. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js.map +0 -1
  644. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.d.ts +0 -84
  645. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js +0 -38
  646. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js.map +0 -1
  647. package/node_modules/@opentelemetry/api/build/esm/propagation-api.d.ts +0 -4
  648. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js +0 -21
  649. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js.map +0 -1
  650. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.d.ts +0 -28
  651. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js +0 -68
  652. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js.map +0 -1
  653. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.d.ts +0 -14
  654. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js +0 -76
  655. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js.map +0 -1
  656. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.d.ts +0 -13
  657. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js +0 -32
  658. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js.map +0 -1
  659. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.d.ts +0 -27
  660. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js +0 -53
  661. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js.map +0 -1
  662. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.d.ts +0 -25
  663. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js +0 -54
  664. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js.map +0 -1
  665. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.d.ts +0 -31
  666. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js +0 -17
  667. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js.map +0 -1
  668. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.d.ts +0 -49
  669. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js +0 -39
  670. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js.map +0 -1
  671. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.d.ts +0 -23
  672. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js +0 -17
  673. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js.map +0 -1
  674. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.d.ts +0 -10
  675. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js +0 -17
  676. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js.map +0 -1
  677. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.d.ts +0 -41
  678. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js +0 -73
  679. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js.map +0 -1
  680. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.d.ts +0 -22
  681. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js +0 -102
  682. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js.map +0 -1
  683. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.d.ts +0 -15
  684. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js +0 -41
  685. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js.map +0 -1
  686. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.d.ts +0 -3
  687. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js +0 -20
  688. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js.map +0 -1
  689. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.d.ts +0 -5
  690. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js +0 -24
  691. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js.map +0 -1
  692. package/node_modules/@opentelemetry/api/build/esm/trace/link.d.ts +0 -26
  693. package/node_modules/@opentelemetry/api/build/esm/trace/link.js +0 -17
  694. package/node_modules/@opentelemetry/api/build/esm/trace/link.js.map +0 -1
  695. package/node_modules/@opentelemetry/api/build/esm/trace/span.d.ts +0 -120
  696. package/node_modules/@opentelemetry/api/build/esm/trace/span.js +0 -17
  697. package/node_modules/@opentelemetry/api/build/esm/trace/span.js.map +0 -1
  698. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.d.ts +0 -53
  699. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js +0 -17
  700. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js.map +0 -1
  701. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.d.ts +0 -27
  702. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js +0 -43
  703. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js.map +0 -1
  704. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.d.ts +0 -17
  705. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js +0 -42
  706. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js.map +0 -1
  707. package/node_modules/@opentelemetry/api/build/esm/trace/status.d.ts +0 -25
  708. package/node_modules/@opentelemetry/api/build/esm/trace/status.js +0 -20
  709. package/node_modules/@opentelemetry/api/build/esm/trace/status.js.map +0 -1
  710. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.d.ts +0 -7
  711. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js +0 -23
  712. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js.map +0 -1
  713. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.d.ts +0 -38
  714. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js +0 -17
  715. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js.map +0 -1
  716. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.d.ts +0 -71
  717. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js +0 -17
  718. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js.map +0 -1
  719. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.d.ts +0 -10
  720. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js +0 -17
  721. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js.map +0 -1
  722. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.d.ts +0 -21
  723. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js +0 -17
  724. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js.map +0 -1
  725. package/node_modules/@opentelemetry/api/build/esm/trace-api.d.ts +0 -4
  726. package/node_modules/@opentelemetry/api/build/esm/trace-api.js +0 -21
  727. package/node_modules/@opentelemetry/api/build/esm/trace-api.js.map +0 -1
  728. package/node_modules/@opentelemetry/api/build/esm/version.d.ts +0 -2
  729. package/node_modules/@opentelemetry/api/build/esm/version.js +0 -18
  730. package/node_modules/@opentelemetry/api/build/esm/version.js.map +0 -1
  731. package/node_modules/@opentelemetry/api/build/esnext/api/context.d.ts +0 -41
  732. package/node_modules/@opentelemetry/api/build/esnext/api/context.js +0 -77
  733. package/node_modules/@opentelemetry/api/build/esnext/api/context.js.map +0 -1
  734. package/node_modules/@opentelemetry/api/build/esnext/api/diag.d.ts +0 -30
  735. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js +0 -89
  736. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js.map +0 -1
  737. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.d.ts +0 -28
  738. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js +0 -57
  739. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js.map +0 -1
  740. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.d.ts +0 -49
  741. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js +0 -85
  742. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js.map +0 -1
  743. package/node_modules/@opentelemetry/api/build/esnext/api/trace.d.ts +0 -40
  744. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js +0 -75
  745. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js.map +0 -1
  746. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.d.ts +0 -29
  747. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js +0 -56
  748. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js.map +0 -1
  749. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.d.ts +0 -12
  750. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js +0 -51
  751. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js.map +0 -1
  752. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.d.ts +0 -5
  753. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js +0 -20
  754. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js.map +0 -1
  755. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.d.ts +0 -60
  756. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js +0 -17
  757. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js.map +0 -1
  758. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.d.ts +0 -15
  759. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js +0 -46
  760. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js.map +0 -1
  761. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.d.ts +0 -15
  762. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js +0 -17
  763. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js.map +0 -1
  764. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.d.ts +0 -26
  765. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js +0 -17
  766. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js.map +0 -1
  767. package/node_modules/@opentelemetry/api/build/esnext/common/Time.d.ts +0 -20
  768. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js +0 -2
  769. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js.map +0 -1
  770. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.d.ts +0 -9
  771. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js +0 -34
  772. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js.map +0 -1
  773. package/node_modules/@opentelemetry/api/build/esnext/context/context.d.ts +0 -6
  774. package/node_modules/@opentelemetry/api/build/esnext/context/context.js +0 -51
  775. package/node_modules/@opentelemetry/api/build/esnext/context/context.js.map +0 -1
  776. package/node_modules/@opentelemetry/api/build/esnext/context/types.d.ts +0 -52
  777. package/node_modules/@opentelemetry/api/build/esnext/context/types.js +0 -17
  778. package/node_modules/@opentelemetry/api/build/esnext/context/types.js.map +0 -1
  779. package/node_modules/@opentelemetry/api/build/esnext/context-api.d.ts +0 -4
  780. package/node_modules/@opentelemetry/api/build/esnext/context-api.js +0 -21
  781. package/node_modules/@opentelemetry/api/build/esnext/context-api.js.map +0 -1
  782. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.d.ts +0 -20
  783. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js +0 -55
  784. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js.map +0 -1
  785. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.d.ts +0 -38
  786. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js +0 -53
  787. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js.map +0 -1
  788. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.d.ts +0 -3
  789. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js +0 -41
  790. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js.map +0 -1
  791. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.d.ts +0 -8
  792. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js +0 -31
  793. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js.map +0 -1
  794. package/node_modules/@opentelemetry/api/build/esnext/diag/types.d.ts +0 -100
  795. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js +0 -41
  796. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js.map +0 -1
  797. package/node_modules/@opentelemetry/api/build/esnext/diag-api.d.ts +0 -9
  798. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js +0 -26
  799. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js.map +0 -1
  800. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.d.ts +0 -3
  801. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js +0 -17
  802. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js.map +0 -1
  803. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.d.ts +0 -13
  804. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js +0 -17
  805. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js.map +0 -1
  806. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.d.ts +0 -64
  807. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js +0 -88
  808. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js.map +0 -1
  809. package/node_modules/@opentelemetry/api/build/esnext/index.d.ts +0 -54
  810. package/node_modules/@opentelemetry/api/build/esnext/index.js +0 -53
  811. package/node_modules/@opentelemetry/api/build/esnext/index.js.map +0 -1
  812. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.d.ts +0 -18
  813. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js +0 -58
  814. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js.map +0 -1
  815. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.d.ts +0 -34
  816. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js +0 -118
  817. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js.map +0 -1
  818. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.d.ts +0 -110
  819. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js +0 -17
  820. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js.map +0 -1
  821. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.d.ts +0 -17
  822. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js +0 -17
  823. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js.map +0 -1
  824. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.d.ts +0 -115
  825. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js +0 -22
  826. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js.map +0 -1
  827. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.d.ts +0 -82
  828. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js +0 -113
  829. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js.map +0 -1
  830. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.d.ts +0 -11
  831. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js +0 -27
  832. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js.map +0 -1
  833. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.d.ts +0 -31
  834. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js +0 -17
  835. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js.map +0 -1
  836. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.d.ts +0 -4
  837. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js +0 -21
  838. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js.map +0 -1
  839. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.d.ts +0 -10
  840. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js +0 -35
  841. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js.map +0 -1
  842. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.d.ts +0 -2
  843. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js +0 -17
  844. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js.map +0 -1
  845. package/node_modules/@opentelemetry/api/build/esnext/platform/index.d.ts +0 -2
  846. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js +0 -17
  847. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js.map +0 -1
  848. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.d.ts +0 -3
  849. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js +0 -19
  850. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js.map +0 -1
  851. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.d.ts +0 -2
  852. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js +0 -17
  853. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js.map +0 -1
  854. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.d.ts +0 -13
  855. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js +0 -30
  856. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js.map +0 -1
  857. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.d.ts +0 -84
  858. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js +0 -38
  859. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js.map +0 -1
  860. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.d.ts +0 -4
  861. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js +0 -21
  862. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js.map +0 -1
  863. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.d.ts +0 -28
  864. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js +0 -65
  865. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js.map +0 -1
  866. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.d.ts +0 -14
  867. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js +0 -71
  868. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js.map +0 -1
  869. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.d.ts +0 -13
  870. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js +0 -28
  871. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js.map +0 -1
  872. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.d.ts +0 -27
  873. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js +0 -51
  874. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js.map +0 -1
  875. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.d.ts +0 -25
  876. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js +0 -50
  877. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js.map +0 -1
  878. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.d.ts +0 -31
  879. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js +0 -17
  880. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js.map +0 -1
  881. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.d.ts +0 -49
  882. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js +0 -39
  883. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js.map +0 -1
  884. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.d.ts +0 -23
  885. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js +0 -17
  886. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js.map +0 -1
  887. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.d.ts +0 -10
  888. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js +0 -17
  889. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js.map +0 -1
  890. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.d.ts +0 -41
  891. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js +0 -73
  892. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js.map +0 -1
  893. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.d.ts +0 -22
  894. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js +0 -99
  895. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js.map +0 -1
  896. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.d.ts +0 -15
  897. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js +0 -41
  898. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js.map +0 -1
  899. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.d.ts +0 -3
  900. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js +0 -20
  901. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js.map +0 -1
  902. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.d.ts +0 -5
  903. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js +0 -24
  904. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js.map +0 -1
  905. package/node_modules/@opentelemetry/api/build/esnext/trace/link.d.ts +0 -26
  906. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js +0 -17
  907. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js.map +0 -1
  908. package/node_modules/@opentelemetry/api/build/esnext/trace/span.d.ts +0 -120
  909. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js +0 -17
  910. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js.map +0 -1
  911. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.d.ts +0 -53
  912. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js +0 -17
  913. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js.map +0 -1
  914. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.d.ts +0 -27
  915. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js +0 -43
  916. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js.map +0 -1
  917. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.d.ts +0 -17
  918. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js +0 -42
  919. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js.map +0 -1
  920. package/node_modules/@opentelemetry/api/build/esnext/trace/status.d.ts +0 -25
  921. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js +0 -20
  922. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js.map +0 -1
  923. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.d.ts +0 -7
  924. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js +0 -23
  925. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js.map +0 -1
  926. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.d.ts +0 -38
  927. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js +0 -17
  928. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js.map +0 -1
  929. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.d.ts +0 -71
  930. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js +0 -17
  931. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js.map +0 -1
  932. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.d.ts +0 -10
  933. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js +0 -17
  934. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js.map +0 -1
  935. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.d.ts +0 -21
  936. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js +0 -17
  937. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js.map +0 -1
  938. package/node_modules/@opentelemetry/api/build/esnext/trace-api.d.ts +0 -4
  939. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js +0 -21
  940. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js.map +0 -1
  941. package/node_modules/@opentelemetry/api/build/esnext/version.d.ts +0 -2
  942. package/node_modules/@opentelemetry/api/build/esnext/version.js +0 -18
  943. package/node_modules/@opentelemetry/api/build/esnext/version.js.map +0 -1
  944. package/node_modules/@opentelemetry/api/build/src/api/context.d.ts +0 -41
  945. package/node_modules/@opentelemetry/api/build/src/api/context.js +0 -81
  946. package/node_modules/@opentelemetry/api/build/src/api/context.js.map +0 -1
  947. package/node_modules/@opentelemetry/api/build/src/api/diag.d.ts +0 -30
  948. package/node_modules/@opentelemetry/api/build/src/api/diag.js +0 -93
  949. package/node_modules/@opentelemetry/api/build/src/api/diag.js.map +0 -1
  950. package/node_modules/@opentelemetry/api/build/src/api/metrics.d.ts +0 -28
  951. package/node_modules/@opentelemetry/api/build/src/api/metrics.js +0 -61
  952. package/node_modules/@opentelemetry/api/build/src/api/metrics.js.map +0 -1
  953. package/node_modules/@opentelemetry/api/build/src/api/propagation.d.ts +0 -49
  954. package/node_modules/@opentelemetry/api/build/src/api/propagation.js +0 -89
  955. package/node_modules/@opentelemetry/api/build/src/api/propagation.js.map +0 -1
  956. package/node_modules/@opentelemetry/api/build/src/api/trace.d.ts +0 -40
  957. package/node_modules/@opentelemetry/api/build/src/api/trace.js +0 -79
  958. package/node_modules/@opentelemetry/api/build/src/api/trace.js.map +0 -1
  959. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.d.ts +0 -29
  960. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +0 -63
  961. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js.map +0 -1
  962. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.d.ts +0 -12
  963. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +0 -55
  964. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js.map +0 -1
  965. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.d.ts +0 -5
  966. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +0 -23
  967. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js.map +0 -1
  968. package/node_modules/@opentelemetry/api/build/src/baggage/types.d.ts +0 -60
  969. package/node_modules/@opentelemetry/api/build/src/baggage/types.js +0 -18
  970. package/node_modules/@opentelemetry/api/build/src/baggage/types.js.map +0 -1
  971. package/node_modules/@opentelemetry/api/build/src/baggage/utils.d.ts +0 -15
  972. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js +0 -51
  973. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js.map +0 -1
  974. package/node_modules/@opentelemetry/api/build/src/common/Attributes.d.ts +0 -15
  975. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js +0 -18
  976. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js.map +0 -1
  977. package/node_modules/@opentelemetry/api/build/src/common/Exception.d.ts +0 -26
  978. package/node_modules/@opentelemetry/api/build/src/common/Exception.js +0 -18
  979. package/node_modules/@opentelemetry/api/build/src/common/Exception.js.map +0 -1
  980. package/node_modules/@opentelemetry/api/build/src/common/Time.d.ts +0 -20
  981. package/node_modules/@opentelemetry/api/build/src/common/Time.js +0 -3
  982. package/node_modules/@opentelemetry/api/build/src/common/Time.js.map +0 -1
  983. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.d.ts +0 -9
  984. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +0 -38
  985. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js.map +0 -1
  986. package/node_modules/@opentelemetry/api/build/src/context/context.d.ts +0 -6
  987. package/node_modules/@opentelemetry/api/build/src/context/context.js +0 -55
  988. package/node_modules/@opentelemetry/api/build/src/context/context.js.map +0 -1
  989. package/node_modules/@opentelemetry/api/build/src/context/types.d.ts +0 -52
  990. package/node_modules/@opentelemetry/api/build/src/context/types.js +0 -18
  991. package/node_modules/@opentelemetry/api/build/src/context/types.js.map +0 -1
  992. package/node_modules/@opentelemetry/api/build/src/context-api.d.ts +0 -4
  993. package/node_modules/@opentelemetry/api/build/src/context-api.js +0 -24
  994. package/node_modules/@opentelemetry/api/build/src/context-api.js.map +0 -1
  995. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.d.ts +0 -20
  996. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +0 -59
  997. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js.map +0 -1
  998. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.d.ts +0 -38
  999. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +0 -57
  1000. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js.map +0 -1
  1001. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.d.ts +0 -3
  1002. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +0 -45
  1003. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js.map +0 -1
  1004. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.d.ts +0 -8
  1005. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js +0 -35
  1006. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js.map +0 -1
  1007. package/node_modules/@opentelemetry/api/build/src/diag/types.d.ts +0 -100
  1008. package/node_modules/@opentelemetry/api/build/src/diag/types.js +0 -44
  1009. package/node_modules/@opentelemetry/api/build/src/diag/types.js.map +0 -1
  1010. package/node_modules/@opentelemetry/api/build/src/diag-api.d.ts +0 -9
  1011. package/node_modules/@opentelemetry/api/build/src/diag-api.js +0 -29
  1012. package/node_modules/@opentelemetry/api/build/src/diag-api.js.map +0 -1
  1013. package/node_modules/@opentelemetry/api/build/src/experimental/index.d.ts +0 -3
  1014. package/node_modules/@opentelemetry/api/build/src/experimental/index.js +0 -22
  1015. package/node_modules/@opentelemetry/api/build/src/experimental/index.js.map +0 -1
  1016. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.d.ts +0 -13
  1017. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js +0 -18
  1018. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js.map +0 -1
  1019. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.d.ts +0 -64
  1020. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js +0 -93
  1021. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js.map +0 -1
  1022. package/node_modules/@opentelemetry/api/build/src/index.d.ts +0 -54
  1023. package/node_modules/@opentelemetry/api/build/src/index.js +0 -81
  1024. package/node_modules/@opentelemetry/api/build/src/index.js.map +0 -1
  1025. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.d.ts +0 -18
  1026. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +0 -64
  1027. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js.map +0 -1
  1028. package/node_modules/@opentelemetry/api/build/src/internal/semver.d.ts +0 -34
  1029. package/node_modules/@opentelemetry/api/build/src/internal/semver.js +0 -122
  1030. package/node_modules/@opentelemetry/api/build/src/internal/semver.js.map +0 -1
  1031. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.d.ts +0 -110
  1032. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js +0 -18
  1033. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js.map +0 -1
  1034. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.d.ts +0 -17
  1035. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js +0 -18
  1036. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js.map +0 -1
  1037. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.d.ts +0 -115
  1038. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +0 -25
  1039. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js.map +0 -1
  1040. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.d.ts +0 -82
  1041. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +0 -127
  1042. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js.map +0 -1
  1043. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.d.ts +0 -11
  1044. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +0 -31
  1045. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js.map +0 -1
  1046. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.d.ts +0 -31
  1047. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js +0 -18
  1048. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js.map +0 -1
  1049. package/node_modules/@opentelemetry/api/build/src/metrics-api.d.ts +0 -4
  1050. package/node_modules/@opentelemetry/api/build/src/metrics-api.js +0 -24
  1051. package/node_modules/@opentelemetry/api/build/src/metrics-api.js.map +0 -1
  1052. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.d.ts +0 -10
  1053. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js +0 -38
  1054. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js.map +0 -1
  1055. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.d.ts +0 -2
  1056. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js +0 -29
  1057. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js.map +0 -1
  1058. package/node_modules/@opentelemetry/api/build/src/platform/index.d.ts +0 -2
  1059. package/node_modules/@opentelemetry/api/build/src/platform/index.js +0 -29
  1060. package/node_modules/@opentelemetry/api/build/src/platform/index.js.map +0 -1
  1061. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.d.ts +0 -3
  1062. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +0 -22
  1063. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js.map +0 -1
  1064. package/node_modules/@opentelemetry/api/build/src/platform/node/index.d.ts +0 -2
  1065. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js +0 -29
  1066. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js.map +0 -1
  1067. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.d.ts +0 -13
  1068. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +0 -34
  1069. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js.map +0 -1
  1070. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.d.ts +0 -84
  1071. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +0 -41
  1072. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js.map +0 -1
  1073. package/node_modules/@opentelemetry/api/build/src/propagation-api.d.ts +0 -4
  1074. package/node_modules/@opentelemetry/api/build/src/propagation-api.js +0 -24
  1075. package/node_modules/@opentelemetry/api/build/src/propagation-api.js.map +0 -1
  1076. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.d.ts +0 -28
  1077. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +0 -69
  1078. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js.map +0 -1
  1079. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.d.ts +0 -14
  1080. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +0 -75
  1081. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js.map +0 -1
  1082. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.d.ts +0 -13
  1083. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +0 -32
  1084. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js.map +0 -1
  1085. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.d.ts +0 -27
  1086. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +0 -55
  1087. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js.map +0 -1
  1088. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.d.ts +0 -25
  1089. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +0 -54
  1090. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js.map +0 -1
  1091. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.d.ts +0 -31
  1092. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js +0 -18
  1093. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js.map +0 -1
  1094. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.d.ts +0 -49
  1095. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +0 -42
  1096. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js.map +0 -1
  1097. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.d.ts +0 -23
  1098. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js +0 -18
  1099. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js.map +0 -1
  1100. package/node_modules/@opentelemetry/api/build/src/trace/attributes.d.ts +0 -10
  1101. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js +0 -18
  1102. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js.map +0 -1
  1103. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.d.ts +0 -41
  1104. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +0 -82
  1105. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js.map +0 -1
  1106. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.d.ts +0 -22
  1107. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +0 -103
  1108. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js.map +0 -1
  1109. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.d.ts +0 -15
  1110. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +0 -46
  1111. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js.map +0 -1
  1112. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.d.ts +0 -3
  1113. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +0 -24
  1114. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js.map +0 -1
  1115. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.d.ts +0 -5
  1116. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +0 -27
  1117. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js.map +0 -1
  1118. package/node_modules/@opentelemetry/api/build/src/trace/link.d.ts +0 -26
  1119. package/node_modules/@opentelemetry/api/build/src/trace/link.js +0 -18
  1120. package/node_modules/@opentelemetry/api/build/src/trace/link.js.map +0 -1
  1121. package/node_modules/@opentelemetry/api/build/src/trace/span.d.ts +0 -120
  1122. package/node_modules/@opentelemetry/api/build/src/trace/span.js +0 -18
  1123. package/node_modules/@opentelemetry/api/build/src/trace/span.js.map +0 -1
  1124. package/node_modules/@opentelemetry/api/build/src/trace/span_context.d.ts +0 -53
  1125. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js +0 -18
  1126. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js.map +0 -1
  1127. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.d.ts +0 -27
  1128. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +0 -46
  1129. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js.map +0 -1
  1130. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.d.ts +0 -17
  1131. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +0 -49
  1132. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js.map +0 -1
  1133. package/node_modules/@opentelemetry/api/build/src/trace/status.d.ts +0 -25
  1134. package/node_modules/@opentelemetry/api/build/src/trace/status.js +0 -23
  1135. package/node_modules/@opentelemetry/api/build/src/trace/status.js.map +0 -1
  1136. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.d.ts +0 -7
  1137. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +0 -26
  1138. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js.map +0 -1
  1139. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.d.ts +0 -38
  1140. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js +0 -18
  1141. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js.map +0 -1
  1142. package/node_modules/@opentelemetry/api/build/src/trace/tracer.d.ts +0 -71
  1143. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js +0 -18
  1144. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js.map +0 -1
  1145. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.d.ts +0 -10
  1146. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js +0 -18
  1147. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js.map +0 -1
  1148. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.d.ts +0 -21
  1149. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js +0 -18
  1150. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js.map +0 -1
  1151. package/node_modules/@opentelemetry/api/build/src/trace-api.d.ts +0 -4
  1152. package/node_modules/@opentelemetry/api/build/src/trace-api.js +0 -24
  1153. package/node_modules/@opentelemetry/api/build/src/trace-api.js.map +0 -1
  1154. package/node_modules/@opentelemetry/api/build/src/version.d.ts +0 -2
  1155. package/node_modules/@opentelemetry/api/build/src/version.js +0 -21
  1156. package/node_modules/@opentelemetry/api/build/src/version.js.map +0 -1
  1157. package/node_modules/@opentelemetry/api/package.json +0 -113
  1158. package/node_modules/glob/LICENSE.md +0 -63
  1159. package/node_modules/glob/README.md +0 -1203
  1160. package/node_modules/glob/dist/commonjs/glob.d.ts +0 -396
  1161. package/node_modules/glob/dist/commonjs/glob.d.ts.map +0 -1
  1162. package/node_modules/glob/dist/commonjs/glob.js +0 -248
  1163. package/node_modules/glob/dist/commonjs/glob.js.map +0 -1
  1164. package/node_modules/glob/dist/commonjs/has-magic.d.ts +0 -14
  1165. package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +0 -1
  1166. package/node_modules/glob/dist/commonjs/has-magic.js +0 -27
  1167. package/node_modules/glob/dist/commonjs/has-magic.js.map +0 -1
  1168. package/node_modules/glob/dist/commonjs/ignore.d.ts +0 -24
  1169. package/node_modules/glob/dist/commonjs/ignore.d.ts.map +0 -1
  1170. package/node_modules/glob/dist/commonjs/ignore.js +0 -119
  1171. package/node_modules/glob/dist/commonjs/ignore.js.map +0 -1
  1172. package/node_modules/glob/dist/commonjs/index.d.ts +0 -97
  1173. package/node_modules/glob/dist/commonjs/index.d.ts.map +0 -1
  1174. package/node_modules/glob/dist/commonjs/index.js +0 -68
  1175. package/node_modules/glob/dist/commonjs/index.js.map +0 -1
  1176. package/node_modules/glob/dist/commonjs/index.min.js +0 -4
  1177. package/node_modules/glob/dist/commonjs/index.min.js.map +0 -7
  1178. package/node_modules/glob/dist/commonjs/package.json +0 -3
  1179. package/node_modules/glob/dist/commonjs/pattern.d.ts +0 -79
  1180. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +0 -1
  1181. package/node_modules/glob/dist/commonjs/pattern.js +0 -223
  1182. package/node_modules/glob/dist/commonjs/pattern.js.map +0 -1
  1183. package/node_modules/glob/dist/commonjs/processor.d.ts +0 -59
  1184. package/node_modules/glob/dist/commonjs/processor.d.ts.map +0 -1
  1185. package/node_modules/glob/dist/commonjs/processor.js +0 -301
  1186. package/node_modules/glob/dist/commonjs/processor.js.map +0 -1
  1187. package/node_modules/glob/dist/commonjs/walker.d.ts +0 -97
  1188. package/node_modules/glob/dist/commonjs/walker.d.ts.map +0 -1
  1189. package/node_modules/glob/dist/commonjs/walker.js +0 -387
  1190. package/node_modules/glob/dist/commonjs/walker.js.map +0 -1
  1191. package/node_modules/glob/dist/esm/glob.d.ts +0 -396
  1192. package/node_modules/glob/dist/esm/glob.d.ts.map +0 -1
  1193. package/node_modules/glob/dist/esm/glob.js +0 -244
  1194. package/node_modules/glob/dist/esm/glob.js.map +0 -1
  1195. package/node_modules/glob/dist/esm/has-magic.d.ts +0 -14
  1196. package/node_modules/glob/dist/esm/has-magic.d.ts.map +0 -1
  1197. package/node_modules/glob/dist/esm/has-magic.js +0 -23
  1198. package/node_modules/glob/dist/esm/has-magic.js.map +0 -1
  1199. package/node_modules/glob/dist/esm/ignore.d.ts +0 -24
  1200. package/node_modules/glob/dist/esm/ignore.d.ts.map +0 -1
  1201. package/node_modules/glob/dist/esm/ignore.js +0 -115
  1202. package/node_modules/glob/dist/esm/ignore.js.map +0 -1
  1203. package/node_modules/glob/dist/esm/index.d.ts +0 -97
  1204. package/node_modules/glob/dist/esm/index.d.ts.map +0 -1
  1205. package/node_modules/glob/dist/esm/index.js +0 -55
  1206. package/node_modules/glob/dist/esm/index.js.map +0 -1
  1207. package/node_modules/glob/dist/esm/index.min.js +0 -4
  1208. package/node_modules/glob/dist/esm/index.min.js.map +0 -7
  1209. package/node_modules/glob/dist/esm/package.json +0 -3
  1210. package/node_modules/glob/dist/esm/pattern.d.ts +0 -79
  1211. package/node_modules/glob/dist/esm/pattern.d.ts.map +0 -1
  1212. package/node_modules/glob/dist/esm/pattern.js +0 -219
  1213. package/node_modules/glob/dist/esm/pattern.js.map +0 -1
  1214. package/node_modules/glob/dist/esm/processor.d.ts +0 -59
  1215. package/node_modules/glob/dist/esm/processor.d.ts.map +0 -1
  1216. package/node_modules/glob/dist/esm/processor.js +0 -294
  1217. package/node_modules/glob/dist/esm/processor.js.map +0 -1
  1218. package/node_modules/glob/dist/esm/walker.d.ts +0 -97
  1219. package/node_modules/glob/dist/esm/walker.d.ts.map +0 -1
  1220. package/node_modules/glob/dist/esm/walker.js +0 -381
  1221. package/node_modules/glob/dist/esm/walker.js.map +0 -1
  1222. package/node_modules/glob/package.json +0 -98
  1223. package/node_modules/minipass/LICENSE.md +0 -55
  1224. package/node_modules/minipass/README.md +0 -825
  1225. package/node_modules/minipass/dist/commonjs/index.d.ts +0 -545
  1226. package/node_modules/minipass/dist/commonjs/index.d.ts.map +0 -1
  1227. package/node_modules/minipass/dist/commonjs/index.js +0 -1038
  1228. package/node_modules/minipass/dist/commonjs/index.js.map +0 -1
  1229. package/node_modules/minipass/dist/commonjs/package.json +0 -3
  1230. package/node_modules/minipass/dist/esm/index.d.ts +0 -545
  1231. package/node_modules/minipass/dist/esm/index.d.ts.map +0 -1
  1232. package/node_modules/minipass/dist/esm/index.js +0 -1020
  1233. package/node_modules/minipass/dist/esm/index.js.map +0 -1
  1234. package/node_modules/minipass/dist/esm/package.json +0 -3
  1235. package/node_modules/minipass/package.json +0 -77
  1236. package/node_modules/path-scurry/LICENSE.md +0 -55
  1237. package/node_modules/path-scurry/README.md +0 -636
  1238. package/node_modules/path-scurry/dist/commonjs/index.d.ts +0 -1115
  1239. package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +0 -1
  1240. package/node_modules/path-scurry/dist/commonjs/index.js +0 -2018
  1241. package/node_modules/path-scurry/dist/commonjs/index.js.map +0 -1
  1242. package/node_modules/path-scurry/dist/commonjs/package.json +0 -3
  1243. package/node_modules/path-scurry/dist/esm/index.d.ts +0 -1115
  1244. package/node_modules/path-scurry/dist/esm/index.d.ts.map +0 -1
  1245. package/node_modules/path-scurry/dist/esm/index.js +0 -1983
  1246. package/node_modules/path-scurry/dist/esm/index.js.map +0 -1
  1247. package/node_modules/path-scurry/dist/esm/package.json +0 -3
  1248. package/node_modules/path-scurry/package.json +0 -72
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-cli.js","sourceRoot":"","sources":["../src/package-manager-cli.ts"],"names":[],"mappings":"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","sourcesContent":["import { join } from \"node:path\";\nimport { Markdown, type MarkdownTheme } from \"@earendil-works/pi-tui\";\nimport chalk from \"chalk\";\nimport { selectConfig } from \"./cli/config-selector.ts\";\nimport { createProjectTrustContext } from \"./cli/project-trust.ts\";\nimport {\n\tAPP_NAME,\n\tCONFIG_DIR_NAME,\n\tdetectInstallMethod,\n\tgetAgentDir,\n\tgetPackageDir,\n\tgetSelfUpdateCommand,\n\tgetSelfUpdateUnavailableInstruction,\n\tPACKAGE_NAME,\n\ttype SelfUpdateCommand,\n\ttype SelfUpdatePackageTarget,\n\tVERSION,\n} from \"./config.ts\";\nimport type { InlineExtension } from \"./core/extensions/types.ts\";\nimport { ModelRuntime } from \"./core/model-runtime.ts\";\nimport { DefaultPackageManager } from \"./core/package-manager.ts\";\nimport { type AppMode, resolveProjectTrusted } from \"./core/project-trust.ts\";\nimport { DefaultResourceLoader } from \"./core/resource-loader.ts\";\nimport { SettingsManager } from \"./core/settings-manager.ts\";\nimport { hasTrustRequiringProjectResources, ProjectTrustStore } from \"./core/trust-manager.ts\";\nimport { spawnProcess } from \"./utils/child-process.ts\";\nimport { formatVersionCheckError, getLatestPiRelease, isNewerPackageVersion } from \"./utils/version-check.ts\";\nimport {\n\tcleanupWindowsSelfUpdateQuarantine,\n\tquarantineWindowsNativeDependencies,\n} from \"./utils/windows-self-update.ts\";\n\nexport type PackageCommand = \"install\" | \"remove\" | \"update\" | \"list\";\n\ntype UpdateTarget = { type: \"all\" } | { type: \"self\" } | { type: \"extensions\"; source?: string } | { type: \"models\" };\n\nconst SELF_UPDATE_NOTE_MARKDOWN_THEME: MarkdownTheme = {\n\theading: (text) => chalk.bold(chalk.yellow(text)),\n\tlink: (text) => chalk.cyan(text),\n\tlinkUrl: (text) => chalk.dim(text),\n\tcode: (text) => chalk.yellow(text),\n\tcodeBlock: (text) => chalk.dim(text),\n\tcodeBlockBorder: (text) => chalk.dim(text),\n\tquote: (text) => chalk.dim(text),\n\tquoteBorder: (text) => chalk.dim(text),\n\thr: (text) => chalk.dim(text),\n\tlistBullet: (text) => chalk.yellow(text),\n\tbold: (text) => chalk.bold(text),\n\titalic: (text) => chalk.italic(text),\n\tstrikethrough: (text) => chalk.strikethrough(text),\n\tunderline: (text) => chalk.underline(text),\n};\n\ninterface PackageCommandOptions {\n\tcommand: PackageCommand;\n\tsource?: string;\n\tupdateTarget?: UpdateTarget;\n\tshowExtensionsSkippedNote: boolean;\n\tlocal: boolean;\n\tforce: boolean;\n\tprojectTrustOverride?: boolean;\n\thelp: boolean;\n\tinvalidOption?: string;\n\tinvalidArgument?: string;\n\tmissingOptionValue?: string;\n\tconflictingOptions?: string;\n}\n\nfunction reportSettingsErrors(settingsManager: SettingsManager, context: string): void {\n\tconst errors = settingsManager.drainErrors();\n\tfor (const { scope, error } of errors) {\n\t\tconsole.error(chalk.yellow(`Warning (${context}, ${scope} settings): ${error.message}`));\n\t\tif (error.stack) {\n\t\t\tconsole.error(chalk.dim(error.stack));\n\t\t}\n\t}\n}\n\nfunction getPackageCommandUsage(command: PackageCommand): string {\n\tswitch (command) {\n\t\tcase \"install\":\n\t\t\treturn `${APP_NAME} install <source> [-l] [--approve|--no-approve]`;\n\t\tcase \"remove\":\n\t\t\treturn `${APP_NAME} remove <source> [-l] [--approve|--no-approve]`;\n\t\tcase \"update\":\n\t\t\treturn `${APP_NAME} update [source|self|pi] [--self|--extensions|--models|--all] [--extension <source>] [--approve|--no-approve] [--force]`;\n\t\tcase \"list\":\n\t\t\treturn `${APP_NAME} list [--approve|--no-approve]`;\n\t}\n}\n\nconst CONFIG_COMMAND_USAGE = `${APP_NAME} config [-l] [--approve|--no-approve]`;\n\nfunction printConfigCommandHelp(): void {\n\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${CONFIG_COMMAND_USAGE}\n\nOpen the resource configuration TUI to enable or disable package resources.\nWithout -l, starts in global settings (~/${CONFIG_DIR_NAME}/agent/settings.json).\nPress Tab in the TUI to switch between global and project-local modes.\n\nOptions:\n -l, --local Edit project overrides (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command with -l\n -na, --no-approve Ignore project-local files for this command with -l\n`);\n}\n\nfunction printPackageCommandHelp(command: PackageCommand): void {\n\tswitch (command) {\n\t\tcase \"install\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"install\")}\n\nInstall a package and add it to settings.\n\nOptions:\n -l, --local Install project-locally (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n\nExamples:\n ${APP_NAME} install npm:@foo/bar\n ${APP_NAME} install git:github.com/user/repo\n ${APP_NAME} install git:git@github.com:user/repo\n ${APP_NAME} install https://github.com/user/repo\n ${APP_NAME} install ssh://git@github.com/user/repo\n ${APP_NAME} install ./local/path\n`);\n\t\t\treturn;\n\n\t\tcase \"remove\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"remove\")}\n\nRemove a package and its source from settings.\nAlias: ${APP_NAME} uninstall <source> [-l]\n\nOptions:\n -l, --local Remove from project settings (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n\nExamples:\n ${APP_NAME} remove npm:@foo/bar\n ${APP_NAME} uninstall npm:@foo/bar\n`);\n\t\t\treturn;\n\n\t\tcase \"update\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"update\")}\n\nUpdate pi, installed packages, or model catalogs.\n\nOptions:\n --self Update pi only (default when no target is given)\n --extensions Update installed packages only\n --models Refresh model catalogs only\n --all Update pi and installed packages\n --extension <source> Update one package only\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n --force Reinstall pi even if the current version is latest\n\nShort forms:\n ${APP_NAME} update Update pi only\n ${APP_NAME} update --all Update pi and all extensions\n ${APP_NAME} update --models Refresh model catalogs only\n ${APP_NAME} update <source> Update one package\n ${APP_NAME} update pi Update pi only (self works as alias to pi)\n`);\n\t\t\treturn;\n\n\t\tcase \"list\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"list\")}\n\nList installed packages from user and project settings.\n\nOptions:\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n`);\n\t\t\treturn;\n\t}\n}\n\nfunction parsePackageCommand(args: string[]): PackageCommandOptions | undefined {\n\tconst [rawCommand, ...rest] = args;\n\tlet command: PackageCommand | undefined;\n\tif (rawCommand === \"uninstall\") {\n\t\tcommand = \"remove\";\n\t} else if (rawCommand === \"install\" || rawCommand === \"remove\" || rawCommand === \"update\" || rawCommand === \"list\") {\n\t\tcommand = rawCommand;\n\t}\n\tif (!command) {\n\t\treturn undefined;\n\t}\n\n\tlet local = false;\n\tlet force = false;\n\tlet projectTrustOverride: boolean | undefined;\n\tlet help = false;\n\tlet invalidOption: string | undefined;\n\tlet invalidArgument: string | undefined;\n\tlet missingOptionValue: string | undefined;\n\tlet conflictingOptions: string | undefined;\n\tlet source: string | undefined;\n\tlet selfFlag = false;\n\tlet extensionsFlag = false;\n\tlet modelsFlag = false;\n\tlet allFlag = false;\n\tlet extensionFlagSource: string | undefined;\n\n\tfor (let index = 0; index < rest.length; index++) {\n\t\tconst arg = rest[index];\n\t\tif (arg === \"-h\" || arg === \"--help\") {\n\t\t\thelp = true;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"-l\" || arg === \"--local\") {\n\t\t\tif (command === \"install\" || command === \"remove\") {\n\t\t\t\tlocal = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--self\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tselfFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--extensions\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\textensionsFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--models\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tmodelsFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--all\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tallFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--approve\" || arg === \"-a\") {\n\t\t\tprojectTrustOverride = true;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--no-approve\" || arg === \"-na\") {\n\t\t\tprojectTrustOverride = false;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--force\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tforce = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--extension\") {\n\t\t\tif (command !== \"update\") {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst value = rest[index + 1];\n\t\t\tif (!value || value.startsWith(\"-\")) {\n\t\t\t\tmissingOptionValue = missingOptionValue ?? arg;\n\t\t\t} else if (extensionFlagSource) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--extension can only be provided once\";\n\t\t\t\tindex++;\n\t\t\t} else {\n\t\t\t\textensionFlagSource = value;\n\t\t\t\tindex++;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg.startsWith(\"-\")) {\n\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!source) {\n\t\t\tsource = arg;\n\t\t} else {\n\t\t\tinvalidArgument = invalidArgument ?? arg;\n\t\t}\n\t}\n\n\tlet updateTarget: UpdateTarget | undefined;\n\tlet showExtensionsSkippedNote = false;\n\tif (command === \"update\") {\n\t\tif (allFlag && (selfFlag || extensionsFlag || modelsFlag || extensionFlagSource)) {\n\t\t\tconflictingOptions =\n\t\t\t\tconflictingOptions ?? \"--all cannot be combined with --self, --extensions, --models, or --extension\";\n\t\t}\n\t\tif (allFlag && source) {\n\t\t\tconflictingOptions = conflictingOptions ?? \"--all cannot be combined with a positional source\";\n\t\t}\n\n\t\tif (modelsFlag) {\n\t\t\tif (selfFlag || extensionsFlag || allFlag || extensionFlagSource) {\n\t\t\t\tconflictingOptions =\n\t\t\t\t\tconflictingOptions ?? \"--models cannot be combined with --self, --extensions, --all, or --extension\";\n\t\t\t}\n\t\t\tif (source) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--models cannot be combined with a positional source\";\n\t\t\t}\n\t\t\tupdateTarget = { type: \"models\" };\n\t\t} else if (extensionFlagSource) {\n\t\t\tif (selfFlag || extensionsFlag || allFlag) {\n\t\t\t\tconflictingOptions =\n\t\t\t\t\tconflictingOptions ?? \"--extension cannot be combined with --self, --extensions, or --all\";\n\t\t\t}\n\t\t\tif (source) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--extension cannot be combined with a positional source\";\n\t\t\t}\n\t\t\tupdateTarget = { type: \"extensions\", source: extensionFlagSource };\n\t\t} else if (source) {\n\t\t\tconst sourceIsSelf = source === \"self\" || source === \"pi\";\n\t\t\tif (sourceIsSelf) {\n\t\t\t\tupdateTarget = extensionsFlag ? { type: \"all\" } : { type: \"self\" };\n\t\t\t} else {\n\t\t\t\tif (extensionsFlag || selfFlag || allFlag) {\n\t\t\t\t\tconflictingOptions =\n\t\t\t\t\t\tconflictingOptions ??\n\t\t\t\t\t\t\"positional update targets cannot be combined with --self, --extensions, or --all\";\n\t\t\t\t}\n\t\t\t\tupdateTarget = { type: \"extensions\", source };\n\t\t\t}\n\t\t} else if (allFlag) {\n\t\t\tupdateTarget = { type: \"all\" };\n\t\t} else if (selfFlag && extensionsFlag) {\n\t\t\tupdateTarget = { type: \"all\" };\n\t\t} else if (selfFlag) {\n\t\t\tupdateTarget = { type: \"self\" };\n\t\t} else if (extensionsFlag) {\n\t\t\tupdateTarget = { type: \"extensions\" };\n\t\t} else {\n\t\t\tupdateTarget = { type: \"self\" };\n\t\t\tshowExtensionsSkippedNote = true;\n\t\t}\n\t}\n\n\treturn {\n\t\tcommand,\n\t\tsource,\n\t\tupdateTarget,\n\t\tshowExtensionsSkippedNote,\n\t\tlocal,\n\t\tforce,\n\t\tprojectTrustOverride,\n\t\thelp,\n\t\tinvalidOption,\n\t\tinvalidArgument,\n\t\tmissingOptionValue,\n\t\tconflictingOptions,\n\t};\n}\n\nfunction updateTargetIncludesSelf(target: UpdateTarget): boolean {\n\treturn target.type === \"all\" || target.type === \"self\";\n}\n\nfunction updateTargetIncludesExtensions(target: UpdateTarget): boolean {\n\treturn target.type === \"all\" || target.type === \"extensions\";\n}\n\nasync function refreshModelCatalogs(agentDir: string): Promise<void> {\n\tconst controller = new AbortController();\n\tconst timeout = setTimeout(() => controller.abort(), 15_000);\n\ttry {\n\t\tconst modelRuntime = await ModelRuntime.create({\n\t\t\tauthPath: join(agentDir, \"auth.json\"),\n\t\t\tmodelsPath: join(agentDir, \"models.json\"),\n\t\t\tallowModelNetwork: false,\n\t\t\tsignal: controller.signal,\n\t\t});\n\t\tconst result = await modelRuntime.refresh({\n\t\t\tallowNetwork: true,\n\t\t\tforce: true,\n\t\t\tsignal: controller.signal,\n\t\t});\n\t\tif (result.aborted) {\n\t\t\tthrow new Error(\"Model catalog refresh timed out.\");\n\t\t}\n\t\tif (result.errors.size > 0) {\n\t\t\tconst details = Array.from(result.errors, ([provider, error]) => `${provider}: ${error.message}`).join(\"; \");\n\t\t\tthrow new Error(`Could not refresh model catalogs: ${details}`);\n\t\t}\n\t} finally {\n\t\tclearTimeout(timeout);\n\t}\n\tconsole.log(chalk.green(\"Model catalogs refreshed\"));\n}\n\nfunction printSelfUpdateUnavailable(\n\tnpmCommand?: string[],\n\tupdatePackageTarget: SelfUpdatePackageTarget = PACKAGE_NAME,\n): void {\n\tconsole.error(`error: ${APP_NAME} cannot self-update this installation.`);\n\tconsole.error(getSelfUpdateUnavailableInstruction(PACKAGE_NAME, npmCommand, updatePackageTarget));\n\n\tconst entrypoint = process.argv[1];\n\tif (entrypoint) {\n\t\tconsole.error(\"\");\n\t\tconsole.error(`Location of ${APP_NAME} executable: ${entrypoint}`);\n\t}\n}\n\nfunction printSelfUpdateFallback(command: SelfUpdateCommand): void {\n\tconsole.error(chalk.dim(`If this keeps failing, run this command yourself: ${command.display}`));\n}\n\nfunction printPnpmSelfUpdateMetadataHint(): void {\n\tconsole.error(chalk.yellow(\"If pnpm reports missing package versions, its cached registry metadata may be stale.\"));\n\tconsole.error(chalk.yellow(`Run \\`pnpm store prune\\` and retry \\`${APP_NAME} update --self\\`.`));\n}\n\nfunction printSelfUpdateNote(note: string): void {\n\tconst trimmedNote = note.trim();\n\tif (!trimmedNote) {\n\t\treturn;\n\t}\n\n\tconsole.log();\n\tconsole.log(chalk.bold(chalk.yellow(\"Update note\")));\n\ttry {\n\t\tconst width = Math.max(20, process.stdout.columns ?? 80);\n\t\tconst renderedLines = new Markdown(trimmedNote, 0, 0, SELF_UPDATE_NOTE_MARKDOWN_THEME)\n\t\t\t.render(width)\n\t\t\t.map((line) => line.trimEnd());\n\t\tconsole.log(renderedLines.join(\"\\n\"));\n\t} catch {\n\t\tconsole.log(trimmedNote);\n\t}\n\tconsole.log();\n}\n\ninterface SelfUpdatePlan {\n\tpackageName: string;\n\tinstallSpec: string;\n\tversion: string;\n\tshouldRun: boolean;\n\tnote?: string;\n}\n\nasync function getSelfUpdatePlan(force: boolean): Promise<SelfUpdatePlan> {\n\tlet latestRelease: Awaited<ReturnType<typeof getLatestPiRelease>>;\n\ttry {\n\t\tlatestRelease = await getLatestPiRelease(VERSION, { retry: true });\n\t} catch (error: unknown) {\n\t\tthrow new Error(`Could not determine latest ${APP_NAME} version: ${formatVersionCheckError(error)}`, {\n\t\t\tcause: error,\n\t\t});\n\t}\n\tif (!latestRelease) {\n\t\tthrow new Error(`Could not determine latest ${APP_NAME} version.`);\n\t}\n\n\tconst packageName = latestRelease.packageName ?? PACKAGE_NAME;\n\tconst installSpec = `${packageName}@${latestRelease.version}`;\n\tif (force || packageName !== PACKAGE_NAME || isNewerPackageVersion(latestRelease.version, VERSION)) {\n\t\treturn {\n\t\t\tpackageName,\n\t\t\tinstallSpec,\n\t\t\tversion: latestRelease.version,\n\t\t\t...(latestRelease.note ? { note: latestRelease.note } : {}),\n\t\t\tshouldRun: true,\n\t\t};\n\t}\n\n\tconsole.log(chalk.green(`${APP_NAME} is already up to date (v${VERSION})`));\n\treturn { packageName, installSpec, version: latestRelease.version, shouldRun: false };\n}\n\nasync function runSelfUpdate(command: SelfUpdateCommand): Promise<void> {\n\tconsole.log(chalk.dim(`Updating ${APP_NAME} with ${command.display}...`));\n\tfor (const step of command.steps ?? [command]) {\n\t\tawait new Promise<void>((resolve, reject) => {\n\t\t\tconst child = spawnProcess(step.command, step.args, {\n\t\t\t\tstdio: \"inherit\",\n\t\t\t});\n\t\t\tchild.on(\"error\", (error) => {\n\t\t\t\treject(error);\n\t\t\t});\n\t\t\tchild.on(\"close\", (code, signal) => {\n\t\t\t\tif (code === 0) {\n\t\t\t\t\tresolve();\n\t\t\t\t} else if (signal) {\n\t\t\t\t\treject(new Error(`${step.display} terminated by signal ${signal}`));\n\t\t\t\t} else {\n\t\t\t\t\treject(new Error(`${step.display} exited with code ${code ?? \"unknown\"}`));\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n}\n\nfunction prepareWindowsNpmSelfUpdate(): void {\n\tif (process.platform !== \"win32\") {\n\t\treturn;\n\t}\n\n\tconst packageDir = getPackageDir();\n\tcleanupWindowsSelfUpdateQuarantine(packageDir);\n\tquarantineWindowsNativeDependencies(packageDir);\n}\n\nexport interface PackageCommandRuntimeOptions {\n\textensionFactories?: InlineExtension[];\n}\n\ninterface CommandSettingsResult {\n\tsettingsManager: SettingsManager;\n\tprojectTrustWarnings: string[];\n}\n\nfunction getCommandAppMode(): AppMode {\n\treturn process.stdin.isTTY && process.stdout.isTTY ? \"interactive\" : \"print\";\n}\n\nfunction reportProjectTrustWarnings(warnings: readonly string[]): void {\n\tfor (const warning of warnings) {\n\t\tconsole.error(chalk.yellow(`Warning: ${warning}`));\n\t}\n}\n\nasync function createCommandSettingsManager(options: {\n\tcwd: string;\n\tagentDir: string;\n\tprojectTrustOverride?: boolean;\n\tuseSavedProjectTrustOnly?: boolean;\n\textensionFactories?: InlineExtension[];\n}): Promise<CommandSettingsResult> {\n\tconst settingsManager = SettingsManager.create(options.cwd, options.agentDir, { projectTrusted: false });\n\tconst projectTrustWarnings: string[] = [];\n\tconst trustStore = new ProjectTrustStore(options.agentDir);\n\tif (options.useSavedProjectTrustOnly) {\n\t\tconst savedProjectTrusted = trustStore.get(options.cwd) === true;\n\t\tsettingsManager.setProjectTrusted(options.projectTrustOverride ?? savedProjectTrusted);\n\t\treturn { settingsManager, projectTrustWarnings };\n\t}\n\n\tconst appMode = getCommandAppMode();\n\tconst extensionsResult =\n\t\toptions.projectTrustOverride === undefined && hasTrustRequiringProjectResources(options.cwd)\n\t\t\t? await new DefaultResourceLoader({\n\t\t\t\t\tcwd: options.cwd,\n\t\t\t\t\tagentDir: options.agentDir,\n\t\t\t\t\tsettingsManager,\n\t\t\t\t\textensionFactories: options.extensionFactories,\n\t\t\t\t}).loadProjectTrustExtensions()\n\t\t\t: undefined;\n\tfor (const error of extensionsResult?.errors ?? []) {\n\t\tprojectTrustWarnings.push(`Failed to load extension \"${error.path}\": ${error.error}`);\n\t}\n\n\tconst projectTrusted = await resolveProjectTrusted({\n\t\tcwd: options.cwd,\n\t\ttrustStore,\n\t\ttrustOverride: options.projectTrustOverride,\n\t\tdefaultProjectTrust: settingsManager.getDefaultProjectTrust(),\n\t\textensionsResult,\n\t\tprojectTrustContext: createProjectTrustContext({\n\t\t\tcwd: options.cwd,\n\t\t\tmode: appMode,\n\t\t\tsettingsManager,\n\t\t\thasUI: appMode === \"interactive\",\n\t\t}),\n\t\tonExtensionError: (message) => projectTrustWarnings.push(message),\n\t});\n\tsettingsManager.setProjectTrusted(projectTrusted);\n\treturn { settingsManager, projectTrustWarnings };\n}\n\nexport async function handleConfigCommand(\n\targs: string[],\n\truntimeOptions: PackageCommandRuntimeOptions = {},\n): Promise<boolean> {\n\tconst [command, ...rest] = args;\n\tif (command !== \"config\") {\n\t\treturn false;\n\t}\n\n\tif (rest.includes(\"-h\") || rest.includes(\"--help\")) {\n\t\tprintConfigCommandHelp();\n\t\treturn true;\n\t}\n\n\tlet local = false;\n\tlet projectTrustOverride: boolean | undefined;\n\tfor (const arg of rest) {\n\t\tif (arg === \"-l\" || arg === \"--local\") {\n\t\t\tlocal = true;\n\t\t} else if (arg === \"-a\" || arg === \"--approve\") {\n\t\t\tprojectTrustOverride = true;\n\t\t} else if (arg === \"-na\" || arg === \"--no-approve\") {\n\t\t\tprojectTrustOverride = false;\n\t\t} else if (arg.startsWith(\"-\")) {\n\t\t\tconsole.error(chalk.red(`Unknown option ${arg} for \"config\".`));\n\t\t\tconsole.error(chalk.dim(`Use \"${APP_NAME} --help\" or \"${CONFIG_COMMAND_USAGE}\".`));\n\t\t\tprocess.exitCode = 1;\n\t\t\treturn true;\n\t\t} else {\n\t\t\tconsole.error(chalk.red(`Unexpected argument ${arg}.`));\n\t\t\tconsole.error(chalk.dim(`Usage: ${CONFIG_COMMAND_USAGE}`));\n\t\t\tprocess.exitCode = 1;\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tconst cwd = process.cwd();\n\tconst agentDir = getAgentDir();\n\tconst { settingsManager, projectTrustWarnings } = await createCommandSettingsManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tprojectTrustOverride,\n\t\textensionFactories: runtimeOptions.extensionFactories,\n\t});\n\treportProjectTrustWarnings(projectTrustWarnings);\n\tif (local && !settingsManager.isProjectTrusted()) {\n\t\tconsole.error(chalk.red(\"Project is not trusted. Use --approve to modify local resource config.\"));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\treportSettingsErrors(settingsManager, \"config command\");\n\tconst globalSettingsManager = SettingsManager.create(cwd, agentDir, { projectTrusted: false });\n\tconst globalResolvedPaths = await new DefaultPackageManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tsettingsManager: globalSettingsManager,\n\t}).resolve();\n\tconst projectResolvedPaths = settingsManager.isProjectTrusted()\n\t\t? await new DefaultPackageManager({ cwd, agentDir, settingsManager }).resolve()\n\t\t: globalResolvedPaths;\n\n\tawait selectConfig({\n\t\tresolvedPaths: { global: globalResolvedPaths, project: projectResolvedPaths },\n\t\tsettingsManager,\n\t\tcwd,\n\t\tagentDir,\n\t\twriteScope: local ? \"project\" : \"global\",\n\t\tprojectModeAvailable: settingsManager.isProjectTrusted(),\n\t});\n\n\tprocess.exit(0);\n}\n\nexport async function handlePackageCommand(\n\targs: string[],\n\truntimeOptions: PackageCommandRuntimeOptions = {},\n): Promise<boolean> {\n\tconst options = parsePackageCommand(args);\n\tif (!options) {\n\t\treturn false;\n\t}\n\n\tif (options.help) {\n\t\tprintPackageCommandHelp(options.command);\n\t\treturn true;\n\t}\n\n\tif (options.invalidOption) {\n\t\tconsole.error(chalk.red(`Unknown option ${options.invalidOption} for \"${options.command}\".`));\n\t\tconsole.error(chalk.dim(`Use \"${APP_NAME} --help\" or \"${getPackageCommandUsage(options.command)}\".`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.missingOptionValue) {\n\t\tconsole.error(chalk.red(`Missing value for ${options.missingOptionValue}.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.invalidArgument) {\n\t\tconsole.error(chalk.red(`Unexpected argument ${options.invalidArgument}.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.conflictingOptions) {\n\t\tconsole.error(chalk.red(options.conflictingOptions));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tconst source = options.source;\n\tif ((options.command === \"install\" || options.command === \"remove\") && !source) {\n\t\tconsole.error(chalk.red(`Missing ${options.command} source.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.command === \"update\" && options.updateTarget?.type === \"models\") {\n\t\ttry {\n\t\t\tawait refreshModelCatalogs(getAgentDir());\n\t\t} catch (error: unknown) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Unknown model catalog refresh error\";\n\t\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\t\tprocess.exitCode = 1;\n\t\t}\n\t\treturn true;\n\t}\n\n\tconst cwd = process.cwd();\n\tconst agentDir = getAgentDir();\n\tconst writesProjectPackageConfig = (options.command === \"install\" || options.command === \"remove\") && options.local;\n\tconst { settingsManager, projectTrustWarnings } = await createCommandSettingsManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tprojectTrustOverride: options.projectTrustOverride,\n\t\tuseSavedProjectTrustOnly: options.command === \"update\",\n\t\textensionFactories: runtimeOptions.extensionFactories,\n\t});\n\treportProjectTrustWarnings(projectTrustWarnings);\n\tif (!settingsManager.isProjectTrusted() && writesProjectPackageConfig) {\n\t\tconsole.error(chalk.red(\"Project is not trusted. Use --approve to modify local package config.\"));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\treportSettingsErrors(settingsManager, \"package command\");\n\tconst selfUpdateNpmCommand = settingsManager.getGlobalSettings().npmCommand;\n\n\tconst packageManager = new DefaultPackageManager({ cwd, agentDir, settingsManager });\n\n\tpackageManager.setProgressCallback((event) => {\n\t\tif (event.type === \"start\") {\n\t\t\tprocess.stdout.write(chalk.dim(`${event.message}\\n`));\n\t\t}\n\t});\n\n\ttry {\n\t\tswitch (options.command) {\n\t\t\tcase \"install\":\n\t\t\t\tawait packageManager.installAndPersist(source!, { local: options.local });\n\t\t\t\tconsole.log(chalk.green(`Installed ${source}`));\n\t\t\t\treturn true;\n\n\t\t\tcase \"remove\": {\n\t\t\t\tconst removed = await packageManager.removeAndPersist(source!, { local: options.local });\n\t\t\t\tif (!removed) {\n\t\t\t\t\tconsole.error(chalk.red(`No matching package found for ${source}`));\n\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tconsole.log(chalk.green(`Removed ${source}`));\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcase \"list\": {\n\t\t\t\tconst configuredPackages = packageManager.listConfiguredPackages();\n\t\t\t\tconst userPackages = configuredPackages.filter((pkg) => pkg.scope === \"user\");\n\t\t\t\tconst projectPackages = configuredPackages.filter((pkg) => pkg.scope === \"project\");\n\n\t\t\t\tif (configuredPackages.length === 0) {\n\t\t\t\t\tconsole.log(chalk.dim(\"No packages installed.\"));\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tconst formatPackage = (pkg: (typeof configuredPackages)[number]) => {\n\t\t\t\t\tconst display = pkg.filtered ? `${pkg.source} (filtered)` : pkg.source;\n\t\t\t\t\tconsole.log(` ${display}`);\n\t\t\t\t\tif (pkg.installedPath) {\n\t\t\t\t\t\tconsole.log(chalk.dim(` ${pkg.installedPath}`));\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tif (userPackages.length > 0) {\n\t\t\t\t\tconsole.log(chalk.bold(\"User packages:\"));\n\t\t\t\t\tfor (const pkg of userPackages) {\n\t\t\t\t\t\tformatPackage(pkg);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (projectPackages.length > 0) {\n\t\t\t\t\tif (userPackages.length > 0) console.log();\n\t\t\t\t\tconsole.log(chalk.bold(\"Project packages:\"));\n\t\t\t\t\tfor (const pkg of projectPackages) {\n\t\t\t\t\t\tformatPackage(pkg);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcase \"update\": {\n\t\t\t\tconst target = options.updateTarget ?? { type: \"self\" };\n\t\t\t\tif (options.showExtensionsSkippedNote) {\n\t\t\t\t\tconsole.log(\n\t\t\t\t\t\tchalk.dim(`Extensions are skipped. Run ${APP_NAME} update --extensions to update extensions.`),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (updateTargetIncludesExtensions(target)) {\n\t\t\t\t\tconst updateSource = target.type === \"extensions\" ? target.source : undefined;\n\t\t\t\t\tawait packageManager.update(updateSource);\n\t\t\t\t\tif (updateSource) {\n\t\t\t\t\t\tconsole.log(chalk.green(`Updated ${updateSource}`));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log(chalk.green(\"Updated packages\"));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (updateTargetIncludesSelf(target)) {\n\t\t\t\t\tconst selfUpdatePlan = await getSelfUpdatePlan(options.force);\n\t\t\t\t\tif (!selfUpdatePlan.shouldRun) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconst installMethod = detectInstallMethod();\n\t\t\t\t\tif (process.platform === \"win32\" && installMethod !== \"npm\" && installMethod !== \"pnpm\") {\n\t\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t\tchalk.red(`${APP_NAME} self-update on Windows is only supported for npm and pnpm installs.`),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconsole.error(chalk.dim(`Detected install method: ${installMethod}. Update ${APP_NAME} manually.`));\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconst selfUpdateTarget = {\n\t\t\t\t\t\tpackageName: selfUpdatePlan.packageName,\n\t\t\t\t\t\tinstallSpec: selfUpdatePlan.installSpec,\n\t\t\t\t\t};\n\t\t\t\t\tconst selfUpdateCommand = getSelfUpdateCommand(PACKAGE_NAME, selfUpdateNpmCommand, selfUpdateTarget);\n\t\t\t\t\tif (!selfUpdateCommand) {\n\t\t\t\t\t\tprintSelfUpdateUnavailable(selfUpdateNpmCommand, selfUpdateTarget);\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tif (selfUpdatePlan.note) {\n\t\t\t\t\t\tprintSelfUpdateNote(selfUpdatePlan.note);\n\t\t\t\t\t}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (installMethod === \"npm\") {\n\t\t\t\t\t\t\tprepareWindowsNpmSelfUpdate();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tawait runSelfUpdate(selfUpdateCommand);\n\t\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\t\tconst message = error instanceof Error ? error.message : \"Unknown package command error\";\n\t\t\t\t\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\t\t\t\t\tif (installMethod === \"pnpm\") {\n\t\t\t\t\t\t\tprintPnpmSelfUpdateMetadataHint();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tprintSelfUpdateFallback(selfUpdateCommand);\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconsole.log(chalk.green(`Updated ${APP_NAME} from ${VERSION} to ${selfUpdatePlan.version}`));\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t} catch (error: unknown) {\n\t\tconst message = error instanceof Error ? error.message : \"Unknown package command error\";\n\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n}\n"]}
1
+ {"version":3,"file":"package-manager-cli.js","sourceRoot":"","sources":["../src/package-manager-cli.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\texistsSync,\n\tmkdirSync,\n\tmkdtempSync,\n\treaddirSync,\n\treadFileSync,\n\trenameSync,\n\trmSync,\n\twriteFileSync,\n} from \"node:fs\";\nimport { join, resolve } from \"node:path\";\nimport { Markdown, type MarkdownTheme } from \"@earendil-works/pi-tui\";\nimport chalk from \"chalk\";\nimport lockfile from \"proper-lockfile\";\nimport { selectConfig } from \"./cli/config-selector.ts\";\nimport { createProjectTrustContext } from \"./cli/project-trust.ts\";\nimport {\n\tAPP_NAME,\n\tCONFIG_DIR_NAME,\n\tdetectInstallMethod,\n\tgetAgentDir,\n\tgetPackageDir,\n\tgetSelfUpdateCommand,\n\tgetSelfUpdateUnavailableInstruction,\n\tPACKAGE_NAME,\n\ttype SelfUpdateCommand,\n\ttype SelfUpdatePackageTarget,\n\tVERSION,\n} from \"./config.ts\";\nimport type { InlineExtension } from \"./core/extensions/types.ts\";\nimport { ModelRuntime } from \"./core/model-runtime.ts\";\nimport { DefaultPackageManager } from \"./core/package-manager.ts\";\nimport { type AppMode, resolveProjectTrusted } from \"./core/project-trust.ts\";\nimport { DefaultResourceLoader } from \"./core/resource-loader.ts\";\nimport { SettingsManager } from \"./core/settings-manager.ts\";\nimport { hasTrustRequiringProjectResources, ProjectTrustStore } from \"./core/trust-manager.ts\";\nimport { spawnProcess, spawnProcessSync, waitForChildProcess } from \"./utils/child-process.ts\";\nimport { canonicalizePath, getCwdRelativePath } from \"./utils/paths.ts\";\nimport { getPiUserAgent } from \"./utils/pi-user-agent.ts\";\nimport { formatVersionCheckError, getLatestPiRelease, isNewerPackageVersion } from \"./utils/version-check.ts\";\nimport {\n\tcleanupWindowsSelfUpdateQuarantine,\n\tquarantineWindowsNativeDependencies,\n} from \"./utils/windows-self-update.ts\";\n\nexport type PackageCommand = \"install\" | \"remove\" | \"update\" | \"list\";\n\ntype UpdateTarget = { type: \"all\" } | { type: \"self\" } | { type: \"extensions\"; source?: string } | { type: \"models\" };\n\nconst DEFAULT_INSTALLER_API_BASE = \"https://pi.dev/api/installer/releases\";\nconst MANAGED_INSTALL_MARKER = \"managed-install.json\";\nconst MANAGED_RELEASE_VERSION_RE = /^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?(?:\\+[0-9A-Za-z.-]+)?$/;\n\nfunction getActiveManagedInstallRoot(): string | undefined {\n\tconst configuredRoot = process.env.PI_MANAGED_INSTALL_ROOT?.trim();\n\tif (!configuredRoot) return undefined;\n\n\tconst managedRoot = resolve(configuredRoot);\n\tconst releasesDir = canonicalizePath(join(managedRoot, \"releases\"));\n\t// The launcher environment is inherited by child processes. Do not classify a\n\t// source checkout or another Pi installation launched from managed Pi as managed.\n\tif (getCwdRelativePath(canonicalizePath(getPackageDir()), releasesDir) === undefined) return undefined;\n\n\tconst markerPath = join(managedRoot, MANAGED_INSTALL_MARKER);\n\ttry {\n\t\tconst marker = JSON.parse(readFileSync(markerPath, \"utf8\")) as {\n\t\t\tkind?: unknown;\n\t\t\tlayout?: unknown;\n\t\t\tschemaVersion?: unknown;\n\t\t};\n\t\tif (marker.kind !== \"pi-managed-install\" || marker.schemaVersion !== 1 || marker.layout !== \"releases-v1\") {\n\t\t\tthrow new Error();\n\t\t}\n\t} catch {\n\t\tthrow new Error(`Managed install marker is missing or invalid: ${markerPath}`);\n\t}\n\n\treturn managedRoot;\n}\n\nasync function fetchInstallerArtifact(url: string, label: string): Promise<string> {\n\tconst response = await fetch(url, { headers: { \"User-Agent\": getPiUserAgent(VERSION) } });\n\tif (!response.ok) {\n\t\tthrow new Error(`Could not download managed installer ${label} from ${url}: HTTP ${response.status}`);\n\t}\n\treturn await response.text();\n}\n\nasync function runManagedNpmCi(stageDir: string): Promise<void> {\n\tconst args = [\n\t\t\"ci\",\n\t\t\"--ignore-scripts\",\n\t\t\"--min-release-age=0\",\n\t\t\"--omit=dev\",\n\t\t\"--include=optional\",\n\t\t\"--no-fund\",\n\t\t\"--no-audit\",\n\t\t\"--loglevel=error\",\n\t\t\"--progress=false\",\n\t];\n\tconst code = await waitForChildProcess(spawnProcess(\"npm\", args, { cwd: stageDir, stdio: \"inherit\" }));\n\tif (code !== 0) throw new Error(`npm ${args.join(\" \")} exited with code ${code ?? \"unknown\"}`);\n}\n\nfunction verifyManagedRelease(releaseDir: string, expectedVersion: string): void {\n\tconst binPath = join(\n\t\treleaseDir,\n\t\t\"node_modules\",\n\t\t\".bin\",\n\t\tprocess.platform === \"win32\" ? `${APP_NAME}.cmd` : APP_NAME,\n\t);\n\tconst result = spawnProcessSync(binPath, [\"--version\"], {\n\t\tencoding: \"utf8\",\n\t\tstdio: [\"ignore\", \"pipe\", \"pipe\"],\n\t});\n\tif (result.error || result.status !== 0) {\n\t\tconst reason = result.error?.message || result.stderr.trim() || `exit code ${result.status ?? \"unknown\"}`;\n\t\tthrow new Error(`Could not verify managed Pi ${expectedVersion}: ${reason}`);\n\t}\n\tconst installedVersion = result.stdout.trim();\n\tif (installedVersion !== expectedVersion) {\n\t\tthrow new Error(`Managed Pi smoke test returned version ${installedVersion}; expected ${expectedVersion}.`);\n\t}\n}\n\nfunction activateManagedRelease(managedRoot: string, version: string): void {\n\tconst currentPath = join(managedRoot, \"current-version\");\n\tconst temporaryPath = join(managedRoot, `current-version.tmp.${process.pid}-${Date.now()}`);\n\ttry {\n\t\twriteFileSync(temporaryPath, `${version}\\n`);\n\t\trenameSync(temporaryPath, currentPath);\n\t} finally {\n\t\trmSync(temporaryPath, { force: true });\n\t}\n}\n\nfunction cleanupManagedStaging(managedRoot: string): void {\n\tconst stagingRoot = join(managedRoot, \"staging\");\n\ttry {\n\t\tfor (const entry of readdirSync(stagingRoot)) {\n\t\t\tif (entry.startsWith(\"update-\")) {\n\t\t\t\trmSync(join(stagingRoot, entry), { force: true, recursive: true });\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// The staging directory does not exist yet or is not writable.\n\t}\n}\n\nexport function cleanupManagedInstall(): void {\n\tlet managedRoot: string | undefined;\n\ttry {\n\t\tmanagedRoot = getActiveManagedInstallRoot();\n\t} catch {\n\t\treturn;\n\t}\n\tif (!managedRoot) return;\n\n\ttry {\n\t\tconst releaseLock = lockfile.lockSync(join(managedRoot, \"update\"), { realpath: false });\n\t\ttry {\n\t\t\tcleanupManagedStaging(managedRoot);\n\t\t} finally {\n\t\t\treleaseLock();\n\t\t}\n\t} catch {\n\t\t// A live update owns the staging directory, or cleanup is unavailable.\n\t}\n}\n\nasync function runManagedSelfUpdate(managedRoot: string, version: string): Promise<void> {\n\tif (!MANAGED_RELEASE_VERSION_RE.test(version)) {\n\t\tthrow new Error(`Invalid managed release version: ${version}`);\n\t}\n\n\tlet releaseLock: () => Promise<void>;\n\ttry {\n\t\treleaseLock = await lockfile.lock(join(managedRoot, \"update\"), { realpath: false });\n\t} catch (error: unknown) {\n\t\tif (error instanceof Error && \"code\" in error && error.code === \"ELOCKED\") {\n\t\t\tthrow new Error(\"Another managed Pi update is already running.\");\n\t\t}\n\t\tthrow error;\n\t}\n\n\tlet stageDir: string | undefined;\n\ttry {\n\t\tcleanupManagedStaging(managedRoot);\n\t\tconst installerApiBase = (process.env.PI_INSTALLER_API_BASE?.trim() || DEFAULT_INSTALLER_API_BASE).replace(\n\t\t\t/\\/+$/,\n\t\t\t\"\",\n\t\t);\n\t\tconst releaseUrl = `${installerApiBase}/${encodeURIComponent(version)}`;\n\t\tconst stagingRoot = join(managedRoot, \"staging\");\n\t\tconst releasesRoot = join(managedRoot, \"releases\");\n\t\tmkdirSync(releasesRoot, { recursive: true });\n\t\tconst releaseDir = join(releasesRoot, version);\n\t\tif (existsSync(releaseDir)) {\n\t\t\tverifyManagedRelease(releaseDir, version);\n\t\t\tactivateManagedRelease(managedRoot, version);\n\t\t\treturn;\n\t\t}\n\n\t\tmkdirSync(stagingRoot, { recursive: true });\n\t\tstageDir = mkdtempSync(join(stagingRoot, \"update-\"));\n\t\tconst [packageJsonContent, packageLockContent] = await Promise.all([\n\t\t\tfetchInstallerArtifact(`${releaseUrl}/package.json`, \"package.json\"),\n\t\t\tfetchInstallerArtifact(`${releaseUrl}/package-lock.json`, \"package-lock.json\"),\n\t\t]);\n\t\twriteFileSync(join(stageDir, \"package.json\"), packageJsonContent);\n\t\twriteFileSync(join(stageDir, \"package-lock.json\"), packageLockContent);\n\n\t\tawait runManagedNpmCi(stageDir);\n\t\tverifyManagedRelease(stageDir, version);\n\t\trenameSync(stageDir, releaseDir);\n\t\tactivateManagedRelease(managedRoot, version);\n\t} finally {\n\t\tif (stageDir) rmSync(stageDir, { force: true, recursive: true });\n\t\tawait releaseLock();\n\t}\n}\n\nconst SELF_UPDATE_NOTE_MARKDOWN_THEME: MarkdownTheme = {\n\theading: (text) => chalk.bold(chalk.yellow(text)),\n\tlink: (text) => chalk.cyan(text),\n\tlinkUrl: (text) => chalk.dim(text),\n\tcode: (text) => chalk.yellow(text),\n\tcodeBlock: (text) => chalk.dim(text),\n\tcodeBlockBorder: (text) => chalk.dim(text),\n\tquote: (text) => chalk.dim(text),\n\tquoteBorder: (text) => chalk.dim(text),\n\thr: (text) => chalk.dim(text),\n\tlistBullet: (text) => chalk.yellow(text),\n\tbold: (text) => chalk.bold(text),\n\titalic: (text) => chalk.italic(text),\n\tstrikethrough: (text) => chalk.strikethrough(text),\n\tunderline: (text) => chalk.underline(text),\n};\n\ninterface PackageCommandOptions {\n\tcommand: PackageCommand;\n\tsource?: string;\n\tupdateTarget?: UpdateTarget;\n\tshowExtensionsSkippedNote: boolean;\n\tlocal: boolean;\n\tforce: boolean;\n\tprojectTrustOverride?: boolean;\n\thelp: boolean;\n\tinvalidOption?: string;\n\tinvalidArgument?: string;\n\tmissingOptionValue?: string;\n\tconflictingOptions?: string;\n}\n\nfunction reportSettingsErrors(settingsManager: SettingsManager, context: string): void {\n\tconst errors = settingsManager.drainErrors();\n\tfor (const { scope, error } of errors) {\n\t\tconsole.error(chalk.yellow(`Warning (${context}, ${scope} settings): ${error.message}`));\n\t\tif (error.stack) {\n\t\t\tconsole.error(chalk.dim(error.stack));\n\t\t}\n\t}\n}\n\nfunction getPackageCommandUsage(command: PackageCommand): string {\n\tswitch (command) {\n\t\tcase \"install\":\n\t\t\treturn `${APP_NAME} install <source> [-l] [--approve|--no-approve]`;\n\t\tcase \"remove\":\n\t\t\treturn `${APP_NAME} remove <source> [-l] [--approve|--no-approve]`;\n\t\tcase \"update\":\n\t\t\treturn `${APP_NAME} update [source|self|pi] [--self|--extensions|--models|--all] [--extension <source>] [--approve|--no-approve] [--force]`;\n\t\tcase \"list\":\n\t\t\treturn `${APP_NAME} list [--approve|--no-approve]`;\n\t}\n}\n\nconst CONFIG_COMMAND_USAGE = `${APP_NAME} config [-l] [--approve|--no-approve]`;\n\nfunction printConfigCommandHelp(): void {\n\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${CONFIG_COMMAND_USAGE}\n\nOpen the resource configuration TUI to enable or disable package resources.\nWithout -l, starts in global settings (~/${CONFIG_DIR_NAME}/agent/settings.json).\nPress Tab in the TUI to switch between global and project-local modes.\n\nOptions:\n -l, --local Edit project overrides (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command with -l\n -na, --no-approve Ignore project-local files for this command with -l\n`);\n}\n\nfunction printPackageCommandHelp(command: PackageCommand): void {\n\tswitch (command) {\n\t\tcase \"install\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"install\")}\n\nInstall a package and add it to settings.\n\nOptions:\n -l, --local Install project-locally (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n\nExamples:\n ${APP_NAME} install npm:@foo/bar\n ${APP_NAME} install git:github.com/user/repo\n ${APP_NAME} install git:git@github.com:user/repo\n ${APP_NAME} install https://github.com/user/repo\n ${APP_NAME} install ssh://git@github.com/user/repo\n ${APP_NAME} install ./local/path\n`);\n\t\t\treturn;\n\n\t\tcase \"remove\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"remove\")}\n\nRemove a package and its source from settings.\nAlias: ${APP_NAME} uninstall <source> [-l]\n\nOptions:\n -l, --local Remove from project settings (${CONFIG_DIR_NAME}/settings.json)\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n\nExamples:\n ${APP_NAME} remove npm:@foo/bar\n ${APP_NAME} uninstall npm:@foo/bar\n`);\n\t\t\treturn;\n\n\t\tcase \"update\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"update\")}\n\nUpdate pi, installed packages, or model catalogs.\n\nOptions:\n --self Update pi only (default when no target is given)\n --extensions Update installed packages only\n --models Refresh model catalogs only\n --all Update pi and installed packages\n --extension <source> Update one package only\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n --force Reinstall pi even if the current version is latest\n\nShort forms:\n ${APP_NAME} update Update pi only\n ${APP_NAME} update --all Update pi and all extensions\n ${APP_NAME} update --models Refresh model catalogs only\n ${APP_NAME} update <source> Update one package\n ${APP_NAME} update pi Update pi only (self works as alias to pi)\n`);\n\t\t\treturn;\n\n\t\tcase \"list\":\n\t\t\tconsole.log(`${chalk.bold(\"Usage:\")}\n ${getPackageCommandUsage(\"list\")}\n\nList installed packages from user and project settings.\n\nOptions:\n -a, --approve Trust project-local files for this command\n -na, --no-approve Ignore project-local files for this command\n`);\n\t\t\treturn;\n\t}\n}\n\nfunction parsePackageCommand(args: string[]): PackageCommandOptions | undefined {\n\tconst [rawCommand, ...rest] = args;\n\tlet command: PackageCommand | undefined;\n\tif (rawCommand === \"uninstall\") {\n\t\tcommand = \"remove\";\n\t} else if (rawCommand === \"install\" || rawCommand === \"remove\" || rawCommand === \"update\" || rawCommand === \"list\") {\n\t\tcommand = rawCommand;\n\t}\n\tif (!command) {\n\t\treturn undefined;\n\t}\n\n\tlet local = false;\n\tlet force = false;\n\tlet projectTrustOverride: boolean | undefined;\n\tlet help = false;\n\tlet invalidOption: string | undefined;\n\tlet invalidArgument: string | undefined;\n\tlet missingOptionValue: string | undefined;\n\tlet conflictingOptions: string | undefined;\n\tlet source: string | undefined;\n\tlet selfFlag = false;\n\tlet extensionsFlag = false;\n\tlet modelsFlag = false;\n\tlet allFlag = false;\n\tlet extensionFlagSource: string | undefined;\n\n\tfor (let index = 0; index < rest.length; index++) {\n\t\tconst arg = rest[index];\n\t\tif (arg === \"-h\" || arg === \"--help\") {\n\t\t\thelp = true;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"-l\" || arg === \"--local\") {\n\t\t\tif (command === \"install\" || command === \"remove\") {\n\t\t\t\tlocal = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--self\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tselfFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--extensions\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\textensionsFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--models\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tmodelsFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--all\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tallFlag = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--approve\" || arg === \"-a\") {\n\t\t\tprojectTrustOverride = true;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--no-approve\" || arg === \"-na\") {\n\t\t\tprojectTrustOverride = false;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--force\") {\n\t\t\tif (command === \"update\") {\n\t\t\t\tforce = true;\n\t\t\t} else {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg === \"--extension\") {\n\t\t\tif (command !== \"update\") {\n\t\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst value = rest[index + 1];\n\t\t\tif (!value || value.startsWith(\"-\")) {\n\t\t\t\tmissingOptionValue = missingOptionValue ?? arg;\n\t\t\t} else if (extensionFlagSource) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--extension can only be provided once\";\n\t\t\t\tindex++;\n\t\t\t} else {\n\t\t\t\textensionFlagSource = value;\n\t\t\t\tindex++;\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (arg.startsWith(\"-\")) {\n\t\t\tinvalidOption = invalidOption ?? arg;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!source) {\n\t\t\tsource = arg;\n\t\t} else {\n\t\t\tinvalidArgument = invalidArgument ?? arg;\n\t\t}\n\t}\n\n\tlet updateTarget: UpdateTarget | undefined;\n\tlet showExtensionsSkippedNote = false;\n\tif (command === \"update\") {\n\t\tif (allFlag && (selfFlag || extensionsFlag || modelsFlag || extensionFlagSource)) {\n\t\t\tconflictingOptions =\n\t\t\t\tconflictingOptions ?? \"--all cannot be combined with --self, --extensions, --models, or --extension\";\n\t\t}\n\t\tif (allFlag && source) {\n\t\t\tconflictingOptions = conflictingOptions ?? \"--all cannot be combined with a positional source\";\n\t\t}\n\n\t\tif (modelsFlag) {\n\t\t\tif (selfFlag || extensionsFlag || allFlag || extensionFlagSource) {\n\t\t\t\tconflictingOptions =\n\t\t\t\t\tconflictingOptions ?? \"--models cannot be combined with --self, --extensions, --all, or --extension\";\n\t\t\t}\n\t\t\tif (source) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--models cannot be combined with a positional source\";\n\t\t\t}\n\t\t\tupdateTarget = { type: \"models\" };\n\t\t} else if (extensionFlagSource) {\n\t\t\tif (selfFlag || extensionsFlag || allFlag) {\n\t\t\t\tconflictingOptions =\n\t\t\t\t\tconflictingOptions ?? \"--extension cannot be combined with --self, --extensions, or --all\";\n\t\t\t}\n\t\t\tif (source) {\n\t\t\t\tconflictingOptions = conflictingOptions ?? \"--extension cannot be combined with a positional source\";\n\t\t\t}\n\t\t\tupdateTarget = { type: \"extensions\", source: extensionFlagSource };\n\t\t} else if (source) {\n\t\t\tconst sourceIsSelf = source === \"self\" || source === \"pi\";\n\t\t\tif (sourceIsSelf) {\n\t\t\t\tupdateTarget = extensionsFlag ? { type: \"all\" } : { type: \"self\" };\n\t\t\t} else {\n\t\t\t\tif (extensionsFlag || selfFlag || allFlag) {\n\t\t\t\t\tconflictingOptions =\n\t\t\t\t\t\tconflictingOptions ??\n\t\t\t\t\t\t\"positional update targets cannot be combined with --self, --extensions, or --all\";\n\t\t\t\t}\n\t\t\t\tupdateTarget = { type: \"extensions\", source };\n\t\t\t}\n\t\t} else if (allFlag) {\n\t\t\tupdateTarget = { type: \"all\" };\n\t\t} else if (selfFlag && extensionsFlag) {\n\t\t\tupdateTarget = { type: \"all\" };\n\t\t} else if (selfFlag) {\n\t\t\tupdateTarget = { type: \"self\" };\n\t\t} else if (extensionsFlag) {\n\t\t\tupdateTarget = { type: \"extensions\" };\n\t\t} else {\n\t\t\tupdateTarget = { type: \"self\" };\n\t\t\tshowExtensionsSkippedNote = true;\n\t\t}\n\t}\n\n\treturn {\n\t\tcommand,\n\t\tsource,\n\t\tupdateTarget,\n\t\tshowExtensionsSkippedNote,\n\t\tlocal,\n\t\tforce,\n\t\tprojectTrustOverride,\n\t\thelp,\n\t\tinvalidOption,\n\t\tinvalidArgument,\n\t\tmissingOptionValue,\n\t\tconflictingOptions,\n\t};\n}\n\nfunction updateTargetIncludesSelf(target: UpdateTarget): boolean {\n\treturn target.type === \"all\" || target.type === \"self\";\n}\n\nfunction updateTargetIncludesExtensions(target: UpdateTarget): boolean {\n\treturn target.type === \"all\" || target.type === \"extensions\";\n}\n\nasync function refreshModelCatalogs(agentDir: string): Promise<void> {\n\tconst controller = new AbortController();\n\tconst timeout = setTimeout(() => controller.abort(), 15_000);\n\ttry {\n\t\tconst modelRuntime = await ModelRuntime.create({\n\t\t\tauthPath: join(agentDir, \"auth.json\"),\n\t\t\tmodelsPath: join(agentDir, \"models.json\"),\n\t\t\tallowModelNetwork: false,\n\t\t\tsignal: controller.signal,\n\t\t});\n\t\tconst result = await modelRuntime.refresh({\n\t\t\tallowNetwork: true,\n\t\t\tforce: true,\n\t\t\tsignal: controller.signal,\n\t\t});\n\t\tif (result.aborted) {\n\t\t\tthrow new Error(\"Model catalog refresh timed out.\");\n\t\t}\n\t\tif (result.errors.size > 0) {\n\t\t\tconst details = Array.from(result.errors, ([provider, error]) => `${provider}: ${error.message}`).join(\"; \");\n\t\t\tthrow new Error(`Could not refresh model catalogs: ${details}`);\n\t\t}\n\t} finally {\n\t\tclearTimeout(timeout);\n\t}\n\tconsole.log(chalk.green(\"Model catalogs refreshed\"));\n}\n\nfunction printSelfUpdateUnavailable(\n\tnpmCommand?: string[],\n\tupdatePackageTarget: SelfUpdatePackageTarget = PACKAGE_NAME,\n): void {\n\tconsole.error(`error: ${APP_NAME} cannot self-update this installation.`);\n\tconsole.error(getSelfUpdateUnavailableInstruction(PACKAGE_NAME, npmCommand, updatePackageTarget));\n\n\tconst entrypoint = process.argv[1];\n\tif (entrypoint) {\n\t\tconsole.error(\"\");\n\t\tconsole.error(`Location of ${APP_NAME} executable: ${entrypoint}`);\n\t}\n}\n\nfunction printSelfUpdateFallback(command: SelfUpdateCommand): void {\n\tconsole.error(chalk.dim(`If this keeps failing, run this command yourself: ${command.display}`));\n}\n\nfunction printPnpmSelfUpdateMetadataHint(): void {\n\tconsole.error(chalk.yellow(\"If pnpm reports missing package versions, its cached registry metadata may be stale.\"));\n\tconsole.error(chalk.yellow(`Run \\`pnpm store prune\\` and retry \\`${APP_NAME} update --self\\`.`));\n}\n\nfunction printSelfUpdateNote(note: string): void {\n\tconst trimmedNote = note.trim();\n\tif (!trimmedNote) {\n\t\treturn;\n\t}\n\n\tconsole.log();\n\tconsole.log(chalk.bold(chalk.yellow(\"Update note\")));\n\ttry {\n\t\tconst width = Math.max(20, process.stdout.columns ?? 80);\n\t\tconst renderedLines = new Markdown(trimmedNote, 0, 0, SELF_UPDATE_NOTE_MARKDOWN_THEME)\n\t\t\t.render(width)\n\t\t\t.map((line) => line.trimEnd());\n\t\tconsole.log(renderedLines.join(\"\\n\"));\n\t} catch {\n\t\tconsole.log(trimmedNote);\n\t}\n\tconsole.log();\n}\n\ninterface SelfUpdatePlan {\n\tpackageName: string;\n\tinstallSpec: string;\n\tversion: string;\n\tshouldRun: boolean;\n\tnote?: string;\n}\n\nasync function getSelfUpdatePlan(force: boolean): Promise<SelfUpdatePlan> {\n\tlet latestRelease: Awaited<ReturnType<typeof getLatestPiRelease>>;\n\ttry {\n\t\tlatestRelease = await getLatestPiRelease(VERSION, { retry: true });\n\t} catch (error: unknown) {\n\t\tthrow new Error(`Could not determine latest ${APP_NAME} version: ${formatVersionCheckError(error)}`, {\n\t\t\tcause: error,\n\t\t});\n\t}\n\tif (!latestRelease) {\n\t\tthrow new Error(`Could not determine latest ${APP_NAME} version.`);\n\t}\n\n\tconst packageName = latestRelease.packageName ?? PACKAGE_NAME;\n\tconst installSpec = `${packageName}@${latestRelease.version}`;\n\tif (force || packageName !== PACKAGE_NAME || isNewerPackageVersion(latestRelease.version, VERSION)) {\n\t\treturn {\n\t\t\tpackageName,\n\t\t\tinstallSpec,\n\t\t\tversion: latestRelease.version,\n\t\t\t...(latestRelease.note ? { note: latestRelease.note } : {}),\n\t\t\tshouldRun: true,\n\t\t};\n\t}\n\n\tconsole.log(chalk.green(`${APP_NAME} is already up to date (v${VERSION})`));\n\treturn { packageName, installSpec, version: latestRelease.version, shouldRun: false };\n}\n\nasync function runSelfUpdate(command: SelfUpdateCommand): Promise<void> {\n\tconsole.log(chalk.dim(`Updating ${APP_NAME} with ${command.display}...`));\n\tfor (const step of command.steps ?? [command]) {\n\t\tawait new Promise<void>((resolve, reject) => {\n\t\t\tconst child = spawnProcess(step.command, step.args, {\n\t\t\t\tstdio: \"inherit\",\n\t\t\t});\n\t\t\tchild.on(\"error\", (error) => {\n\t\t\t\treject(error);\n\t\t\t});\n\t\t\tchild.on(\"close\", (code, signal) => {\n\t\t\t\tif (code === 0) {\n\t\t\t\t\tresolve();\n\t\t\t\t} else if (signal) {\n\t\t\t\t\treject(new Error(`${step.display} terminated by signal ${signal}`));\n\t\t\t\t} else {\n\t\t\t\t\treject(new Error(`${step.display} exited with code ${code ?? \"unknown\"}`));\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n}\n\nfunction prepareWindowsNpmSelfUpdate(): void {\n\tif (process.platform !== \"win32\") {\n\t\treturn;\n\t}\n\n\tconst packageDir = getPackageDir();\n\tcleanupWindowsSelfUpdateQuarantine(packageDir);\n\tquarantineWindowsNativeDependencies(packageDir);\n}\n\nexport interface PackageCommandRuntimeOptions {\n\textensionFactories?: InlineExtension[];\n}\n\ninterface CommandSettingsResult {\n\tsettingsManager: SettingsManager;\n\tprojectTrustWarnings: string[];\n}\n\nfunction getCommandAppMode(): AppMode {\n\treturn process.stdin.isTTY && process.stdout.isTTY ? \"interactive\" : \"print\";\n}\n\nfunction reportProjectTrustWarnings(warnings: readonly string[]): void {\n\tfor (const warning of warnings) {\n\t\tconsole.error(chalk.yellow(`Warning: ${warning}`));\n\t}\n}\n\nasync function createCommandSettingsManager(options: {\n\tcwd: string;\n\tagentDir: string;\n\tprojectTrustOverride?: boolean;\n\tuseSavedProjectTrustOnly?: boolean;\n\textensionFactories?: InlineExtension[];\n}): Promise<CommandSettingsResult> {\n\tconst settingsManager = SettingsManager.create(options.cwd, options.agentDir, { projectTrusted: false });\n\tconst projectTrustWarnings: string[] = [];\n\tconst trustStore = new ProjectTrustStore(options.agentDir);\n\tif (options.useSavedProjectTrustOnly) {\n\t\tconst savedProjectTrusted = trustStore.get(options.cwd) === true;\n\t\tsettingsManager.setProjectTrusted(options.projectTrustOverride ?? savedProjectTrusted);\n\t\treturn { settingsManager, projectTrustWarnings };\n\t}\n\n\tconst appMode = getCommandAppMode();\n\tconst extensionsResult =\n\t\toptions.projectTrustOverride === undefined && hasTrustRequiringProjectResources(options.cwd)\n\t\t\t? await new DefaultResourceLoader({\n\t\t\t\t\tcwd: options.cwd,\n\t\t\t\t\tagentDir: options.agentDir,\n\t\t\t\t\tsettingsManager,\n\t\t\t\t\textensionFactories: options.extensionFactories,\n\t\t\t\t}).loadProjectTrustExtensions()\n\t\t\t: undefined;\n\tfor (const error of extensionsResult?.errors ?? []) {\n\t\tprojectTrustWarnings.push(`Failed to load extension \"${error.path}\": ${error.error}`);\n\t}\n\n\tconst projectTrusted = await resolveProjectTrusted({\n\t\tcwd: options.cwd,\n\t\ttrustStore,\n\t\ttrustOverride: options.projectTrustOverride,\n\t\tdefaultProjectTrust: settingsManager.getDefaultProjectTrust(),\n\t\textensionsResult,\n\t\tprojectTrustContext: createProjectTrustContext({\n\t\t\tcwd: options.cwd,\n\t\t\tmode: appMode,\n\t\t\tsettingsManager,\n\t\t\thasUI: appMode === \"interactive\",\n\t\t}),\n\t\tonExtensionError: (message) => projectTrustWarnings.push(message),\n\t});\n\tsettingsManager.setProjectTrusted(projectTrusted);\n\treturn { settingsManager, projectTrustWarnings };\n}\n\nexport async function handleConfigCommand(\n\targs: string[],\n\truntimeOptions: PackageCommandRuntimeOptions = {},\n): Promise<boolean> {\n\tconst [command, ...rest] = args;\n\tif (command !== \"config\") {\n\t\treturn false;\n\t}\n\n\tif (rest.includes(\"-h\") || rest.includes(\"--help\")) {\n\t\tprintConfigCommandHelp();\n\t\treturn true;\n\t}\n\n\tlet local = false;\n\tlet projectTrustOverride: boolean | undefined;\n\tfor (const arg of rest) {\n\t\tif (arg === \"-l\" || arg === \"--local\") {\n\t\t\tlocal = true;\n\t\t} else if (arg === \"-a\" || arg === \"--approve\") {\n\t\t\tprojectTrustOverride = true;\n\t\t} else if (arg === \"-na\" || arg === \"--no-approve\") {\n\t\t\tprojectTrustOverride = false;\n\t\t} else if (arg.startsWith(\"-\")) {\n\t\t\tconsole.error(chalk.red(`Unknown option ${arg} for \"config\".`));\n\t\t\tconsole.error(chalk.dim(`Use \"${APP_NAME} --help\" or \"${CONFIG_COMMAND_USAGE}\".`));\n\t\t\tprocess.exitCode = 1;\n\t\t\treturn true;\n\t\t} else {\n\t\t\tconsole.error(chalk.red(`Unexpected argument ${arg}.`));\n\t\t\tconsole.error(chalk.dim(`Usage: ${CONFIG_COMMAND_USAGE}`));\n\t\t\tprocess.exitCode = 1;\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tconst cwd = process.cwd();\n\tconst agentDir = getAgentDir();\n\tconst { settingsManager, projectTrustWarnings } = await createCommandSettingsManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tprojectTrustOverride,\n\t\textensionFactories: runtimeOptions.extensionFactories,\n\t});\n\treportProjectTrustWarnings(projectTrustWarnings);\n\tif (local && !settingsManager.isProjectTrusted()) {\n\t\tconsole.error(chalk.red(\"Project is not trusted. Use --approve to modify local resource config.\"));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\treportSettingsErrors(settingsManager, \"config command\");\n\tconst globalSettingsManager = SettingsManager.create(cwd, agentDir, { projectTrusted: false });\n\tconst globalResolvedPaths = await new DefaultPackageManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tsettingsManager: globalSettingsManager,\n\t}).resolve();\n\tconst projectResolvedPaths = settingsManager.isProjectTrusted()\n\t\t? await new DefaultPackageManager({ cwd, agentDir, settingsManager }).resolve()\n\t\t: globalResolvedPaths;\n\n\tawait selectConfig({\n\t\tresolvedPaths: { global: globalResolvedPaths, project: projectResolvedPaths },\n\t\tsettingsManager,\n\t\tcwd,\n\t\tagentDir,\n\t\twriteScope: local ? \"project\" : \"global\",\n\t\tprojectModeAvailable: settingsManager.isProjectTrusted(),\n\t});\n\n\tprocess.exit(0);\n}\n\nexport async function handlePackageCommand(\n\targs: string[],\n\truntimeOptions: PackageCommandRuntimeOptions = {},\n): Promise<boolean> {\n\tconst options = parsePackageCommand(args);\n\tif (!options) {\n\t\treturn false;\n\t}\n\n\tif (options.help) {\n\t\tprintPackageCommandHelp(options.command);\n\t\treturn true;\n\t}\n\n\tif (options.invalidOption) {\n\t\tconsole.error(chalk.red(`Unknown option ${options.invalidOption} for \"${options.command}\".`));\n\t\tconsole.error(chalk.dim(`Use \"${APP_NAME} --help\" or \"${getPackageCommandUsage(options.command)}\".`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.missingOptionValue) {\n\t\tconsole.error(chalk.red(`Missing value for ${options.missingOptionValue}.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.invalidArgument) {\n\t\tconsole.error(chalk.red(`Unexpected argument ${options.invalidArgument}.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.conflictingOptions) {\n\t\tconsole.error(chalk.red(options.conflictingOptions));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tconst source = options.source;\n\tif ((options.command === \"install\" || options.command === \"remove\") && !source) {\n\t\tconsole.error(chalk.red(`Missing ${options.command} source.`));\n\t\tconsole.error(chalk.dim(`Usage: ${getPackageCommandUsage(options.command)}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\n\tif (options.command === \"update\" && options.updateTarget?.type === \"models\") {\n\t\ttry {\n\t\t\tawait refreshModelCatalogs(getAgentDir());\n\t\t} catch (error: unknown) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Unknown model catalog refresh error\";\n\t\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\t\tprocess.exitCode = 1;\n\t\t}\n\t\treturn true;\n\t}\n\n\tconst cwd = process.cwd();\n\tconst agentDir = getAgentDir();\n\tconst writesProjectPackageConfig = (options.command === \"install\" || options.command === \"remove\") && options.local;\n\tconst { settingsManager, projectTrustWarnings } = await createCommandSettingsManager({\n\t\tcwd,\n\t\tagentDir,\n\t\tprojectTrustOverride: options.projectTrustOverride,\n\t\tuseSavedProjectTrustOnly: options.command === \"update\",\n\t\textensionFactories: runtimeOptions.extensionFactories,\n\t});\n\treportProjectTrustWarnings(projectTrustWarnings);\n\tif (!settingsManager.isProjectTrusted() && writesProjectPackageConfig) {\n\t\tconsole.error(chalk.red(\"Project is not trusted. Use --approve to modify local package config.\"));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n\treportSettingsErrors(settingsManager, \"package command\");\n\tconst selfUpdateNpmCommand = settingsManager.getGlobalSettings().npmCommand;\n\n\tconst packageManager = new DefaultPackageManager({ cwd, agentDir, settingsManager });\n\n\tpackageManager.setProgressCallback((event) => {\n\t\tif (event.type === \"start\") {\n\t\t\tprocess.stdout.write(chalk.dim(`${event.message}\\n`));\n\t\t}\n\t});\n\n\ttry {\n\t\tswitch (options.command) {\n\t\t\tcase \"install\":\n\t\t\t\tawait packageManager.installAndPersist(source!, { local: options.local });\n\t\t\t\tconsole.log(chalk.green(`Installed ${source}`));\n\t\t\t\treturn true;\n\n\t\t\tcase \"remove\": {\n\t\t\t\tconst removed = await packageManager.removeAndPersist(source!, { local: options.local });\n\t\t\t\tif (!removed) {\n\t\t\t\t\tconsole.error(chalk.red(`No matching package found for ${source}`));\n\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tconsole.log(chalk.green(`Removed ${source}`));\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcase \"list\": {\n\t\t\t\tconst configuredPackages = packageManager.listConfiguredPackages();\n\t\t\t\tconst userPackages = configuredPackages.filter((pkg) => pkg.scope === \"user\");\n\t\t\t\tconst projectPackages = configuredPackages.filter((pkg) => pkg.scope === \"project\");\n\n\t\t\t\tif (configuredPackages.length === 0) {\n\t\t\t\t\tconsole.log(chalk.dim(\"No packages installed.\"));\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tconst formatPackage = (pkg: (typeof configuredPackages)[number]) => {\n\t\t\t\t\tconst display = pkg.filtered ? `${pkg.source} (filtered)` : pkg.source;\n\t\t\t\t\tconsole.log(` ${display}`);\n\t\t\t\t\tif (pkg.installedPath) {\n\t\t\t\t\t\tconsole.log(chalk.dim(` ${pkg.installedPath}`));\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tif (userPackages.length > 0) {\n\t\t\t\t\tconsole.log(chalk.bold(\"User packages:\"));\n\t\t\t\t\tfor (const pkg of userPackages) {\n\t\t\t\t\t\tformatPackage(pkg);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (projectPackages.length > 0) {\n\t\t\t\t\tif (userPackages.length > 0) console.log();\n\t\t\t\t\tconsole.log(chalk.bold(\"Project packages:\"));\n\t\t\t\t\tfor (const pkg of projectPackages) {\n\t\t\t\t\t\tformatPackage(pkg);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tcase \"update\": {\n\t\t\t\tconst target = options.updateTarget ?? { type: \"self\" };\n\t\t\t\tif (options.showExtensionsSkippedNote) {\n\t\t\t\t\tconsole.log(\n\t\t\t\t\t\tchalk.dim(`Extensions are skipped. Run ${APP_NAME} update --extensions to update extensions.`),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (updateTargetIncludesExtensions(target)) {\n\t\t\t\t\tconst updateSource = target.type === \"extensions\" ? target.source : undefined;\n\t\t\t\t\tawait packageManager.update(updateSource);\n\t\t\t\t\tif (updateSource) {\n\t\t\t\t\t\tconsole.log(chalk.green(`Updated ${updateSource}`));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log(chalk.green(\"Updated packages\"));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (updateTargetIncludesSelf(target)) {\n\t\t\t\t\tconst managedInstallRoot = getActiveManagedInstallRoot();\n\t\t\t\t\tif (managedInstallRoot && options.force) {\n\t\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t\tchalk.red(\n\t\t\t\t\t\t\t\t`Managed ${APP_NAME} installations do not support --force; rerun the installer to repair this installation.`,\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconst selfUpdatePlan = await getSelfUpdatePlan(options.force);\n\t\t\t\t\tif (!selfUpdatePlan.shouldRun) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tif (managedInstallRoot) {\n\t\t\t\t\t\tif (selfUpdatePlan.note) {\n\t\t\t\t\t\t\tprintSelfUpdateNote(selfUpdatePlan.note);\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconsole.log(chalk.dim(`Updating managed ${APP_NAME} installation...`));\n\t\t\t\t\t\t\tawait runManagedSelfUpdate(managedInstallRoot, selfUpdatePlan.version);\n\t\t\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\t\t\tconst message = error instanceof Error ? error.message : \"Unknown managed update error\";\n\t\t\t\t\t\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconsole.log(chalk.green(`Updated ${APP_NAME} from ${VERSION} to ${selfUpdatePlan.version}`));\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst installMethod = detectInstallMethod();\n\t\t\t\t\tif (process.platform === \"win32\" && installMethod !== \"npm\" && installMethod !== \"pnpm\") {\n\t\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t\tchalk.red(`${APP_NAME} self-update on Windows is only supported for npm and pnpm installs.`),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconsole.error(chalk.dim(`Detected install method: ${installMethod}. Update ${APP_NAME} manually.`));\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconst selfUpdateTarget = {\n\t\t\t\t\t\tpackageName: selfUpdatePlan.packageName,\n\t\t\t\t\t\tinstallSpec: selfUpdatePlan.installSpec,\n\t\t\t\t\t};\n\t\t\t\t\tconst selfUpdateCommand = getSelfUpdateCommand(PACKAGE_NAME, selfUpdateNpmCommand, selfUpdateTarget);\n\t\t\t\t\tif (!selfUpdateCommand) {\n\t\t\t\t\t\tprintSelfUpdateUnavailable(selfUpdateNpmCommand, selfUpdateTarget);\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tif (selfUpdatePlan.note) {\n\t\t\t\t\t\tprintSelfUpdateNote(selfUpdatePlan.note);\n\t\t\t\t\t}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (installMethod === \"npm\") {\n\t\t\t\t\t\t\tprepareWindowsNpmSelfUpdate();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tawait runSelfUpdate(selfUpdateCommand);\n\t\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\t\tconst message = error instanceof Error ? error.message : \"Unknown package command error\";\n\t\t\t\t\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\t\t\t\t\tif (installMethod === \"pnpm\") {\n\t\t\t\t\t\t\tprintPnpmSelfUpdateMetadataHint();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tprintSelfUpdateFallback(selfUpdateCommand);\n\t\t\t\t\t\tprocess.exitCode = 1;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t\tconsole.log(chalk.green(`Updated ${APP_NAME} from ${VERSION} to ${selfUpdatePlan.version}`));\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t} catch (error: unknown) {\n\t\tconst message = error instanceof Error ? error.message : \"Unknown package command error\";\n\t\tconsole.error(chalk.red(`Error: ${message}`));\n\t\tprocess.exitCode = 1;\n\t\treturn true;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../../src/utils/frontmatter.ts"],"names":[],"mappings":"AAEA,KAAK,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAC3D,WAAW,EAAE,CAAC,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAsBF,eAAO,MAAM,gBAAgB,GAAI,CAAC,oGASjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,6BAA8D,CAAC","sourcesContent":["import { parse } from \"yaml\";\n\ntype ParsedFrontmatter<T extends Record<string, unknown>> = {\n\tfrontmatter: T;\n\tbody: string;\n};\n\nconst normalizeNewlines = (value: string): string => value.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n\nconst extractFrontmatter = (content: string): { yamlString: string | null; body: string } => {\n\tconst normalized = normalizeNewlines(content);\n\n\tif (!normalized.startsWith(\"---\")) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\tconst endIndex = normalized.indexOf(\"\\n---\", 3);\n\tif (endIndex === -1) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\treturn {\n\t\tyamlString: normalized.slice(4, endIndex),\n\t\tbody: normalized.slice(endIndex + 4).trim(),\n\t};\n};\n\nexport const parseFrontmatter = <T extends Record<string, unknown> = Record<string, unknown>>(\n\tcontent: string,\n): ParsedFrontmatter<T> => {\n\tconst { yamlString, body } = extractFrontmatter(content);\n\tif (!yamlString) {\n\t\treturn { frontmatter: {} as T, body };\n\t}\n\tconst parsed = parse(yamlString);\n\treturn { frontmatter: (parsed ?? {}) as T, body };\n};\n\nexport const stripFrontmatter = (content: string): string => parseFrontmatter(content).body;\n"]}
1
+ {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../../src/utils/frontmatter.ts"],"names":[],"mappings":"AAGA,KAAK,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAC3D,WAAW,EAAE,CAAC,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAsBF,eAAO,MAAM,gBAAgB,GAAI,CAAC,oGASjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,6BAA8D,CAAC","sourcesContent":["import { parse } from \"yaml\";\nimport { stripBom } from \"./text.ts\";\n\ntype ParsedFrontmatter<T extends Record<string, unknown>> = {\n\tfrontmatter: T;\n\tbody: string;\n};\n\nconst normalizeNewlines = (value: string): string => value.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n\nconst extractFrontmatter = (content: string): { yamlString: string | null; body: string } => {\n\tconst normalized = normalizeNewlines(stripBom(content));\n\n\tif (!normalized.startsWith(\"---\")) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\tconst endIndex = normalized.indexOf(\"\\n---\", 3);\n\tif (endIndex === -1) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\treturn {\n\t\tyamlString: normalized.slice(4, endIndex),\n\t\tbody: normalized.slice(endIndex + 4).trim(),\n\t};\n};\n\nexport const parseFrontmatter = <T extends Record<string, unknown> = Record<string, unknown>>(\n\tcontent: string,\n): ParsedFrontmatter<T> => {\n\tconst { yamlString, body } = extractFrontmatter(content);\n\tif (!yamlString) {\n\t\treturn { frontmatter: {} as T, body };\n\t}\n\tconst parsed = parse(yamlString);\n\treturn { frontmatter: (parsed ?? {}) as T, body };\n};\n\nexport const stripFrontmatter = (content: string): string => parseFrontmatter(content).body;\n"]}
@@ -1,7 +1,8 @@
1
1
  import { parse } from "yaml";
2
+ import { stripBom } from "./text.js";
2
3
  const normalizeNewlines = (value) => value.replace(/\r\n/g, "\n").replace(/\r/g, "\n");
3
4
  const extractFrontmatter = (content) => {
4
- const normalized = normalizeNewlines(content);
5
+ const normalized = normalizeNewlines(stripBom(content));
5
6
  if (!normalized.startsWith("---")) {
6
7
  return { yamlString: null, body: normalized };
7
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../src/utils/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAO7B,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAEvG,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAA+C,EAAE,CAAC;IAC5F,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE9C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO;QACN,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;QACzC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3C,CAAC;AAAA,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC/B,OAAe,EACQ,EAAE,CAAC;IAC1B,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,EAAE,WAAW,EAAE,EAAO,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,EAAE,WAAW,EAAE,CAAC,MAAM,IAAI,EAAE,CAAM,EAAE,IAAI,EAAE,CAAC;AAAA,CAClD,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC","sourcesContent":["import { parse } from \"yaml\";\n\ntype ParsedFrontmatter<T extends Record<string, unknown>> = {\n\tfrontmatter: T;\n\tbody: string;\n};\n\nconst normalizeNewlines = (value: string): string => value.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n\nconst extractFrontmatter = (content: string): { yamlString: string | null; body: string } => {\n\tconst normalized = normalizeNewlines(content);\n\n\tif (!normalized.startsWith(\"---\")) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\tconst endIndex = normalized.indexOf(\"\\n---\", 3);\n\tif (endIndex === -1) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\treturn {\n\t\tyamlString: normalized.slice(4, endIndex),\n\t\tbody: normalized.slice(endIndex + 4).trim(),\n\t};\n};\n\nexport const parseFrontmatter = <T extends Record<string, unknown> = Record<string, unknown>>(\n\tcontent: string,\n): ParsedFrontmatter<T> => {\n\tconst { yamlString, body } = extractFrontmatter(content);\n\tif (!yamlString) {\n\t\treturn { frontmatter: {} as T, body };\n\t}\n\tconst parsed = parse(yamlString);\n\treturn { frontmatter: (parsed ?? {}) as T, body };\n};\n\nexport const stripFrontmatter = (content: string): string => parseFrontmatter(content).body;\n"]}
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../src/utils/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAOrC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAEvG,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAA+C,EAAE,CAAC;IAC5F,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAExD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO;QACN,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;QACzC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3C,CAAC;AAAA,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC/B,OAAe,EACQ,EAAE,CAAC;IAC1B,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,EAAE,WAAW,EAAE,EAAO,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,EAAE,WAAW,EAAE,CAAC,MAAM,IAAI,EAAE,CAAM,EAAE,IAAI,EAAE,CAAC;AAAA,CAClD,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC","sourcesContent":["import { parse } from \"yaml\";\nimport { stripBom } from \"./text.ts\";\n\ntype ParsedFrontmatter<T extends Record<string, unknown>> = {\n\tfrontmatter: T;\n\tbody: string;\n};\n\nconst normalizeNewlines = (value: string): string => value.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n\nconst extractFrontmatter = (content: string): { yamlString: string | null; body: string } => {\n\tconst normalized = normalizeNewlines(stripBom(content));\n\n\tif (!normalized.startsWith(\"---\")) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\tconst endIndex = normalized.indexOf(\"\\n---\", 3);\n\tif (endIndex === -1) {\n\t\treturn { yamlString: null, body: normalized };\n\t}\n\n\treturn {\n\t\tyamlString: normalized.slice(4, endIndex),\n\t\tbody: normalized.slice(endIndex + 4).trim(),\n\t};\n};\n\nexport const parseFrontmatter = <T extends Record<string, unknown> = Record<string, unknown>>(\n\tcontent: string,\n): ParsedFrontmatter<T> => {\n\tconst { yamlString, body } = extractFrontmatter(content);\n\tif (!yamlString) {\n\t\treturn { frontmatter: {} as T, body };\n\t}\n\tconst parsed = parse(yamlString);\n\treturn { frontmatter: (parsed ?? {}) as T, body };\n};\n\nexport const stripFrontmatter = (content: string): string => parseFrontmatter(content).body;\n"]}
@@ -4,8 +4,10 @@ export interface FetchRetryOptions {
4
4
  maxRetries?: number;
5
5
  /** Retry transient HTTP responses as well as transport failures. Defaults to true. */
6
6
  retryOnStatus?: boolean;
7
- /** Per-attempt timeout. A new timeout is created for every attempt. */
7
+ /** Overall time budget shared by all attempts. */
8
8
  timeoutMs?: number;
9
+ /** Per-attempt timeout. A new timeout is created for every attempt. */
10
+ attemptTimeoutMs?: number;
9
11
  }
10
12
  /**
11
13
  * Fetch a management HTTP resource with a bounded immediate retry.
@@ -15,8 +17,8 @@ export interface FetchRetryOptions {
15
17
  * agent/model operations: those can fail after the HTTP request starts and are
16
18
  * retried by their semantic caller instead.
17
19
  *
18
- * Caller cancellation is terminal. When timeoutMs is supplied, it is the
19
- * overall time budget shared by all attempts.
20
+ * Caller cancellation and timeoutMs are terminal. attemptTimeoutMs aborts
21
+ * only the current attempt so a hung connection can be retried.
20
22
  */
21
23
  export declare function fetchWithRetry(input: FetchInput, init?: RequestInit | undefined, options?: FetchRetryOptions): Promise<Response>;
22
24
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"management-http.d.ts","sourceRoot":"","sources":["../../src/utils/management-http.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IACjC,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sFAAsF;IACtF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CACnC,KAAK,EAAE,UAAU,EACjB,IAAI,GAAE,WAAW,GAAG,SAAqB,EACzC,OAAO,GAAE,iBAAsB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CAuCnB","sourcesContent":["type FetchInput = Parameters<typeof fetch>[0];\n\nconst RETRYABLE_STATUS_CODES = new Set([408, 425, 429, 500, 502, 503, 504]);\n\nexport interface FetchRetryOptions {\n\t/** Number of additional attempts after the initial request. Defaults to two. */\n\tmaxRetries?: number;\n\t/** Retry transient HTTP responses as well as transport failures. Defaults to true. */\n\tretryOnStatus?: boolean;\n\t/** Per-attempt timeout. A new timeout is created for every attempt. */\n\ttimeoutMs?: number;\n}\n\n/**\n * Fetch a management HTTP resource with a bounded immediate retry.\n *\n * This is intentionally a transport-level helper for idempotent management\n * requests (version checks, catalogs, and downloads). It must not be used for\n * agent/model operations: those can fail after the HTTP request starts and are\n * retried by their semantic caller instead.\n *\n * Caller cancellation is terminal. When timeoutMs is supplied, it is the\n * overall time budget shared by all attempts.\n */\nexport async function fetchWithRetry(\n\tinput: FetchInput,\n\tinit: RequestInit | undefined = undefined,\n\toptions: FetchRetryOptions = {},\n): Promise<Response> {\n\tconst maxRetries =\n\t\toptions.maxRetries === undefined || !Number.isFinite(options.maxRetries)\n\t\t\t? 2\n\t\t\t: Math.max(0, Math.floor(options.maxRetries));\n\tconst retryOnStatus = options.retryOnStatus ?? true;\n\tconst parentSignal = init?.signal;\n\tconst timeoutSignal =\n\t\toptions.timeoutMs !== undefined && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : undefined;\n\tconst signal = timeoutSignal\n\t\t? parentSignal\n\t\t\t? AbortSignal.any([parentSignal, timeoutSignal])\n\t\t\t: timeoutSignal\n\t\t: parentSignal;\n\n\tfor (let attempt = 0; ; attempt++) {\n\t\tsignal?.throwIfAborted();\n\n\t\ttry {\n\t\t\tconst response = await fetch(input, signal ? { ...init, signal } : init);\n\t\t\tconst shouldRetry = retryOnStatus && RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries;\n\t\t\tif (!shouldRetry) return response;\n\t\t\ttry {\n\t\t\t\tawait response.body?.cancel();\n\t\t\t} catch {\n\t\t\t\t// The response is being discarded before a retry. There is nothing useful to\n\t\t\t\t// do if cancelling its body also fails.\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (\n\t\t\t\tparentSignal?.aborted ||\n\t\t\t\ttimeoutSignal?.aborted ||\n\t\t\t\t(error instanceof Error && error.name === \"AbortError\" && timeoutSignal === undefined) ||\n\t\t\t\tattempt >= maxRetries\n\t\t\t) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"management-http.d.ts","sourceRoot":"","sources":["../../src/utils/management-http.ts"],"names":[],"mappings":"AAAA,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IACjC,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sFAAsF;IACtF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CACnC,KAAK,EAAE,UAAU,EACjB,IAAI,GAAE,WAAW,GAAG,SAAqB,EACzC,OAAO,GAAE,iBAAsB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CA+CnB","sourcesContent":["type FetchInput = Parameters<typeof fetch>[0];\n\nconst RETRYABLE_STATUS_CODES = new Set([408, 425, 429, 500, 502, 503, 504]);\n\nexport interface FetchRetryOptions {\n\t/** Number of additional attempts after the initial request. Defaults to two. */\n\tmaxRetries?: number;\n\t/** Retry transient HTTP responses as well as transport failures. Defaults to true. */\n\tretryOnStatus?: boolean;\n\t/** Overall time budget shared by all attempts. */\n\ttimeoutMs?: number;\n\t/** Per-attempt timeout. A new timeout is created for every attempt. */\n\tattemptTimeoutMs?: number;\n}\n\n/**\n * Fetch a management HTTP resource with a bounded immediate retry.\n *\n * This is intentionally a transport-level helper for idempotent management\n * requests (version checks, catalogs, and downloads). It must not be used for\n * agent/model operations: those can fail after the HTTP request starts and are\n * retried by their semantic caller instead.\n *\n * Caller cancellation and timeoutMs are terminal. attemptTimeoutMs aborts\n * only the current attempt so a hung connection can be retried.\n */\nexport async function fetchWithRetry(\n\tinput: FetchInput,\n\tinit: RequestInit | undefined = undefined,\n\toptions: FetchRetryOptions = {},\n): Promise<Response> {\n\tconst maxRetries =\n\t\toptions.maxRetries === undefined || !Number.isFinite(options.maxRetries)\n\t\t\t? 2\n\t\t\t: Math.max(0, Math.floor(options.maxRetries));\n\tconst retryOnStatus = options.retryOnStatus ?? true;\n\tconst parentSignal = init?.signal ?? undefined;\n\tconst timeoutSignal =\n\t\toptions.timeoutMs !== undefined && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : undefined;\n\tconst attemptTimeoutMs =\n\t\toptions.attemptTimeoutMs !== undefined && options.attemptTimeoutMs > 0 ? options.attemptTimeoutMs : undefined;\n\n\tfor (let attempt = 0; ; attempt++) {\n\t\tparentSignal?.throwIfAborted();\n\t\ttimeoutSignal?.throwIfAborted();\n\t\tconst attemptTimeoutSignal = attemptTimeoutMs ? AbortSignal.timeout(attemptTimeoutMs) : undefined;\n\t\tconst signals = [parentSignal, timeoutSignal, attemptTimeoutSignal].filter(\n\t\t\t(signal): signal is AbortSignal => signal !== undefined,\n\t\t);\n\t\tconst signal = signals.length > 1 ? AbortSignal.any(signals) : signals[0];\n\n\t\ttry {\n\t\t\tconst response = await fetch(input, signal ? { ...init, signal } : init);\n\t\t\tconst shouldRetry = retryOnStatus && RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries;\n\t\t\tif (!shouldRetry) return response;\n\t\t\ttry {\n\t\t\t\tawait response.body?.cancel();\n\t\t\t} catch {\n\t\t\t\t// The response is being discarded before a retry. There is nothing useful to\n\t\t\t\t// do if cancelling its body also fails.\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconst attemptTimedOut =\n\t\t\t\tattemptTimeoutSignal?.aborted === true && !parentSignal?.aborted && !timeoutSignal?.aborted;\n\t\t\tif (\n\t\t\t\tparentSignal?.aborted ||\n\t\t\t\ttimeoutSignal?.aborted ||\n\t\t\t\t(error instanceof Error &&\n\t\t\t\t\terror.name === \"AbortError\" &&\n\t\t\t\t\t!attemptTimedOut &&\n\t\t\t\t\ttimeoutSignal === undefined) ||\n\t\t\t\tattempt >= maxRetries\n\t\t\t) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -7,23 +7,23 @@ const RETRYABLE_STATUS_CODES = new Set([408, 425, 429, 500, 502, 503, 504]);
7
7
  * agent/model operations: those can fail after the HTTP request starts and are
8
8
  * retried by their semantic caller instead.
9
9
  *
10
- * Caller cancellation is terminal. When timeoutMs is supplied, it is the
11
- * overall time budget shared by all attempts.
10
+ * Caller cancellation and timeoutMs are terminal. attemptTimeoutMs aborts
11
+ * only the current attempt so a hung connection can be retried.
12
12
  */
13
13
  export async function fetchWithRetry(input, init = undefined, options = {}) {
14
14
  const maxRetries = options.maxRetries === undefined || !Number.isFinite(options.maxRetries)
15
15
  ? 2
16
16
  : Math.max(0, Math.floor(options.maxRetries));
17
17
  const retryOnStatus = options.retryOnStatus ?? true;
18
- const parentSignal = init?.signal;
18
+ const parentSignal = init?.signal ?? undefined;
19
19
  const timeoutSignal = options.timeoutMs !== undefined && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : undefined;
20
- const signal = timeoutSignal
21
- ? parentSignal
22
- ? AbortSignal.any([parentSignal, timeoutSignal])
23
- : timeoutSignal
24
- : parentSignal;
20
+ const attemptTimeoutMs = options.attemptTimeoutMs !== undefined && options.attemptTimeoutMs > 0 ? options.attemptTimeoutMs : undefined;
25
21
  for (let attempt = 0;; attempt++) {
26
- signal?.throwIfAborted();
22
+ parentSignal?.throwIfAborted();
23
+ timeoutSignal?.throwIfAborted();
24
+ const attemptTimeoutSignal = attemptTimeoutMs ? AbortSignal.timeout(attemptTimeoutMs) : undefined;
25
+ const signals = [parentSignal, timeoutSignal, attemptTimeoutSignal].filter((signal) => signal !== undefined);
26
+ const signal = signals.length > 1 ? AbortSignal.any(signals) : signals[0];
27
27
  try {
28
28
  const response = await fetch(input, signal ? { ...init, signal } : init);
29
29
  const shouldRetry = retryOnStatus && RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries;
@@ -38,9 +38,13 @@ export async function fetchWithRetry(input, init = undefined, options = {}) {
38
38
  }
39
39
  }
40
40
  catch (error) {
41
+ const attemptTimedOut = attemptTimeoutSignal?.aborted === true && !parentSignal?.aborted && !timeoutSignal?.aborted;
41
42
  if (parentSignal?.aborted ||
42
43
  timeoutSignal?.aborted ||
43
- (error instanceof Error && error.name === "AbortError" && timeoutSignal === undefined) ||
44
+ (error instanceof Error &&
45
+ error.name === "AbortError" &&
46
+ !attemptTimedOut &&
47
+ timeoutSignal === undefined) ||
44
48
  attempt >= maxRetries) {
45
49
  throw error;
46
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"management-http.js","sourceRoot":"","sources":["../../src/utils/management-http.ts"],"names":[],"mappings":"AAEA,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAW5E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,KAAiB,EACjB,IAAI,GAA4B,SAAS,EACzC,OAAO,GAAsB,EAAE,EACX;IACpB,MAAM,UAAU,GACf,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;QACvE,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;IACpD,MAAM,YAAY,GAAG,IAAI,EAAE,MAAM,CAAC;IAClC,MAAM,aAAa,GAClB,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/G,MAAM,MAAM,GAAG,aAAa;QAC3B,CAAC,CAAC,YAAY;YACb,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAChD,CAAC,CAAC,aAAa;QAChB,CAAC,CAAC,YAAY,CAAC;IAEhB,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,cAAc,EAAE,CAAC;QAEzB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACzE,MAAM,WAAW,GAAG,aAAa,IAAI,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,UAAU,CAAC;YACzG,IAAI,CAAC,WAAW;gBAAE,OAAO,QAAQ,CAAC;YAClC,IAAI,CAAC;gBACJ,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;gBACR,6EAA6E;gBAC7E,wCAAwC;YACzC,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IACC,YAAY,EAAE,OAAO;gBACrB,aAAa,EAAE,OAAO;gBACtB,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,aAAa,KAAK,SAAS,CAAC;gBACtF,OAAO,IAAI,UAAU,EACpB,CAAC;gBACF,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;IACF,CAAC;AAAA,CACD","sourcesContent":["type FetchInput = Parameters<typeof fetch>[0];\n\nconst RETRYABLE_STATUS_CODES = new Set([408, 425, 429, 500, 502, 503, 504]);\n\nexport interface FetchRetryOptions {\n\t/** Number of additional attempts after the initial request. Defaults to two. */\n\tmaxRetries?: number;\n\t/** Retry transient HTTP responses as well as transport failures. Defaults to true. */\n\tretryOnStatus?: boolean;\n\t/** Per-attempt timeout. A new timeout is created for every attempt. */\n\ttimeoutMs?: number;\n}\n\n/**\n * Fetch a management HTTP resource with a bounded immediate retry.\n *\n * This is intentionally a transport-level helper for idempotent management\n * requests (version checks, catalogs, and downloads). It must not be used for\n * agent/model operations: those can fail after the HTTP request starts and are\n * retried by their semantic caller instead.\n *\n * Caller cancellation is terminal. When timeoutMs is supplied, it is the\n * overall time budget shared by all attempts.\n */\nexport async function fetchWithRetry(\n\tinput: FetchInput,\n\tinit: RequestInit | undefined = undefined,\n\toptions: FetchRetryOptions = {},\n): Promise<Response> {\n\tconst maxRetries =\n\t\toptions.maxRetries === undefined || !Number.isFinite(options.maxRetries)\n\t\t\t? 2\n\t\t\t: Math.max(0, Math.floor(options.maxRetries));\n\tconst retryOnStatus = options.retryOnStatus ?? true;\n\tconst parentSignal = init?.signal;\n\tconst timeoutSignal =\n\t\toptions.timeoutMs !== undefined && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : undefined;\n\tconst signal = timeoutSignal\n\t\t? parentSignal\n\t\t\t? AbortSignal.any([parentSignal, timeoutSignal])\n\t\t\t: timeoutSignal\n\t\t: parentSignal;\n\n\tfor (let attempt = 0; ; attempt++) {\n\t\tsignal?.throwIfAborted();\n\n\t\ttry {\n\t\t\tconst response = await fetch(input, signal ? { ...init, signal } : init);\n\t\t\tconst shouldRetry = retryOnStatus && RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries;\n\t\t\tif (!shouldRetry) return response;\n\t\t\ttry {\n\t\t\t\tawait response.body?.cancel();\n\t\t\t} catch {\n\t\t\t\t// The response is being discarded before a retry. There is nothing useful to\n\t\t\t\t// do if cancelling its body also fails.\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (\n\t\t\t\tparentSignal?.aborted ||\n\t\t\t\ttimeoutSignal?.aborted ||\n\t\t\t\t(error instanceof Error && error.name === \"AbortError\" && timeoutSignal === undefined) ||\n\t\t\t\tattempt >= maxRetries\n\t\t\t) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"management-http.js","sourceRoot":"","sources":["../../src/utils/management-http.ts"],"names":[],"mappings":"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","sourcesContent":["type FetchInput = Parameters<typeof fetch>[0];\n\nconst RETRYABLE_STATUS_CODES = new Set([408, 425, 429, 500, 502, 503, 504]);\n\nexport interface FetchRetryOptions {\n\t/** Number of additional attempts after the initial request. Defaults to two. */\n\tmaxRetries?: number;\n\t/** Retry transient HTTP responses as well as transport failures. Defaults to true. */\n\tretryOnStatus?: boolean;\n\t/** Overall time budget shared by all attempts. */\n\ttimeoutMs?: number;\n\t/** Per-attempt timeout. A new timeout is created for every attempt. */\n\tattemptTimeoutMs?: number;\n}\n\n/**\n * Fetch a management HTTP resource with a bounded immediate retry.\n *\n * This is intentionally a transport-level helper for idempotent management\n * requests (version checks, catalogs, and downloads). It must not be used for\n * agent/model operations: those can fail after the HTTP request starts and are\n * retried by their semantic caller instead.\n *\n * Caller cancellation and timeoutMs are terminal. attemptTimeoutMs aborts\n * only the current attempt so a hung connection can be retried.\n */\nexport async function fetchWithRetry(\n\tinput: FetchInput,\n\tinit: RequestInit | undefined = undefined,\n\toptions: FetchRetryOptions = {},\n): Promise<Response> {\n\tconst maxRetries =\n\t\toptions.maxRetries === undefined || !Number.isFinite(options.maxRetries)\n\t\t\t? 2\n\t\t\t: Math.max(0, Math.floor(options.maxRetries));\n\tconst retryOnStatus = options.retryOnStatus ?? true;\n\tconst parentSignal = init?.signal ?? undefined;\n\tconst timeoutSignal =\n\t\toptions.timeoutMs !== undefined && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : undefined;\n\tconst attemptTimeoutMs =\n\t\toptions.attemptTimeoutMs !== undefined && options.attemptTimeoutMs > 0 ? options.attemptTimeoutMs : undefined;\n\n\tfor (let attempt = 0; ; attempt++) {\n\t\tparentSignal?.throwIfAborted();\n\t\ttimeoutSignal?.throwIfAborted();\n\t\tconst attemptTimeoutSignal = attemptTimeoutMs ? AbortSignal.timeout(attemptTimeoutMs) : undefined;\n\t\tconst signals = [parentSignal, timeoutSignal, attemptTimeoutSignal].filter(\n\t\t\t(signal): signal is AbortSignal => signal !== undefined,\n\t\t);\n\t\tconst signal = signals.length > 1 ? AbortSignal.any(signals) : signals[0];\n\n\t\ttry {\n\t\t\tconst response = await fetch(input, signal ? { ...init, signal } : init);\n\t\t\tconst shouldRetry = retryOnStatus && RETRYABLE_STATUS_CODES.has(response.status) && attempt < maxRetries;\n\t\t\tif (!shouldRetry) return response;\n\t\t\ttry {\n\t\t\t\tawait response.body?.cancel();\n\t\t\t} catch {\n\t\t\t\t// The response is being discarded before a retry. There is nothing useful to\n\t\t\t\t// do if cancelling its body also fails.\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconst attemptTimedOut =\n\t\t\t\tattemptTimeoutSignal?.aborted === true && !parentSignal?.aborted && !timeoutSignal?.aborted;\n\t\t\tif (\n\t\t\t\tparentSignal?.aborted ||\n\t\t\t\ttimeoutSignal?.aborted ||\n\t\t\t\t(error instanceof Error &&\n\t\t\t\t\terror.name === \"AbortError\" &&\n\t\t\t\t\t!attemptTimedOut &&\n\t\t\t\t\ttimeoutSignal === undefined) ||\n\t\t\t\tattempt >= maxRetries\n\t\t\t) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -11,6 +11,9 @@ export interface ShellConfig {
11
11
  * 3. On Unix: /bin/bash, then bash on PATH, then fallback to sh
12
12
  */
13
13
  export declare function getShellConfig(customShellPath?: string): ShellConfig;
14
+ export declare const POWERSHELL_ARGS: readonly ["-NoProfile", "-NonInteractive", "-ExecutionPolicy", "Bypass", "-Command"];
15
+ /** Resolve PowerShell on Windows, preferring PowerShell 7 when available. */
16
+ export declare function getPowerShellConfig(): ShellConfig;
14
17
  export declare function getShellEnv(): NodeJS.ProcessEnv;
15
18
  /**
16
19
  * Sanitize binary output for display/storage.
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAkDD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,WAAW,CAqDpE;AAED,wBAAgB,WAAW,IAAI,MAAM,CAAC,UAAU,CAY/C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8BxD;AAQD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEvD;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAKlD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAyBjD","sourcesContent":["import { existsSync } from \"node:fs\";\nimport { delimiter } from \"node:path\";\nimport { spawn, spawnSync } from \"child_process\";\nimport { getBinDir } from \"../config.ts\";\n\nexport interface ShellConfig {\n\tshell: string;\n\targs: string[];\n\tcommandTransport?: \"argv\" | \"stdin\";\n}\n\n/**\n * Find bash executable on PATH (cross-platform)\n */\nfunction isLegacyWslBashPath(path: string): boolean {\n\tconst normalized = path.replace(/\\//g, \"\\\\\").toLowerCase();\n\treturn /^[a-z]:\\\\windows\\\\(?:system32|sysnative)\\\\bash\\.exe$/.test(normalized);\n}\n\nfunction getBashShellConfig(shell: string): ShellConfig {\n\treturn isLegacyWslBashPath(shell) ? { shell, args: [\"-s\"], commandTransport: \"stdin\" } : { shell, args: [\"-c\"] };\n}\n\nfunction findBashOnPath(): string | null {\n\tif (process.platform === \"win32\") {\n\t\t// Windows: Use 'where' and verify file exists (where can return non-existent paths)\n\t\ttry {\n\t\t\tconst result = spawnSync(\"where\", [\"bash.exe\"], {\n\t\t\t\tencoding: \"utf-8\",\n\t\t\t\ttimeout: 5000,\n\t\t\t\twindowsHide: true,\n\t\t\t});\n\t\t\tif (result.status === 0 && result.stdout) {\n\t\t\t\tconst firstMatch = result.stdout.trim().split(/\\r?\\n/)[0];\n\t\t\t\tif (firstMatch && existsSync(firstMatch)) {\n\t\t\t\t\treturn firstMatch;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch {\n\t\t\t// Ignore errors\n\t\t}\n\t\treturn null;\n\t}\n\n\t// Unix: Use 'which' and trust its output (handles Termux and special filesystems)\n\ttry {\n\t\tconst result = spawnSync(\"which\", [\"bash\"], { encoding: \"utf-8\", timeout: 5000 });\n\t\tif (result.status === 0 && result.stdout) {\n\t\t\tconst firstMatch = result.stdout.trim().split(/\\r?\\n/)[0];\n\t\t\tif (firstMatch) {\n\t\t\t\treturn firstMatch;\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// Ignore errors\n\t}\n\treturn null;\n}\n\n/**\n * Resolve shell configuration based on platform and an optional explicit shell path.\n * Resolution order:\n * 1. User-specified shellPath\n * 2. On Windows: Git Bash in known locations, then bash on PATH\n * 3. On Unix: /bin/bash, then bash on PATH, then fallback to sh\n */\nexport function getShellConfig(customShellPath?: string): ShellConfig {\n\t// 1. Check user-specified shell path\n\tif (customShellPath) {\n\t\tif (existsSync(customShellPath)) {\n\t\t\treturn getBashShellConfig(customShellPath);\n\t\t}\n\t\tthrow new Error(`Custom shell path not found: ${customShellPath}`);\n\t}\n\n\tif (process.platform === \"win32\") {\n\t\t// 2. Try Git Bash in known locations\n\t\tconst paths: string[] = [];\n\t\tconst programFiles = process.env.ProgramFiles;\n\t\tif (programFiles) {\n\t\t\tpaths.push(`${programFiles}\\\\Git\\\\bin\\\\bash.exe`);\n\t\t}\n\t\tconst programFilesX86 = process.env[\"ProgramFiles(x86)\"];\n\t\tif (programFilesX86) {\n\t\t\tpaths.push(`${programFilesX86}\\\\Git\\\\bin\\\\bash.exe`);\n\t\t}\n\n\t\tfor (const path of paths) {\n\t\t\tif (existsSync(path)) {\n\t\t\t\treturn getBashShellConfig(path);\n\t\t\t}\n\t\t}\n\n\t\t// 3. Fallback: search bash.exe on PATH (Cygwin, MSYS2, WSL, etc.)\n\t\tconst bashOnPath = findBashOnPath();\n\t\tif (bashOnPath) {\n\t\t\treturn getBashShellConfig(bashOnPath);\n\t\t}\n\n\t\tthrow new Error(\n\t\t\t`No bash shell found. Options:\\n` +\n\t\t\t\t` 1. Install Git for Windows: https://git-scm.com/download/win\\n` +\n\t\t\t\t` 2. Add your bash to PATH (Cygwin, MSYS2, etc.)\\n` +\n\t\t\t\t\" 3. Set shellPath in settings.json\\n\\n\" +\n\t\t\t\t`Searched Git Bash in:\\n${paths.map((p) => ` ${p}`).join(\"\\n\")}`,\n\t\t);\n\t}\n\n\t// Unix: try /bin/bash, then bash on PATH, then fallback to sh\n\tif (existsSync(\"/bin/bash\")) {\n\t\treturn getBashShellConfig(\"/bin/bash\");\n\t}\n\n\tconst bashOnPath = findBashOnPath();\n\tif (bashOnPath) {\n\t\treturn getBashShellConfig(bashOnPath);\n\t}\n\n\treturn { shell: \"sh\", args: [\"-c\"] };\n}\n\nexport function getShellEnv(): NodeJS.ProcessEnv {\n\tconst binDir = getBinDir();\n\tconst pathKey = Object.keys(process.env).find((key) => key.toLowerCase() === \"path\") ?? \"PATH\";\n\tconst currentPath = process.env[pathKey] ?? \"\";\n\tconst pathEntries = currentPath.split(delimiter).filter(Boolean);\n\tconst hasBinDir = pathEntries.includes(binDir);\n\tconst updatedPath = hasBinDir ? currentPath : [binDir, currentPath].filter(Boolean).join(delimiter);\n\n\treturn {\n\t\t...process.env,\n\t\t[pathKey]: updatedPath,\n\t};\n}\n\n/**\n * Sanitize binary output for display/storage.\n * Removes characters that crash string-width or cause display issues:\n * - Control characters (except tab, newline, carriage return)\n * - Lone surrogates\n * - Unicode Format characters (crash string-width due to a bug)\n * - Characters with undefined code points\n */\nexport function sanitizeBinaryOutput(str: string): string {\n\t// Use Array.from to properly iterate over code points (not code units)\n\t// This handles surrogate pairs correctly and catches edge cases where\n\t// codePointAt() might return undefined\n\treturn Array.from(str)\n\t\t.filter((char) => {\n\t\t\t// Filter out characters that cause string-width to crash\n\t\t\t// This includes:\n\t\t\t// - Unicode format characters\n\t\t\t// - Lone surrogates (already filtered by Array.from)\n\t\t\t// - Control chars except \\t \\n \\r\n\t\t\t// - Characters with undefined code points\n\n\t\t\tconst code = char.codePointAt(0);\n\n\t\t\t// Skip if code point is undefined (edge case with invalid strings)\n\t\t\tif (code === undefined) return false;\n\n\t\t\t// Allow tab, newline, carriage return\n\t\t\tif (code === 0x09 || code === 0x0a || code === 0x0d) return true;\n\n\t\t\t// Filter out control characters (0x00-0x1F, except 0x09, 0x0a, 0x0x0d)\n\t\t\tif (code <= 0x1f) return false;\n\n\t\t\t// Filter out Unicode format characters\n\t\t\tif (code >= 0xfff9 && code <= 0xfffb) return false;\n\n\t\t\treturn true;\n\t\t})\n\t\t.join(\"\");\n}\n\n/**\n * Detached child processes must be tracked so they can be killed on parent\n * shutdown signals (SIGHUP/SIGTERM).\n */\nconst trackedDetachedChildPids = new Set<number>();\n\nexport function trackDetachedChildPid(pid: number): void {\n\ttrackedDetachedChildPids.add(pid);\n}\n\nexport function untrackDetachedChildPid(pid: number): void {\n\ttrackedDetachedChildPids.delete(pid);\n}\n\nexport function killTrackedDetachedChildren(): void {\n\tfor (const pid of trackedDetachedChildPids) {\n\t\tkillProcessTree(pid);\n\t}\n\ttrackedDetachedChildPids.clear();\n}\n\n/**\n * Kill a process and all its children (cross-platform)\n */\nexport function killProcessTree(pid: number): void {\n\tif (process.platform === \"win32\") {\n\t\t// Use taskkill on Windows to kill process tree\n\t\ttry {\n\t\t\tspawn(\"taskkill\", [\"/F\", \"/T\", \"/PID\", String(pid)], {\n\t\t\t\tstdio: \"ignore\",\n\t\t\t\tdetached: true,\n\t\t\t\twindowsHide: true,\n\t\t\t});\n\t\t} catch {\n\t\t\t// Ignore errors if taskkill fails\n\t\t}\n\t} else {\n\t\t// Use SIGKILL on Unix/Linux/Mac\n\t\ttry {\n\t\t\tprocess.kill(-pid, \"SIGKILL\");\n\t\t} catch {\n\t\t\t// Fallback to killing just the child if process group kill fails\n\t\t\ttry {\n\t\t\t\tprocess.kill(pid, \"SIGKILL\");\n\t\t\t} catch {\n\t\t\t\t// Process already dead\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AAkDD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,WAAW,CAqDpE;AAED,eAAO,MAAM,eAAe,sFAAuF,CAAC;AAEpH,6EAA6E;AAC7E,wBAAgB,mBAAmB,IAAI,WAAW,CAWjD;AAED,wBAAgB,WAAW,IAAI,MAAM,CAAC,UAAU,CAY/C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8BxD;AAQD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEvD;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAKlD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CA+BjD","sourcesContent":["import { existsSync } from \"node:fs\";\nimport { delimiter, join } from \"node:path\";\nimport { spawn, spawnSync } from \"child_process\";\nimport { getBinDir } from \"../config.ts\";\n\nexport interface ShellConfig {\n\tshell: string;\n\targs: string[];\n\tcommandTransport?: \"argv\" | \"stdin\";\n}\n\n/**\n * Find bash executable on PATH (cross-platform)\n */\nfunction isLegacyWslBashPath(path: string): boolean {\n\tconst normalized = path.replace(/\\//g, \"\\\\\").toLowerCase();\n\treturn /^[a-z]:\\\\windows\\\\(?:system32|sysnative)\\\\bash\\.exe$/.test(normalized);\n}\n\nfunction getBashShellConfig(shell: string): ShellConfig {\n\treturn isLegacyWslBashPath(shell) ? { shell, args: [\"-s\"], commandTransport: \"stdin\" } : { shell, args: [\"-c\"] };\n}\n\nfunction findExecutableOnPath(executable: string): string | null {\n\tif (process.platform === \"win32\") {\n\t\t// Windows: Use 'where' and verify file exists (where can return non-existent paths)\n\t\ttry {\n\t\t\tconst result = spawnSync(\"where\", [executable], {\n\t\t\t\tencoding: \"utf-8\",\n\t\t\t\ttimeout: 5000,\n\t\t\t\twindowsHide: true,\n\t\t\t});\n\t\t\tif (result.status === 0 && result.stdout) {\n\t\t\t\tconst firstMatch = result.stdout.trim().split(/\\r?\\n/)[0];\n\t\t\t\tif (firstMatch && existsSync(firstMatch)) {\n\t\t\t\t\treturn firstMatch;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch {\n\t\t\t// Ignore errors\n\t\t}\n\t\treturn null;\n\t}\n\n\t// Unix: Use 'which' and trust its output (handles Termux and special filesystems)\n\ttry {\n\t\tconst result = spawnSync(\"which\", [executable], { encoding: \"utf-8\", timeout: 5000 });\n\t\tif (result.status === 0 && result.stdout) {\n\t\t\tconst firstMatch = result.stdout.trim().split(/\\r?\\n/)[0];\n\t\t\tif (firstMatch) {\n\t\t\t\treturn firstMatch;\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// Ignore errors\n\t}\n\treturn null;\n}\n\n/**\n * Resolve shell configuration based on platform and an optional explicit shell path.\n * Resolution order:\n * 1. User-specified shellPath\n * 2. On Windows: Git Bash in known locations, then bash on PATH\n * 3. On Unix: /bin/bash, then bash on PATH, then fallback to sh\n */\nexport function getShellConfig(customShellPath?: string): ShellConfig {\n\t// 1. Check user-specified shell path\n\tif (customShellPath) {\n\t\tif (existsSync(customShellPath)) {\n\t\t\treturn getBashShellConfig(customShellPath);\n\t\t}\n\t\tthrow new Error(`Custom shell path not found: ${customShellPath}`);\n\t}\n\n\tif (process.platform === \"win32\") {\n\t\t// 2. Try Git Bash in known locations\n\t\tconst paths: string[] = [];\n\t\tconst programFiles = process.env.ProgramFiles;\n\t\tif (programFiles) {\n\t\t\tpaths.push(`${programFiles}\\\\Git\\\\bin\\\\bash.exe`);\n\t\t}\n\t\tconst programFilesX86 = process.env[\"ProgramFiles(x86)\"];\n\t\tif (programFilesX86) {\n\t\t\tpaths.push(`${programFilesX86}\\\\Git\\\\bin\\\\bash.exe`);\n\t\t}\n\n\t\tfor (const path of paths) {\n\t\t\tif (existsSync(path)) {\n\t\t\t\treturn getBashShellConfig(path);\n\t\t\t}\n\t\t}\n\n\t\t// 3. Fallback: search bash.exe on PATH (Cygwin, MSYS2, WSL, etc.)\n\t\tconst bashOnPath = findExecutableOnPath(\"bash.exe\");\n\t\tif (bashOnPath) {\n\t\t\treturn getBashShellConfig(bashOnPath);\n\t\t}\n\n\t\tthrow new Error(\n\t\t\t`No bash shell found. Options:\\n` +\n\t\t\t\t` 1. Install Git for Windows: https://git-scm.com/download/win\\n` +\n\t\t\t\t` 2. Add your bash to PATH (Cygwin, MSYS2, etc.)\\n` +\n\t\t\t\t\" 3. Set shellPath in settings.json\\n\\n\" +\n\t\t\t\t`Searched Git Bash in:\\n${paths.map((p) => ` ${p}`).join(\"\\n\")}`,\n\t\t);\n\t}\n\n\t// Unix: try /bin/bash, then bash on PATH, then fallback to sh\n\tif (existsSync(\"/bin/bash\")) {\n\t\treturn getBashShellConfig(\"/bin/bash\");\n\t}\n\n\tconst bashOnPath = findExecutableOnPath(\"bash\");\n\tif (bashOnPath) {\n\t\treturn getBashShellConfig(bashOnPath);\n\t}\n\n\treturn { shell: \"sh\", args: [\"-c\"] };\n}\n\nexport const POWERSHELL_ARGS = [\"-NoProfile\", \"-NonInteractive\", \"-ExecutionPolicy\", \"Bypass\", \"-Command\"] as const;\n\n/** Resolve PowerShell on Windows, preferring PowerShell 7 when available. */\nexport function getPowerShellConfig(): ShellConfig {\n\tif (process.platform !== \"win32\") {\n\t\tthrow new Error(\"The powershell tool is only available on Windows.\");\n\t}\n\n\tconst shell = findExecutableOnPath(\"pwsh.exe\") ?? findExecutableOnPath(\"powershell.exe\");\n\tif (!shell) {\n\t\tthrow new Error(\"No PowerShell executable found. Install PowerShell or add powershell.exe/pwsh.exe to PATH.\");\n\t}\n\n\treturn { shell, args: [...POWERSHELL_ARGS] };\n}\n\nexport function getShellEnv(): NodeJS.ProcessEnv {\n\tconst binDir = getBinDir();\n\tconst pathKey = Object.keys(process.env).find((key) => key.toLowerCase() === \"path\") ?? \"PATH\";\n\tconst currentPath = process.env[pathKey] ?? \"\";\n\tconst pathEntries = currentPath.split(delimiter).filter(Boolean);\n\tconst hasBinDir = pathEntries.includes(binDir);\n\tconst updatedPath = hasBinDir ? currentPath : [binDir, currentPath].filter(Boolean).join(delimiter);\n\n\treturn {\n\t\t...process.env,\n\t\t[pathKey]: updatedPath,\n\t};\n}\n\n/**\n * Sanitize binary output for display/storage.\n * Removes characters that crash string-width or cause display issues:\n * - Control characters (except tab, newline, carriage return)\n * - Lone surrogates\n * - Unicode Format characters (crash string-width due to a bug)\n * - Characters with undefined code points\n */\nexport function sanitizeBinaryOutput(str: string): string {\n\t// Use Array.from to properly iterate over code points (not code units)\n\t// This handles surrogate pairs correctly and catches edge cases where\n\t// codePointAt() might return undefined\n\treturn Array.from(str)\n\t\t.filter((char) => {\n\t\t\t// Filter out characters that cause string-width to crash\n\t\t\t// This includes:\n\t\t\t// - Unicode format characters\n\t\t\t// - Lone surrogates (already filtered by Array.from)\n\t\t\t// - Control chars except \\t \\n \\r\n\t\t\t// - Characters with undefined code points\n\n\t\t\tconst code = char.codePointAt(0);\n\n\t\t\t// Skip if code point is undefined (edge case with invalid strings)\n\t\t\tif (code === undefined) return false;\n\n\t\t\t// Allow tab, newline, carriage return\n\t\t\tif (code === 0x09 || code === 0x0a || code === 0x0d) return true;\n\n\t\t\t// Filter out control characters (0x00-0x1F, except 0x09, 0x0a, 0x0x0d)\n\t\t\tif (code <= 0x1f) return false;\n\n\t\t\t// Filter out Unicode format characters\n\t\t\tif (code >= 0xfff9 && code <= 0xfffb) return false;\n\n\t\t\treturn true;\n\t\t})\n\t\t.join(\"\");\n}\n\n/**\n * Detached child processes must be tracked so they can be killed on parent\n * shutdown signals (SIGHUP/SIGTERM).\n */\nconst trackedDetachedChildPids = new Set<number>();\n\nexport function trackDetachedChildPid(pid: number): void {\n\ttrackedDetachedChildPids.add(pid);\n}\n\nexport function untrackDetachedChildPid(pid: number): void {\n\ttrackedDetachedChildPids.delete(pid);\n}\n\nexport function killTrackedDetachedChildren(): void {\n\tfor (const pid of trackedDetachedChildPids) {\n\t\tkillProcessTree(pid);\n\t}\n\ttrackedDetachedChildPids.clear();\n}\n\n/**\n * Kill a process and all its children (cross-platform)\n */\nexport function killProcessTree(pid: number): void {\n\tif (process.platform === \"win32\") {\n\t\t// Use the trusted System32 executable so cleanup does not depend on PATH.\n\t\ttry {\n\t\t\tconst child = spawn(\n\t\t\t\tjoin(process.env.SystemRoot ?? \"C:\\\\Windows\", \"System32\", \"taskkill.exe\"),\n\t\t\t\t[\"/F\", \"/T\", \"/PID\", String(pid)],\n\t\t\t\t{\n\t\t\t\t\tstdio: \"ignore\",\n\t\t\t\t\tdetached: true,\n\t\t\t\t\twindowsHide: true,\n\t\t\t\t},\n\t\t\t);\n\t\t\t// A failed spawn emits \"error\" asynchronously; consume it to avoid crashing Node.\n\t\t\tchild.once(\"error\", () => {});\n\t\t} catch {\n\t\t\t// Ignore errors if taskkill fails.\n\t\t}\n\t} else {\n\t\t// Use SIGKILL on Unix/Linux/Mac\n\t\ttry {\n\t\t\tprocess.kill(-pid, \"SIGKILL\");\n\t\t} catch {\n\t\t\t// Fallback to killing just the child if process group kill fails\n\t\t\ttry {\n\t\t\t\tprocess.kill(pid, \"SIGKILL\");\n\t\t\t} catch {\n\t\t\t\t// Process already dead\n\t\t\t}\n\t\t}\n\t}\n}\n"]}