@daniel156161/prism 0.2.100 → 0.2.101

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 (1168) 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/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts +3 -2
  5. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
  6. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js +13 -3
  7. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
  8. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.d.ts.map +1 -1
  9. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js +14 -1
  10. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js.map +1 -1
  11. package/node_modules/@earendil-works/pi-agent-core/package.json +4 -4
  12. package/node_modules/@earendil-works/pi-ai/README.md +5 -3
  13. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  14. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +34 -19
  15. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  16. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts +2 -0
  17. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
  18. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +9 -2
  19. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
  20. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  21. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +131 -7
  22. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
  23. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts +2 -2
  24. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts.map +1 -1
  25. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +17 -13
  26. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js.map +1 -1
  27. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts +5 -2
  28. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts.map +1 -1
  29. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +16 -0
  30. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js.map +1 -1
  31. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts +2 -2
  32. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts.map +1 -1
  33. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +15 -11
  34. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js.map +1 -1
  35. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.d.ts.map +1 -1
  36. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +6 -1
  37. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js.map +1 -1
  38. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
  39. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +4 -1
  40. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
  41. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +3 -2
  42. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  43. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +128 -86
  44. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  45. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
  46. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +6 -2
  47. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
  48. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts.map +1 -1
  49. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +1 -1
  50. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +1 -1
  51. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +4 -0
  52. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
  53. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +17 -10
  54. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
  55. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts +1 -0
  56. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts.map +1 -1
  57. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js +1 -1
  58. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js.map +1 -1
  59. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.d.ts.map +1 -1
  60. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js +98 -34
  61. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js.map +1 -1
  62. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.d.ts.map +1 -1
  63. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js +1 -14
  64. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js.map +1 -1
  65. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +1 -1
  66. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
  67. package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
  68. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  69. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
  70. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
  71. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
  72. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cerebras.json +1 -1
  73. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  74. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
  75. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
  76. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google-vertex.json +1 -1
  77. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google.json +1 -1
  78. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  79. package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -1
  80. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  81. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
  82. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  83. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
  84. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-individual.json +1 -1
  85. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan.json +1 -1
  86. package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -1
  87. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  88. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
  89. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
  90. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
  91. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
  92. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -1
  93. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
  94. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
  95. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts +1 -1
  96. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts.map +1 -1
  97. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js +1 -5
  98. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js.map +1 -1
  99. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +29 -4
  100. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  101. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  102. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts +2 -0
  103. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.d.ts.map +1 -0
  104. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js +15 -0
  105. package/node_modules/@earendil-works/pi-ai/dist/utils/sleep.js.map +1 -0
  106. package/node_modules/@earendil-works/pi-ai/package.json +3 -4
  107. package/node_modules/@earendil-works/pi-client/CHANGELOG.md +4 -0
  108. package/node_modules/@earendil-works/pi-client/package.json +2 -2
  109. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +83 -0
  110. package/node_modules/@earendil-works/pi-coding-agent/README.md +8 -4
  111. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic-messages-JWX2WP65.js +45 -0
  112. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/anthropic.js +75 -0
  113. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/azure-openai-responses-5ENVCQ7U.js +2 -0
  114. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/bedrock-converse-stream.js +74 -0
  115. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-4L3WN2XY.js +2 -0
  116. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
  117. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-6R7UI4IY.js +2 -0
  118. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-AXIIZGTV.js +2 -0
  119. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-DRQDKNXA.js +2 -0
  120. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-E5KXRMZK.js +1547 -0
  121. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-GMWCTUPB.js +2 -0
  122. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-GPPBJGBU.js +50 -0
  123. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-JUUC5AZY.js +2 -0
  124. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
  125. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-MNAIPA3J.js +2 -0
  126. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NBBFIJUL.js +11 -0
  127. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-NUHFSC37.js +25 -0
  128. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PGXDEOVV.js +2 -0
  129. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PJACZCIR.js +2 -0
  130. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-PRRNXB7S.js +2 -0
  131. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
  132. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-TRDNDS6A.js +4 -0
  133. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-UAQELI3K.js +2 -0
  134. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XDUWOHPL.js +6 -0
  135. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/chunk-XNGRGP62.js +2 -0
  136. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/dist-RDWOYWHR.js +13 -0
  137. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/github-copilot.js +2 -0
  138. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-generative-ai-XDKMGBCJ.js +2 -0
  139. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/google-vertex-D5FGEO3Y.js +2 -0
  140. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/image-resize-worker.js +2 -0
  141. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/kimi-coding.js +2 -0
  142. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/lib-HGQMNYVT.js +9 -0
  143. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/mistral-conversations-YK73UAOZ.js +5 -0
  144. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
  145. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex-responses-GJVBJXLB.js +8 -0
  146. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-codex.js +75 -0
  147. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-completions-JD4WAC3R.js +7 -0
  148. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openai-responses-BSOJMSEV.js +2 -0
  149. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter-images-N4XVVFSD.js +2 -0
  150. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/openrouter.js +75 -0
  151. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/pi-messages-TPFH44NP.js +8 -0
  152. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/radius.js +75 -0
  153. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/src-UK77SYZE.js +4 -0
  154. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/xai.js +2 -0
  155. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +3 -0
  156. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/client.js +2 -0
  157. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +2 -0
  158. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +3 -0
  159. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +1 -0
  160. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
  161. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +29 -9
  162. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
  163. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -1
  164. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js +2 -1
  165. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js.map +1 -1
  166. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts +4 -3
  167. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts.map +1 -1
  168. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +22 -14
  169. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js.map +1 -1
  170. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +26 -7
  171. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  172. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +163 -95
  173. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  174. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
  175. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +6 -7
  176. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
  177. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  178. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js +3 -0
  179. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -1
  180. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts +4 -3
  181. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts.map +1 -1
  182. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js +41 -32
  183. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js.map +1 -1
  184. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts +1 -0
  185. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.d.ts.map +1 -1
  186. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js +9 -0
  187. package/node_modules/@earendil-works/pi-coding-agent/dist/core/defaults.js.map +1 -1
  188. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +2 -2
  189. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
  190. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js +1 -1
  191. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
  192. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
  193. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +115 -48
  194. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
  195. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +38 -9
  196. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
  197. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js +3 -0
  198. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
  199. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts +1 -1
  200. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -1
  201. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js +1 -1
  202. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -1
  203. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts +20 -19
  204. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -1
  205. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js +26 -5
  206. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js.map +1 -1
  207. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts +5 -0
  208. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts.map +1 -1
  209. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js +3 -1
  210. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js.map +1 -1
  211. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +1 -0
  212. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
  213. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +14 -8
  214. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
  215. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.d.ts.map +1 -1
  216. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js +2 -1
  217. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js.map +1 -1
  218. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  219. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +22 -14
  220. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  221. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.d.ts.map +1 -1
  222. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js +2 -1
  223. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js.map +1 -1
  224. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.d.ts.map +1 -1
  225. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js +2 -1
  226. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js.map +1 -1
  227. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
  228. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +3 -2
  229. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
  230. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts +2 -2
  231. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts.map +1 -1
  232. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +10 -3
  233. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js.map +1 -1
  234. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts +4 -0
  235. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.d.ts.map +1 -0
  236. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js +32 -0
  237. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-export.js.map +1 -0
  238. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
  239. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +2 -1
  240. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
  241. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts +9 -0
  242. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.d.ts.map +1 -0
  243. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js +21 -0
  244. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-diagnostics.js.map +1 -0
  245. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +9 -0
  246. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
  247. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +52 -10
  248. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  249. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.d.ts.map +1 -1
  250. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js +51 -33
  251. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js.map +1 -1
  252. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -1
  253. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js +2 -1
  254. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js.map +1 -1
  255. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -1
  256. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js +11 -2
  257. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js.map +1 -1
  258. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts +14 -1
  259. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  260. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +36 -20
  261. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  262. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts +0 -5
  263. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts.map +1 -1
  264. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js +2 -5
  265. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js.map +1 -1
  266. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
  267. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +20 -4
  268. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
  269. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts +4 -1
  270. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts.map +1 -1
  271. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js +18 -1
  272. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js.map +1 -1
  273. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts +16 -0
  274. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.d.ts.map +1 -0
  275. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js +39 -0
  276. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/powershell.js.map +1 -0
  277. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.d.ts.map +1 -1
  278. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js +2 -1
  279. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js.map +1 -1
  280. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.d.ts.map +1 -1
  281. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js +2 -0
  282. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js.map +1 -1
  283. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts.map +1 -1
  284. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js +6 -2
  285. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js.map +1 -1
  286. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +5 -5
  287. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
  288. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +4 -4
  289. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
  290. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts +4 -0
  291. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
  292. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +18 -15
  293. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
  294. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.d.ts.map +1 -1
  295. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js +4 -3
  296. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js.map +1 -1
  297. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +9 -3
  298. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  299. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +56 -12
  300. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -1
  301. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +7 -2
  302. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  303. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +118 -56
  304. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
  305. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts +72 -0
  306. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -0
  307. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js +165 -0
  308. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-submenu.js.map +1 -0
  309. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts +15 -3
  310. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  311. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js +74 -17
  312. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  313. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.d.ts.map +1 -1
  314. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js +2 -1
  315. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js.map +1 -1
  316. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +11 -0
  317. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  318. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +182 -112
  319. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
  320. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts +16 -0
  321. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.d.ts.map +1 -0
  322. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js +188 -0
  323. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/session-share.js.map +1 -0
  324. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  325. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +4 -3
  326. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -1
  327. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts +16 -13
  328. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts.map +1 -1
  329. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js +20 -6
  330. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js.map +1 -1
  331. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts +1 -0
  332. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
  333. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +186 -2
  334. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
  335. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.d.ts.map +1 -1
  336. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js +2 -1
  337. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/frontmatter.js.map +1 -1
  338. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts +5 -3
  339. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts.map +1 -1
  340. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js +14 -10
  341. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js.map +1 -1
  342. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts +3 -0
  343. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts.map +1 -1
  344. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js +17 -5
  345. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js.map +1 -1
  346. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts +1 -0
  347. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts.map +1 -1
  348. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js +60 -1
  349. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js.map +1 -1
  350. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts +8 -0
  351. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.d.ts.map +1 -0
  352. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js +9 -0
  353. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/text.js.map +1 -0
  354. package/node_modules/@earendil-works/pi-coding-agent/docs/compaction.md +15 -0
  355. package/node_modules/@earendil-works/pi-coding-agent/docs/custom-provider.md +5 -2
  356. package/node_modules/@earendil-works/pi-coding-agent/docs/environment-variables.md +8 -8
  357. package/node_modules/@earendil-works/pi-coding-agent/docs/extensions.md +17 -7
  358. package/node_modules/@earendil-works/pi-coding-agent/docs/json.md +7 -2
  359. package/node_modules/@earendil-works/pi-coding-agent/docs/keybindings.md +8 -8
  360. package/node_modules/@earendil-works/pi-coding-agent/docs/llama-cpp.md +2 -0
  361. package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +8 -2
  362. package/node_modules/@earendil-works/pi-coding-agent/docs/packages.md +2 -2
  363. package/node_modules/@earendil-works/pi-coding-agent/docs/rpc.md +9 -3
  364. package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +7 -2
  365. package/node_modules/@earendil-works/pi-coding-agent/docs/settings.md +11 -3
  366. package/node_modules/@earendil-works/pi-coding-agent/docs/skills.md +4 -3
  367. package/node_modules/@earendil-works/pi-coding-agent/docs/terminal-setup.md +11 -9
  368. package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +6 -2
  369. package/node_modules/@earendil-works/pi-coding-agent/docs/windows.md +24 -2
  370. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/border-status-editor.ts +1 -1
  371. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  372. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
  373. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  374. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/git-checkpoint.ts +2 -2
  375. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package-lock.json +2 -2
  376. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package.json +1 -1
  377. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/notify.ts +3 -1
  378. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package-lock.json +2 -2
  379. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
  380. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/README.md +1 -1
  381. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/index.ts +6 -1
  382. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/titlebar-spinner.ts +1 -1
  383. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package-lock.json +2 -2
  384. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
  385. package/node_modules/@earendil-works/pi-coding-agent/examples/rpc-extension-ui.ts +1 -1
  386. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/06-extensions.ts +1 -1
  387. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/README.md +1 -1
  388. package/node_modules/@earendil-works/pi-coding-agent/package.json +12 -14
  389. package/node_modules/@earendil-works/pi-protocol/package.json +1 -1
  390. package/node_modules/@earendil-works/pi-telemetry/package.json +2 -2
  391. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
  392. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +9 -4
  393. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
  394. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts +8 -2
  395. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +1 -1
  396. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js +24 -4
  397. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +1 -1
  398. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +1 -1
  399. package/node_modules/@earendil-works/pi-tui/dist/components/text.js +5 -4
  400. package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +1 -1
  401. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +2 -2
  402. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +1 -1
  403. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js +2 -2
  404. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +1 -1
  405. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +1 -1
  406. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +2 -8
  407. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +1 -1
  408. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts +7 -0
  409. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.d.ts.map +1 -0
  410. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js +19 -0
  411. package/node_modules/@earendil-works/pi-tui/dist/native-module-path.js.map +1 -0
  412. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  413. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +4 -10
  414. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  415. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -1
  416. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +5 -1
  417. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -1
  418. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  419. package/node_modules/@types/node/README.md +1 -1
  420. package/node_modules/@types/node/buffer.buffer.d.ts +5 -5
  421. package/node_modules/@types/node/crypto.d.ts +2 -2
  422. package/node_modules/@types/node/http.d.ts +16 -0
  423. package/node_modules/@types/node/http2.d.ts +10 -2
  424. package/node_modules/@types/node/package.json +2 -2
  425. package/node_modules/@types/node/process.d.ts +52 -0
  426. package/node_modules/@types/node/quic.d.ts +210 -28
  427. package/node_modules/@types/node/sqlite.d.ts +6 -2
  428. package/node_modules/@types/node/test.d.ts +36 -0
  429. package/node_modules/brace-expansion/README.md +1 -2
  430. package/node_modules/brace-expansion/dist/commonjs/index.js +30 -4
  431. package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
  432. package/node_modules/brace-expansion/dist/esm/index.js +30 -4
  433. package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
  434. package/node_modules/brace-expansion/package.json +1 -1
  435. package/package.json +9 -9
  436. package/node_modules/@opentelemetry/api/LICENSE +0 -201
  437. package/node_modules/@opentelemetry/api/README.md +0 -116
  438. package/node_modules/@opentelemetry/api/build/esm/api/context.d.ts +0 -41
  439. package/node_modules/@opentelemetry/api/build/esm/api/context.js +0 -110
  440. package/node_modules/@opentelemetry/api/build/esm/api/context.js.map +0 -1
  441. package/node_modules/@opentelemetry/api/build/esm/api/diag.d.ts +0 -30
  442. package/node_modules/@opentelemetry/api/build/esm/api/diag.js +0 -121
  443. package/node_modules/@opentelemetry/api/build/esm/api/diag.js.map +0 -1
  444. package/node_modules/@opentelemetry/api/build/esm/api/metrics.d.ts +0 -28
  445. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js +0 -60
  446. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js.map +0 -1
  447. package/node_modules/@opentelemetry/api/build/esm/api/propagation.d.ts +0 -49
  448. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js +0 -89
  449. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js.map +0 -1
  450. package/node_modules/@opentelemetry/api/build/esm/api/trace.d.ts +0 -40
  451. package/node_modules/@opentelemetry/api/build/esm/api/trace.js +0 -77
  452. package/node_modules/@opentelemetry/api/build/esm/api/trace.js.map +0 -1
  453. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.d.ts +0 -29
  454. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js +0 -56
  455. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js.map +0 -1
  456. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.d.ts +0 -12
  457. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js +0 -98
  458. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js.map +0 -1
  459. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.d.ts +0 -5
  460. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js +0 -20
  461. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js.map +0 -1
  462. package/node_modules/@opentelemetry/api/build/esm/baggage/types.d.ts +0 -60
  463. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js +0 -17
  464. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js.map +0 -1
  465. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.d.ts +0 -15
  466. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js +0 -47
  467. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js.map +0 -1
  468. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.d.ts +0 -15
  469. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js +0 -17
  470. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js.map +0 -1
  471. package/node_modules/@opentelemetry/api/build/esm/common/Exception.d.ts +0 -26
  472. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js +0 -17
  473. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js.map +0 -1
  474. package/node_modules/@opentelemetry/api/build/esm/common/Time.d.ts +0 -20
  475. package/node_modules/@opentelemetry/api/build/esm/common/Time.js +0 -2
  476. package/node_modules/@opentelemetry/api/build/esm/common/Time.js.map +0 -1
  477. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.d.ts +0 -9
  478. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js +0 -67
  479. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js.map +0 -1
  480. package/node_modules/@opentelemetry/api/build/esm/context/context.d.ts +0 -6
  481. package/node_modules/@opentelemetry/api/build/esm/context/context.js +0 -52
  482. package/node_modules/@opentelemetry/api/build/esm/context/context.js.map +0 -1
  483. package/node_modules/@opentelemetry/api/build/esm/context/types.d.ts +0 -52
  484. package/node_modules/@opentelemetry/api/build/esm/context/types.js +0 -17
  485. package/node_modules/@opentelemetry/api/build/esm/context/types.js.map +0 -1
  486. package/node_modules/@opentelemetry/api/build/esm/context-api.d.ts +0 -4
  487. package/node_modules/@opentelemetry/api/build/esm/context-api.js +0 -21
  488. package/node_modules/@opentelemetry/api/build/esm/context-api.js.map +0 -1
  489. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.d.ts +0 -20
  490. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js +0 -102
  491. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js.map +0 -1
  492. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.d.ts +0 -38
  493. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js +0 -59
  494. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js.map +0 -1
  495. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.d.ts +0 -3
  496. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js +0 -41
  497. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js.map +0 -1
  498. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.d.ts +0 -8
  499. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js +0 -31
  500. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js.map +0 -1
  501. package/node_modules/@opentelemetry/api/build/esm/diag/types.d.ts +0 -100
  502. package/node_modules/@opentelemetry/api/build/esm/diag/types.js +0 -41
  503. package/node_modules/@opentelemetry/api/build/esm/diag/types.js.map +0 -1
  504. package/node_modules/@opentelemetry/api/build/esm/diag-api.d.ts +0 -9
  505. package/node_modules/@opentelemetry/api/build/esm/diag-api.js +0 -26
  506. package/node_modules/@opentelemetry/api/build/esm/diag-api.js.map +0 -1
  507. package/node_modules/@opentelemetry/api/build/esm/experimental/index.d.ts +0 -3
  508. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js +0 -17
  509. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js.map +0 -1
  510. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.d.ts +0 -13
  511. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js +0 -17
  512. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js.map +0 -1
  513. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.d.ts +0 -64
  514. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js +0 -92
  515. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js.map +0 -1
  516. package/node_modules/@opentelemetry/api/build/esm/index.d.ts +0 -54
  517. package/node_modules/@opentelemetry/api/build/esm/index.js +0 -53
  518. package/node_modules/@opentelemetry/api/build/esm/index.js.map +0 -1
  519. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.d.ts +0 -18
  520. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js +0 -59
  521. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js.map +0 -1
  522. package/node_modules/@opentelemetry/api/build/esm/internal/semver.d.ts +0 -34
  523. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js +0 -118
  524. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js.map +0 -1
  525. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.d.ts +0 -110
  526. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js +0 -17
  527. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js.map +0 -1
  528. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.d.ts +0 -17
  529. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js +0 -17
  530. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js.map +0 -1
  531. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.d.ts +0 -115
  532. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js +0 -22
  533. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js.map +0 -1
  534. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.d.ts +0 -82
  535. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js +0 -181
  536. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js.map +0 -1
  537. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.d.ts +0 -11
  538. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js +0 -31
  539. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js.map +0 -1
  540. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.d.ts +0 -31
  541. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js +0 -17
  542. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js.map +0 -1
  543. package/node_modules/@opentelemetry/api/build/esm/metrics-api.d.ts +0 -4
  544. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js +0 -21
  545. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js.map +0 -1
  546. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.d.ts +0 -10
  547. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js +0 -35
  548. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js.map +0 -1
  549. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.d.ts +0 -2
  550. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js +0 -17
  551. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js.map +0 -1
  552. package/node_modules/@opentelemetry/api/build/esm/platform/index.d.ts +0 -2
  553. package/node_modules/@opentelemetry/api/build/esm/platform/index.js +0 -17
  554. package/node_modules/@opentelemetry/api/build/esm/platform/index.js.map +0 -1
  555. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.d.ts +0 -3
  556. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js +0 -19
  557. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js.map +0 -1
  558. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.d.ts +0 -2
  559. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js +0 -17
  560. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js.map +0 -1
  561. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.d.ts +0 -13
  562. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js +0 -34
  563. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js.map +0 -1
  564. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.d.ts +0 -84
  565. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js +0 -38
  566. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js.map +0 -1
  567. package/node_modules/@opentelemetry/api/build/esm/propagation-api.d.ts +0 -4
  568. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js +0 -21
  569. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js.map +0 -1
  570. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.d.ts +0 -28
  571. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js +0 -68
  572. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js.map +0 -1
  573. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.d.ts +0 -14
  574. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js +0 -76
  575. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js.map +0 -1
  576. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.d.ts +0 -13
  577. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js +0 -32
  578. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js.map +0 -1
  579. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.d.ts +0 -27
  580. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js +0 -53
  581. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js.map +0 -1
  582. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.d.ts +0 -25
  583. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js +0 -54
  584. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js.map +0 -1
  585. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.d.ts +0 -31
  586. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js +0 -17
  587. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js.map +0 -1
  588. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.d.ts +0 -49
  589. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js +0 -39
  590. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js.map +0 -1
  591. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.d.ts +0 -23
  592. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js +0 -17
  593. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js.map +0 -1
  594. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.d.ts +0 -10
  595. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js +0 -17
  596. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js.map +0 -1
  597. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.d.ts +0 -41
  598. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js +0 -73
  599. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js.map +0 -1
  600. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.d.ts +0 -22
  601. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js +0 -102
  602. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js.map +0 -1
  603. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.d.ts +0 -15
  604. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js +0 -41
  605. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js.map +0 -1
  606. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.d.ts +0 -3
  607. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js +0 -20
  608. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js.map +0 -1
  609. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.d.ts +0 -5
  610. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js +0 -24
  611. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js.map +0 -1
  612. package/node_modules/@opentelemetry/api/build/esm/trace/link.d.ts +0 -26
  613. package/node_modules/@opentelemetry/api/build/esm/trace/link.js +0 -17
  614. package/node_modules/@opentelemetry/api/build/esm/trace/link.js.map +0 -1
  615. package/node_modules/@opentelemetry/api/build/esm/trace/span.d.ts +0 -120
  616. package/node_modules/@opentelemetry/api/build/esm/trace/span.js +0 -17
  617. package/node_modules/@opentelemetry/api/build/esm/trace/span.js.map +0 -1
  618. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.d.ts +0 -53
  619. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js +0 -17
  620. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js.map +0 -1
  621. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.d.ts +0 -27
  622. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js +0 -43
  623. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js.map +0 -1
  624. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.d.ts +0 -17
  625. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js +0 -42
  626. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js.map +0 -1
  627. package/node_modules/@opentelemetry/api/build/esm/trace/status.d.ts +0 -25
  628. package/node_modules/@opentelemetry/api/build/esm/trace/status.js +0 -20
  629. package/node_modules/@opentelemetry/api/build/esm/trace/status.js.map +0 -1
  630. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.d.ts +0 -7
  631. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js +0 -23
  632. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js.map +0 -1
  633. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.d.ts +0 -38
  634. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js +0 -17
  635. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js.map +0 -1
  636. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.d.ts +0 -71
  637. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js +0 -17
  638. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js.map +0 -1
  639. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.d.ts +0 -10
  640. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js +0 -17
  641. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js.map +0 -1
  642. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.d.ts +0 -21
  643. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js +0 -17
  644. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js.map +0 -1
  645. package/node_modules/@opentelemetry/api/build/esm/trace-api.d.ts +0 -4
  646. package/node_modules/@opentelemetry/api/build/esm/trace-api.js +0 -21
  647. package/node_modules/@opentelemetry/api/build/esm/trace-api.js.map +0 -1
  648. package/node_modules/@opentelemetry/api/build/esm/version.d.ts +0 -2
  649. package/node_modules/@opentelemetry/api/build/esm/version.js +0 -18
  650. package/node_modules/@opentelemetry/api/build/esm/version.js.map +0 -1
  651. package/node_modules/@opentelemetry/api/build/esnext/api/context.d.ts +0 -41
  652. package/node_modules/@opentelemetry/api/build/esnext/api/context.js +0 -77
  653. package/node_modules/@opentelemetry/api/build/esnext/api/context.js.map +0 -1
  654. package/node_modules/@opentelemetry/api/build/esnext/api/diag.d.ts +0 -30
  655. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js +0 -89
  656. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js.map +0 -1
  657. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.d.ts +0 -28
  658. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js +0 -57
  659. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js.map +0 -1
  660. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.d.ts +0 -49
  661. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js +0 -85
  662. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js.map +0 -1
  663. package/node_modules/@opentelemetry/api/build/esnext/api/trace.d.ts +0 -40
  664. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js +0 -75
  665. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js.map +0 -1
  666. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.d.ts +0 -29
  667. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js +0 -56
  668. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js.map +0 -1
  669. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.d.ts +0 -12
  670. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js +0 -51
  671. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js.map +0 -1
  672. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.d.ts +0 -5
  673. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js +0 -20
  674. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js.map +0 -1
  675. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.d.ts +0 -60
  676. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js +0 -17
  677. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js.map +0 -1
  678. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.d.ts +0 -15
  679. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js +0 -46
  680. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js.map +0 -1
  681. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.d.ts +0 -15
  682. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js +0 -17
  683. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js.map +0 -1
  684. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.d.ts +0 -26
  685. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js +0 -17
  686. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js.map +0 -1
  687. package/node_modules/@opentelemetry/api/build/esnext/common/Time.d.ts +0 -20
  688. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js +0 -2
  689. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js.map +0 -1
  690. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.d.ts +0 -9
  691. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js +0 -34
  692. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js.map +0 -1
  693. package/node_modules/@opentelemetry/api/build/esnext/context/context.d.ts +0 -6
  694. package/node_modules/@opentelemetry/api/build/esnext/context/context.js +0 -51
  695. package/node_modules/@opentelemetry/api/build/esnext/context/context.js.map +0 -1
  696. package/node_modules/@opentelemetry/api/build/esnext/context/types.d.ts +0 -52
  697. package/node_modules/@opentelemetry/api/build/esnext/context/types.js +0 -17
  698. package/node_modules/@opentelemetry/api/build/esnext/context/types.js.map +0 -1
  699. package/node_modules/@opentelemetry/api/build/esnext/context-api.d.ts +0 -4
  700. package/node_modules/@opentelemetry/api/build/esnext/context-api.js +0 -21
  701. package/node_modules/@opentelemetry/api/build/esnext/context-api.js.map +0 -1
  702. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.d.ts +0 -20
  703. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js +0 -55
  704. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js.map +0 -1
  705. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.d.ts +0 -38
  706. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js +0 -53
  707. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js.map +0 -1
  708. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.d.ts +0 -3
  709. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js +0 -41
  710. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js.map +0 -1
  711. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.d.ts +0 -8
  712. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js +0 -31
  713. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js.map +0 -1
  714. package/node_modules/@opentelemetry/api/build/esnext/diag/types.d.ts +0 -100
  715. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js +0 -41
  716. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js.map +0 -1
  717. package/node_modules/@opentelemetry/api/build/esnext/diag-api.d.ts +0 -9
  718. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js +0 -26
  719. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js.map +0 -1
  720. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.d.ts +0 -3
  721. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js +0 -17
  722. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js.map +0 -1
  723. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.d.ts +0 -13
  724. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js +0 -17
  725. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js.map +0 -1
  726. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.d.ts +0 -64
  727. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js +0 -88
  728. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js.map +0 -1
  729. package/node_modules/@opentelemetry/api/build/esnext/index.d.ts +0 -54
  730. package/node_modules/@opentelemetry/api/build/esnext/index.js +0 -53
  731. package/node_modules/@opentelemetry/api/build/esnext/index.js.map +0 -1
  732. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.d.ts +0 -18
  733. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js +0 -58
  734. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js.map +0 -1
  735. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.d.ts +0 -34
  736. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js +0 -118
  737. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js.map +0 -1
  738. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.d.ts +0 -110
  739. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js +0 -17
  740. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js.map +0 -1
  741. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.d.ts +0 -17
  742. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js +0 -17
  743. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js.map +0 -1
  744. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.d.ts +0 -115
  745. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js +0 -22
  746. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js.map +0 -1
  747. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.d.ts +0 -82
  748. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js +0 -113
  749. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js.map +0 -1
  750. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.d.ts +0 -11
  751. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js +0 -27
  752. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js.map +0 -1
  753. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.d.ts +0 -31
  754. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js +0 -17
  755. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js.map +0 -1
  756. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.d.ts +0 -4
  757. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js +0 -21
  758. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js.map +0 -1
  759. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.d.ts +0 -10
  760. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js +0 -35
  761. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js.map +0 -1
  762. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.d.ts +0 -2
  763. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js +0 -17
  764. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js.map +0 -1
  765. package/node_modules/@opentelemetry/api/build/esnext/platform/index.d.ts +0 -2
  766. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js +0 -17
  767. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js.map +0 -1
  768. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.d.ts +0 -3
  769. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js +0 -19
  770. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js.map +0 -1
  771. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.d.ts +0 -2
  772. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js +0 -17
  773. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js.map +0 -1
  774. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.d.ts +0 -13
  775. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js +0 -30
  776. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js.map +0 -1
  777. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.d.ts +0 -84
  778. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js +0 -38
  779. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js.map +0 -1
  780. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.d.ts +0 -4
  781. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js +0 -21
  782. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js.map +0 -1
  783. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.d.ts +0 -28
  784. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js +0 -65
  785. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js.map +0 -1
  786. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.d.ts +0 -14
  787. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js +0 -71
  788. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js.map +0 -1
  789. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.d.ts +0 -13
  790. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js +0 -28
  791. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js.map +0 -1
  792. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.d.ts +0 -27
  793. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js +0 -51
  794. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js.map +0 -1
  795. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.d.ts +0 -25
  796. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js +0 -50
  797. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js.map +0 -1
  798. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.d.ts +0 -31
  799. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js +0 -17
  800. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js.map +0 -1
  801. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.d.ts +0 -49
  802. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js +0 -39
  803. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js.map +0 -1
  804. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.d.ts +0 -23
  805. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js +0 -17
  806. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js.map +0 -1
  807. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.d.ts +0 -10
  808. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js +0 -17
  809. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js.map +0 -1
  810. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.d.ts +0 -41
  811. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js +0 -73
  812. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js.map +0 -1
  813. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.d.ts +0 -22
  814. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js +0 -99
  815. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js.map +0 -1
  816. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.d.ts +0 -15
  817. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js +0 -41
  818. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js.map +0 -1
  819. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.d.ts +0 -3
  820. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js +0 -20
  821. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js.map +0 -1
  822. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.d.ts +0 -5
  823. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js +0 -24
  824. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js.map +0 -1
  825. package/node_modules/@opentelemetry/api/build/esnext/trace/link.d.ts +0 -26
  826. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js +0 -17
  827. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js.map +0 -1
  828. package/node_modules/@opentelemetry/api/build/esnext/trace/span.d.ts +0 -120
  829. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js +0 -17
  830. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js.map +0 -1
  831. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.d.ts +0 -53
  832. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js +0 -17
  833. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js.map +0 -1
  834. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.d.ts +0 -27
  835. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js +0 -43
  836. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js.map +0 -1
  837. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.d.ts +0 -17
  838. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js +0 -42
  839. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js.map +0 -1
  840. package/node_modules/@opentelemetry/api/build/esnext/trace/status.d.ts +0 -25
  841. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js +0 -20
  842. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js.map +0 -1
  843. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.d.ts +0 -7
  844. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js +0 -23
  845. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js.map +0 -1
  846. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.d.ts +0 -38
  847. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js +0 -17
  848. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js.map +0 -1
  849. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.d.ts +0 -71
  850. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js +0 -17
  851. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js.map +0 -1
  852. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.d.ts +0 -10
  853. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js +0 -17
  854. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js.map +0 -1
  855. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.d.ts +0 -21
  856. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js +0 -17
  857. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js.map +0 -1
  858. package/node_modules/@opentelemetry/api/build/esnext/trace-api.d.ts +0 -4
  859. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js +0 -21
  860. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js.map +0 -1
  861. package/node_modules/@opentelemetry/api/build/esnext/version.d.ts +0 -2
  862. package/node_modules/@opentelemetry/api/build/esnext/version.js +0 -18
  863. package/node_modules/@opentelemetry/api/build/esnext/version.js.map +0 -1
  864. package/node_modules/@opentelemetry/api/build/src/api/context.d.ts +0 -41
  865. package/node_modules/@opentelemetry/api/build/src/api/context.js +0 -81
  866. package/node_modules/@opentelemetry/api/build/src/api/context.js.map +0 -1
  867. package/node_modules/@opentelemetry/api/build/src/api/diag.d.ts +0 -30
  868. package/node_modules/@opentelemetry/api/build/src/api/diag.js +0 -93
  869. package/node_modules/@opentelemetry/api/build/src/api/diag.js.map +0 -1
  870. package/node_modules/@opentelemetry/api/build/src/api/metrics.d.ts +0 -28
  871. package/node_modules/@opentelemetry/api/build/src/api/metrics.js +0 -61
  872. package/node_modules/@opentelemetry/api/build/src/api/metrics.js.map +0 -1
  873. package/node_modules/@opentelemetry/api/build/src/api/propagation.d.ts +0 -49
  874. package/node_modules/@opentelemetry/api/build/src/api/propagation.js +0 -89
  875. package/node_modules/@opentelemetry/api/build/src/api/propagation.js.map +0 -1
  876. package/node_modules/@opentelemetry/api/build/src/api/trace.d.ts +0 -40
  877. package/node_modules/@opentelemetry/api/build/src/api/trace.js +0 -79
  878. package/node_modules/@opentelemetry/api/build/src/api/trace.js.map +0 -1
  879. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.d.ts +0 -29
  880. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +0 -63
  881. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js.map +0 -1
  882. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.d.ts +0 -12
  883. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +0 -55
  884. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js.map +0 -1
  885. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.d.ts +0 -5
  886. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +0 -23
  887. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js.map +0 -1
  888. package/node_modules/@opentelemetry/api/build/src/baggage/types.d.ts +0 -60
  889. package/node_modules/@opentelemetry/api/build/src/baggage/types.js +0 -18
  890. package/node_modules/@opentelemetry/api/build/src/baggage/types.js.map +0 -1
  891. package/node_modules/@opentelemetry/api/build/src/baggage/utils.d.ts +0 -15
  892. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js +0 -51
  893. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js.map +0 -1
  894. package/node_modules/@opentelemetry/api/build/src/common/Attributes.d.ts +0 -15
  895. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js +0 -18
  896. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js.map +0 -1
  897. package/node_modules/@opentelemetry/api/build/src/common/Exception.d.ts +0 -26
  898. package/node_modules/@opentelemetry/api/build/src/common/Exception.js +0 -18
  899. package/node_modules/@opentelemetry/api/build/src/common/Exception.js.map +0 -1
  900. package/node_modules/@opentelemetry/api/build/src/common/Time.d.ts +0 -20
  901. package/node_modules/@opentelemetry/api/build/src/common/Time.js +0 -3
  902. package/node_modules/@opentelemetry/api/build/src/common/Time.js.map +0 -1
  903. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.d.ts +0 -9
  904. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +0 -38
  905. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js.map +0 -1
  906. package/node_modules/@opentelemetry/api/build/src/context/context.d.ts +0 -6
  907. package/node_modules/@opentelemetry/api/build/src/context/context.js +0 -55
  908. package/node_modules/@opentelemetry/api/build/src/context/context.js.map +0 -1
  909. package/node_modules/@opentelemetry/api/build/src/context/types.d.ts +0 -52
  910. package/node_modules/@opentelemetry/api/build/src/context/types.js +0 -18
  911. package/node_modules/@opentelemetry/api/build/src/context/types.js.map +0 -1
  912. package/node_modules/@opentelemetry/api/build/src/context-api.d.ts +0 -4
  913. package/node_modules/@opentelemetry/api/build/src/context-api.js +0 -24
  914. package/node_modules/@opentelemetry/api/build/src/context-api.js.map +0 -1
  915. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.d.ts +0 -20
  916. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +0 -59
  917. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js.map +0 -1
  918. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.d.ts +0 -38
  919. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +0 -57
  920. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js.map +0 -1
  921. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.d.ts +0 -3
  922. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +0 -45
  923. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js.map +0 -1
  924. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.d.ts +0 -8
  925. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js +0 -35
  926. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js.map +0 -1
  927. package/node_modules/@opentelemetry/api/build/src/diag/types.d.ts +0 -100
  928. package/node_modules/@opentelemetry/api/build/src/diag/types.js +0 -44
  929. package/node_modules/@opentelemetry/api/build/src/diag/types.js.map +0 -1
  930. package/node_modules/@opentelemetry/api/build/src/diag-api.d.ts +0 -9
  931. package/node_modules/@opentelemetry/api/build/src/diag-api.js +0 -29
  932. package/node_modules/@opentelemetry/api/build/src/diag-api.js.map +0 -1
  933. package/node_modules/@opentelemetry/api/build/src/experimental/index.d.ts +0 -3
  934. package/node_modules/@opentelemetry/api/build/src/experimental/index.js +0 -22
  935. package/node_modules/@opentelemetry/api/build/src/experimental/index.js.map +0 -1
  936. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.d.ts +0 -13
  937. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js +0 -18
  938. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js.map +0 -1
  939. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.d.ts +0 -64
  940. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js +0 -93
  941. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js.map +0 -1
  942. package/node_modules/@opentelemetry/api/build/src/index.d.ts +0 -54
  943. package/node_modules/@opentelemetry/api/build/src/index.js +0 -81
  944. package/node_modules/@opentelemetry/api/build/src/index.js.map +0 -1
  945. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.d.ts +0 -18
  946. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +0 -64
  947. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js.map +0 -1
  948. package/node_modules/@opentelemetry/api/build/src/internal/semver.d.ts +0 -34
  949. package/node_modules/@opentelemetry/api/build/src/internal/semver.js +0 -122
  950. package/node_modules/@opentelemetry/api/build/src/internal/semver.js.map +0 -1
  951. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.d.ts +0 -110
  952. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js +0 -18
  953. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js.map +0 -1
  954. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.d.ts +0 -17
  955. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js +0 -18
  956. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js.map +0 -1
  957. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.d.ts +0 -115
  958. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +0 -25
  959. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js.map +0 -1
  960. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.d.ts +0 -82
  961. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +0 -127
  962. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js.map +0 -1
  963. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.d.ts +0 -11
  964. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +0 -31
  965. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js.map +0 -1
  966. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.d.ts +0 -31
  967. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js +0 -18
  968. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js.map +0 -1
  969. package/node_modules/@opentelemetry/api/build/src/metrics-api.d.ts +0 -4
  970. package/node_modules/@opentelemetry/api/build/src/metrics-api.js +0 -24
  971. package/node_modules/@opentelemetry/api/build/src/metrics-api.js.map +0 -1
  972. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.d.ts +0 -10
  973. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js +0 -38
  974. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js.map +0 -1
  975. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.d.ts +0 -2
  976. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js +0 -29
  977. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js.map +0 -1
  978. package/node_modules/@opentelemetry/api/build/src/platform/index.d.ts +0 -2
  979. package/node_modules/@opentelemetry/api/build/src/platform/index.js +0 -29
  980. package/node_modules/@opentelemetry/api/build/src/platform/index.js.map +0 -1
  981. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.d.ts +0 -3
  982. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +0 -22
  983. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js.map +0 -1
  984. package/node_modules/@opentelemetry/api/build/src/platform/node/index.d.ts +0 -2
  985. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js +0 -29
  986. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js.map +0 -1
  987. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.d.ts +0 -13
  988. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +0 -34
  989. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js.map +0 -1
  990. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.d.ts +0 -84
  991. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +0 -41
  992. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js.map +0 -1
  993. package/node_modules/@opentelemetry/api/build/src/propagation-api.d.ts +0 -4
  994. package/node_modules/@opentelemetry/api/build/src/propagation-api.js +0 -24
  995. package/node_modules/@opentelemetry/api/build/src/propagation-api.js.map +0 -1
  996. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.d.ts +0 -28
  997. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +0 -69
  998. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js.map +0 -1
  999. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.d.ts +0 -14
  1000. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +0 -75
  1001. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js.map +0 -1
  1002. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.d.ts +0 -13
  1003. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +0 -32
  1004. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js.map +0 -1
  1005. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.d.ts +0 -27
  1006. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +0 -55
  1007. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js.map +0 -1
  1008. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.d.ts +0 -25
  1009. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +0 -54
  1010. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js.map +0 -1
  1011. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.d.ts +0 -31
  1012. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js +0 -18
  1013. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js.map +0 -1
  1014. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.d.ts +0 -49
  1015. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +0 -42
  1016. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js.map +0 -1
  1017. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.d.ts +0 -23
  1018. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js +0 -18
  1019. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js.map +0 -1
  1020. package/node_modules/@opentelemetry/api/build/src/trace/attributes.d.ts +0 -10
  1021. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js +0 -18
  1022. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js.map +0 -1
  1023. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.d.ts +0 -41
  1024. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +0 -82
  1025. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js.map +0 -1
  1026. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.d.ts +0 -22
  1027. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +0 -103
  1028. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js.map +0 -1
  1029. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.d.ts +0 -15
  1030. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +0 -46
  1031. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js.map +0 -1
  1032. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.d.ts +0 -3
  1033. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +0 -24
  1034. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js.map +0 -1
  1035. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.d.ts +0 -5
  1036. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +0 -27
  1037. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js.map +0 -1
  1038. package/node_modules/@opentelemetry/api/build/src/trace/link.d.ts +0 -26
  1039. package/node_modules/@opentelemetry/api/build/src/trace/link.js +0 -18
  1040. package/node_modules/@opentelemetry/api/build/src/trace/link.js.map +0 -1
  1041. package/node_modules/@opentelemetry/api/build/src/trace/span.d.ts +0 -120
  1042. package/node_modules/@opentelemetry/api/build/src/trace/span.js +0 -18
  1043. package/node_modules/@opentelemetry/api/build/src/trace/span.js.map +0 -1
  1044. package/node_modules/@opentelemetry/api/build/src/trace/span_context.d.ts +0 -53
  1045. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js +0 -18
  1046. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js.map +0 -1
  1047. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.d.ts +0 -27
  1048. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +0 -46
  1049. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js.map +0 -1
  1050. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.d.ts +0 -17
  1051. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +0 -49
  1052. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js.map +0 -1
  1053. package/node_modules/@opentelemetry/api/build/src/trace/status.d.ts +0 -25
  1054. package/node_modules/@opentelemetry/api/build/src/trace/status.js +0 -23
  1055. package/node_modules/@opentelemetry/api/build/src/trace/status.js.map +0 -1
  1056. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.d.ts +0 -7
  1057. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +0 -26
  1058. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js.map +0 -1
  1059. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.d.ts +0 -38
  1060. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js +0 -18
  1061. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js.map +0 -1
  1062. package/node_modules/@opentelemetry/api/build/src/trace/tracer.d.ts +0 -71
  1063. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js +0 -18
  1064. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js.map +0 -1
  1065. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.d.ts +0 -10
  1066. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js +0 -18
  1067. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js.map +0 -1
  1068. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.d.ts +0 -21
  1069. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js +0 -18
  1070. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js.map +0 -1
  1071. package/node_modules/@opentelemetry/api/build/src/trace-api.d.ts +0 -4
  1072. package/node_modules/@opentelemetry/api/build/src/trace-api.js +0 -24
  1073. package/node_modules/@opentelemetry/api/build/src/trace-api.js.map +0 -1
  1074. package/node_modules/@opentelemetry/api/build/src/version.d.ts +0 -2
  1075. package/node_modules/@opentelemetry/api/build/src/version.js +0 -21
  1076. package/node_modules/@opentelemetry/api/build/src/version.js.map +0 -1
  1077. package/node_modules/@opentelemetry/api/package.json +0 -113
  1078. package/node_modules/glob/LICENSE.md +0 -63
  1079. package/node_modules/glob/README.md +0 -1203
  1080. package/node_modules/glob/dist/commonjs/glob.d.ts +0 -396
  1081. package/node_modules/glob/dist/commonjs/glob.d.ts.map +0 -1
  1082. package/node_modules/glob/dist/commonjs/glob.js +0 -248
  1083. package/node_modules/glob/dist/commonjs/glob.js.map +0 -1
  1084. package/node_modules/glob/dist/commonjs/has-magic.d.ts +0 -14
  1085. package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +0 -1
  1086. package/node_modules/glob/dist/commonjs/has-magic.js +0 -27
  1087. package/node_modules/glob/dist/commonjs/has-magic.js.map +0 -1
  1088. package/node_modules/glob/dist/commonjs/ignore.d.ts +0 -24
  1089. package/node_modules/glob/dist/commonjs/ignore.d.ts.map +0 -1
  1090. package/node_modules/glob/dist/commonjs/ignore.js +0 -119
  1091. package/node_modules/glob/dist/commonjs/ignore.js.map +0 -1
  1092. package/node_modules/glob/dist/commonjs/index.d.ts +0 -97
  1093. package/node_modules/glob/dist/commonjs/index.d.ts.map +0 -1
  1094. package/node_modules/glob/dist/commonjs/index.js +0 -68
  1095. package/node_modules/glob/dist/commonjs/index.js.map +0 -1
  1096. package/node_modules/glob/dist/commonjs/index.min.js +0 -4
  1097. package/node_modules/glob/dist/commonjs/index.min.js.map +0 -7
  1098. package/node_modules/glob/dist/commonjs/package.json +0 -3
  1099. package/node_modules/glob/dist/commonjs/pattern.d.ts +0 -79
  1100. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +0 -1
  1101. package/node_modules/glob/dist/commonjs/pattern.js +0 -223
  1102. package/node_modules/glob/dist/commonjs/pattern.js.map +0 -1
  1103. package/node_modules/glob/dist/commonjs/processor.d.ts +0 -59
  1104. package/node_modules/glob/dist/commonjs/processor.d.ts.map +0 -1
  1105. package/node_modules/glob/dist/commonjs/processor.js +0 -301
  1106. package/node_modules/glob/dist/commonjs/processor.js.map +0 -1
  1107. package/node_modules/glob/dist/commonjs/walker.d.ts +0 -97
  1108. package/node_modules/glob/dist/commonjs/walker.d.ts.map +0 -1
  1109. package/node_modules/glob/dist/commonjs/walker.js +0 -387
  1110. package/node_modules/glob/dist/commonjs/walker.js.map +0 -1
  1111. package/node_modules/glob/dist/esm/glob.d.ts +0 -396
  1112. package/node_modules/glob/dist/esm/glob.d.ts.map +0 -1
  1113. package/node_modules/glob/dist/esm/glob.js +0 -244
  1114. package/node_modules/glob/dist/esm/glob.js.map +0 -1
  1115. package/node_modules/glob/dist/esm/has-magic.d.ts +0 -14
  1116. package/node_modules/glob/dist/esm/has-magic.d.ts.map +0 -1
  1117. package/node_modules/glob/dist/esm/has-magic.js +0 -23
  1118. package/node_modules/glob/dist/esm/has-magic.js.map +0 -1
  1119. package/node_modules/glob/dist/esm/ignore.d.ts +0 -24
  1120. package/node_modules/glob/dist/esm/ignore.d.ts.map +0 -1
  1121. package/node_modules/glob/dist/esm/ignore.js +0 -115
  1122. package/node_modules/glob/dist/esm/ignore.js.map +0 -1
  1123. package/node_modules/glob/dist/esm/index.d.ts +0 -97
  1124. package/node_modules/glob/dist/esm/index.d.ts.map +0 -1
  1125. package/node_modules/glob/dist/esm/index.js +0 -55
  1126. package/node_modules/glob/dist/esm/index.js.map +0 -1
  1127. package/node_modules/glob/dist/esm/index.min.js +0 -4
  1128. package/node_modules/glob/dist/esm/index.min.js.map +0 -7
  1129. package/node_modules/glob/dist/esm/package.json +0 -3
  1130. package/node_modules/glob/dist/esm/pattern.d.ts +0 -79
  1131. package/node_modules/glob/dist/esm/pattern.d.ts.map +0 -1
  1132. package/node_modules/glob/dist/esm/pattern.js +0 -219
  1133. package/node_modules/glob/dist/esm/pattern.js.map +0 -1
  1134. package/node_modules/glob/dist/esm/processor.d.ts +0 -59
  1135. package/node_modules/glob/dist/esm/processor.d.ts.map +0 -1
  1136. package/node_modules/glob/dist/esm/processor.js +0 -294
  1137. package/node_modules/glob/dist/esm/processor.js.map +0 -1
  1138. package/node_modules/glob/dist/esm/walker.d.ts +0 -97
  1139. package/node_modules/glob/dist/esm/walker.d.ts.map +0 -1
  1140. package/node_modules/glob/dist/esm/walker.js +0 -381
  1141. package/node_modules/glob/dist/esm/walker.js.map +0 -1
  1142. package/node_modules/glob/package.json +0 -98
  1143. package/node_modules/minipass/LICENSE.md +0 -55
  1144. package/node_modules/minipass/README.md +0 -825
  1145. package/node_modules/minipass/dist/commonjs/index.d.ts +0 -545
  1146. package/node_modules/minipass/dist/commonjs/index.d.ts.map +0 -1
  1147. package/node_modules/minipass/dist/commonjs/index.js +0 -1038
  1148. package/node_modules/minipass/dist/commonjs/index.js.map +0 -1
  1149. package/node_modules/minipass/dist/commonjs/package.json +0 -3
  1150. package/node_modules/minipass/dist/esm/index.d.ts +0 -545
  1151. package/node_modules/minipass/dist/esm/index.d.ts.map +0 -1
  1152. package/node_modules/minipass/dist/esm/index.js +0 -1020
  1153. package/node_modules/minipass/dist/esm/index.js.map +0 -1
  1154. package/node_modules/minipass/dist/esm/package.json +0 -3
  1155. package/node_modules/minipass/package.json +0 -77
  1156. package/node_modules/path-scurry/LICENSE.md +0 -55
  1157. package/node_modules/path-scurry/README.md +0 -636
  1158. package/node_modules/path-scurry/dist/commonjs/index.d.ts +0 -1115
  1159. package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +0 -1
  1160. package/node_modules/path-scurry/dist/commonjs/index.js +0 -2018
  1161. package/node_modules/path-scurry/dist/commonjs/index.js.map +0 -1
  1162. package/node_modules/path-scurry/dist/commonjs/package.json +0 -3
  1163. package/node_modules/path-scurry/dist/esm/index.d.ts +0 -1115
  1164. package/node_modules/path-scurry/dist/esm/index.d.ts.map +0 -1
  1165. package/node_modules/path-scurry/dist/esm/index.js +0 -1983
  1166. package/node_modules/path-scurry/dist/esm/index.js.map +0 -1
  1167. package/node_modules/path-scurry/dist/esm/package.json +0 -3
  1168. package/node_modules/path-scurry/package.json +0 -72
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"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","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.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"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","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 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 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,3 +1,4 @@
1
+ export declare function loadAllHighlightLanguages(): Promise<void>;
1
2
  export type HighlightFormatter = (text: string) => string;
2
3
  export type HighlightTheme = Partial<Record<string, HighlightFormatter>>;
3
4
  export interface HighlightOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"syntax-highlight.d.ts","sourceRoot":"","sources":["../../src/utils/syntax-highlight.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAC1D,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,cAAc,CAAC;CACvB;AAoED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,cAAmB,GAAG,MAAM,CAoDtF;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAQ9E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD","sourcesContent":["import hljs from \"highlight.js/lib/index.js\";\nimport { decodeHtmlEntityAt } from \"./html.ts\";\n\nexport type HighlightFormatter = (text: string) => string;\nexport type HighlightTheme = Partial<Record<string, HighlightFormatter>>;\n\nexport interface HighlightOptions {\n\tlanguage?: string;\n\tignoreIllegals?: boolean;\n\tlanguageSubset?: string[];\n\ttheme?: HighlightTheme;\n}\n\nconst SPAN_CLOSE = \"</span>\";\nconst HIGHLIGHT_CLASS_PREFIX = \"hljs-\";\n\nfunction getScopeFromSpanTag(tag: string): string | undefined {\n\tconst match = /\\sclass\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/.exec(tag);\n\tconst classValue = match?.[1] ?? match?.[2];\n\tif (!classValue) {\n\t\treturn undefined;\n\t}\n\n\tfor (const className of classValue.split(/\\s+/)) {\n\t\tif (className.startsWith(HIGHLIGHT_CLASS_PREFIX)) {\n\t\t\treturn className.slice(HIGHLIGHT_CLASS_PREFIX.length);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getScopeFormatter(scope: string, theme: HighlightTheme): HighlightFormatter | undefined {\n\tconst exact = theme[scope];\n\tif (exact) {\n\t\treturn exact;\n\t}\n\n\tconst dotIndex = scope.indexOf(\".\");\n\tif (dotIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dotIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\tconst dashIndex = scope.indexOf(\"-\");\n\tif (dashIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dashIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getActiveFormatter(scopes: Array<string | undefined>, theme: HighlightTheme): HighlightFormatter | undefined {\n\tfor (let i = scopes.length - 1; i >= 0; i--) {\n\t\tconst scope = scopes[i];\n\t\tif (!scope) {\n\t\t\tcontinue;\n\t\t}\n\t\tconst formatter = getScopeFormatter(scope, theme);\n\t\tif (formatter) {\n\t\t\treturn formatter;\n\t\t}\n\t}\n\treturn theme.default;\n}\n\nfunction isSpanOpenTagStart(html: string, index: number): boolean {\n\tif (!html.startsWith(\"<span\", index)) {\n\t\treturn false;\n\t}\n\tconst nextChar = html[index + \"<span\".length];\n\treturn nextChar === \">\" || nextChar === \" \" || nextChar === \"\\t\" || nextChar === \"\\n\" || nextChar === \"\\r\";\n}\n\nexport function renderHighlightedHtml(html: string, theme: HighlightTheme = {}): string {\n\tlet output = \"\";\n\tlet textBuffer = \"\";\n\tconst scopes: Array<string | undefined> = [];\n\n\tconst flushText = () => {\n\t\tif (!textBuffer) {\n\t\t\treturn;\n\t\t}\n\t\tconst formatter = getActiveFormatter(scopes, theme);\n\t\toutput += formatter ? formatter(textBuffer) : textBuffer;\n\t\ttextBuffer = \"\";\n\t};\n\n\tlet index = 0;\n\twhile (index < html.length) {\n\t\tif (isSpanOpenTagStart(html, index)) {\n\t\t\tconst tagEndIndex = html.indexOf(\">\", index + 5);\n\t\t\tif (tagEndIndex !== -1) {\n\t\t\t\tflushText();\n\t\t\t\tconst tag = html.slice(index, tagEndIndex + 1);\n\t\t\t\tconst scope = getScopeFromSpanTag(tag);\n\t\t\t\tscopes.push(scope);\n\t\t\t\tindex = tagEndIndex + 1;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\tif (html.startsWith(SPAN_CLOSE, index)) {\n\t\t\tflushText();\n\t\t\tif (scopes.length > 0) {\n\t\t\t\tscopes.pop();\n\t\t\t}\n\t\t\tindex += SPAN_CLOSE.length;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (html[index] === \"&\") {\n\t\t\tconst decoded = decodeHtmlEntityAt(html, index);\n\t\t\tif (decoded) {\n\t\t\t\ttextBuffer += decoded.text;\n\t\t\t\tindex += decoded.length;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\ttextBuffer += html[index];\n\t\tindex++;\n\t}\n\n\tflushText();\n\treturn output;\n}\n\nexport function highlight(code: string, options: HighlightOptions = {}): string {\n\tconst html = options.language\n\t\t? hljs.highlight(code, {\n\t\t\t\tlanguage: options.language,\n\t\t\t\tignoreIllegals: options.ignoreIllegals,\n\t\t\t}).value\n\t\t: hljs.highlightAuto(code, options.languageSubset).value;\n\treturn renderHighlightedHtml(html, options.theme);\n}\n\nexport function supportsLanguage(name: string): boolean {\n\treturn hljs.getLanguage(name) !== undefined;\n}\n"]}
1
+ {"version":3,"file":"syntax-highlight.d.ts","sourceRoot":"","sources":["../../src/utils/syntax-highlight.ts"],"names":[],"mappings":"AAoDA,wBAAgB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAezD;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAC1D,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,cAAc,CAAC;CACvB;AAoED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,cAAmB,GAAG,MAAM,CAoDtF;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAQ9E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD","sourcesContent":["import hljs from \"highlight.js/lib/core.js\";\nimport bash from \"highlight.js/lib/languages/bash.js\";\nimport c from \"highlight.js/lib/languages/c.js\";\nimport cpp from \"highlight.js/lib/languages/cpp.js\";\nimport csharp from \"highlight.js/lib/languages/csharp.js\";\nimport dart from \"highlight.js/lib/languages/dart.js\";\nimport go from \"highlight.js/lib/languages/go.js\";\nimport groovy from \"highlight.js/lib/languages/groovy.js\";\nimport java from \"highlight.js/lib/languages/java.js\";\nimport javascript from \"highlight.js/lib/languages/javascript.js\";\nimport kotlin from \"highlight.js/lib/languages/kotlin.js\";\nimport lua from \"highlight.js/lib/languages/lua.js\";\nimport nix from \"highlight.js/lib/languages/nix.js\";\nimport perl from \"highlight.js/lib/languages/perl.js\";\nimport php from \"highlight.js/lib/languages/php.js\";\nimport python from \"highlight.js/lib/languages/python.js\";\nimport ruby from \"highlight.js/lib/languages/ruby.js\";\nimport rust from \"highlight.js/lib/languages/rust.js\";\nimport scala from \"highlight.js/lib/languages/scala.js\";\nimport swift from \"highlight.js/lib/languages/swift.js\";\nimport typescript from \"highlight.js/lib/languages/typescript.js\";\nimport { decodeHtmlEntityAt } from \"./html.ts\";\n\nconst eagerLanguages = {\n\tpython,\n\tjava,\n\tgo,\n\tjavascript,\n\tcpp,\n\ttypescript,\n\tphp,\n\truby,\n\tc,\n\tcsharp,\n\tnix,\n\tbash,\n\trust,\n\tscala,\n\tkotlin,\n\tswift,\n\tdart,\n\tgroovy,\n\tperl,\n\tlua,\n};\n\nfor (const [name, language] of Object.entries(eagerLanguages)) {\n\thljs.registerLanguage(name, language);\n}\n\nlet allLanguagesPromise: Promise<void> | undefined;\n\nexport function loadAllHighlightLanguages(): Promise<void> {\n\tif (!allLanguagesPromise) {\n\t\tallLanguagesPromise = new Promise((resolve) => {\n\t\t\tsetImmediate(() => {\n\t\t\t\tvoid import(\"highlight.js/lib/index.js\").then(\n\t\t\t\t\t() => resolve(),\n\t\t\t\t\t() => {\n\t\t\t\t\t\t// Eager languages and plaintext fallback remain available.\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t});\n\t\t});\n\t}\n\treturn allLanguagesPromise;\n}\n\nexport type HighlightFormatter = (text: string) => string;\nexport type HighlightTheme = Partial<Record<string, HighlightFormatter>>;\n\nexport interface HighlightOptions {\n\tlanguage?: string;\n\tignoreIllegals?: boolean;\n\tlanguageSubset?: string[];\n\ttheme?: HighlightTheme;\n}\n\nconst SPAN_CLOSE = \"</span>\";\nconst HIGHLIGHT_CLASS_PREFIX = \"hljs-\";\n\nfunction getScopeFromSpanTag(tag: string): string | undefined {\n\tconst match = /\\sclass\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/.exec(tag);\n\tconst classValue = match?.[1] ?? match?.[2];\n\tif (!classValue) {\n\t\treturn undefined;\n\t}\n\n\tfor (const className of classValue.split(/\\s+/)) {\n\t\tif (className.startsWith(HIGHLIGHT_CLASS_PREFIX)) {\n\t\t\treturn className.slice(HIGHLIGHT_CLASS_PREFIX.length);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getScopeFormatter(scope: string, theme: HighlightTheme): HighlightFormatter | undefined {\n\tconst exact = theme[scope];\n\tif (exact) {\n\t\treturn exact;\n\t}\n\n\tconst dotIndex = scope.indexOf(\".\");\n\tif (dotIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dotIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\tconst dashIndex = scope.indexOf(\"-\");\n\tif (dashIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dashIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getActiveFormatter(scopes: Array<string | undefined>, theme: HighlightTheme): HighlightFormatter | undefined {\n\tfor (let i = scopes.length - 1; i >= 0; i--) {\n\t\tconst scope = scopes[i];\n\t\tif (!scope) {\n\t\t\tcontinue;\n\t\t}\n\t\tconst formatter = getScopeFormatter(scope, theme);\n\t\tif (formatter) {\n\t\t\treturn formatter;\n\t\t}\n\t}\n\treturn theme.default;\n}\n\nfunction isSpanOpenTagStart(html: string, index: number): boolean {\n\tif (!html.startsWith(\"<span\", index)) {\n\t\treturn false;\n\t}\n\tconst nextChar = html[index + \"<span\".length];\n\treturn nextChar === \">\" || nextChar === \" \" || nextChar === \"\\t\" || nextChar === \"\\n\" || nextChar === \"\\r\";\n}\n\nexport function renderHighlightedHtml(html: string, theme: HighlightTheme = {}): string {\n\tlet output = \"\";\n\tlet textBuffer = \"\";\n\tconst scopes: Array<string | undefined> = [];\n\n\tconst flushText = () => {\n\t\tif (!textBuffer) {\n\t\t\treturn;\n\t\t}\n\t\tconst formatter = getActiveFormatter(scopes, theme);\n\t\toutput += formatter ? formatter(textBuffer) : textBuffer;\n\t\ttextBuffer = \"\";\n\t};\n\n\tlet index = 0;\n\twhile (index < html.length) {\n\t\tif (isSpanOpenTagStart(html, index)) {\n\t\t\tconst tagEndIndex = html.indexOf(\">\", index + 5);\n\t\t\tif (tagEndIndex !== -1) {\n\t\t\t\tflushText();\n\t\t\t\tconst tag = html.slice(index, tagEndIndex + 1);\n\t\t\t\tconst scope = getScopeFromSpanTag(tag);\n\t\t\t\tscopes.push(scope);\n\t\t\t\tindex = tagEndIndex + 1;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\tif (html.startsWith(SPAN_CLOSE, index)) {\n\t\t\tflushText();\n\t\t\tif (scopes.length > 0) {\n\t\t\t\tscopes.pop();\n\t\t\t}\n\t\t\tindex += SPAN_CLOSE.length;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (html[index] === \"&\") {\n\t\t\tconst decoded = decodeHtmlEntityAt(html, index);\n\t\t\tif (decoded) {\n\t\t\t\ttextBuffer += decoded.text;\n\t\t\t\tindex += decoded.length;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\ttextBuffer += html[index];\n\t\tindex++;\n\t}\n\n\tflushText();\n\treturn output;\n}\n\nexport function highlight(code: string, options: HighlightOptions = {}): string {\n\tconst html = options.language\n\t\t? hljs.highlight(code, {\n\t\t\t\tlanguage: options.language,\n\t\t\t\tignoreIllegals: options.ignoreIllegals,\n\t\t\t}).value\n\t\t: hljs.highlightAuto(code, options.languageSubset).value;\n\treturn renderHighlightedHtml(html, options.theme);\n}\n\nexport function supportsLanguage(name: string): boolean {\n\treturn hljs.getLanguage(name) !== undefined;\n}\n"]}
@@ -1,5 +1,64 @@
1
- import hljs from "highlight.js/lib/index.js";
1
+ import hljs from "highlight.js/lib/core.js";
2
+ import bash from "highlight.js/lib/languages/bash.js";
3
+ import c from "highlight.js/lib/languages/c.js";
4
+ import cpp from "highlight.js/lib/languages/cpp.js";
5
+ import csharp from "highlight.js/lib/languages/csharp.js";
6
+ import dart from "highlight.js/lib/languages/dart.js";
7
+ import go from "highlight.js/lib/languages/go.js";
8
+ import groovy from "highlight.js/lib/languages/groovy.js";
9
+ import java from "highlight.js/lib/languages/java.js";
10
+ import javascript from "highlight.js/lib/languages/javascript.js";
11
+ import kotlin from "highlight.js/lib/languages/kotlin.js";
12
+ import lua from "highlight.js/lib/languages/lua.js";
13
+ import nix from "highlight.js/lib/languages/nix.js";
14
+ import perl from "highlight.js/lib/languages/perl.js";
15
+ import php from "highlight.js/lib/languages/php.js";
16
+ import python from "highlight.js/lib/languages/python.js";
17
+ import ruby from "highlight.js/lib/languages/ruby.js";
18
+ import rust from "highlight.js/lib/languages/rust.js";
19
+ import scala from "highlight.js/lib/languages/scala.js";
20
+ import swift from "highlight.js/lib/languages/swift.js";
21
+ import typescript from "highlight.js/lib/languages/typescript.js";
2
22
  import { decodeHtmlEntityAt } from "./html.js";
23
+ const eagerLanguages = {
24
+ python,
25
+ java,
26
+ go,
27
+ javascript,
28
+ cpp,
29
+ typescript,
30
+ php,
31
+ ruby,
32
+ c,
33
+ csharp,
34
+ nix,
35
+ bash,
36
+ rust,
37
+ scala,
38
+ kotlin,
39
+ swift,
40
+ dart,
41
+ groovy,
42
+ perl,
43
+ lua,
44
+ };
45
+ for (const [name, language] of Object.entries(eagerLanguages)) {
46
+ hljs.registerLanguage(name, language);
47
+ }
48
+ let allLanguagesPromise;
49
+ export function loadAllHighlightLanguages() {
50
+ if (!allLanguagesPromise) {
51
+ allLanguagesPromise = new Promise((resolve) => {
52
+ setImmediate(() => {
53
+ void import("highlight.js/lib/index.js").then(() => resolve(), () => {
54
+ // Eager languages and plaintext fallback remain available.
55
+ resolve();
56
+ });
57
+ });
58
+ });
59
+ }
60
+ return allLanguagesPromise;
61
+ }
3
62
  const SPAN_CLOSE = "</span>";
4
63
  const HIGHLIGHT_CLASS_PREFIX = "hljs-";
5
64
  function getScopeFromSpanTag(tag) {
@@ -1 +1 @@
1
- {"version":3,"file":"syntax-highlight.js","sourceRoot":"","sources":["../../src/utils/syntax-highlight.ts"],"names":[],"mappings":"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","sourcesContent":["import hljs from \"highlight.js/lib/index.js\";\nimport { decodeHtmlEntityAt } from \"./html.ts\";\n\nexport type HighlightFormatter = (text: string) => string;\nexport type HighlightTheme = Partial<Record<string, HighlightFormatter>>;\n\nexport interface HighlightOptions {\n\tlanguage?: string;\n\tignoreIllegals?: boolean;\n\tlanguageSubset?: string[];\n\ttheme?: HighlightTheme;\n}\n\nconst SPAN_CLOSE = \"</span>\";\nconst HIGHLIGHT_CLASS_PREFIX = \"hljs-\";\n\nfunction getScopeFromSpanTag(tag: string): string | undefined {\n\tconst match = /\\sclass\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/.exec(tag);\n\tconst classValue = match?.[1] ?? match?.[2];\n\tif (!classValue) {\n\t\treturn undefined;\n\t}\n\n\tfor (const className of classValue.split(/\\s+/)) {\n\t\tif (className.startsWith(HIGHLIGHT_CLASS_PREFIX)) {\n\t\t\treturn className.slice(HIGHLIGHT_CLASS_PREFIX.length);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getScopeFormatter(scope: string, theme: HighlightTheme): HighlightFormatter | undefined {\n\tconst exact = theme[scope];\n\tif (exact) {\n\t\treturn exact;\n\t}\n\n\tconst dotIndex = scope.indexOf(\".\");\n\tif (dotIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dotIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\tconst dashIndex = scope.indexOf(\"-\");\n\tif (dashIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dashIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getActiveFormatter(scopes: Array<string | undefined>, theme: HighlightTheme): HighlightFormatter | undefined {\n\tfor (let i = scopes.length - 1; i >= 0; i--) {\n\t\tconst scope = scopes[i];\n\t\tif (!scope) {\n\t\t\tcontinue;\n\t\t}\n\t\tconst formatter = getScopeFormatter(scope, theme);\n\t\tif (formatter) {\n\t\t\treturn formatter;\n\t\t}\n\t}\n\treturn theme.default;\n}\n\nfunction isSpanOpenTagStart(html: string, index: number): boolean {\n\tif (!html.startsWith(\"<span\", index)) {\n\t\treturn false;\n\t}\n\tconst nextChar = html[index + \"<span\".length];\n\treturn nextChar === \">\" || nextChar === \" \" || nextChar === \"\\t\" || nextChar === \"\\n\" || nextChar === \"\\r\";\n}\n\nexport function renderHighlightedHtml(html: string, theme: HighlightTheme = {}): string {\n\tlet output = \"\";\n\tlet textBuffer = \"\";\n\tconst scopes: Array<string | undefined> = [];\n\n\tconst flushText = () => {\n\t\tif (!textBuffer) {\n\t\t\treturn;\n\t\t}\n\t\tconst formatter = getActiveFormatter(scopes, theme);\n\t\toutput += formatter ? formatter(textBuffer) : textBuffer;\n\t\ttextBuffer = \"\";\n\t};\n\n\tlet index = 0;\n\twhile (index < html.length) {\n\t\tif (isSpanOpenTagStart(html, index)) {\n\t\t\tconst tagEndIndex = html.indexOf(\">\", index + 5);\n\t\t\tif (tagEndIndex !== -1) {\n\t\t\t\tflushText();\n\t\t\t\tconst tag = html.slice(index, tagEndIndex + 1);\n\t\t\t\tconst scope = getScopeFromSpanTag(tag);\n\t\t\t\tscopes.push(scope);\n\t\t\t\tindex = tagEndIndex + 1;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\tif (html.startsWith(SPAN_CLOSE, index)) {\n\t\t\tflushText();\n\t\t\tif (scopes.length > 0) {\n\t\t\t\tscopes.pop();\n\t\t\t}\n\t\t\tindex += SPAN_CLOSE.length;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (html[index] === \"&\") {\n\t\t\tconst decoded = decodeHtmlEntityAt(html, index);\n\t\t\tif (decoded) {\n\t\t\t\ttextBuffer += decoded.text;\n\t\t\t\tindex += decoded.length;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\ttextBuffer += html[index];\n\t\tindex++;\n\t}\n\n\tflushText();\n\treturn output;\n}\n\nexport function highlight(code: string, options: HighlightOptions = {}): string {\n\tconst html = options.language\n\t\t? hljs.highlight(code, {\n\t\t\t\tlanguage: options.language,\n\t\t\t\tignoreIllegals: options.ignoreIllegals,\n\t\t\t}).value\n\t\t: hljs.highlightAuto(code, options.languageSubset).value;\n\treturn renderHighlightedHtml(html, options.theme);\n}\n\nexport function supportsLanguage(name: string): boolean {\n\treturn hljs.getLanguage(name) !== undefined;\n}\n"]}
1
+ {"version":3,"file":"syntax-highlight.js","sourceRoot":"","sources":["../../src/utils/syntax-highlight.ts"],"names":[],"mappings":"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","sourcesContent":["import hljs from \"highlight.js/lib/core.js\";\nimport bash from \"highlight.js/lib/languages/bash.js\";\nimport c from \"highlight.js/lib/languages/c.js\";\nimport cpp from \"highlight.js/lib/languages/cpp.js\";\nimport csharp from \"highlight.js/lib/languages/csharp.js\";\nimport dart from \"highlight.js/lib/languages/dart.js\";\nimport go from \"highlight.js/lib/languages/go.js\";\nimport groovy from \"highlight.js/lib/languages/groovy.js\";\nimport java from \"highlight.js/lib/languages/java.js\";\nimport javascript from \"highlight.js/lib/languages/javascript.js\";\nimport kotlin from \"highlight.js/lib/languages/kotlin.js\";\nimport lua from \"highlight.js/lib/languages/lua.js\";\nimport nix from \"highlight.js/lib/languages/nix.js\";\nimport perl from \"highlight.js/lib/languages/perl.js\";\nimport php from \"highlight.js/lib/languages/php.js\";\nimport python from \"highlight.js/lib/languages/python.js\";\nimport ruby from \"highlight.js/lib/languages/ruby.js\";\nimport rust from \"highlight.js/lib/languages/rust.js\";\nimport scala from \"highlight.js/lib/languages/scala.js\";\nimport swift from \"highlight.js/lib/languages/swift.js\";\nimport typescript from \"highlight.js/lib/languages/typescript.js\";\nimport { decodeHtmlEntityAt } from \"./html.ts\";\n\nconst eagerLanguages = {\n\tpython,\n\tjava,\n\tgo,\n\tjavascript,\n\tcpp,\n\ttypescript,\n\tphp,\n\truby,\n\tc,\n\tcsharp,\n\tnix,\n\tbash,\n\trust,\n\tscala,\n\tkotlin,\n\tswift,\n\tdart,\n\tgroovy,\n\tperl,\n\tlua,\n};\n\nfor (const [name, language] of Object.entries(eagerLanguages)) {\n\thljs.registerLanguage(name, language);\n}\n\nlet allLanguagesPromise: Promise<void> | undefined;\n\nexport function loadAllHighlightLanguages(): Promise<void> {\n\tif (!allLanguagesPromise) {\n\t\tallLanguagesPromise = new Promise((resolve) => {\n\t\t\tsetImmediate(() => {\n\t\t\t\tvoid import(\"highlight.js/lib/index.js\").then(\n\t\t\t\t\t() => resolve(),\n\t\t\t\t\t() => {\n\t\t\t\t\t\t// Eager languages and plaintext fallback remain available.\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t});\n\t\t});\n\t}\n\treturn allLanguagesPromise;\n}\n\nexport type HighlightFormatter = (text: string) => string;\nexport type HighlightTheme = Partial<Record<string, HighlightFormatter>>;\n\nexport interface HighlightOptions {\n\tlanguage?: string;\n\tignoreIllegals?: boolean;\n\tlanguageSubset?: string[];\n\ttheme?: HighlightTheme;\n}\n\nconst SPAN_CLOSE = \"</span>\";\nconst HIGHLIGHT_CLASS_PREFIX = \"hljs-\";\n\nfunction getScopeFromSpanTag(tag: string): string | undefined {\n\tconst match = /\\sclass\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/.exec(tag);\n\tconst classValue = match?.[1] ?? match?.[2];\n\tif (!classValue) {\n\t\treturn undefined;\n\t}\n\n\tfor (const className of classValue.split(/\\s+/)) {\n\t\tif (className.startsWith(HIGHLIGHT_CLASS_PREFIX)) {\n\t\t\treturn className.slice(HIGHLIGHT_CLASS_PREFIX.length);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getScopeFormatter(scope: string, theme: HighlightTheme): HighlightFormatter | undefined {\n\tconst exact = theme[scope];\n\tif (exact) {\n\t\treturn exact;\n\t}\n\n\tconst dotIndex = scope.indexOf(\".\");\n\tif (dotIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dotIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\tconst dashIndex = scope.indexOf(\"-\");\n\tif (dashIndex !== -1) {\n\t\tconst prefixFormatter = theme[scope.slice(0, dashIndex)];\n\t\tif (prefixFormatter) {\n\t\t\treturn prefixFormatter;\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nfunction getActiveFormatter(scopes: Array<string | undefined>, theme: HighlightTheme): HighlightFormatter | undefined {\n\tfor (let i = scopes.length - 1; i >= 0; i--) {\n\t\tconst scope = scopes[i];\n\t\tif (!scope) {\n\t\t\tcontinue;\n\t\t}\n\t\tconst formatter = getScopeFormatter(scope, theme);\n\t\tif (formatter) {\n\t\t\treturn formatter;\n\t\t}\n\t}\n\treturn theme.default;\n}\n\nfunction isSpanOpenTagStart(html: string, index: number): boolean {\n\tif (!html.startsWith(\"<span\", index)) {\n\t\treturn false;\n\t}\n\tconst nextChar = html[index + \"<span\".length];\n\treturn nextChar === \">\" || nextChar === \" \" || nextChar === \"\\t\" || nextChar === \"\\n\" || nextChar === \"\\r\";\n}\n\nexport function renderHighlightedHtml(html: string, theme: HighlightTheme = {}): string {\n\tlet output = \"\";\n\tlet textBuffer = \"\";\n\tconst scopes: Array<string | undefined> = [];\n\n\tconst flushText = () => {\n\t\tif (!textBuffer) {\n\t\t\treturn;\n\t\t}\n\t\tconst formatter = getActiveFormatter(scopes, theme);\n\t\toutput += formatter ? formatter(textBuffer) : textBuffer;\n\t\ttextBuffer = \"\";\n\t};\n\n\tlet index = 0;\n\twhile (index < html.length) {\n\t\tif (isSpanOpenTagStart(html, index)) {\n\t\t\tconst tagEndIndex = html.indexOf(\">\", index + 5);\n\t\t\tif (tagEndIndex !== -1) {\n\t\t\t\tflushText();\n\t\t\t\tconst tag = html.slice(index, tagEndIndex + 1);\n\t\t\t\tconst scope = getScopeFromSpanTag(tag);\n\t\t\t\tscopes.push(scope);\n\t\t\t\tindex = tagEndIndex + 1;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\tif (html.startsWith(SPAN_CLOSE, index)) {\n\t\t\tflushText();\n\t\t\tif (scopes.length > 0) {\n\t\t\t\tscopes.pop();\n\t\t\t}\n\t\t\tindex += SPAN_CLOSE.length;\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (html[index] === \"&\") {\n\t\t\tconst decoded = decodeHtmlEntityAt(html, index);\n\t\t\tif (decoded) {\n\t\t\t\ttextBuffer += decoded.text;\n\t\t\t\tindex += decoded.length;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\ttextBuffer += html[index];\n\t\tindex++;\n\t}\n\n\tflushText();\n\treturn output;\n}\n\nexport function highlight(code: string, options: HighlightOptions = {}): string {\n\tconst html = options.language\n\t\t? hljs.highlight(code, {\n\t\t\t\tlanguage: options.language,\n\t\t\t\tignoreIllegals: options.ignoreIllegals,\n\t\t\t}).value\n\t\t: hljs.highlightAuto(code, options.languageSubset).value;\n\treturn renderHighlightedHtml(html, options.theme);\n}\n\nexport function supportsLanguage(name: string): boolean {\n\treturn hljs.getLanguage(name) !== undefined;\n}\n"]}
@@ -0,0 +1,8 @@
1
+ /** Split a leading UTF-8 byte order mark from decoded text. */
2
+ export declare function splitBom(content: string): {
3
+ bom: string;
4
+ text: string;
5
+ };
6
+ /** Remove a leading UTF-8 byte order mark from decoded text. */
7
+ export declare function stripBom(content: string): string;
8
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/utils/text.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAEvE;AAED,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhD","sourcesContent":["/** Split a leading UTF-8 byte order mark from decoded text. */\nexport function splitBom(content: string): { bom: string; text: string } {\n\treturn content.startsWith(\"\\uFEFF\") ? { bom: \"\\uFEFF\", text: content.slice(1) } : { bom: \"\", text: content };\n}\n\n/** Remove a leading UTF-8 byte order mark from decoded text. */\nexport function stripBom(content: string): string {\n\treturn splitBom(content).text;\n}\n"]}
@@ -0,0 +1,9 @@
1
+ /** Split a leading UTF-8 byte order mark from decoded text. */
2
+ export function splitBom(content) {
3
+ return content.startsWith("\uFEFF") ? { bom: "\uFEFF", text: content.slice(1) } : { bom: "", text: content };
4
+ }
5
+ /** Remove a leading UTF-8 byte order mark from decoded text. */
6
+ export function stripBom(content) {
7
+ return splitBom(content).text;
8
+ }
9
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/utils/text.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAiC;IACxE,OAAO,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAAA,CAC7G;AAED,gEAAgE;AAChE,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAU;IACjD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;AAAA,CAC9B","sourcesContent":["/** Split a leading UTF-8 byte order mark from decoded text. */\nexport function splitBom(content: string): { bom: string; text: string } {\n\treturn content.startsWith(\"\\uFEFF\") ? { bom: \"\\uFEFF\", text: content.slice(1) } : { bom: \"\", text: content };\n}\n\n/** Remove a leading UTF-8 byte order mark from decoded text. */\nexport function stripBom(content: string): string {\n\treturn splitBom(content).text;\n}\n"]}
@@ -346,6 +346,21 @@ pi.on("session_before_compact", async (event, ctx) => {
346
346
 
347
347
  See [custom-compaction.ts](../examples/extensions/custom-compaction.ts) for a complete example using a different model.
348
348
 
349
+ ### session_compact_failed
350
+
351
+ Fired when manual or automatic compaction fails or is aborted. This is useful for telemetry extensions that need to pair `session_before_compact` attempts with terminal outcomes.
352
+
353
+ ```typescript
354
+ pi.on("session_compact_failed", async (event, ctx) => {
355
+ const { reason, errorMessage, aborted, willRetry, fromExtension } = event;
356
+ // reason - "manual" (/compact), "threshold", or "overflow"
357
+ // errorMessage - present for non-abort failures
358
+ // aborted - true for cancelled/aborted compactions
359
+ // willRetry - whether the aborted turn would have retried after compaction
360
+ // fromExtension - whether extension-provided compaction content was being used
361
+ });
362
+ ```
363
+
349
364
  ### session_before_tree
350
365
 
351
366
  Fired before `/tree` navigation. Always fires regardless of whether user chose to summarize. Can cancel navigation or provide custom summary.
@@ -752,8 +752,10 @@ interface ProviderModelConfig {
752
752
  requiresThinkingAsText?: boolean;
753
753
  requiresReasoningContentOnAssistantMessages?: boolean;
754
754
  thinkingFormat?: "openai" | "openrouter" | "deepseek" | "together" | "baseten" | "zai" | "qwen" | "chat-template" | "qwen-chat-template" | "string-thinking" | "ant-ling";
755
- chatTemplateKwargs?: Record<string, string | number | boolean | null | { "$var": "thinking.enabled" | "thinking.effort"; omitWhenOff?: boolean }>;
756
- chatTemplateArgs?: Record<string, string | number | boolean | null | { "$var": "thinking.enabled" | "thinking.effort"; omitWhenOff?: boolean }>;
755
+ chatTemplateKwargs?: Record<string, string | number | boolean | null | { "$var": "thinking.enabled" | "thinking.effort" | "thinking.budget"; omitWhenOff?: boolean }>;
756
+ chatTemplateArgs?: Record<string, string | number | boolean | null | { "$var": "thinking.enabled" | "thinking.effort" | "thinking.budget"; omitWhenOff?: boolean }>;
757
+ thinkingTokenBudgetField?: "thinking_token_budget" | "thinking_budget" | "thinking_budget_tokens";
758
+ supportsThinkingTokenBudget?: boolean;
757
759
  cacheControlFormat?: "anthropic";
758
760
  sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter";
759
761
  sendSessionAffinityHeaders?: boolean;
@@ -771,4 +773,5 @@ interface ProviderModelConfig {
771
773
  ```
772
774
 
773
775
  `openrouter` sends `reasoning: { effort }`. `deepseek` sends `thinking: { type: "enabled" | "disabled" }` and `reasoning_effort` when enabled. `together` sends `reasoning: { enabled }` and also `reasoning_effort` when `supportsReasoningEffort` is enabled. `qwen` is for DashScope-style top-level `enable_thinking`. Use `qwen-chat-template` for local Qwen-compatible servers that read `chat_template_kwargs.enable_thinking` and need `preserve_thinking`. Use `chat-template` for configurable `chat_template_kwargs`, for example DeepSeek V3.x behind vLLM with `chatTemplateKwargs: { "thinking": { "$var": "thinking.enabled" } }`. Use `thinkingFormat: "baseten"` with `chatTemplateArgs` when the provider expects toggle values under `chat_template_args` and optionally supports top-level `reasoning_effort`.
776
+ `thinkingTokenBudgetField` sends a clamped per-level thinking budget as a top-level request field (`thinking_token_budget` on vLLM, `thinking_budget` on Qwen/SGLang, `thinking_budget_tokens` on llama.cpp). `supportsThinkingTokenBudget: true` is an alias for the vLLM field name. Do not combine it with `reasoning_effort` on DashScope Qwen models.
774
777
  `cacheControlFormat: "anthropic"` applies Anthropic-style `cache_control` markers to the system prompt, last tool definition, and last user, assistant, or tool-result text content.
@@ -4,7 +4,7 @@ Pi uses environment variables in three ways:
4
4
 
5
5
  - Variables such as `PI_OFFLINE` configure the Pi process.
6
6
  - Pi sets process markers so child processes can identify Pi as the launching agent.
7
- - Commands run by the LLM-callable bash tool receive `PI_*` variables describing the current session.
7
+ - Commands run by the LLM-callable shell tools receive `PI_*` variables describing the current session.
8
8
 
9
9
  Provider API-key variables are documented separately in [Providers](providers.md#environment-variables-or-auth-file).
10
10
 
@@ -17,9 +17,9 @@ The CLI and RPC entry points set two process markers:
17
17
 
18
18
  Child processes inherit both markers. They are not session-specific and are not set automatically when Pi is embedded through the SDK.
19
19
 
20
- ## Bash Tool Session Environment
20
+ ## Shell Tool Session Environment
21
21
 
22
- Commands run by the bash tool receive the current Pi session state:
22
+ Commands run by the `bash` and `powershell` tools receive the current Pi session state:
23
23
 
24
24
  | Variable | Description |
25
25
  |----------|-------------|
@@ -29,7 +29,7 @@ Commands run by the bash tool receive the current Pi session state:
29
29
  | `PI_MODEL` | Currently selected model ID |
30
30
  | `PI_REASONING_LEVEL` | Current effective reasoning level: `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, or `max` |
31
31
 
32
- The values are resolved when each command starts. Switching models or changing the reasoning level therefore affects the next bash command without restarting Pi. `PI_PROVIDER` and `PI_MODEL` identify the selected Pi model, not a different upstream model that a router may choose internally.
32
+ The values are resolved when each command starts. Switching models or changing the reasoning level therefore affects the next shell command without restarting Pi. `PI_PROVIDER` and `PI_MODEL` identify the selected Pi model, not a different upstream model that a router may choose internally.
33
33
 
34
34
  When asked which model or provider is running, inspect these variables instead of inferring the answer from the system prompt:
35
35
 
@@ -46,11 +46,11 @@ if [ -n "$PI_SESSION_FILE" ]; then
46
46
  fi
47
47
  ```
48
48
 
49
- These variables are injected into the LLM-callable bash tool. They are not injected into user-entered `!` or `!!` commands.
49
+ These variables are injected into the LLM-callable `bash` and `powershell` tools. They are not injected into user-entered `!` or `!!` commands.
50
50
 
51
- ### Custom Bash Tools
51
+ ### Custom Shell Tools
52
52
 
53
- Bash tools created with `createBashTool()` expose the session environment by default when registered with Pi. Injection happens before `spawnHook`, so a hook receives the variables in `ctx.env`:
53
+ Tools created with `createBashTool()` or `createPowerShellTool()` expose the session environment by default when registered with Pi. Injection happens before `spawnHook`, so a hook receives the variables in `ctx.env`:
54
54
 
55
55
  ```typescript
56
56
  const bashTool = createBashTool(cwd, {
@@ -64,7 +64,7 @@ const bashTool = createBashTool(cwd, {
64
64
  Disable session metadata independently of the spawn hook:
65
65
 
66
66
  ```typescript
67
- const bashTool = createBashTool(cwd, {
67
+ const powershellTool = createPowerShellTool(cwd, {
68
68
  exposeSessionEnvironment: false,
69
69
  spawnHook: (ctx) => ctx,
70
70
  });
@@ -330,7 +330,8 @@ user sends another prompt ◄─────────────────
330
330
 
331
331
  /compact or auto-compaction
332
332
  ├─► session_before_compact (can cancel or customize)
333
- └─► session_compact
333
+ ├─► session_compact (success)
334
+ └─► session_compact_failed (failure or abort)
334
335
 
335
336
  /tree navigation
336
337
  ├─► session_before_tree (can cancel or customize)
@@ -448,7 +449,7 @@ pi.on("session_before_fork", async (event, ctx) => {
448
449
  After a successful fork or clone, pi emits `session_shutdown` for the old extension instance, reloads and rebinds extensions for the new session, then emits `session_start` with `reason: "fork"` and `previousSessionFile`.
449
450
  Do cleanup work in `session_shutdown`, then reestablish any in-memory state in `session_start`.
450
451
 
451
- #### session_before_compact / session_compact
452
+ #### session_before_compact / session_compact / session_compact_failed
452
453
 
453
454
  Fired on compaction. See [compaction.md](compaction.md) for details.
454
455
 
@@ -479,6 +480,14 @@ pi.on("session_compact", async (event, ctx) => {
479
480
  // event.reason - "manual" (/compact), "threshold", or "overflow"
480
481
  // event.willRetry - whether the aborted turn is retried after compaction (overflow recovery)
481
482
  });
483
+
484
+ pi.on("session_compact_failed", async (event, ctx) => {
485
+ // event.reason - "manual" (/compact), "threshold", or "overflow"
486
+ // event.errorMessage - present for non-abort failures
487
+ // event.aborted - true for cancelled/aborted compactions
488
+ // event.willRetry - whether the aborted turn would have retried after compaction
489
+ // event.fromExtension - whether extension-provided compaction content was being used
490
+ });
482
491
  ```
483
492
 
484
493
  #### session_before_tree / session_tree
@@ -2050,7 +2059,7 @@ pi.registerTool({
2050
2059
 
2051
2060
  ### Overriding Built-in Tools
2052
2061
 
2053
- Extensions can override built-in tools (`read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`) by registering a tool with the same name. Interactive mode displays a warning when this happens.
2062
+ Extensions can override built-in tools (`read`, `bash`, `powershell`, `edit`, `write`, `grep`, `find`, `ls`) by registering a tool with the same name. Interactive mode displays a warning when this happens.
2054
2063
 
2055
2064
  ```bash
2056
2065
  # Extension's read tool replaces built-in read
@@ -2074,6 +2083,7 @@ See [examples/extensions/tool-override.ts](../examples/extensions/tool-override.
2074
2083
  Built-in tool implementations:
2075
2084
  - [read.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/read.ts) - `ReadToolDetails`
2076
2085
  - [bash.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/bash.ts) - `BashToolDetails`
2086
+ - [powershell.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/powershell.ts) - `PowerShellToolDetails`
2077
2087
  - [edit.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/edit.ts)
2078
2088
  - [write.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/write.ts)
2079
2089
  - [grep.ts](https://github.com/earendil-works/pi-mono/blob/main/packages/coding-agent/src/core/tools/grep.ts) - `GrepToolDetails`
@@ -2109,11 +2119,11 @@ pi.registerTool({
2109
2119
  });
2110
2120
  ```
2111
2121
 
2112
- **Operations interfaces:** `ReadOperations`, `WriteOperations`, `EditOperations`, `BashOperations`, `LsOperations`, `GrepOperations`, `FindOperations`
2122
+ **Operations interfaces:** `ReadOperations`, `WriteOperations`, `EditOperations`, `BashOperations`, `PowerShellOperations`, `LsOperations`, `GrepOperations`, `FindOperations`
2113
2123
 
2114
2124
  For `user_bash`, extensions can reuse pi's local shell backend via `createLocalBashOperations()` instead of reimplementing local process spawning, shell resolution, and process-tree termination.
2115
2125
 
2116
- The bash tool also supports a spawn hook to adjust the command, cwd, or env before execution:
2126
+ The `bash` and `powershell` tools also support a spawn hook to adjust the command, cwd, or env before execution:
2117
2127
 
2118
2128
  ```typescript
2119
2129
  import { createBashTool } from "@earendil-works/pi-coding-agent";
@@ -2127,7 +2137,7 @@ const bashTool = createBashTool(cwd, {
2127
2137
  });
2128
2138
  ```
2129
2139
 
2130
- `createBashTool()` exposes the current session to commands through `PI_SESSION_ID`, `PI_SESSION_FILE`, `PI_PROVIDER`, `PI_MODEL`, and `PI_REASONING_LEVEL`. Injection happens before `spawnHook`, so hooks receive these values in `env` and preserve them when they spread the existing environment as above. Set `exposeSessionEnvironment: false` to disable them:
2140
+ `createBashTool()` and `createPowerShellTool()` expose the current session to commands through `PI_SESSION_ID`, `PI_SESSION_FILE`, `PI_PROVIDER`, `PI_MODEL`, and `PI_REASONING_LEVEL`. Injection happens before `spawnHook`, so hooks receive these values in `env` and preserve them when they spread the existing environment as above. Set `exposeSessionEnvironment: false` to disable them:
2131
2141
 
2132
2142
  ```typescript
2133
2143
  const bashTool = createBashTool(cwd, {
@@ -2135,7 +2145,7 @@ const bashTool = createBashTool(cwd, {
2135
2145
  });
2136
2146
  ```
2137
2147
 
2138
- See [Bash tool session environment](environment-variables.md#bash-tool-session-environment) for variable semantics. See [examples/extensions/ssh.ts](../examples/extensions/ssh.ts) for a complete SSH example with `--ssh` flag.
2148
+ See [Shell tool session environment](environment-variables.md#shell-tool-session-environment) for variable semantics. See [examples/extensions/ssh.ts](../examples/extensions/ssh.ts) for a complete SSH example with `--ssh` flag.
2139
2149
 
2140
2150
  ### Output Truncation
2141
2151
 
@@ -15,12 +15,16 @@ except that streaming message updates omit cumulative snapshots:
15
15
  ```typescript
16
16
  type WithoutPartial<T> = T extends { partial: unknown } ? Omit<T, "partial"> : T;
17
17
 
18
+ type JsonAssistantMessageEvent<T> = T extends { type: "toolcall_start"; partial: unknown }
19
+ ? WithoutPartial<T> & { id: string; toolName: string }
20
+ : WithoutPartial<T>;
21
+
18
22
  type JsonAgentSessionEvent =
19
23
  | Exclude<AgentSessionEvent, { type: "message_update" }>
20
24
  | {
21
25
  type: "message_update";
22
26
  usage: Usage;
23
- assistantMessageEvent: WithoutPartial<AssistantMessageEvent>;
27
+ assistantMessageEvent: JsonAssistantMessageEvent<AssistantMessageEvent>;
24
28
  };
25
29
  ```
26
30
 
@@ -84,7 +88,8 @@ Followed by events as they occur:
84
88
  `assistantMessageEvent.partial` to keep stream size linear. The top-level `usage` field contains
85
89
  the latest cumulative provider-reported usage and may remain zero when a provider only reports
86
90
  usage at completion. Use `contentIndex` and `delta` to assemble live text, thinking, or tool-call
87
- arguments if needed. `message_end` contains the final authoritative message.
91
+ arguments if needed. A `toolcall_start` event also includes the constant-sized `id` and `toolName`
92
+ fields. `message_end` contains the final authoritative message.
88
93
 
89
94
  ## Example
90
95
 
@@ -70,7 +70,7 @@ The dedicated history actions always change history entries, regardless of the c
70
70
  |--------|---------|-------------|
71
71
  | `tui.editor.yank` | `ctrl+y` | Paste most recently deleted text |
72
72
  | `tui.editor.yankPop` | `alt+y` | Cycle through deleted text after yank |
73
- | `tui.editor.undo` | `ctrl+-` | Undo last edit |
73
+ | `tui.editor.undo` | `ctrl+-` (`ctrl+z` on Windows; `alt+z` on WSL) | Undo last edit |
74
74
 
75
75
  ### TUI Clipboard and Selection
76
76
 
@@ -107,9 +107,9 @@ This routing remains configurable through the ordinary action bindings. For exam
107
107
  | `tui.altScreen.halfPageDown` | *(none)* | Scroll the transcript down by half a page |
108
108
  | `tui.altScreen.lineUp` | *(none)* | Scroll the transcript up by one line |
109
109
  | `tui.altScreen.lineDown` | *(none)* | Scroll the transcript down by one line |
110
- | `tui.altScreen.previousPrompt` | `ctrl+shift+up` | Jump to the previous marked message |
111
- | `tui.altScreen.nextPrompt` | `ctrl+shift+down` | Jump to the next marked message |
112
- | `tui.altScreen.search` | `ctrl+shift+f` | Search the rendered transcript |
110
+ | `tui.altScreen.previousPrompt` | `ctrl+shift+up`, `ctrl+up` (`ctrl+up` only on Windows and WSL) | Jump to the previous marked message |
111
+ | `tui.altScreen.nextPrompt` | `ctrl+shift+down`, `ctrl+down` (`ctrl+down` only on Windows and WSL) | Jump to the next marked message |
112
+ | `tui.altScreen.search` | `ctrl+shift+f` (`ctrl+f` on Windows and WSL) | Search the rendered transcript |
113
113
  | `tui.altScreen.searchNext` | `enter`, `ctrl+g` | Select the next search match while searching |
114
114
  | `tui.altScreen.searchPrevious` | `shift+enter`, `ctrl+shift+g` | Select the previous search match while searching |
115
115
  | `tui.altScreen.searchClose` | `escape` | Close transcript search |
@@ -125,7 +125,7 @@ This routing remains configurable through the ordinary action bindings. For exam
125
125
  | `app.exit` | `ctrl+d` | Exit (when editor empty) |
126
126
  | `app.suspend` | `ctrl+z` (none on Windows) | Suspend to background |
127
127
  | `app.editor.external` | `ctrl+g` | Open in external editor (`externalEditor`, `$VISUAL`, `$EDITOR`, Notepad on Windows, or `nano` elsewhere) |
128
- | `app.clipboard.pasteImage` | `ctrl+v` (`alt+v` on Windows) | Paste image or text from clipboard |
128
+ | `app.clipboard.pasteImage` | `ctrl+v` (`alt+v` on Windows and WSL) | Paste image or text from clipboard |
129
129
 
130
130
  ### Sessions
131
131
 
@@ -148,7 +148,7 @@ This routing remains configurable through the ordinary action bindings. For exam
148
148
  |--------|---------|-------------|
149
149
  | `app.model.select` | `ctrl+l` | Open model selector |
150
150
  | `app.model.cycleForward` | `ctrl+p` | Cycle to next model |
151
- | `app.model.cycleBackward` | `shift+ctrl+p` | Cycle to previous model |
151
+ | `app.model.cycleBackward` | `shift+ctrl+p` (`alt+p` on Windows and WSL) | Cycle to previous model |
152
152
  | `app.thinking.cycle` | `shift+tab` | Cycle thinking level |
153
153
  | `app.thinking.toggle` | `ctrl+t` | Collapse or expand thinking blocks |
154
154
 
@@ -158,8 +158,8 @@ This routing remains configurable through the ordinary action bindings. For exam
158
158
  |--------|---------|-------------|
159
159
  | `app.tools.expand` | `ctrl+o` | Collapse or expand tool output |
160
160
  | `app.message.copy` | `ctrl+x` | Copy the last assistant message, or the selected message in `/tree` |
161
- | `app.message.followUp` | `alt+enter` | Queue follow-up message |
162
- | `app.message.dequeue` | `alt+up` | Restore queued messages to editor |
161
+ | `app.message.followUp` | `alt+enter` (`ctrl+q` on Windows and WSL) | Queue follow-up message |
162
+ | `app.message.dequeue` | `alt+up` (`alt+q` on Windows and WSL) | Restore queued messages to editor |
163
163
 
164
164
  ### Tree Navigation
165
165
 
@@ -53,6 +53,8 @@ Start Pi and configure the provider:
53
53
 
54
54
  Enter the router URL and optional API key. The default URL is `http://127.0.0.1:8080`.
55
55
 
56
+ If you start the router with `--no-models-autoload`, `/login llama.cpp` only stores the connection. Run `/llama` to load a model, then `/model` to select the loaded model for the current session.
57
+
56
58
  Environment variables can configure the same values without `/login`:
57
59
 
58
60
  ```bash
@@ -254,6 +254,8 @@ Current behavior:
254
254
 
255
255
  Only OpenAI-compatible APIs apply it (`openai-completions`, `openai-responses`, `azure-openai-responses`); other APIs ignore it. Keys override pi's named request fields (for example a `temperature` key here beats the request-level temperature), so prefer it as the single source of sampling truth for a model. In `modelOverrides`, `samplingParams` merges per key with the base model's value.
256
256
 
257
+ A constant thinking-token cap can go here too, but it will not follow `thinkingBudgets` or leave room for the answer. Prefer `compat.thinkingTokenBudgetField` (or the `supportsThinkingTokenBudget` alias) for that.
258
+
257
259
  ### Thinking Level Map
258
260
 
259
261
  Use `thinkingLevelMap` on a model to describe model-specific thinking controls. Keys are pi thinking levels: `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`. Maps may contain holes; for example, a model can expose `high` and `max` without exposing `xhigh`.
@@ -467,8 +469,10 @@ For providers with partial OpenAI compatibility, use the `compat` field.
467
469
  | `requiresThinkingAsText` | Convert thinking blocks to plain text |
468
470
  | `requiresReasoningContentOnAssistantMessages` | Include empty `reasoning_content` on all replayed assistant messages when reasoning is enabled |
469
471
  | `thinkingFormat` | Use `reasoning_effort`, `openrouter`, `deepseek`, `together`, `baseten`, `zai`, `qwen`, `chat-template`, or `qwen-chat-template` thinking parameters |
470
- | `chatTemplateKwargs` | `chat_template_kwargs` values for `thinkingFormat: "chat-template"`; use `{ "$var": "thinking.enabled" }` or `{ "$var": "thinking.effort" }` for pi-controlled thinking values |
471
- | `chatTemplateArgs` | `chat_template_args` values for `thinkingFormat: "baseten"`; use `{ "$var": "thinking.enabled" }` or `{ "$var": "thinking.effort" }` for pi-controlled thinking values |
472
+ | `chatTemplateKwargs` | `chat_template_kwargs` values for `thinkingFormat: "chat-template"`; use `{ "$var": "thinking.enabled" }`, `{ "$var": "thinking.effort" }`, or `{ "$var": "thinking.budget" }` for pi-controlled thinking values |
473
+ | `chatTemplateArgs` | `chat_template_args` values for `thinkingFormat: "baseten"`; use `{ "$var": "thinking.enabled" }`, `{ "$var": "thinking.effort" }`, or `{ "$var": "thinking.budget" }` for pi-controlled thinking values |
474
+ | `thinkingTokenBudgetField` | Top-level request field used to cap reasoning tokens from `thinkingBudgets`, clamped so at least 1024 tokens remain for the answer. `"thinking_token_budget"` (vLLM), `"thinking_budget"` (Qwen/DashScope/SGLang), `"thinking_budget_tokens"` (llama.cpp). Off by default; not set on the generated catalog. |
475
+ | `supportsThinkingTokenBudget` | Alias for `thinkingTokenBudgetField: "thinking_token_budget"` (vLLM). Prefer `thinkingTokenBudgetField`. Default: `false`. |
472
476
  | `cacheControlFormat` | Use Anthropic-style `cache_control` markers on the system prompt, last tool definition, and last user, assistant, or tool-result text content. Currently only `anthropic` is supported. |
473
477
  | `sendSessionAffinityHeaders` | For `openai-completions`, send session-affinity headers from the session id when caching is enabled. Default: `false`. |
474
478
  | `sessionAffinityFormat` | For `openai-completions` and `openai-responses`, the session-affinity header format: `openai` sends `session_id`/`x-client-request-id` (completions also `x-session-affinity`), `openai-nosession` omits the underscore-containing `session_id` header, `openrouter` sends `x-session-id`. Does not affect the `prompt_cache_key` body param. Default: auto-detected. |
@@ -481,6 +485,8 @@ For providers with partial OpenAI compatibility, use the `compat` field.
481
485
 
482
486
  `openrouter` uses `reasoning: { effort }`. `together` uses `reasoning: { enabled }` and also `reasoning_effort` when `supportsReasoningEffort` is enabled. `qwen` uses top-level `enable_thinking`. Use `qwen-chat-template` for local Qwen-compatible servers that require `chat_template_kwargs.enable_thinking` and `preserve_thinking`. Use `chat-template` for vLLM/Hugging Face chat templates that need configurable `chat_template_kwargs`, such as `chatTemplateKwargs: { "thinking": { "$var": "thinking.enabled" } }` for DeepSeek V3.x templates. Use `thinkingFormat: "baseten"` with `chatTemplateArgs` for providers that expose toggle controls through `chat_template_args` and optionally support top-level `reasoning_effort`.
483
487
 
488
+ `thinkingTokenBudgetField` is independent of `thinkingFormat`. Do not enable it on the generated Qwen catalog: those models already send `reasoning_effort`, and DashScope rejects `thinking_budget` together with `reasoning_effort`.
489
+
484
490
  `cacheControlFormat: "anthropic"` is for OpenAI-compatible providers that expose Anthropic-style prompt caching through `cache_control` markers on text content and tool definitions.
485
491
 
486
492
  Example:
@@ -38,7 +38,7 @@ pi update npm:@foo/bar # update one package
38
38
  pi update --extension npm:@foo/bar
39
39
  ```
40
40
 
41
- These commands manage pi packages and `pi update` can update the pi CLI installation. To uninstall pi itself, see [Quickstart](quickstart.md#uninstall).
41
+ These commands manage pi packages and `pi update` can update the pi CLI installation. For experimental installer-managed installations, `pi update` installs the exact checked version into a staged, lockfile-backed release and activates it only after verification, leaving the current release intact if the update fails. Managed installations do not support `--force`; rerun the installer to repair one. To uninstall pi itself, see [Quickstart](quickstart.md#uninstall).
42
42
 
43
43
  By default, `install` and `remove` write to user settings (`~/.pi/agent/settings.json`). Use `-l` to write to project settings (`.pi/settings.json`) instead. Project settings can be shared with your team, and pi installs any missing packages automatically on startup after the project is trusted.
44
44
 
@@ -130,7 +130,7 @@ Add a `pi` manifest to `package.json` or use conventional directories. Include t
130
130
  }
131
131
  ```
132
132
 
133
- Paths are relative to the package root. Arrays support glob patterns and `!exclusions`.
133
+ Paths are relative to the package root. Arrays support glob patterns and `!exclusions`. Positive manifest globs discover visible paths in lexical order. List dot-prefixed paths directly. If a glob would need to continue through a symlink, list the symlinked resource root directly.
134
134
 
135
135
  ### Gallery Metadata
136
136
 
@@ -945,7 +945,7 @@ The `assistantMessageEvent` field contains one of these delta types:
945
945
  | `thinking_start` | Thinking block started |
946
946
  | `thinking_delta` | Thinking content chunk |
947
947
  | `thinking_end` | Thinking block ended |
948
- | `toolcall_start` | Tool call started |
948
+ | `toolcall_start` | Tool call started (includes `id` and `toolName`) |
949
949
  | `toolcall_delta` | Tool call arguments chunk |
950
950
  | `toolcall_end` | Tool call ended (includes full `toolCall` object) |
951
951
 
@@ -960,11 +960,17 @@ Example streaming a text response:
960
960
  The top-level `usage` field contains the latest cumulative provider-reported usage. It may remain
961
961
  zero until completion when a provider does not report usage during streaming.
962
962
 
963
+ Example starting a tool call:
964
+ ```json
965
+ {"type":"message_update","usage":{...},"assistantMessageEvent":{"type":"toolcall_start","contentIndex":1,"id":"call_abc123","toolName":"write"}}
966
+ ```
967
+
963
968
  `message_update` intentionally omits the former cumulative `message` field and
964
969
  `assistantMessageEvent.partial`. Clients that need a live partial message must assemble it
965
970
  from `message_start` and subsequent events using `contentIndex`. Treat `message_end.message`
966
- as authoritative. For tool calls, buffer `toolcall_delta.delta`; `toolcall_end.toolCall`
967
- contains the completed call.
971
+ as authoritative. For tool calls, `toolcall_start` provides the call `id` and `toolName`;
972
+ buffer `toolcall_delta.delta` for arguments. `toolcall_end.toolCall` contains the completed
973
+ call.
968
974
 
969
975
  ### bash_execution_update
970
976