@daniel156161/prism 0.2.76 → 0.2.81

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 (2431) hide show
  1. package/dist/pi/pi-env.d.ts +1 -1
  2. package/dist/pi/pi-env.js +1 -1
  3. package/dist/pi/pi-patch-extension-loader.js +2 -0
  4. package/dist/pi/pi-patch-extension-loader.js.map +1 -1
  5. package/dist/pi/pi-patch-interactive.js +8 -5
  6. package/dist/pi/pi-patch-interactive.js.map +1 -1
  7. package/dist/prism-extensions/integrations/ai-memory-errors.d.ts +16 -0
  8. package/dist/prism-extensions/integrations/ai-memory-errors.js +52 -0
  9. package/dist/prism-extensions/integrations/ai-memory-errors.js.map +1 -0
  10. package/dist/prism-extensions/integrations/ai-memory-system.d.ts +3 -0
  11. package/dist/prism-extensions/integrations/ai-memory-system.js +335 -7
  12. package/dist/prism-extensions/integrations/ai-memory-system.js.map +1 -1
  13. package/dist/prism-extensions/integrations/research-tools.js +5 -2
  14. package/dist/prism-extensions/integrations/research-tools.js.map +1 -1
  15. package/dist/prism-extensions/integrations/youtube.d.ts +32 -0
  16. package/dist/prism-extensions/integrations/youtube.js +250 -0
  17. package/dist/prism-extensions/integrations/youtube.js.map +1 -0
  18. package/node_modules/@earendil-works/pi-agent-core/README.md +13 -7
  19. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  20. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +5 -1
  21. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  22. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts +3 -1
  23. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts.map +1 -1
  24. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js +9 -0
  25. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js.map +1 -1
  26. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.d.ts +452 -85
  27. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.d.ts.map +1 -1
  28. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.js +204 -917
  29. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.js.map +1 -1
  30. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.d.ts +13 -6
  31. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.d.ts.map +1 -1
  32. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.js +11 -15
  33. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.js.map +1 -1
  34. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts +14 -17
  35. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -1
  36. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +23 -36
  37. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js.map +1 -1
  38. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts +1 -0
  39. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts.map +1 -1
  40. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js +23 -7
  41. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js.map +1 -1
  42. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts +3 -3
  43. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts.map +1 -1
  44. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.js +3 -3
  45. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.js.map +1 -1
  46. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.d.ts.map +1 -1
  47. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.js +4 -9
  48. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.js.map +1 -1
  49. package/node_modules/@earendil-works/pi-agent-core/dist/harness/reducer.d.ts +100 -0
  50. package/node_modules/@earendil-works/pi-agent-core/dist/harness/reducer.d.ts.map +1 -0
  51. package/node_modules/@earendil-works/pi-agent-core/dist/harness/reducer.js +415 -0
  52. package/node_modules/@earendil-works/pi-agent-core/dist/harness/reducer.js.map +1 -0
  53. package/node_modules/@earendil-works/pi-agent-core/dist/harness/result.d.ts +40 -0
  54. package/node_modules/@earendil-works/pi-agent-core/dist/harness/result.d.ts.map +1 -0
  55. package/node_modules/@earendil-works/pi-agent-core/dist/harness/result.js +41 -0
  56. package/node_modules/@earendil-works/pi-agent-core/dist/harness/result.js.map +1 -0
  57. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/context.d.ts +22 -0
  58. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/context.d.ts.map +1 -0
  59. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/context.js +67 -0
  60. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/context.js.map +1 -0
  61. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/index.d.ts +7 -0
  62. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/index.d.ts.map +1 -0
  63. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/index.js +6 -0
  64. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/index.js.map +1 -0
  65. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/codec.d.ts +8 -0
  66. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/codec.d.ts.map +1 -0
  67. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/codec.js +190 -0
  68. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/codec.js.map +1 -0
  69. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/errors.d.ts +5 -0
  70. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/errors.d.ts.map +1 -0
  71. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/errors.js +11 -0
  72. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/errors.js.map +1 -0
  73. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/repo.d.ts +23 -0
  74. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/repo.d.ts.map +1 -0
  75. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/repo.js +132 -0
  76. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/repo.js.map +1 -0
  77. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/storage.d.ts +43 -0
  78. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/storage.d.ts.map +1 -0
  79. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/storage.js +208 -0
  80. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/storage.js.map +1 -0
  81. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/types.d.ts +38 -0
  82. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/types.d.ts.map +1 -0
  83. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/types.js +2 -0
  84. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl/types.js.map +1 -0
  85. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl.d.ts +3 -0
  86. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl.d.ts.map +1 -0
  87. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl.js +2 -0
  88. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl.js.map +1 -0
  89. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory.d.ts +44 -0
  90. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory.d.ts.map +1 -0
  91. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory.js +141 -0
  92. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory.js.map +1 -0
  93. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/search.d.ts +19 -0
  94. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/search.d.ts.map +1 -0
  95. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/search.js +42 -0
  96. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/search.js.map +1 -0
  97. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.d.ts +43 -42
  98. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.d.ts.map +1 -1
  99. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.js +187 -228
  100. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.js.map +1 -1
  101. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/state.d.ts +65 -0
  102. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/state.d.ts.map +1 -0
  103. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/state.js +319 -0
  104. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/state.js.map +1 -0
  105. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/conformance.d.ts +4 -0
  106. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/conformance.d.ts.map +1 -0
  107. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/conformance.js +743 -0
  108. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/conformance.js.map +1 -0
  109. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/index.d.ts +3 -0
  110. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/index.d.ts.map +1 -0
  111. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/index.js +2 -0
  112. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/index.js.map +1 -0
  113. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/types.d.ts +14 -0
  114. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/types.d.ts.map +1 -0
  115. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/types.js +2 -0
  116. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/testing/types.js.map +1 -0
  117. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/types.d.ts +333 -0
  118. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/types.d.ts.map +1 -0
  119. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/types.js +10 -0
  120. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/types.js.map +1 -0
  121. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
  122. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js +21 -19
  123. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
  124. package/node_modules/@earendil-works/pi-agent-core/dist/harness/telemetry.d.ts +1221 -0
  125. package/node_modules/@earendil-works/pi-agent-core/dist/harness/telemetry.d.ts.map +1 -0
  126. package/node_modules/@earendil-works/pi-agent-core/dist/harness/telemetry.js +508 -0
  127. package/node_modules/@earendil-works/pi-agent-core/dist/harness/telemetry.js.map +1 -0
  128. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts +6 -459
  129. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts.map +1 -1
  130. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js +0 -19
  131. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js.map +1 -1
  132. package/node_modules/@earendil-works/pi-agent-core/dist/index.d.ts +10 -9
  133. package/node_modules/@earendil-works/pi-agent-core/dist/index.d.ts.map +1 -1
  134. package/node_modules/@earendil-works/pi-agent-core/dist/index.js +7 -8
  135. package/node_modules/@earendil-works/pi-agent-core/dist/index.js.map +1 -1
  136. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts +1 -1
  137. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts.map +1 -1
  138. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js +1 -0
  139. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js.map +1 -1
  140. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +6 -0
  141. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
  142. package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
  143. package/node_modules/@earendil-works/pi-agent-core/package.json +9 -2
  144. package/node_modules/@earendil-works/pi-ai/README.md +24 -8
  145. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  146. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +3 -3
  147. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  148. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
  149. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +5 -1
  150. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
  151. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  152. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +48 -0
  153. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
  154. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts.map +1 -1
  155. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +2 -2
  156. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js.map +1 -1
  157. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts +11 -1
  158. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts.map +1 -1
  159. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +44 -7
  160. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js.map +1 -1
  161. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts.map +1 -1
  162. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +2 -2
  163. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js.map +1 -1
  164. package/node_modules/@earendil-works/pi-ai/dist/api/lazy.d.ts +5 -1
  165. package/node_modules/@earendil-works/pi-ai/dist/api/lazy.d.ts.map +1 -1
  166. package/node_modules/@earendil-works/pi-ai/dist/api/lazy.js +19 -7
  167. package/node_modules/@earendil-works/pi-ai/dist/api/lazy.js.map +1 -1
  168. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
  169. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +39 -19
  170. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
  171. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +5 -2
  172. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  173. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +57 -8
  174. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  175. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.d.ts.map +1 -1
  176. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js +22 -9
  177. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js.map +1 -1
  178. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
  179. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +5 -1
  180. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
  181. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +2 -0
  182. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
  183. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +8 -2
  184. package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
  185. package/node_modules/@earendil-works/pi-ai/dist/auth/credential-store.d.ts +6 -6
  186. package/node_modules/@earendil-works/pi-ai/dist/auth/credential-store.d.ts.map +1 -1
  187. package/node_modules/@earendil-works/pi-ai/dist/auth/credential-store.js +22 -11
  188. package/node_modules/@earendil-works/pi-ai/dist/auth/credential-store.js.map +1 -1
  189. package/node_modules/@earendil-works/pi-ai/dist/auth/helpers.d.ts +1 -0
  190. package/node_modules/@earendil-works/pi-ai/dist/auth/helpers.d.ts.map +1 -1
  191. package/node_modules/@earendil-works/pi-ai/dist/auth/helpers.js +7 -2
  192. package/node_modules/@earendil-works/pi-ai/dist/auth/helpers.js.map +1 -1
  193. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/anthropic.d.ts.map +1 -1
  194. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/anthropic.js +14 -8
  195. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/anthropic.js.map +1 -1
  196. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts +1 -1
  197. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts.map +1 -1
  198. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js +4 -4
  199. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js.map +1 -1
  200. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.d.ts.map +1 -1
  201. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js +43 -30
  202. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js.map +1 -1
  203. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.d.ts.map +1 -1
  204. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js +17 -5
  205. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/kimi-coding.js.map +1 -1
  206. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openai-codex.d.ts.map +1 -1
  207. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openai-codex.js +12 -5
  208. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openai-codex.js.map +1 -1
  209. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openrouter.d.ts.map +1 -1
  210. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openrouter.js +10 -10
  211. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openrouter.js.map +1 -1
  212. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/radius.d.ts.map +1 -1
  213. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/radius.js +8 -7
  214. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/radius.js.map +1 -1
  215. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/xai.d.ts.map +1 -1
  216. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/xai.js +3 -2
  217. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/xai.js.map +1 -1
  218. package/node_modules/@earendil-works/pi-ai/dist/auth/resolve.d.ts +1 -0
  219. package/node_modules/@earendil-works/pi-ai/dist/auth/resolve.d.ts.map +1 -1
  220. package/node_modules/@earendil-works/pi-ai/dist/auth/resolve.js +24 -13
  221. package/node_modules/@earendil-works/pi-ai/dist/auth/resolve.js.map +1 -1
  222. package/node_modules/@earendil-works/pi-ai/dist/auth/types.d.ts +20 -8
  223. package/node_modules/@earendil-works/pi-ai/dist/auth/types.d.ts.map +1 -1
  224. package/node_modules/@earendil-works/pi-ai/dist/auth/types.js.map +1 -1
  225. package/node_modules/@earendil-works/pi-ai/dist/cli.d.ts.map +1 -1
  226. package/node_modules/@earendil-works/pi-ai/dist/cli.js +1 -0
  227. package/node_modules/@earendil-works/pi-ai/dist/cli.js.map +1 -1
  228. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts.map +1 -1
  229. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js +2 -0
  230. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js.map +1 -1
  231. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +30 -0
  232. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
  233. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +32 -2
  234. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  235. package/node_modules/@earendil-works/pi-ai/dist/images-models.d.ts.map +1 -1
  236. package/node_modules/@earendil-works/pi-ai/dist/images-models.js +1 -0
  237. package/node_modules/@earendil-works/pi-ai/dist/images-models.js.map +1 -1
  238. package/node_modules/@earendil-works/pi-ai/dist/models-store.d.ts +9 -12
  239. package/node_modules/@earendil-works/pi-ai/dist/models-store.d.ts.map +1 -1
  240. package/node_modules/@earendil-works/pi-ai/dist/models-store.js +6 -3
  241. package/node_modules/@earendil-works/pi-ai/dist/models-store.js.map +1 -1
  242. package/node_modules/@earendil-works/pi-ai/dist/models.d.ts +40 -18
  243. package/node_modules/@earendil-works/pi-ai/dist/models.d.ts.map +1 -1
  244. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +4 -0
  245. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  246. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +4 -0
  247. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js.map +1 -1
  248. package/node_modules/@earendil-works/pi-ai/dist/models.js +245 -89
  249. package/node_modules/@earendil-works/pi-ai/dist/models.js.map +1 -1
  250. package/node_modules/@earendil-works/pi-ai/dist/providers/all.d.ts.map +1 -1
  251. package/node_modules/@earendil-works/pi-ai/dist/providers/all.js +4 -0
  252. package/node_modules/@earendil-works/pi-ai/dist/providers/all.js.map +1 -1
  253. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -1
  254. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +15 -7
  255. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js.map +1 -1
  256. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts.map +1 -1
  257. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +15 -6
  258. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js.map +1 -1
  259. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.d.ts +3 -0
  260. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.d.ts.map +1 -0
  261. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.js +15 -0
  262. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.js.map +1 -0
  263. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.models.d.ts +4 -0
  264. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.models.d.ts.map +1 -0
  265. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.models.js +6 -0
  266. package/node_modules/@earendil-works/pi-ai/dist/providers/baseten.models.js.map +1 -0
  267. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.d.ts.map +1 -1
  268. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.js +15 -10
  269. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.js.map +1 -1
  270. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  271. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
  272. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
  273. package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -1
  274. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -0
  275. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  276. package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -1
  277. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
  278. package/node_modules/@earendil-works/pi-ai/dist/providers/data/groq.json +1 -1
  279. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  280. package/node_modules/@earendil-works/pi-ai/dist/providers/data/mistral.json +1 -1
  281. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
  282. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
  283. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  284. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
  285. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  286. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
  287. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-individual.json +1 -0
  288. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan.json +1 -1
  289. package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -1
  290. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  291. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
  292. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
  293. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.d.ts +18 -13
  294. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.d.ts.map +1 -1
  295. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.js +95 -5
  296. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.js.map +1 -1
  297. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.d.ts.map +1 -1
  298. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.js +1 -1
  299. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.js.map +1 -1
  300. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.d.ts.map +1 -1
  301. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.js +15 -7
  302. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.js.map +1 -1
  303. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.d.ts.map +1 -1
  304. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.js +1 -0
  305. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.js.map +1 -1
  306. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.d.ts.map +1 -1
  307. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.js +5 -1
  308. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.js.map +1 -1
  309. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.d.ts.map +1 -1
  310. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.js +1 -1
  311. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.js.map +1 -1
  312. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.d.ts +3 -0
  313. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.d.ts.map +1 -0
  314. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.js +15 -0
  315. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.js.map +1 -0
  316. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.models.d.ts +4 -0
  317. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.models.d.ts.map +1 -0
  318. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.models.js +6 -0
  319. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-individual.models.js.map +1 -0
  320. package/node_modules/@earendil-works/pi-ai/dist/providers/radius.d.ts.map +1 -1
  321. package/node_modules/@earendil-works/pi-ai/dist/providers/radius.js +36 -26
  322. package/node_modules/@earendil-works/pi-ai/dist/providers/radius.js.map +1 -1
  323. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts.map +1 -1
  324. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js +1 -0
  325. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js.map +1 -1
  326. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +96 -80
  327. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  328. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  329. package/node_modules/@earendil-works/pi-ai/dist/utils/abort.d.ts +8 -0
  330. package/node_modules/@earendil-works/pi-ai/dist/utils/abort.d.ts.map +1 -0
  331. package/node_modules/@earendil-works/pi-ai/dist/utils/abort.js +49 -0
  332. package/node_modules/@earendil-works/pi-ai/dist/utils/abort.js.map +1 -0
  333. package/node_modules/@earendil-works/pi-ai/dist/utils/error-body.d.ts.map +1 -1
  334. package/node_modules/@earendil-works/pi-ai/dist/utils/error-body.js +23 -4
  335. package/node_modules/@earendil-works/pi-ai/dist/utils/error-body.js.map +1 -1
  336. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +10 -1
  337. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  338. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +12 -1
  339. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  340. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.d.ts.map +1 -1
  341. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.js +6 -0
  342. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.js.map +1 -1
  343. package/node_modules/@earendil-works/pi-ai/package.json +2 -1
  344. package/node_modules/@earendil-works/pi-client/CHANGELOG.md +13 -0
  345. package/node_modules/@earendil-works/pi-client/README.md +63 -0
  346. package/node_modules/@earendil-works/pi-client/dist/client.d.ts +25 -0
  347. package/node_modules/@earendil-works/pi-client/dist/client.d.ts.map +1 -0
  348. package/node_modules/@earendil-works/pi-client/dist/client.js +385 -0
  349. package/node_modules/@earendil-works/pi-client/dist/client.js.map +1 -0
  350. package/node_modules/@earendil-works/pi-client/dist/connection.d.ts +24 -0
  351. package/node_modules/@earendil-works/pi-client/dist/connection.d.ts.map +1 -0
  352. package/node_modules/@earendil-works/pi-client/dist/connection.js +204 -0
  353. package/node_modules/@earendil-works/pi-client/dist/connection.js.map +1 -0
  354. package/node_modules/@earendil-works/pi-client/dist/errors.d.ts +23 -0
  355. package/node_modules/@earendil-works/pi-client/dist/errors.d.ts.map +1 -0
  356. package/node_modules/@earendil-works/pi-client/dist/errors.js +46 -0
  357. package/node_modules/@earendil-works/pi-client/dist/errors.js.map +1 -0
  358. package/node_modules/@earendil-works/pi-client/dist/index.d.ts +6 -0
  359. package/node_modules/@earendil-works/pi-client/dist/index.d.ts.map +1 -0
  360. package/node_modules/@earendil-works/pi-client/dist/index.js +3 -0
  361. package/node_modules/@earendil-works/pi-client/dist/index.js.map +1 -0
  362. package/node_modules/@earendil-works/pi-client/dist/promise.d.ts +8 -0
  363. package/node_modules/@earendil-works/pi-client/dist/promise.d.ts.map +1 -0
  364. package/node_modules/@earendil-works/pi-client/dist/promise.js +11 -0
  365. package/node_modules/@earendil-works/pi-client/dist/promise.js.map +1 -0
  366. package/node_modules/@earendil-works/pi-client/dist/session-handle.d.ts +54 -0
  367. package/node_modules/@earendil-works/pi-client/dist/session-handle.d.ts.map +1 -0
  368. package/node_modules/@earendil-works/pi-client/dist/session-handle.js +51 -0
  369. package/node_modules/@earendil-works/pi-client/dist/session-handle.js.map +1 -0
  370. package/node_modules/@earendil-works/pi-client/dist/state.d.ts +22 -0
  371. package/node_modules/@earendil-works/pi-client/dist/state.d.ts.map +1 -0
  372. package/node_modules/@earendil-works/pi-client/dist/state.js +145 -0
  373. package/node_modules/@earendil-works/pi-client/dist/state.js.map +1 -0
  374. package/node_modules/@earendil-works/pi-client/dist/transport.d.ts +17 -0
  375. package/node_modules/@earendil-works/pi-client/dist/transport.d.ts.map +1 -0
  376. package/node_modules/@earendil-works/pi-client/dist/transport.js +2 -0
  377. package/node_modules/@earendil-works/pi-client/dist/transport.js.map +1 -0
  378. package/node_modules/@earendil-works/pi-client/dist/types.d.ts +22 -0
  379. package/node_modules/@earendil-works/pi-client/dist/types.d.ts.map +1 -0
  380. package/node_modules/@earendil-works/pi-client/dist/types.js +2 -0
  381. package/node_modules/@earendil-works/pi-client/dist/types.js.map +1 -0
  382. package/node_modules/@earendil-works/pi-client/dist/unix.d.ts +8 -0
  383. package/node_modules/@earendil-works/pi-client/dist/unix.d.ts.map +1 -0
  384. package/node_modules/@earendil-works/pi-client/dist/unix.js +151 -0
  385. package/node_modules/@earendil-works/pi-client/dist/unix.js.map +1 -0
  386. package/node_modules/@earendil-works/pi-client/package.json +56 -0
  387. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +227 -0
  388. package/node_modules/@earendil-works/pi-coding-agent/README.md +5 -0
  389. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +2 -0
  390. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
  391. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +22 -3
  392. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
  393. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-check.d.ts +19 -0
  394. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-check.d.ts.map +1 -0
  395. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-check.js +50 -0
  396. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-check.js.map +1 -0
  397. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-command.d.ts +24 -0
  398. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-command.d.ts.map +1 -0
  399. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-command.js +102 -0
  400. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/auth-command.js.map +1 -0
  401. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.d.ts.map +1 -1
  402. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.js +2 -2
  403. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.js.map +1 -1
  404. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/credential-print.d.ts +5 -15
  405. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/credential-print.d.ts.map +1 -1
  406. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/credential-print.js +42 -82
  407. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/credential-print.js.map +1 -1
  408. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/auth.d.ts +16 -0
  409. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/auth.d.ts.map +1 -0
  410. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/auth.js +13 -0
  411. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/auth.js.map +1 -0
  412. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/cli.d.ts +6 -0
  413. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/cli.d.ts.map +1 -0
  414. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/cli.js +5 -0
  415. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/cli.js.map +1 -0
  416. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command-options.d.ts +17 -0
  417. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command-options.d.ts.map +1 -0
  418. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command-options.js +35 -0
  419. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command-options.js.map +1 -0
  420. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command.d.ts +63 -0
  421. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command.d.ts.map +1 -0
  422. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command.js +130 -0
  423. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/command.js.map +1 -0
  424. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/client.d.ts +13 -0
  425. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/client.d.ts.map +1 -0
  426. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/client.js +25 -0
  427. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/client.js.map +1 -0
  428. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/pi.d.ts +15 -0
  429. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/pi.d.ts.map +1 -0
  430. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/pi.js +28 -0
  431. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/pi.js.map +1 -0
  432. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/server.d.ts +13 -0
  433. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/server.d.ts.map +1 -0
  434. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/server.js +25 -0
  435. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/commands/server.js.map +1 -0
  436. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/transport-address.d.ts +10 -0
  437. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/transport-address.d.ts.map +1 -0
  438. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/transport-address.js +38 -0
  439. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/experimental/transport-address.js.map +1 -0
  440. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.d.ts +1 -1
  441. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.d.ts.map +1 -1
  442. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.js +2 -2
  443. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.js.map +1 -1
  444. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts +1 -1
  445. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts.map +1 -1
  446. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js +2 -2
  447. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js.map +1 -1
  448. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.d.ts.map +1 -1
  449. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.js +1 -0
  450. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.js.map +1 -1
  451. package/node_modules/@earendil-works/pi-coding-agent/dist/client/index.d.ts +3 -0
  452. package/node_modules/@earendil-works/pi-coding-agent/dist/client/index.d.ts.map +1 -0
  453. package/node_modules/@earendil-works/pi-coding-agent/dist/client/index.js +3 -0
  454. package/node_modules/@earendil-works/pi-coding-agent/dist/client/index.js.map +1 -0
  455. package/node_modules/@earendil-works/pi-coding-agent/dist/client/remote-session.d.ts +53 -0
  456. package/node_modules/@earendil-works/pi-coding-agent/dist/client/remote-session.d.ts.map +1 -0
  457. package/node_modules/@earendil-works/pi-coding-agent/dist/client/remote-session.js +340 -0
  458. package/node_modules/@earendil-works/pi-coding-agent/dist/client/remote-session.js.map +1 -0
  459. package/node_modules/@earendil-works/pi-coding-agent/dist/client/transcript.d.ts +12 -0
  460. package/node_modules/@earendil-works/pi-coding-agent/dist/client/transcript.d.ts.map +1 -0
  461. package/node_modules/@earendil-works/pi-coding-agent/dist/client/transcript.js +98 -0
  462. package/node_modules/@earendil-works/pi-coding-agent/dist/client/transcript.js.map +1 -0
  463. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts +1 -0
  464. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts.map +1 -1
  465. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js +1 -0
  466. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js.map +1 -1
  467. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +1 -10
  468. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  469. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +72 -70
  470. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  471. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts +25 -9
  472. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
  473. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +237 -39
  474. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
  475. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +1 -1
  476. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
  477. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
  478. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
  479. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +43 -20
  480. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
  481. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts +2 -1
  482. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
  483. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js +3 -0
  484. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
  485. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +26 -3
  486. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
  487. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
  488. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.d.ts.map +1 -1
  489. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.js +5 -0
  490. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.js.map +1 -1
  491. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts +44 -4
  492. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -1
  493. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts +29 -5
  494. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.d.ts.map +1 -1
  495. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js +4 -0
  496. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js.map +1 -1
  497. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.d.ts +5 -3
  498. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.d.ts.map +1 -1
  499. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js +13 -10
  500. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js.map +1 -1
  501. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +4 -3
  502. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
  503. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +42 -10
  504. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
  505. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-runtime.d.ts +30 -13
  506. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-runtime.d.ts.map +1 -1
  507. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-runtime.js +233 -73
  508. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-runtime.js.map +1 -1
  509. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.d.ts +12 -7
  510. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.d.ts.map +1 -1
  511. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js +83 -14
  512. package/node_modules/@earendil-works/pi-coding-agent/dist/core/models-store.js.map +1 -1
  513. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts +4 -1
  514. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  515. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +63 -36
  516. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  517. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.d.ts +8 -0
  518. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.d.ts.map +1 -0
  519. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js +25 -0
  520. package/node_modules/@earendil-works/pi-coding-agent/dist/core/pi-manifest.js.map +1 -0
  521. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-composer.d.ts +4 -1
  522. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-composer.d.ts.map +1 -1
  523. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-composer.js +36 -15
  524. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-composer.js.map +1 -1
  525. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.d.ts.map +1 -1
  526. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js +73 -67
  527. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js.map +1 -1
  528. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
  529. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +2 -2
  530. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
  531. package/node_modules/@earendil-works/pi-coding-agent/dist/core/runtime-credentials.d.ts +5 -5
  532. package/node_modules/@earendil-works/pi-coding-agent/dist/core/runtime-credentials.d.ts.map +1 -1
  533. package/node_modules/@earendil-works/pi-coding-agent/dist/core/runtime-credentials.js +11 -8
  534. package/node_modules/@earendil-works/pi-coding-agent/dist/core/runtime-credentials.js.map +1 -1
  535. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +267 -0
  536. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
  537. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +24 -10
  538. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
  539. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +12 -0
  540. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
  541. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +40 -16
  542. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  543. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts +4 -0
  544. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  545. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +6 -4
  546. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  547. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts +4 -0
  548. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
  549. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +11 -7
  550. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
  551. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts +7 -0
  552. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts.map +1 -1
  553. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js +16 -19
  554. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js.map +1 -1
  555. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts +4 -0
  556. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts.map +1 -1
  557. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js +5 -1
  558. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js.map +1 -1
  559. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts +4 -0
  560. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts.map +1 -1
  561. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js +5 -1
  562. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js.map +1 -1
  563. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts +4 -0
  564. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts.map +1 -1
  565. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js +7 -3
  566. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js.map +1 -1
  567. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts +4 -0
  568. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts.map +1 -1
  569. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js +6 -2
  570. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js.map +1 -1
  571. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.d.ts.map +1 -1
  572. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js +11 -2
  573. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/index.js.map +1 -1
  574. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.d.ts.map +1 -1
  575. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js +21 -7
  576. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js.map +1 -1
  577. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +4 -4
  578. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
  579. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +1 -1
  580. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
  581. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
  582. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +70 -25
  583. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
  584. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts +1 -0
  585. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts.map +1 -1
  586. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.js.map +1 -1
  587. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.d.ts +5 -2
  588. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  589. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.js +13 -4
  590. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.js.map +1 -1
  591. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  592. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.js +7 -0
  593. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.js.map +1 -1
  594. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.d.ts.map +1 -1
  595. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js +1 -1
  596. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js.map +1 -1
  597. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/markdown-transform.d.ts +3 -0
  598. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -0
  599. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/markdown-transform.js +19 -0
  600. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/markdown-transform.js.map +1 -0
  601. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/mermaid.d.ts +11 -0
  602. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/mermaid.d.ts.map +1 -0
  603. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/mermaid.js +75 -0
  604. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/mermaid.js.map +1 -0
  605. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +1 -1
  606. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  607. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +16 -4
  608. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -1
  609. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.d.ts +4 -0
  610. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  611. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.js +26 -0
  612. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  613. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +8 -2
  614. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  615. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +30 -0
  616. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
  617. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.d.ts +3 -1
  618. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  619. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.js +9 -2
  620. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.js.map +1 -1
  621. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +36 -2
  622. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  623. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +435 -2477
  624. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
  625. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/dark.json +1 -0
  626. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/light.json +1 -0
  627. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme-controller.d.ts +3 -0
  628. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  629. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme-controller.js +10 -1
  630. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  631. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme-schema.json +5 -1
  632. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts +2 -2
  633. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  634. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +24 -6
  635. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -1
  636. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts +28 -0
  637. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.d.ts.map +1 -0
  638. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js +12 -0
  639. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/json-event.js.map +1 -0
  640. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.d.ts.map +1 -1
  641. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.js +12 -2
  642. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.js.map +1 -1
  643. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +5 -4
  644. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  645. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -1
  646. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  647. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +4 -3
  648. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
  649. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
  650. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +11 -9
  651. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
  652. package/node_modules/@earendil-works/pi-coding-agent/dist/rpc-entry.d.ts.map +1 -1
  653. package/node_modules/@earendil-works/pi-coding-agent/dist/rpc-entry.js +1 -0
  654. package/node_modules/@earendil-works/pi-coding-agent/dist/rpc-entry.js.map +1 -1
  655. package/node_modules/@earendil-works/pi-coding-agent/dist/server/create-harness.d.ts +26 -0
  656. package/node_modules/@earendil-works/pi-coding-agent/dist/server/create-harness.d.ts.map +1 -0
  657. package/node_modules/@earendil-works/pi-coding-agent/dist/server/create-harness.js +104 -0
  658. package/node_modules/@earendil-works/pi-coding-agent/dist/server/create-harness.js.map +1 -0
  659. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/abort.d.ts +5 -0
  660. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/abort.d.ts.map +1 -0
  661. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/abort.js +48 -0
  662. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/abort.js.map +1 -0
  663. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.d.ts +1 -1
  664. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.d.ts.map +1 -1
  665. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.js +22 -2
  666. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.js.map +1 -1
  667. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts +23 -0
  668. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.d.ts.map +1 -0
  669. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js +50 -0
  670. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/management-http.js.map +1 -0
  671. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.d.ts +3 -0
  672. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.d.ts.map +1 -1
  673. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.js +23 -1
  674. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.js.map +1 -1
  675. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tool-result-images.d.ts +19 -0
  676. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tool-result-images.d.ts.map +1 -0
  677. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tool-result-images.js +45 -0
  678. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tool-result-images.js.map +1 -0
  679. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tools-manager.d.ts.map +1 -1
  680. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tools-manager.js +4 -6
  681. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tools-manager.js.map +1 -1
  682. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.d.ts +4 -0
  683. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.d.ts.map +1 -1
  684. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.js +20 -2
  685. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.js.map +1 -1
  686. package/node_modules/@earendil-works/pi-coding-agent/docs/compaction.md +2 -2
  687. package/node_modules/@earendil-works/pi-coding-agent/docs/custom-provider.md +7 -5
  688. package/node_modules/@earendil-works/pi-coding-agent/docs/extensions.md +30 -5
  689. package/node_modules/@earendil-works/pi-coding-agent/docs/json.md +19 -14
  690. package/node_modules/@earendil-works/pi-coding-agent/docs/keybindings.md +46 -14
  691. package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +24 -3
  692. package/node_modules/@earendil-works/pi-coding-agent/docs/providers.md +9 -1
  693. package/node_modules/@earendil-works/pi-coding-agent/docs/quickstart.md +2 -0
  694. package/node_modules/@earendil-works/pi-coding-agent/docs/rpc.md +13 -11
  695. package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +21 -2
  696. package/node_modules/@earendil-works/pi-coding-agent/docs/security.md +1 -1
  697. package/node_modules/@earendil-works/pi-coding-agent/docs/settings.md +4 -1
  698. package/node_modules/@earendil-works/pi-coding-agent/docs/themes.md +5 -3
  699. package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +7 -0
  700. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-compaction.ts +1 -16
  701. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/index.ts +2 -1
  702. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  703. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
  704. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/index.ts +2 -1
  705. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  706. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/doom-overlay/wad-finder.ts +7 -3
  707. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package-lock.json +2 -2
  708. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package.json +1 -1
  709. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/handoff.ts +2 -11
  710. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/qna.ts +3 -7
  711. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package-lock.json +2 -2
  712. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
  713. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/summarize.ts +7 -18
  714. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package-lock.json +2 -2
  715. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
  716. package/node_modules/@earendil-works/pi-coding-agent/examples/rpc-extension-ui.ts +11 -2
  717. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/02-custom-model.ts +1 -2
  718. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/09-api-keys-and-oauth.ts +1 -1
  719. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/12-full-control.ts +1 -1
  720. package/node_modules/@earendil-works/pi-coding-agent/examples/sdk/README.md +1 -1
  721. package/node_modules/@earendil-works/pi-coding-agent/package.json +13 -6
  722. package/node_modules/@earendil-works/pi-protocol/README.md +69 -0
  723. package/node_modules/@earendil-works/pi-protocol/dist/cbor/decoder.d.ts +4 -0
  724. package/node_modules/@earendil-works/pi-protocol/dist/cbor/decoder.d.ts.map +1 -0
  725. package/node_modules/@earendil-works/pi-protocol/dist/cbor/decoder.js +165 -0
  726. package/node_modules/@earendil-works/pi-protocol/dist/cbor/decoder.js.map +1 -0
  727. package/node_modules/@earendil-works/pi-protocol/dist/cbor/encoder.d.ts +4 -0
  728. package/node_modules/@earendil-works/pi-protocol/dist/cbor/encoder.d.ts.map +1 -0
  729. package/node_modules/@earendil-works/pi-protocol/dist/cbor/encoder.js +201 -0
  730. package/node_modules/@earendil-works/pi-protocol/dist/cbor/encoder.js.map +1 -0
  731. package/node_modules/@earendil-works/pi-protocol/dist/cbor/index.d.ts +4 -0
  732. package/node_modules/@earendil-works/pi-protocol/dist/cbor/index.d.ts.map +1 -0
  733. package/node_modules/@earendil-works/pi-protocol/dist/cbor/index.js +4 -0
  734. package/node_modules/@earendil-works/pi-protocol/dist/cbor/index.js.map +1 -0
  735. package/node_modules/@earendil-works/pi-protocol/dist/cbor/options.d.ts +26 -0
  736. package/node_modules/@earendil-works/pi-protocol/dist/cbor/options.d.ts.map +1 -0
  737. package/node_modules/@earendil-works/pi-protocol/dist/cbor/options.js +29 -0
  738. package/node_modules/@earendil-works/pi-protocol/dist/cbor/options.js.map +1 -0
  739. package/node_modules/@earendil-works/pi-protocol/dist/codec.d.ts +29 -0
  740. package/node_modules/@earendil-works/pi-protocol/dist/codec.d.ts.map +1 -0
  741. package/node_modules/@earendil-works/pi-protocol/dist/codec.js +146 -0
  742. package/node_modules/@earendil-works/pi-protocol/dist/codec.js.map +1 -0
  743. package/node_modules/@earendil-works/pi-protocol/dist/framing.d.ts +29 -0
  744. package/node_modules/@earendil-works/pi-protocol/dist/framing.d.ts.map +1 -0
  745. package/node_modules/@earendil-works/pi-protocol/dist/framing.js +155 -0
  746. package/node_modules/@earendil-works/pi-protocol/dist/framing.js.map +1 -0
  747. package/node_modules/@earendil-works/pi-protocol/dist/index.d.ts +5 -0
  748. package/node_modules/@earendil-works/pi-protocol/dist/index.d.ts.map +1 -0
  749. package/node_modules/@earendil-works/pi-protocol/dist/index.js +5 -0
  750. package/node_modules/@earendil-works/pi-protocol/dist/index.js.map +1 -0
  751. package/node_modules/@earendil-works/pi-protocol/dist/schemas.d.ts +13739 -0
  752. package/node_modules/@earendil-works/pi-protocol/dist/schemas.d.ts.map +1 -0
  753. package/node_modules/@earendil-works/pi-protocol/dist/schemas.js +386 -0
  754. package/node_modules/@earendil-works/pi-protocol/dist/schemas.js.map +1 -0
  755. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/code.d.mts +12 -0
  756. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/code.mjs +65 -0
  757. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/compile.d.mts +6 -0
  758. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/compile.mjs +12 -0
  759. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/index.d.mts +8 -0
  760. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/index.mjs +14 -0
  761. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/validator.d.mts +35 -0
  762. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/compile/validator.mjs +91 -0
  763. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/error/errors.d.mts +208 -0
  764. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/error/errors.mjs +18 -0
  765. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/error/index.d.mts +1 -0
  766. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/error/index.mjs +1 -0
  767. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_idna.d.mts +2 -0
  768. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_idna.mjs +246 -0
  769. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_puny.d.mts +1 -0
  770. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_puny.mjs +77 -0
  771. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_registry.d.mts +15 -0
  772. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/_registry.mjs +96 -0
  773. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/date.d.mts +6 -0
  774. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/date.mjs +19 -0
  775. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/date_time.d.mts +6 -0
  776. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/date_time.mjs +11 -0
  777. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/duration.d.mts +5 -0
  778. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/duration.mjs +8 -0
  779. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/email.d.mts +5 -0
  780. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/email.mjs +8 -0
  781. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/format.d.mts +22 -0
  782. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/format.mjs +22 -0
  783. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/hostname.d.mts +7 -0
  784. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/hostname.mjs +18 -0
  785. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/idn_email.d.mts +5 -0
  786. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/idn_email.mjs +8 -0
  787. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/idn_hostname.d.mts +7 -0
  788. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/idn_hostname.mjs +19 -0
  789. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/index.d.mts +4 -0
  790. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/index.mjs +4 -0
  791. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/ipv4.d.mts +6 -0
  792. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/ipv4.mjs +38 -0
  793. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/ipv6.d.mts +5 -0
  794. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/ipv6.mjs +67 -0
  795. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/iri.d.mts +5 -0
  796. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/iri.mjs +13 -0
  797. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/iri_reference.d.mts +5 -0
  798. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/iri_reference.mjs +60 -0
  799. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/json_pointer.d.mts +6 -0
  800. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/json_pointer.mjs +9 -0
  801. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/json_pointer_uri_fragment.d.mts +6 -0
  802. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/json_pointer_uri_fragment.mjs +9 -0
  803. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/regex.d.mts +6 -0
  804. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/regex.mjs +17 -0
  805. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/relative_json_pointer.d.mts +6 -0
  806. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/relative_json_pointer.mjs +9 -0
  807. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/time.d.mts +5 -0
  808. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/time.mjs +27 -0
  809. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri.d.mts +5 -0
  810. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri.mjs +135 -0
  811. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri_reference.d.mts +5 -0
  812. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri_reference.mjs +9 -0
  813. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri_template.d.mts +6 -0
  814. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uri_template.mjs +10 -0
  815. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/url.d.mts +6 -0
  816. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/url.mjs +9 -0
  817. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uuid.d.mts +6 -0
  818. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/format/uuid.mjs +9 -0
  819. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/emit.d.mts +54 -0
  820. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/emit.mjs +186 -0
  821. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/globals.d.mts +35 -0
  822. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/globals.mjs +90 -0
  823. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/guard.d.mts +65 -0
  824. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/guard.mjs +212 -0
  825. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/index.d.mts +6 -0
  826. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/index.mjs +6 -0
  827. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/native.d.mts +20 -0
  828. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/native.mjs +60 -0
  829. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/string.d.mts +6 -0
  830. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/guard/string.mjs +176 -0
  831. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/index.d.mts +8 -0
  832. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/index.mjs +14 -0
  833. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/build.d.mts +39 -0
  834. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/build.mjs +118 -0
  835. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/check.d.mts +6 -0
  836. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/check.mjs +14 -0
  837. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/compile.d.mts +22 -0
  838. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/compile.mjs +46 -0
  839. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_context.d.mts +35 -0
  840. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_context.mjs +129 -0
  841. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_exact_optional.d.mts +3 -0
  842. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_exact_optional.mjs +20 -0
  843. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_externals.d.mts +7 -0
  844. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_externals.mjs +25 -0
  845. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_functions.d.mts +6 -0
  846. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_functions.mjs +66 -0
  847. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_reducer.d.mts +4 -0
  848. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_reducer.mjs +45 -0
  849. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_refine.d.mts +6 -0
  850. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_refine.mjs +29 -0
  851. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_stack.d.mts +18 -0
  852. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_stack.mjs +107 -0
  853. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_unique.d.mts +2 -0
  854. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/_unique.mjs +5 -0
  855. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/additionalItems.d.mts +6 -0
  856. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/additionalItems.mjs +50 -0
  857. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +9 -0
  858. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/additionalProperties.mjs +110 -0
  859. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/allOf.d.mts +6 -0
  860. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/allOf.mjs +47 -0
  861. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/anyOf.d.mts +6 -0
  862. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/anyOf.mjs +52 -0
  863. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/boolean.d.mts +5 -0
  864. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/boolean.mjs +25 -0
  865. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/const.d.mts +6 -0
  866. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/const.mjs +30 -0
  867. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/contains.d.mts +6 -0
  868. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/contains.mjs +42 -0
  869. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependencies.d.mts +6 -0
  870. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependencies.mjs +45 -0
  871. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +6 -0
  872. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependentRequired.mjs +40 -0
  873. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +6 -0
  874. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dependentSchemas.mjs +38 -0
  875. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +6 -0
  876. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/dynamicRef.mjs +25 -0
  877. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/enum.d.mts +6 -0
  878. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/enum.mjs +33 -0
  879. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +6 -0
  880. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +25 -0
  881. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +6 -0
  882. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +25 -0
  883. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/format.d.mts +6 -0
  884. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/format.mjs +26 -0
  885. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/if.d.mts +6 -0
  886. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/if.mjs +47 -0
  887. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/index.d.mts +48 -0
  888. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/index.mjs +54 -0
  889. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/items.d.mts +6 -0
  890. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/items.mjs +68 -0
  891. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxContains.d.mts +6 -0
  892. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxContains.mjs +42 -0
  893. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxItems.d.mts +6 -0
  894. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxItems.mjs +25 -0
  895. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxLength.d.mts +6 -0
  896. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxLength.mjs +25 -0
  897. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxProperties.d.mts +6 -0
  898. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maxProperties.mjs +25 -0
  899. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maximum.d.mts +6 -0
  900. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/maximum.mjs +25 -0
  901. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minContains.d.mts +6 -0
  902. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minContains.mjs +41 -0
  903. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minItems.d.mts +6 -0
  904. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minItems.mjs +25 -0
  905. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minLength.d.mts +6 -0
  906. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minLength.mjs +25 -0
  907. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minProperties.d.mts +6 -0
  908. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minProperties.mjs +25 -0
  909. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minimum.d.mts +6 -0
  910. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/minimum.mjs +25 -0
  911. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/multipleOf.d.mts +6 -0
  912. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/multipleOf.mjs +25 -0
  913. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/not.d.mts +6 -0
  914. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/not.mjs +37 -0
  915. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/oneOf.d.mts +6 -0
  916. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/oneOf.mjs +58 -0
  917. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/pattern.d.mts +6 -0
  918. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/pattern.mjs +28 -0
  919. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/patternProperties.d.mts +6 -0
  920. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/patternProperties.mjs +44 -0
  921. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/prefixItems.d.mts +6 -0
  922. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/prefixItems.mjs +35 -0
  923. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/properties.d.mts +6 -0
  924. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/properties.mjs +75 -0
  925. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/propertyNames.d.mts +6 -0
  926. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/propertyNames.mjs +39 -0
  927. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +6 -0
  928. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/recursiveRef.mjs +25 -0
  929. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/ref.d.mts +6 -0
  930. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/ref.mjs +58 -0
  931. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/required.d.mts +6 -0
  932. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/required.mjs +32 -0
  933. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/schema.d.mts +9 -0
  934. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/schema.mjs +347 -0
  935. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/type.d.mts +6 -0
  936. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/type.mjs +70 -0
  937. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +6 -0
  938. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +51 -0
  939. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +6 -0
  940. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +51 -0
  941. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +6 -0
  942. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/engine/uniqueItems.mjs +51 -0
  943. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/errors.d.mts +6 -0
  944. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/errors.mjs +24 -0
  945. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/index.d.mts +3 -0
  946. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/index.mjs +9 -0
  947. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/parse.d.mts +13 -0
  948. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/parse.mjs +27 -0
  949. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/index.d.mts +2 -0
  950. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/index.mjs +2 -0
  951. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/pointer.d.mts +10 -0
  952. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/pointer.mjs +106 -0
  953. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/pointer_get.d.mts +9 -0
  954. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/pointer/pointer_get.mjs +2 -0
  955. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/index.d.mts +1 -0
  956. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/index.mjs +1 -0
  957. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/ref.d.mts +3 -0
  958. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/ref.mjs +146 -0
  959. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/resolve.d.mts +1 -0
  960. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/resolve/resolve.mjs +1 -0
  961. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/schema.d.mts +10 -0
  962. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/schema.mjs +10 -0
  963. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_canonical.d.mts +7 -0
  964. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_canonical.mjs +2 -0
  965. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_comparer.d.mts +6 -0
  966. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_comparer.mjs +2 -0
  967. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_elements.d.mts +18 -0
  968. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/_elements.mjs +2 -0
  969. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/additionalProperties.d.mts +7 -0
  970. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/additionalProperties.mjs +3 -0
  971. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/allOf.d.mts +3 -0
  972. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/allOf.mjs +2 -0
  973. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/anyOf.d.mts +3 -0
  974. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/anyOf.mjs +2 -0
  975. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/const.d.mts +1 -0
  976. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/const.mjs +2 -0
  977. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/enum.d.mts +1 -0
  978. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/enum.mjs +2 -0
  979. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/if.d.mts +15 -0
  980. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/if.mjs +2 -0
  981. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/index.d.mts +1 -0
  982. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/index.mjs +1 -0
  983. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/items.d.mts +7 -0
  984. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/items.mjs +2 -0
  985. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/oneOf.d.mts +3 -0
  986. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/oneOf.mjs +2 -0
  987. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/patternProperties.d.mts +7 -0
  988. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/patternProperties.mjs +2 -0
  989. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/prefixItems.d.mts +3 -0
  990. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/prefixItems.mjs +2 -0
  991. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/properties.d.mts +32 -0
  992. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/properties.mjs +2 -0
  993. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/ref.d.mts +8 -0
  994. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/ref.mjs +3 -0
  995. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/required.d.mts +3 -0
  996. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/required.mjs +3 -0
  997. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/schema.d.mts +56 -0
  998. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/schema.mjs +2 -0
  999. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/static.d.mts +4 -0
  1000. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/static.mjs +3 -0
  1001. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/type.d.mts +4 -0
  1002. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/type.mjs +3 -0
  1003. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/unevaluatedProperties.d.mts +7 -0
  1004. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/static/unevaluatedProperties.mjs +3 -0
  1005. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/_refine.d.mts +13 -0
  1006. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/_refine.mjs +18 -0
  1007. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/additionalItems.d.mts +9 -0
  1008. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/additionalItems.mjs +14 -0
  1009. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/additionalProperties.d.mts +9 -0
  1010. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/additionalProperties.mjs +14 -0
  1011. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/allOf.d.mts +9 -0
  1012. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/allOf.mjs +15 -0
  1013. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/anchor.d.mts +8 -0
  1014. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/anchor.mjs +12 -0
  1015. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/anyOf.d.mts +9 -0
  1016. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/anyOf.mjs +15 -0
  1017. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/const.d.mts +9 -0
  1018. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/const.mjs +12 -0
  1019. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contains.d.mts +9 -0
  1020. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contains.mjs +14 -0
  1021. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contentEncoding.d.mts +9 -0
  1022. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contentEncoding.mjs +13 -0
  1023. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contentMediaType.d.mts +9 -0
  1024. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/contentMediaType.mjs +13 -0
  1025. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/default.d.mts +9 -0
  1026. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/default.mjs +12 -0
  1027. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/defs.d.mts +6 -0
  1028. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/defs.mjs +12 -0
  1029. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependencies.d.mts +11 -0
  1030. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependencies.mjs +16 -0
  1031. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependentRequired.d.mts +9 -0
  1032. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependentRequired.mjs +15 -0
  1033. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependentSchemas.d.mts +9 -0
  1034. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dependentSchemas.mjs +15 -0
  1035. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dynamicAnchor.d.mts +8 -0
  1036. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dynamicAnchor.mjs +12 -0
  1037. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dynamicRef.d.mts +8 -0
  1038. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/dynamicRef.mjs +12 -0
  1039. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/else.d.mts +9 -0
  1040. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/else.mjs +14 -0
  1041. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/enum.d.mts +9 -0
  1042. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/enum.mjs +13 -0
  1043. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/exclusiveMaximum.d.mts +9 -0
  1044. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/exclusiveMaximum.mjs +13 -0
  1045. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/exclusiveMinimum.d.mts +9 -0
  1046. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/exclusiveMinimum.mjs +13 -0
  1047. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/format.d.mts +9 -0
  1048. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/format.mjs +13 -0
  1049. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/id.d.mts +9 -0
  1050. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/id.mjs +13 -0
  1051. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/if.d.mts +9 -0
  1052. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/if.mjs +14 -0
  1053. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/index.d.mts +53 -0
  1054. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/index.mjs +59 -0
  1055. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/items.d.mts +19 -0
  1056. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/items.mjs +26 -0
  1057. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxContains.d.mts +9 -0
  1058. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxContains.mjs +13 -0
  1059. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxItems.d.mts +9 -0
  1060. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxItems.mjs +13 -0
  1061. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxLength.d.mts +9 -0
  1062. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxLength.mjs +13 -0
  1063. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxProperties.d.mts +9 -0
  1064. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maxProperties.mjs +13 -0
  1065. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maximum.d.mts +9 -0
  1066. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/maximum.mjs +13 -0
  1067. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minContains.d.mts +9 -0
  1068. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minContains.mjs +13 -0
  1069. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minItems.d.mts +9 -0
  1070. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minItems.mjs +13 -0
  1071. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minLength.d.mts +9 -0
  1072. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minLength.mjs +13 -0
  1073. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minProperties.d.mts +9 -0
  1074. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minProperties.mjs +13 -0
  1075. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minimum.d.mts +9 -0
  1076. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/minimum.mjs +13 -0
  1077. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/multipleOf.d.mts +9 -0
  1078. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/multipleOf.mjs +13 -0
  1079. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/not.d.mts +9 -0
  1080. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/not.mjs +14 -0
  1081. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/oneOf.d.mts +9 -0
  1082. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/oneOf.mjs +15 -0
  1083. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/pattern.d.mts +9 -0
  1084. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/pattern.mjs +14 -0
  1085. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/patternProperties.d.mts +9 -0
  1086. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/patternProperties.mjs +15 -0
  1087. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/prefixItems.d.mts +8 -0
  1088. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/prefixItems.mjs +14 -0
  1089. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/properties.d.mts +9 -0
  1090. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/properties.mjs +15 -0
  1091. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/propertyNames.d.mts +9 -0
  1092. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/propertyNames.mjs +15 -0
  1093. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/recursiveAnchor.d.mts +12 -0
  1094. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/recursiveAnchor.mjs +19 -0
  1095. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/recursiveRef.d.mts +8 -0
  1096. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/recursiveRef.mjs +12 -0
  1097. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/ref.d.mts +9 -0
  1098. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/ref.mjs +13 -0
  1099. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/required.d.mts +9 -0
  1100. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/required.mjs +14 -0
  1101. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/schema.d.mts +9 -0
  1102. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/schema.mjs +14 -0
  1103. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/then.d.mts +9 -0
  1104. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/then.mjs +14 -0
  1105. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/type.d.mts +9 -0
  1106. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/type.mjs +15 -0
  1107. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/unevaluatedItems.d.mts +9 -0
  1108. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/unevaluatedItems.mjs +14 -0
  1109. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/unevaluatedProperties.d.mts +9 -0
  1110. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/unevaluatedProperties.mjs +14 -0
  1111. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/uniqueItems.d.mts +9 -0
  1112. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/schema/types/uniqueItems.mjs +13 -0
  1113. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/arguments/arguments.d.mts +5 -0
  1114. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/arguments/arguments.mjs +9 -0
  1115. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/arguments/index.d.mts +1 -0
  1116. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/arguments/index.mjs +1 -0
  1117. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/environment.d.mts +1 -0
  1118. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/environment.mjs +1 -0
  1119. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/evaluate.d.mts +9 -0
  1120. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/evaluate.mjs +37 -0
  1121. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/index.d.mts +1 -0
  1122. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/environment/index.mjs +1 -0
  1123. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/hashing/hash.d.mts +4 -0
  1124. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/hashing/hash.mjs +232 -0
  1125. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/hashing/index.d.mts +1 -0
  1126. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/hashing/index.mjs +1 -0
  1127. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/index.d.mts +4 -0
  1128. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/index.mjs +4 -0
  1129. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/_config.d.mts +7 -0
  1130. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/_config.mjs +15 -0
  1131. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/_locale.d.mts +40 -0
  1132. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/_locale.mjs +40 -0
  1133. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ar_001.d.mts +3 -0
  1134. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ar_001.mjs +40 -0
  1135. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/bn_BD.d.mts +3 -0
  1136. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/bn_BD.mjs +40 -0
  1137. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/cs_CZ.d.mts +3 -0
  1138. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/cs_CZ.mjs +40 -0
  1139. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/de_DE.d.mts +3 -0
  1140. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/de_DE.mjs +40 -0
  1141. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/el_GR.d.mts +3 -0
  1142. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/el_GR.mjs +40 -0
  1143. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/en_US.d.mts +3 -0
  1144. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/en_US.mjs +39 -0
  1145. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_419.d.mts +3 -0
  1146. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_419.mjs +40 -0
  1147. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_AR.d.mts +3 -0
  1148. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_AR.mjs +40 -0
  1149. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_ES.d.mts +3 -0
  1150. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_ES.mjs +40 -0
  1151. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_MX.d.mts +3 -0
  1152. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/es_MX.mjs +40 -0
  1153. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fa_IR.d.mts +3 -0
  1154. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fa_IR.mjs +40 -0
  1155. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fil_PH.d.mts +3 -0
  1156. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fil_PH.mjs +40 -0
  1157. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fr_CA.d.mts +3 -0
  1158. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fr_CA.mjs +40 -0
  1159. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fr_FR.d.mts +3 -0
  1160. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/fr_FR.mjs +40 -0
  1161. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ha_NG.d.mts +3 -0
  1162. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ha_NG.mjs +40 -0
  1163. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/hi_IN.d.mts +3 -0
  1164. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/hi_IN.mjs +40 -0
  1165. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/hu_HU.d.mts +3 -0
  1166. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/hu_HU.mjs +40 -0
  1167. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/id_ID.d.mts +3 -0
  1168. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/id_ID.mjs +40 -0
  1169. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/index.d.mts +1 -0
  1170. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/index.mjs +1 -0
  1171. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/it_IT.d.mts +3 -0
  1172. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/it_IT.mjs +40 -0
  1173. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ja_JP.d.mts +3 -0
  1174. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ja_JP.mjs +40 -0
  1175. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ko_KR.d.mts +3 -0
  1176. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ko_KR.mjs +40 -0
  1177. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ms_MY.d.mts +3 -0
  1178. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ms_MY.mjs +40 -0
  1179. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/nl_NL.d.mts +3 -0
  1180. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/nl_NL.mjs +40 -0
  1181. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pl_PL.d.mts +3 -0
  1182. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pl_PL.mjs +40 -0
  1183. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pt_BR.d.mts +3 -0
  1184. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pt_BR.mjs +40 -0
  1185. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pt_PT.d.mts +3 -0
  1186. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/pt_PT.mjs +40 -0
  1187. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ro_RO.d.mts +3 -0
  1188. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ro_RO.mjs +40 -0
  1189. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ru_RU.d.mts +3 -0
  1190. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ru_RU.mjs +40 -0
  1191. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/sv_SE.d.mts +3 -0
  1192. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/sv_SE.mjs +40 -0
  1193. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/sw_TZ.d.mts +3 -0
  1194. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/sw_TZ.mjs +40 -0
  1195. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/th_TH.d.mts +3 -0
  1196. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/th_TH.mjs +40 -0
  1197. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/tr_TR.d.mts +3 -0
  1198. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/tr_TR.mjs +40 -0
  1199. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/uk_UA.d.mts +3 -0
  1200. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/uk_UA.mjs +40 -0
  1201. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ur_PK.d.mts +3 -0
  1202. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/ur_PK.mjs +40 -0
  1203. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/vi_VN.d.mts +3 -0
  1204. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/vi_VN.mjs +40 -0
  1205. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/yo_NG.d.mts +3 -0
  1206. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/yo_NG.mjs +40 -0
  1207. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/zh_Hans.d.mts +3 -0
  1208. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/zh_Hans.mjs +40 -0
  1209. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/zh_Hant.d.mts +3 -0
  1210. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/locale/zh_Hant.mjs +40 -0
  1211. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/assign.d.mts +14 -0
  1212. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/assign.mjs +11 -0
  1213. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/clone.d.mts +5 -0
  1214. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/clone.mjs +110 -0
  1215. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/create.d.mts +8 -0
  1216. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/create.mjs +30 -0
  1217. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/discard.d.mts +4 -0
  1218. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/discard.mjs +17 -0
  1219. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/index.d.mts +1 -0
  1220. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/index.mjs +1 -0
  1221. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/memory.d.mts +6 -0
  1222. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/memory.mjs +7 -0
  1223. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/metrics.d.mts +14 -0
  1224. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/metrics.mjs +8 -0
  1225. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/update.d.mts +7 -0
  1226. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/memory/update.mjs +32 -0
  1227. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/settings/index.d.mts +1 -0
  1228. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/settings/index.mjs +1 -0
  1229. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/settings/settings.d.mts +71 -0
  1230. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/settings/settings.mjs +34 -0
  1231. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/system.d.mts +6 -0
  1232. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/system.mjs +6 -0
  1233. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/unreachable/index.d.mts +1 -0
  1234. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/unreachable/index.mjs +1 -0
  1235. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/unreachable/unreachable.d.mts +3 -0
  1236. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/system/unreachable/unreachable.mjs +6 -0
  1237. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
  1238. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
  1239. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
  1240. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
  1241. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
  1242. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
  1243. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
  1244. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
  1245. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
  1246. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
  1247. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
  1248. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
  1249. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/capitalize.d.mts +11 -0
  1250. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/capitalize.mjs +11 -0
  1251. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/conditional.d.mts +12 -0
  1252. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/conditional.mjs +13 -0
  1253. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/constructor_parameters.d.mts +11 -0
  1254. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/constructor_parameters.mjs +11 -0
  1255. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/evaluate.d.mts +11 -0
  1256. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/evaluate.mjs +11 -0
  1257. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/exclude.d.mts +11 -0
  1258. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/exclude.mjs +11 -0
  1259. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/extract.d.mts +11 -0
  1260. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/extract.mjs +11 -0
  1261. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/index.d.mts +30 -0
  1262. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/index.mjs +30 -0
  1263. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/indexed.d.mts +14 -0
  1264. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/indexed.mjs +14 -0
  1265. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/instance_type.d.mts +11 -0
  1266. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/instance_type.mjs +11 -0
  1267. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/interface.d.mts +14 -0
  1268. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/interface.mjs +22 -0
  1269. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/keyof.d.mts +11 -0
  1270. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/keyof.mjs +11 -0
  1271. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/lowercase.d.mts +11 -0
  1272. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/lowercase.mjs +11 -0
  1273. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/mapped.d.mts +13 -0
  1274. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/mapped.mjs +13 -0
  1275. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/module.d.mts +13 -0
  1276. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/module.mjs +13 -0
  1277. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/non_nullable.d.mts +11 -0
  1278. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/non_nullable.mjs +11 -0
  1279. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/omit.d.mts +14 -0
  1280. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/omit.mjs +14 -0
  1281. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/parameters.d.mts +11 -0
  1282. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/parameters.mjs +11 -0
  1283. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/partial.d.mts +11 -0
  1284. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/partial.mjs +11 -0
  1285. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/pick.d.mts +14 -0
  1286. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/pick.mjs +14 -0
  1287. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/readonly_object.d.mts +16 -0
  1288. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/readonly_object.mjs +19 -0
  1289. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/required.d.mts +11 -0
  1290. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/required.mjs +11 -0
  1291. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/return_type.d.mts +11 -0
  1292. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/return_type.mjs +11 -0
  1293. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/uncapitalize.d.mts +11 -0
  1294. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/uncapitalize.mjs +11 -0
  1295. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/uppercase.d.mts +11 -0
  1296. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/uppercase.mjs +11 -0
  1297. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/with.d.mts +11 -0
  1298. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/action/with.mjs +11 -0
  1299. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/distribute_arguments.d.mts +15 -0
  1300. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +53 -0
  1301. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/instantiate.d.mts +21 -0
  1302. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/instantiate.mjs +49 -0
  1303. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/resolve_arguments.d.mts +13 -0
  1304. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +33 -0
  1305. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/resolve_target.d.mts +25 -0
  1306. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/call/resolve_target.mjs +27 -0
  1307. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/conditional/index.d.mts +1 -0
  1308. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/conditional/index.mjs +1 -0
  1309. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/conditional/instantiate.d.mts +12 -0
  1310. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/conditional/instantiate.mjs +23 -0
  1311. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/constructor_parameters/index.d.mts +1 -0
  1312. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/constructor_parameters/index.mjs +1 -0
  1313. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +14 -0
  1314. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +25 -0
  1315. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +8 -0
  1316. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +16 -0
  1317. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/check.d.mts +21 -0
  1318. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/check.mjs +45 -0
  1319. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +22 -0
  1320. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +47 -0
  1321. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +28 -0
  1322. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/extends.mjs +47 -0
  1323. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/index.d.mts +6 -0
  1324. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/index.mjs +6 -0
  1325. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +17 -0
  1326. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +31 -0
  1327. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/target.d.mts +10 -0
  1328. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/cyclic/target.mjs +16 -0
  1329. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/enum/index.d.mts +1 -0
  1330. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/enum/index.mjs +1 -0
  1331. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/enum/typescript_enum_to_enum_values.d.mts +8 -0
  1332. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/enum/typescript_enum_to_enum_values.mjs +9 -0
  1333. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +15 -0
  1334. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +43 -0
  1335. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/compare.d.mts +15 -0
  1336. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/compare.mjs +22 -0
  1337. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +34 -0
  1338. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/composite.mjs +67 -0
  1339. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +28 -0
  1340. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +45 -0
  1341. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +26 -0
  1342. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +53 -0
  1343. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/flatten.d.mts +6 -0
  1344. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/flatten.mjs +11 -0
  1345. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/index.d.mts +8 -0
  1346. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/index.mjs +8 -0
  1347. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/instantiate.d.mts +8 -0
  1348. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/instantiate.mjs +12 -0
  1349. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/narrow.d.mts +5 -0
  1350. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/evaluate/narrow.mjs +11 -0
  1351. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/index.d.mts +1 -0
  1352. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/index.mjs +1 -0
  1353. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/instantiate.d.mts +9 -0
  1354. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/instantiate.mjs +16 -0
  1355. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/operation.d.mts +10 -0
  1356. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/exclude/operation.mjs +23 -0
  1357. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/index.d.mts +1 -0
  1358. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/index.mjs +1 -0
  1359. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/instantiate.d.mts +9 -0
  1360. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/instantiate.mjs +16 -0
  1361. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/operation.d.mts +10 -0
  1362. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/extract/operation.mjs +23 -0
  1363. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/index.d.mts +3 -0
  1364. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/index.mjs +3 -0
  1365. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/keys.d.mts +3 -0
  1366. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/keys.mjs +8 -0
  1367. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/keys_to_indexer.d.mts +7 -0
  1368. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/keys_to_indexer.mjs +15 -0
  1369. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/union.d.mts +7 -0
  1370. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/helpers/union.mjs +3 -0
  1371. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  1372. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
  1373. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  1374. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
  1375. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/index.d.mts +31 -0
  1376. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/index.mjs +37 -0
  1377. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_cyclic.d.mts +6 -0
  1378. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_cyclic.mjs +8 -0
  1379. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
  1380. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
  1381. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +6 -0
  1382. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +8 -0
  1383. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_intersect.d.mts +5 -0
  1384. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_intersect.mjs +8 -0
  1385. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_literal.d.mts +3 -0
  1386. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_literal.mjs +5 -0
  1387. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +5 -0
  1388. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +8 -0
  1389. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +19 -0
  1390. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_type.mjs +25 -0
  1391. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_union.d.mts +4 -0
  1392. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/from_union.mjs +7 -0
  1393. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/to_indexable.d.mts +9 -0
  1394. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/to_indexable.mjs +14 -0
  1395. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/to_indexable_keys.d.mts +10 -0
  1396. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexable/to_indexable_keys.mjs +12 -0
  1397. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/array_indexer.d.mts +12 -0
  1398. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/array_indexer.mjs +18 -0
  1399. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_array.d.mts +15 -0
  1400. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_array.mjs +35 -0
  1401. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_object.d.mts +16 -0
  1402. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_object.mjs +40 -0
  1403. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_tuple.d.mts +13 -0
  1404. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_tuple.mjs +35 -0
  1405. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_type.d.mts +11 -0
  1406. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/from_type.mjs +14 -0
  1407. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/index.d.mts +1 -0
  1408. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/index.mjs +1 -0
  1409. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +16 -0
  1410. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +28 -0
  1411. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instance_type/index.d.mts +1 -0
  1412. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instance_type/index.mjs +1 -0
  1413. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instance_type/instantiate.d.mts +12 -0
  1414. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instance_type/instantiate.mjs +21 -0
  1415. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instantiate.d.mts +178 -0
  1416. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/instantiate.mjs +158 -0
  1417. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/interface/index.d.mts +1 -0
  1418. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/interface/index.mjs +1 -0
  1419. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +15 -0
  1420. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/interface/instantiate.mjs +23 -0
  1421. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_literal.d.mts +5 -0
  1422. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_literal.mjs +9 -0
  1423. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +6 -0
  1424. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +8 -0
  1425. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_type.d.mts +10 -0
  1426. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_type.mjs +13 -0
  1427. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_union.d.mts +6 -0
  1428. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/from_union.mjs +7 -0
  1429. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/index.d.mts +1 -0
  1430. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/index.mjs +1 -0
  1431. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/instantiate.d.mts +38 -0
  1432. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/instantiate.mjs +52 -0
  1433. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/mapping.d.mts +9 -0
  1434. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/intrinsics/mapping.mjs +4 -0
  1435. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_any.d.mts +6 -0
  1436. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_any.mjs +8 -0
  1437. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_array.d.mts +4 -0
  1438. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_array.mjs +5 -0
  1439. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_object.d.mts +10 -0
  1440. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_object.mjs +20 -0
  1441. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_record.d.mts +4 -0
  1442. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_record.mjs +5 -0
  1443. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_tuple.d.mts +5 -0
  1444. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_tuple.mjs +7 -0
  1445. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_type.d.mts +15 -0
  1446. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/from_type.mjs +23 -0
  1447. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/index.d.mts +1 -0
  1448. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/index.mjs +1 -0
  1449. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +16 -0
  1450. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +29 -0
  1451. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/index.d.mts +1 -0
  1452. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/index.mjs +1 -0
  1453. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/instantiate.d.mts +10 -0
  1454. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/instantiate.mjs +15 -0
  1455. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +22 -0
  1456. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +42 -0
  1457. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +17 -0
  1458. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +39 -0
  1459. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/module/index.d.mts +1 -0
  1460. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/module/index.mjs +1 -0
  1461. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/module/instantiate.d.mts +19 -0
  1462. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/module/instantiate.mjs +36 -0
  1463. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/non_nullable/index.d.mts +1 -0
  1464. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/non_nullable/index.mjs +1 -0
  1465. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/non_nullable/instantiate.d.mts +14 -0
  1466. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/non_nullable/instantiate.mjs +22 -0
  1467. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/collapse.d.mts +12 -0
  1468. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/collapse.mjs +14 -0
  1469. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_cyclic.d.mts +6 -0
  1470. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_cyclic.mjs +8 -0
  1471. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
  1472. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
  1473. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_intersect.d.mts +17 -0
  1474. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_intersect.mjs +22 -0
  1475. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_object.d.mts +3 -0
  1476. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_object.mjs +4 -0
  1477. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_tuple.d.mts +6 -0
  1478. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_tuple.mjs +9 -0
  1479. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_type.d.mts +16 -0
  1480. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_type.mjs +23 -0
  1481. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_union.d.mts +12 -0
  1482. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/from_union.mjs +19 -0
  1483. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/index.d.mts +1 -0
  1484. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/object/index.mjs +1 -0
  1485. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/from_type.d.mts +12 -0
  1486. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/from_type.mjs +18 -0
  1487. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/index.d.mts +1 -0
  1488. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/index.mjs +1 -0
  1489. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/instantiate.d.mts +9 -0
  1490. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/omit/instantiate.mjs +16 -0
  1491. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
  1492. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
  1493. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  1494. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
  1495. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/parameters/index.d.mts +1 -0
  1496. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/parameters/index.mjs +1 -0
  1497. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +14 -0
  1498. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +25 -0
  1499. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_cyclic.d.mts +10 -0
  1500. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_cyclic.mjs +11 -0
  1501. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
  1502. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
  1503. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +5 -0
  1504. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +8 -0
  1505. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_object.d.mts +8 -0
  1506. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_object.mjs +11 -0
  1507. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_type.d.mts +14 -0
  1508. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_type.mjs +20 -0
  1509. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_union.d.mts +5 -0
  1510. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/from_union.mjs +7 -0
  1511. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/index.d.mts +1 -0
  1512. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/index.mjs +1 -0
  1513. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/instantiate.d.mts +9 -0
  1514. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/partial/instantiate.mjs +15 -0
  1515. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/index.d.mts +2 -0
  1516. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/index.mjs +2 -0
  1517. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/pattern.d.mts +6 -0
  1518. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/pattern.mjs +11 -0
  1519. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/template.d.mts +7 -0
  1520. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/patterns/template.mjs +20 -0
  1521. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/from_type.d.mts +13 -0
  1522. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/from_type.mjs +20 -0
  1523. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/index.d.mts +1 -0
  1524. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/index.mjs +1 -0
  1525. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/instantiate.d.mts +9 -0
  1526. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/pick/instantiate.mjs +16 -0
  1527. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
  1528. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
  1529. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
  1530. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
  1531. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  1532. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
  1533. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  1534. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
  1535. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +5 -0
  1536. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +7 -0
  1537. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_cyclic.d.mts +10 -0
  1538. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_cyclic.mjs +11 -0
  1539. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  1540. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
  1541. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +5 -0
  1542. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +8 -0
  1543. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +8 -0
  1544. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +11 -0
  1545. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +5 -0
  1546. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +7 -0
  1547. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +18 -0
  1548. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +25 -0
  1549. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_union.d.mts +5 -0
  1550. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/from_union.mjs +7 -0
  1551. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/index.d.mts +1 -0
  1552. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/index.mjs +1 -0
  1553. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/instantiate.d.mts +9 -0
  1554. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/readonly_object/instantiate.mjs +15 -0
  1555. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key.d.mts +24 -0
  1556. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key.mjs +40 -0
  1557. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_any.d.mts +4 -0
  1558. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_any.mjs +6 -0
  1559. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_boolean.d.mts +7 -0
  1560. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_boolean.mjs +5 -0
  1561. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +6 -0
  1562. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +8 -0
  1563. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_integer.d.mts +5 -0
  1564. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_integer.mjs +7 -0
  1565. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_intersect.d.mts +5 -0
  1566. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_intersect.mjs +8 -0
  1567. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_literal.d.mts +11 -0
  1568. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_literal.mjs +10 -0
  1569. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_number.d.mts +5 -0
  1570. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_number.mjs +7 -0
  1571. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_string.d.mts +5 -0
  1572. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_string.mjs +12 -0
  1573. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +8 -0
  1574. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +12 -0
  1575. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_union.d.mts +20 -0
  1576. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/from_key_union.mjs +39 -0
  1577. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/index.d.mts +1 -0
  1578. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/index.mjs +1 -0
  1579. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/instantiate.d.mts +9 -0
  1580. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/instantiate.mjs +17 -0
  1581. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/record_create.d.mts +3 -0
  1582. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/record/record_create.mjs +7 -0
  1583. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/ref/index.d.mts +1 -0
  1584. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/ref/index.mjs +1 -0
  1585. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +6 -0
  1586. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/ref/instantiate.mjs +10 -0
  1587. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_cyclic.d.mts +10 -0
  1588. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_cyclic.mjs +11 -0
  1589. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
  1590. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
  1591. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +5 -0
  1592. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_intersect.mjs +8 -0
  1593. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_object.d.mts +8 -0
  1594. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_object.mjs +11 -0
  1595. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_type.d.mts +14 -0
  1596. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_type.mjs +20 -0
  1597. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_union.d.mts +5 -0
  1598. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/from_union.mjs +7 -0
  1599. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/index.d.mts +1 -0
  1600. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/index.mjs +1 -0
  1601. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/instantiate.d.mts +9 -0
  1602. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/required/instantiate.mjs +15 -0
  1603. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/rest/index.d.mts +1 -0
  1604. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/rest/index.mjs +1 -0
  1605. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/rest/spread.d.mts +12 -0
  1606. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/rest/spread.mjs +19 -0
  1607. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/return_type/index.d.mts +1 -0
  1608. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/return_type/index.mjs +1 -0
  1609. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/return_type/instantiate.d.mts +12 -0
  1610. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/return_type/instantiate.mjs +21 -0
  1611. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/create.d.mts +1 -0
  1612. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/create.mjs +5 -0
  1613. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/decode.d.mts +30 -0
  1614. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/decode.mjs +81 -0
  1615. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +33 -0
  1616. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/encode.mjs +81 -0
  1617. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/index.d.mts +6 -0
  1618. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/index.mjs +6 -0
  1619. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/instantiate.d.mts +9 -0
  1620. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/instantiate.mjs +15 -0
  1621. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/is_finite.d.mts +12 -0
  1622. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +26 -0
  1623. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/is_pattern.d.mts +6 -0
  1624. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +10 -0
  1625. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/static.d.mts +18 -0
  1626. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/template_literal/static.mjs +2 -0
  1627. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/this/expand_this.d.mts +16 -0
  1628. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/this/expand_this.mjs +26 -0
  1629. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/tuple/to_object.d.mts +12 -0
  1630. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/tuple/to_object.mjs +14 -0
  1631. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/with/index.d.mts +1 -0
  1632. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/with/index.mjs +1 -0
  1633. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
  1634. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/engine/with/instantiate.mjs +14 -0
  1635. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/any.d.mts +9 -0
  1636. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/any.mjs +12 -0
  1637. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/array.d.mts +20 -0
  1638. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/array.mjs +21 -0
  1639. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/bigint.d.mts +7 -0
  1640. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/bigint.mjs +9 -0
  1641. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/boolean.d.mts +7 -0
  1642. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/boolean.mjs +9 -0
  1643. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/constructor.d.mts +10 -0
  1644. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/constructor.mjs +17 -0
  1645. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
  1646. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
  1647. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/enum.d.mts +7 -0
  1648. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/enum.mjs +7 -0
  1649. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends.d.mts +13 -0
  1650. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends.mjs +17 -0
  1651. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends_left.d.mts +53 -0
  1652. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends_left.mjs +80 -0
  1653. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends_right.d.mts +27 -0
  1654. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/extends_right.mjs +49 -0
  1655. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/function.d.mts +10 -0
  1656. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/function.mjs +17 -0
  1657. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/index.d.mts +2 -0
  1658. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/index.mjs +2 -0
  1659. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/inference.d.mts +34 -0
  1660. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/inference.mjs +62 -0
  1661. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/integer.d.mts +8 -0
  1662. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/integer.mjs +10 -0
  1663. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/intersect.d.mts +6 -0
  1664. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/intersect.mjs +15 -0
  1665. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/literal.d.mts +18 -0
  1666. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/literal.mjs +44 -0
  1667. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/never.d.mts +8 -0
  1668. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/never.mjs +9 -0
  1669. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/null.d.mts +7 -0
  1670. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/null.mjs +9 -0
  1671. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/number.d.mts +7 -0
  1672. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/number.mjs +9 -0
  1673. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/object.d.mts +32 -0
  1674. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/object.mjs +109 -0
  1675. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/parameters.d.mts +15 -0
  1676. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/parameters.mjs +28 -0
  1677. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/record.d.mts +13 -0
  1678. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/record.mjs +23 -0
  1679. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/result.d.mts +24 -0
  1680. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/result.mjs +36 -0
  1681. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/return_type.d.mts +7 -0
  1682. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/return_type.mjs +9 -0
  1683. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/string.d.mts +7 -0
  1684. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/string.mjs +9 -0
  1685. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/symbol.d.mts +7 -0
  1686. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/symbol.mjs +9 -0
  1687. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/template_literal.d.mts +6 -0
  1688. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/template_literal.mjs +7 -0
  1689. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/tuple.d.mts +22 -0
  1690. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/tuple.mjs +61 -0
  1691. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/undefined.d.mts +8 -0
  1692. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/undefined.mjs +10 -0
  1693. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/union.d.mts +11 -0
  1694. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/union.mjs +24 -0
  1695. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/unknown.d.mts +9 -0
  1696. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/unknown.mjs +12 -0
  1697. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/void.d.mts +7 -0
  1698. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/extends/void.mjs +9 -0
  1699. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/index.d.mts +5 -0
  1700. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/index.mjs +5 -0
  1701. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/index.d.mts +1 -0
  1702. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/index.mjs +1 -0
  1703. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/mapping.d.mts +353 -0
  1704. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/mapping.mjs +535 -0
  1705. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/parser.d.mts +262 -0
  1706. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/parser.mjs +136 -0
  1707. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/script.d.mts +16 -0
  1708. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/script.mjs +22 -0
  1709. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/bigint.d.mts +8 -0
  1710. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/bigint.mjs +14 -0
  1711. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/const.d.mts +11 -0
  1712. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/const.mjs +18 -0
  1713. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/ident.d.mts +16 -0
  1714. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/ident.mjs +26 -0
  1715. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/index.d.mts +12 -0
  1716. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/index.mjs +12 -0
  1717. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/integer.d.mts +11 -0
  1718. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/integer.mjs +19 -0
  1719. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/char.d.mts +75 -0
  1720. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/char.mjs +26 -0
  1721. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -0
  1722. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/guard.mjs +15 -0
  1723. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/many.d.mts +7 -0
  1724. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/many.mjs +14 -0
  1725. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/match.d.mts +6 -0
  1726. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/match.mjs +11 -0
  1727. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/optional.d.mts +5 -0
  1728. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/optional.mjs +9 -0
  1729. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/take.d.mts +6 -0
  1730. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/take.mjs +30 -0
  1731. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/trim.d.mts +19 -0
  1732. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/internal/trim.mjs +34 -0
  1733. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/number.d.mts +11 -0
  1734. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/number.mjs +19 -0
  1735. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/rest.d.mts +4 -0
  1736. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/rest.mjs +9 -0
  1737. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/span.d.mts +11 -0
  1738. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/span.mjs +24 -0
  1739. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/string.d.mts +11 -0
  1740. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/string.mjs +20 -0
  1741. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/unsigned_integer.d.mts +16 -0
  1742. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/unsigned_integer.mjs +26 -0
  1743. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/unsigned_number.d.mts +17 -0
  1744. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/unsigned_number.mjs +38 -0
  1745. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/until.d.mts +7 -0
  1746. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/until.mjs +21 -0
  1747. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/until_1.d.mts +5 -0
  1748. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/script/token/until_1.mjs +12 -0
  1749. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_codec.d.mts +30 -0
  1750. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_codec.mjs +60 -0
  1751. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_immutable.d.mts +9 -0
  1752. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_immutable.mjs +18 -0
  1753. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_optional.d.mts +9 -0
  1754. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_optional.mjs +18 -0
  1755. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_readonly.d.mts +9 -0
  1756. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_readonly.mjs +18 -0
  1757. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_refine.d.mts +24 -0
  1758. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/_refine.mjs +36 -0
  1759. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/any.d.mts +10 -0
  1760. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/any.mjs +18 -0
  1761. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/array.d.mts +18 -0
  1762. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/array.mjs +25 -0
  1763. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/bigint.d.mts +12 -0
  1764. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/bigint.mjs +21 -0
  1765. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/boolean.d.mts +11 -0
  1766. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/boolean.mjs +17 -0
  1767. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/call.d.mts +16 -0
  1768. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/call.mjs +23 -0
  1769. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/constructor.d.mts +18 -0
  1770. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/constructor.mjs +24 -0
  1771. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/cyclic.d.mts +16 -0
  1772. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/cyclic.mjs +29 -0
  1773. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/deferred.d.mts +13 -0
  1774. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/deferred.mjs +16 -0
  1775. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
  1776. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/dependent.mjs +24 -0
  1777. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/enum.d.mts +18 -0
  1778. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/enum.mjs +22 -0
  1779. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/function.d.mts +21 -0
  1780. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/function.mjs +25 -0
  1781. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/generic.d.mts +13 -0
  1782. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/generic.mjs +17 -0
  1783. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/identifier.d.mts +11 -0
  1784. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/identifier.mjs +17 -0
  1785. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/index.d.mts +45 -0
  1786. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/index.mjs +51 -0
  1787. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/infer.d.mts +15 -0
  1788. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/infer.mjs +20 -0
  1789. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/integer.d.mts +12 -0
  1790. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/integer.mjs +21 -0
  1791. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/intersect.d.mts +15 -0
  1792. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/intersect.mjs +24 -0
  1793. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/literal.d.mts +31 -0
  1794. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/literal.mjs +62 -0
  1795. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/never.d.mts +12 -0
  1796. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/never.mjs +22 -0
  1797. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/null.d.mts +11 -0
  1798. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/null.mjs +17 -0
  1799. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/number.d.mts +12 -0
  1800. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/number.mjs +21 -0
  1801. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/object.d.mts +18 -0
  1802. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/object.mjs +28 -0
  1803. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/parameter.d.mts +17 -0
  1804. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/parameter.mjs +21 -0
  1805. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/properties.d.mts +43 -0
  1806. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/properties.mjs +15 -0
  1807. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/record.d.mts +52 -0
  1808. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/record.mjs +66 -0
  1809. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/ref.d.mts +19 -0
  1810. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/ref.mjs +18 -0
  1811. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/rest.d.mts +11 -0
  1812. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/rest.mjs +17 -0
  1813. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/schema.d.mts +176 -0
  1814. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/schema.mjs +15 -0
  1815. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/static.d.mts +45 -0
  1816. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/static.mjs +3 -0
  1817. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/string.d.mts +12 -0
  1818. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/string.mjs +22 -0
  1819. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/symbol.d.mts +11 -0
  1820. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/symbol.mjs +17 -0
  1821. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/template_literal.d.mts +28 -0
  1822. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/template_literal.mjs +37 -0
  1823. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/this.d.mts +14 -0
  1824. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/this.mjs +17 -0
  1825. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/tuple.d.mts +38 -0
  1826. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/tuple.mjs +25 -0
  1827. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/undefined.d.mts +11 -0
  1828. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/undefined.mjs +17 -0
  1829. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/union.d.mts +15 -0
  1830. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/union.mjs +24 -0
  1831. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/unknown.d.mts +10 -0
  1832. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/unknown.mjs +17 -0
  1833. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/unsafe.d.mts +10 -0
  1834. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/unsafe.mjs +20 -0
  1835. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/void.d.mts +11 -0
  1836. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/type/types/void.mjs +17 -0
  1837. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/typebox.d.mts +69 -0
  1838. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/typebox.mjs +85 -0
  1839. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/assert/assert.d.mts +14 -0
  1840. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/assert/assert.mjs +28 -0
  1841. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/assert/index.d.mts +1 -0
  1842. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/assert/index.mjs +1 -0
  1843. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/check/check.d.mts +5 -0
  1844. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/check/check.mjs +11 -0
  1845. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/check/index.d.mts +1 -0
  1846. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/check/index.mjs +1 -0
  1847. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/additional.d.mts +2 -0
  1848. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/additional.mjs +6 -0
  1849. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/clean.d.mts +15 -0
  1850. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/clean.mjs +17 -0
  1851. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_array.d.mts +2 -0
  1852. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_array.mjs +8 -0
  1853. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_cyclic.d.mts +2 -0
  1854. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_cyclic.mjs +6 -0
  1855. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_intersect.d.mts +2 -0
  1856. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_intersect.mjs +26 -0
  1857. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_object.d.mts +2 -0
  1858. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_object.mjs +31 -0
  1859. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_record.d.mts +2 -0
  1860. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_record.mjs +32 -0
  1861. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_ref.d.mts +2 -0
  1862. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_ref.mjs +8 -0
  1863. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_tuple.d.mts +2 -0
  1864. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_tuple.mjs +14 -0
  1865. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_type.d.mts +2 -0
  1866. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_type.mjs +21 -0
  1867. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_union.d.mts +2 -0
  1868. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/from_union.mjs +12 -0
  1869. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/index.d.mts +1 -0
  1870. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clean/index.mjs +1 -0
  1871. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clone/clone.d.mts +5 -0
  1872. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clone/clone.mjs +12 -0
  1873. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clone/index.d.mts +1 -0
  1874. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/clone/index.mjs +1 -0
  1875. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/callback.d.mts +2 -0
  1876. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/callback.mjs +25 -0
  1877. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/decode.d.mts +12 -0
  1878. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/decode.mjs +52 -0
  1879. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/encode.d.mts +12 -0
  1880. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/encode.mjs +52 -0
  1881. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_array.d.mts +2 -0
  1882. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_array.mjs +35 -0
  1883. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_cyclic.d.mts +2 -0
  1884. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_cyclic.mjs +8 -0
  1885. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_intersect.d.mts +2 -0
  1886. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_intersect.mjs +58 -0
  1887. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_object.d.mts +2 -0
  1888. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_object.mjs +42 -0
  1889. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_record.d.mts +2 -0
  1890. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_record.mjs +39 -0
  1891. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_ref.d.mts +2 -0
  1892. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_ref.mjs +31 -0
  1893. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_tuple.d.mts +2 -0
  1894. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_tuple.mjs +32 -0
  1895. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_type.d.mts +2 -0
  1896. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_type.mjs +22 -0
  1897. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_union.d.mts +2 -0
  1898. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/from_union.mjs +39 -0
  1899. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/has.d.mts +5 -0
  1900. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/has.mjs +93 -0
  1901. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/index.d.mts +3 -0
  1902. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/codec/index.mjs +3 -0
  1903. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/convert.d.mts +13 -0
  1904. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/convert.mjs +15 -0
  1905. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_additional.d.mts +6 -0
  1906. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_additional.mjs +18 -0
  1907. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_array.d.mts +2 -0
  1908. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_array.mjs +7 -0
  1909. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_bigint.d.mts +2 -0
  1910. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_bigint.mjs +6 -0
  1911. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_boolean.d.mts +2 -0
  1912. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_boolean.mjs +6 -0
  1913. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_cyclic.d.mts +2 -0
  1914. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_cyclic.mjs +6 -0
  1915. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_enum.d.mts +2 -0
  1916. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_enum.mjs +6 -0
  1917. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_integer.d.mts +2 -0
  1918. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_integer.mjs +6 -0
  1919. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_intersect.d.mts +2 -0
  1920. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_intersect.mjs +8 -0
  1921. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_literal.d.mts +2 -0
  1922. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_literal.mjs +44 -0
  1923. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_null.d.mts +2 -0
  1924. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_null.mjs +6 -0
  1925. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_number.d.mts +2 -0
  1926. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_number.mjs +6 -0
  1927. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_object.d.mts +2 -0
  1928. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_object.mjs +28 -0
  1929. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_record.d.mts +2 -0
  1930. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_record.mjs +23 -0
  1931. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_ref.d.mts +2 -0
  1932. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_ref.mjs +8 -0
  1933. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_string.d.mts +2 -0
  1934. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_string.mjs +6 -0
  1935. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_template_literal.d.mts +2 -0
  1936. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_template_literal.mjs +6 -0
  1937. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_tuple.d.mts +2 -0
  1938. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_tuple.mjs +11 -0
  1939. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_type.d.mts +2 -0
  1940. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_type.mjs +43 -0
  1941. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_undefined.d.mts +2 -0
  1942. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_undefined.mjs +6 -0
  1943. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_union.d.mts +2 -0
  1944. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_union.mjs +13 -0
  1945. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_void.d.mts +2 -0
  1946. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/from_void.mjs +6 -0
  1947. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/index.d.mts +1 -0
  1948. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/index.mjs +1 -0
  1949. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/index.d.mts +1 -0
  1950. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/index.mjs +1 -0
  1951. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try.d.mts +8 -0
  1952. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try.mjs +8 -0
  1953. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_array.d.mts +2 -0
  1954. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_array.mjs +6 -0
  1955. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_bigint.d.mts +2 -0
  1956. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_bigint.mjs +45 -0
  1957. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_boolean.d.mts +2 -0
  1958. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_boolean.mjs +41 -0
  1959. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_null.d.mts +2 -0
  1960. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_null.mjs +44 -0
  1961. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_number.d.mts +2 -0
  1962. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_number.mjs +44 -0
  1963. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_result.d.mts +8 -0
  1964. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_result.mjs +17 -0
  1965. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_string.d.mts +2 -0
  1966. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_string.mjs +12 -0
  1967. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_undefined.d.mts +2 -0
  1968. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/convert/try/try_undefined.mjs +44 -0
  1969. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/create.d.mts +5 -0
  1970. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/create.mjs +11 -0
  1971. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/error.d.mts +5 -0
  1972. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/error.mjs +7 -0
  1973. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_array.d.mts +2 -0
  1974. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_array.mjs +10 -0
  1975. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_bigint.d.mts +2 -0
  1976. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_bigint.mjs +7 -0
  1977. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_boolean.d.mts +2 -0
  1978. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_boolean.mjs +4 -0
  1979. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_constructor.d.mts +2 -0
  1980. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_constructor.mjs +10 -0
  1981. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_cyclic.d.mts +2 -0
  1982. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_cyclic.mjs +6 -0
  1983. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_default.d.mts +3 -0
  1984. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_default.mjs +10 -0
  1985. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_enum.d.mts +2 -0
  1986. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_enum.mjs +6 -0
  1987. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_function.d.mts +2 -0
  1988. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_function.mjs +6 -0
  1989. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_integer.d.mts +2 -0
  1990. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_integer.mjs +8 -0
  1991. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_intersect.d.mts +2 -0
  1992. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_intersect.mjs +8 -0
  1993. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_literal.d.mts +2 -0
  1994. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_literal.mjs +4 -0
  1995. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_never.d.mts +2 -0
  1996. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_never.mjs +5 -0
  1997. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_null.d.mts +2 -0
  1998. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_null.mjs +4 -0
  1999. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_number.d.mts +2 -0
  2000. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_number.mjs +8 -0
  2001. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_object.d.mts +2 -0
  2002. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_object.mjs +9 -0
  2003. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_record.d.mts +2 -0
  2004. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_record.mjs +8 -0
  2005. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_ref.d.mts +2 -0
  2006. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_ref.mjs +9 -0
  2007. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_string.d.mts +2 -0
  2008. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_string.mjs +9 -0
  2009. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_symbol.d.mts +2 -0
  2010. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_symbol.mjs +4 -0
  2011. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_template_literal.d.mts +2 -0
  2012. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_template_literal.mjs +11 -0
  2013. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_tuple.d.mts +2 -0
  2014. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_tuple.mjs +5 -0
  2015. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_type.d.mts +2 -0
  2016. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_type.mjs +61 -0
  2017. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_undefined.d.mts +2 -0
  2018. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_undefined.mjs +4 -0
  2019. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_union.d.mts +2 -0
  2020. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_union.mjs +9 -0
  2021. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_void.d.mts +2 -0
  2022. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/from_void.mjs +4 -0
  2023. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/index.d.mts +2 -0
  2024. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/create/index.mjs +2 -0
  2025. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/default.d.mts +13 -0
  2026. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/default.mjs +15 -0
  2027. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_array.d.mts +2 -0
  2028. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_array.mjs +12 -0
  2029. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_cyclic.d.mts +2 -0
  2030. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_cyclic.mjs +7 -0
  2031. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_default.d.mts +3 -0
  2032. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_default.mjs +13 -0
  2033. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_intersect.d.mts +2 -0
  2034. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_intersect.mjs +9 -0
  2035. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_object.d.mts +2 -0
  2036. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_object.mjs +32 -0
  2037. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_record.d.mts +2 -0
  2038. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_record.mjs +26 -0
  2039. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_ref.d.mts +2 -0
  2040. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_ref.mjs +9 -0
  2041. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_tuple.d.mts +2 -0
  2042. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_tuple.mjs +14 -0
  2043. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_type.d.mts +2 -0
  2044. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_type.mjs +25 -0
  2045. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_union.d.mts +2 -0
  2046. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/from_union.mjs +14 -0
  2047. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/index.d.mts +1 -0
  2048. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/default/index.mjs +1 -0
  2049. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/diff.d.mts +10 -0
  2050. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/diff.mjs +135 -0
  2051. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/edit.d.mts +24 -0
  2052. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/edit.mjs +17 -0
  2053. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/index.d.mts +3 -0
  2054. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/index.mjs +3 -0
  2055. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/patch.d.mts +8 -0
  2056. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/delta/patch.mjs +42 -0
  2057. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/equal/equal.d.mts +2 -0
  2058. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/equal/equal.mjs +6 -0
  2059. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/equal/index.d.mts +1 -0
  2060. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/equal/index.mjs +1 -0
  2061. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/errors/errors.d.mts +16 -0
  2062. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/errors/errors.mjs +17 -0
  2063. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/errors/index.d.mts +1 -0
  2064. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/errors/index.mjs +1 -0
  2065. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/hash/hash.d.mts +6 -0
  2066. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/hash/hash.mjs +10 -0
  2067. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/hash/index.d.mts +1 -0
  2068. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/hash/index.mjs +1 -0
  2069. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/index.d.mts +20 -0
  2070. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/index.mjs +29 -0
  2071. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/parse/index.d.mts +1 -0
  2072. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/parse/index.mjs +1 -0
  2073. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/parse/parse.d.mts +11 -0
  2074. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/parse/parse.mjs +47 -0
  2075. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pipeline/index.d.mts +1 -0
  2076. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pipeline/index.mjs +1 -0
  2077. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pipeline/pipeline.d.mts +10 -0
  2078. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pipeline/pipeline.mjs +15 -0
  2079. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pointer/index.d.mts +1 -0
  2080. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/pointer/index.mjs +1 -0
  2081. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/error.d.mts +7 -0
  2082. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/error.mjs +8 -0
  2083. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_array.d.mts +2 -0
  2084. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_array.mjs +39 -0
  2085. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_enum.d.mts +2 -0
  2086. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_enum.mjs +6 -0
  2087. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_intersect.d.mts +2 -0
  2088. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_intersect.mjs +8 -0
  2089. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_object.d.mts +2 -0
  2090. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_object.mjs +33 -0
  2091. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_record.d.mts +2 -0
  2092. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_record.mjs +33 -0
  2093. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_ref.d.mts +2 -0
  2094. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_ref.mjs +9 -0
  2095. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_template_literal.d.mts +2 -0
  2096. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_template_literal.mjs +7 -0
  2097. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_tuple.d.mts +2 -0
  2098. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_tuple.mjs +12 -0
  2099. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_type.d.mts +2 -0
  2100. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_type.mjs +88 -0
  2101. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_union.d.mts +2 -0
  2102. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_union.mjs +24 -0
  2103. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_unknown.d.mts +2 -0
  2104. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/from_unknown.mjs +12 -0
  2105. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/index.d.mts +1 -0
  2106. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/index.mjs +1 -0
  2107. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/repair.d.mts +17 -0
  2108. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/repair/repair.mjs +20 -0
  2109. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/index.d.mts +3 -0
  2110. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/index.mjs +4 -0
  2111. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/optional_undefined.d.mts +2 -0
  2112. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/optional_undefined.mjs +15 -0
  2113. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +7 -0
  2114. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/union_priority_sort.mjs +72 -0
  2115. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/union_score_select.d.mts +3 -0
  2116. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/shared/union_score_select.mjs +51 -0
  2117. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/value.d.mts +15 -0
  2118. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/build/value/value.mjs +15 -0
  2119. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/license +23 -0
  2120. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/package.json +87 -0
  2121. package/node_modules/@earendil-works/pi-protocol/node_modules/typebox/readme.md +370 -0
  2122. package/node_modules/@earendil-works/pi-protocol/package.json +48 -0
  2123. package/node_modules/@earendil-works/pi-telemetry/README.md +464 -0
  2124. package/node_modules/@earendil-works/pi-telemetry/dist/index.d.ts +194 -0
  2125. package/node_modules/@earendil-works/pi-telemetry/dist/index.d.ts.map +1 -0
  2126. package/node_modules/@earendil-works/pi-telemetry/dist/index.js +18 -0
  2127. package/node_modules/@earendil-works/pi-telemetry/dist/index.js.map +1 -0
  2128. package/node_modules/@earendil-works/pi-telemetry/dist/memory.d.ts +26 -0
  2129. package/node_modules/@earendil-works/pi-telemetry/dist/memory.d.ts.map +1 -0
  2130. package/node_modules/@earendil-works/pi-telemetry/dist/memory.js +154 -0
  2131. package/node_modules/@earendil-works/pi-telemetry/dist/memory.js.map +1 -0
  2132. package/node_modules/@earendil-works/pi-telemetry/dist/noop.d.ts +4 -0
  2133. package/node_modules/@earendil-works/pi-telemetry/dist/noop.d.ts.map +1 -0
  2134. package/node_modules/@earendil-works/pi-telemetry/dist/noop.js +18 -0
  2135. package/node_modules/@earendil-works/pi-telemetry/dist/noop.js.map +1 -0
  2136. package/node_modules/@earendil-works/pi-telemetry/dist/testing/conformance.d.ts +4 -0
  2137. package/node_modules/@earendil-works/pi-telemetry/dist/testing/conformance.d.ts.map +1 -0
  2138. package/node_modules/@earendil-works/pi-telemetry/dist/testing/conformance.js +294 -0
  2139. package/node_modules/@earendil-works/pi-telemetry/dist/testing/conformance.js.map +1 -0
  2140. package/node_modules/@earendil-works/pi-telemetry/dist/testing/index.d.ts +3 -0
  2141. package/node_modules/@earendil-works/pi-telemetry/dist/testing/index.d.ts.map +1 -0
  2142. package/node_modules/@earendil-works/pi-telemetry/dist/testing/index.js +2 -0
  2143. package/node_modules/@earendil-works/pi-telemetry/dist/testing/index.js.map +1 -0
  2144. package/node_modules/@earendil-works/pi-telemetry/dist/testing/types.d.ts +16 -0
  2145. package/node_modules/@earendil-works/pi-telemetry/dist/testing/types.d.ts.map +1 -0
  2146. package/node_modules/@earendil-works/pi-telemetry/dist/testing/types.js +2 -0
  2147. package/node_modules/@earendil-works/pi-telemetry/dist/testing/types.js.map +1 -0
  2148. package/node_modules/@earendil-works/pi-telemetry/package.json +47 -0
  2149. package/node_modules/@earendil-works/pi-tui/README.md +77 -14
  2150. package/node_modules/@earendil-works/pi-tui/dist/components/alt-screen-flash.d.ts +13 -0
  2151. package/node_modules/@earendil-works/pi-tui/dist/components/alt-screen-flash.d.ts.map +1 -0
  2152. package/node_modules/@earendil-works/pi-tui/dist/components/alt-screen-flash.js +37 -0
  2153. package/node_modules/@earendil-works/pi-tui/dist/components/alt-screen-flash.js.map +1 -0
  2154. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +1 -1
  2155. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +11 -0
  2156. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +1 -1
  2157. package/node_modules/@earendil-works/pi-tui/dist/components/h-stack.d.ts +7 -0
  2158. package/node_modules/@earendil-works/pi-tui/dist/components/h-stack.d.ts.map +1 -0
  2159. package/node_modules/@earendil-works/pi-tui/dist/components/h-stack.js +43 -0
  2160. package/node_modules/@earendil-works/pi-tui/dist/components/h-stack.js.map +1 -0
  2161. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts +4 -0
  2162. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
  2163. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +128 -2
  2164. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
  2165. package/node_modules/@earendil-works/pi-tui/dist/components/scroll-view.d.ts +51 -0
  2166. package/node_modules/@earendil-works/pi-tui/dist/components/scroll-view.d.ts.map +1 -0
  2167. package/node_modules/@earendil-works/pi-tui/dist/components/scroll-view.js +173 -0
  2168. package/node_modules/@earendil-works/pi-tui/dist/components/scroll-view.js.map +1 -0
  2169. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +1 -1
  2170. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js +3 -6
  2171. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +1 -1
  2172. package/node_modules/@earendil-works/pi-tui/dist/components/stack.d.ts +32 -0
  2173. package/node_modules/@earendil-works/pi-tui/dist/components/stack.d.ts.map +1 -0
  2174. package/node_modules/@earendil-works/pi-tui/dist/components/stack.js +111 -0
  2175. package/node_modules/@earendil-works/pi-tui/dist/components/stack.js.map +1 -0
  2176. package/node_modules/@earendil-works/pi-tui/dist/components/v-stack.d.ts +8 -0
  2177. package/node_modules/@earendil-works/pi-tui/dist/components/v-stack.d.ts.map +1 -0
  2178. package/node_modules/@earendil-works/pi-tui/dist/components/v-stack.js +26 -0
  2179. package/node_modules/@earendil-works/pi-tui/dist/components/v-stack.js.map +1 -0
  2180. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +9 -2
  2181. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  2182. package/node_modules/@earendil-works/pi-tui/dist/index.js +10 -2
  2183. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  2184. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +54 -4
  2185. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +1 -1
  2186. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js +39 -4
  2187. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +1 -1
  2188. package/node_modules/@earendil-works/pi-tui/dist/latex.d.ts +10 -0
  2189. package/node_modules/@earendil-works/pi-tui/dist/latex.d.ts.map +1 -0
  2190. package/node_modules/@earendil-works/pi-tui/dist/latex.js +1264 -0
  2191. package/node_modules/@earendil-works/pi-tui/dist/latex.js.map +1 -0
  2192. package/node_modules/@earendil-works/pi-tui/dist/layout-node.d.ts +40 -0
  2193. package/node_modules/@earendil-works/pi-tui/dist/layout-node.d.ts.map +1 -0
  2194. package/node_modules/@earendil-works/pi-tui/dist/layout-node.js +6 -0
  2195. package/node_modules/@earendil-works/pi-tui/dist/layout-node.js.map +1 -0
  2196. package/node_modules/@earendil-works/pi-tui/dist/layout.d.ts +40 -0
  2197. package/node_modules/@earendil-works/pi-tui/dist/layout.d.ts.map +1 -0
  2198. package/node_modules/@earendil-works/pi-tui/dist/layout.js +314 -0
  2199. package/node_modules/@earendil-works/pi-tui/dist/layout.js.map +1 -0
  2200. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +1 -1
  2201. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +10 -3
  2202. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +1 -1
  2203. package/node_modules/@earendil-works/pi-tui/dist/terminal-colors.d.ts.map +1 -1
  2204. package/node_modules/@earendil-works/pi-tui/dist/terminal-colors.js +1 -1
  2205. package/node_modules/@earendil-works/pi-tui/dist/terminal-colors.js.map +1 -1
  2206. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +21 -0
  2207. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
  2208. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +128 -3
  2209. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
  2210. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +1 -0
  2211. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  2212. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +10 -7
  2213. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  2214. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts +97 -0
  2215. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -0
  2216. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +902 -0
  2217. package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -0
  2218. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.d.ts +39 -0
  2219. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.d.ts.map +1 -0
  2220. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js +533 -0
  2221. package/node_modules/@earendil-works/pi-tui/dist/tui-main-screen.js.map +1 -0
  2222. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts +75 -38
  2223. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  2224. package/node_modules/@earendil-works/pi-tui/dist/tui.js +98 -573
  2225. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  2226. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts +11 -0
  2227. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts.map +1 -1
  2228. package/node_modules/@earendil-works/pi-tui/dist/utils.js +119 -6
  2229. package/node_modules/@earendil-works/pi-tui/dist/utils.js.map +1 -1
  2230. package/node_modules/@earendil-works/pi-tui/native/darwin/README.md +20 -0
  2231. package/node_modules/@earendil-works/pi-tui/native/darwin/build.sh +62 -0
  2232. package/node_modules/@earendil-works/pi-tui/native/darwin/src/darwin-modifiers.c +70 -0
  2233. package/node_modules/@earendil-works/pi-tui/native/win32/README.md +22 -0
  2234. package/node_modules/@earendil-works/pi-tui/native/win32/build.mjs +229 -0
  2235. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node +0 -0
  2236. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-x64/win32-console-mode.node +0 -0
  2237. package/node_modules/@earendil-works/pi-tui/native/win32/src/win32-console-mode.c +119 -0
  2238. package/node_modules/@earendil-works/pi-tui/package.json +9 -1
  2239. package/node_modules/@types/node/README.md +1 -1
  2240. package/node_modules/@types/node/child_process.d.ts +0 -1
  2241. package/node_modules/@types/node/crypto.d.ts +6 -6
  2242. package/node_modules/@types/node/dns/promises.d.ts +5 -5
  2243. package/node_modules/@types/node/dns.d.ts +5 -5
  2244. package/node_modules/@types/node/fs.d.ts +7 -0
  2245. package/node_modules/@types/node/http.d.ts +30 -0
  2246. package/node_modules/@types/node/http2.d.ts +4 -4
  2247. package/node_modules/@types/node/os.d.ts +30 -30
  2248. package/node_modules/@types/node/package.json +2 -2
  2249. package/node_modules/@types/node/perf_hooks.d.ts +2 -1
  2250. package/node_modules/@types/node/process.d.ts +42 -43
  2251. package/node_modules/@types/node/quic.d.ts +1049 -84
  2252. package/node_modules/@types/node/sqlite.d.ts +14 -1
  2253. package/node_modules/@types/node/stream/iter.d.ts +3 -2
  2254. package/node_modules/@types/node/test.d.ts +61 -0
  2255. package/node_modules/@types/node/v8.d.ts +20 -23
  2256. package/node_modules/grok-mermaid/CHANGELOG.md +40 -0
  2257. package/node_modules/grok-mermaid/LICENSE +205 -0
  2258. package/node_modules/grok-mermaid/README.md +191 -0
  2259. package/node_modules/grok-mermaid/dist/ansi.d.ts +16 -0
  2260. package/node_modules/grok-mermaid/dist/ansi.d.ts.map +1 -0
  2261. package/node_modules/grok-mermaid/dist/ansi.js +23 -0
  2262. package/node_modules/grok-mermaid/dist/ansi.js.map +1 -0
  2263. package/node_modules/grok-mermaid/dist/canvas.d.ts +87 -0
  2264. package/node_modules/grok-mermaid/dist/canvas.d.ts.map +1 -0
  2265. package/node_modules/grok-mermaid/dist/canvas.js +366 -0
  2266. package/node_modules/grok-mermaid/dist/canvas.js.map +1 -0
  2267. package/node_modules/grok-mermaid/dist/graph.d.ts +74 -0
  2268. package/node_modules/grok-mermaid/dist/graph.d.ts.map +1 -0
  2269. package/node_modules/grok-mermaid/dist/graph.js +91 -0
  2270. package/node_modules/grok-mermaid/dist/graph.js.map +1 -0
  2271. package/node_modules/grok-mermaid/dist/index.d.ts +32 -0
  2272. package/node_modules/grok-mermaid/dist/index.d.ts.map +1 -0
  2273. package/node_modules/grok-mermaid/dist/index.js +100 -0
  2274. package/node_modules/grok-mermaid/dist/index.js.map +1 -0
  2275. package/node_modules/grok-mermaid/dist/labels.d.ts +62 -0
  2276. package/node_modules/grok-mermaid/dist/labels.d.ts.map +1 -0
  2277. package/node_modules/grok-mermaid/dist/labels.js +324 -0
  2278. package/node_modules/grok-mermaid/dist/labels.js.map +1 -0
  2279. package/node_modules/grok-mermaid/dist/layout-seq.d.ts +12 -0
  2280. package/node_modules/grok-mermaid/dist/layout-seq.d.ts.map +1 -0
  2281. package/node_modules/grok-mermaid/dist/layout-seq.js +194 -0
  2282. package/node_modules/grok-mermaid/dist/layout-seq.js.map +1 -0
  2283. package/node_modules/grok-mermaid/dist/layout.d.ts +87 -0
  2284. package/node_modules/grok-mermaid/dist/layout.d.ts.map +1 -0
  2285. package/node_modules/grok-mermaid/dist/layout.js +881 -0
  2286. package/node_modules/grok-mermaid/dist/layout.js.map +1 -0
  2287. package/node_modules/grok-mermaid/dist/parse.d.ts +83 -0
  2288. package/node_modules/grok-mermaid/dist/parse.d.ts.map +1 -0
  2289. package/node_modules/grok-mermaid/dist/parse.js +1108 -0
  2290. package/node_modules/grok-mermaid/dist/parse.js.map +1 -0
  2291. package/node_modules/grok-mermaid/dist/source-box.d.ts +18 -0
  2292. package/node_modules/grok-mermaid/dist/source-box.d.ts.map +1 -0
  2293. package/node_modules/grok-mermaid/dist/source-box.js +78 -0
  2294. package/node_modules/grok-mermaid/dist/source-box.js.map +1 -0
  2295. package/node_modules/grok-mermaid/dist/types.d.ts +42 -0
  2296. package/node_modules/grok-mermaid/dist/types.d.ts.map +1 -0
  2297. package/node_modules/grok-mermaid/dist/types.js +1 -0
  2298. package/node_modules/grok-mermaid/dist/types.js.map +1 -0
  2299. package/node_modules/grok-mermaid/dist/width-data.d.ts +2 -0
  2300. package/node_modules/grok-mermaid/dist/width-data.d.ts.map +1 -0
  2301. package/node_modules/grok-mermaid/dist/width-data.js +994 -0
  2302. package/node_modules/grok-mermaid/dist/width-data.js.map +1 -0
  2303. package/node_modules/grok-mermaid/dist/width.d.ts +18 -0
  2304. package/node_modules/grok-mermaid/dist/width.d.ts.map +1 -0
  2305. package/node_modules/grok-mermaid/dist/width.js +76 -0
  2306. package/node_modules/grok-mermaid/dist/width.js.map +1 -0
  2307. package/node_modules/grok-mermaid/package.json +49 -0
  2308. package/node_modules/grok-mermaid/src/ansi.ts +34 -0
  2309. package/node_modules/grok-mermaid/src/canvas.ts +373 -0
  2310. package/node_modules/grok-mermaid/src/graph.ts +142 -0
  2311. package/node_modules/grok-mermaid/src/index.ts +104 -0
  2312. package/node_modules/grok-mermaid/src/labels.ts +326 -0
  2313. package/node_modules/grok-mermaid/src/layout-seq.ts +203 -0
  2314. package/node_modules/grok-mermaid/src/layout.ts +1015 -0
  2315. package/node_modules/grok-mermaid/src/parse.ts +1150 -0
  2316. package/node_modules/grok-mermaid/src/source-box.ts +89 -0
  2317. package/node_modules/grok-mermaid/src/types.ts +43 -0
  2318. package/node_modules/grok-mermaid/src/width-data.ts +993 -0
  2319. package/node_modules/grok-mermaid/src/width.ts +74 -0
  2320. package/node_modules/undici/README.md +8 -2
  2321. package/node_modules/undici/docs/docs/api/Agent.md +248 -44
  2322. package/node_modules/undici/docs/docs/api/BalancedPool.md +246 -48
  2323. package/node_modules/undici/docs/docs/api/CacheStorage.md +171 -13
  2324. package/node_modules/undici/docs/docs/api/CacheStore.md +294 -98
  2325. package/node_modules/undici/docs/docs/api/Client.md +369 -179
  2326. package/node_modules/undici/docs/docs/api/ClientStats.md +80 -14
  2327. package/node_modules/undici/docs/docs/api/Connector.md +118 -36
  2328. package/node_modules/undici/docs/docs/api/ContentType.md +65 -25
  2329. package/node_modules/undici/docs/docs/api/Cookies.md +122 -71
  2330. package/node_modules/undici/docs/docs/api/Debug.md +34 -18
  2331. package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +364 -164
  2332. package/node_modules/undici/docs/docs/api/Dispatcher.md +485 -1102
  2333. package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +101 -87
  2334. package/node_modules/undici/docs/docs/api/Errors.md +503 -40
  2335. package/node_modules/undici/docs/docs/api/EventSource.md +294 -32
  2336. package/node_modules/undici/docs/docs/api/Fetch.md +680 -31
  2337. package/node_modules/undici/docs/docs/api/GlobalInstallation.md +78 -98
  2338. package/node_modules/undici/docs/docs/api/H2CClient.md +298 -176
  2339. package/node_modules/undici/docs/docs/api/Interceptors.md +414 -0
  2340. package/node_modules/undici/docs/docs/api/MockAgent.md +333 -314
  2341. package/node_modules/undici/docs/docs/api/MockCallHistory.md +272 -98
  2342. package/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +189 -26
  2343. package/node_modules/undici/docs/docs/api/MockClient.md +151 -33
  2344. package/node_modules/undici/docs/docs/api/MockErrors.md +56 -5
  2345. package/node_modules/undici/docs/docs/api/MockPool.md +321 -258
  2346. package/node_modules/undici/docs/docs/api/Pool.md +235 -43
  2347. package/node_modules/undici/docs/docs/api/PoolStats.md +119 -13
  2348. package/node_modules/undici/docs/docs/api/ProxyAgent.md +179 -160
  2349. package/node_modules/undici/docs/docs/api/RedirectHandler.md +238 -63
  2350. package/node_modules/undici/docs/docs/api/RetryAgent.md +113 -26
  2351. package/node_modules/undici/docs/docs/api/RetryHandler.md +161 -77
  2352. package/node_modules/undici/docs/docs/api/RoundRobinPool.md +166 -72
  2353. package/node_modules/undici/docs/docs/api/SnapshotAgent.md +264 -542
  2354. package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +162 -187
  2355. package/node_modules/undici/docs/docs/api/Util.md +68 -11
  2356. package/node_modules/undici/docs/docs/api/WebSocket.md +475 -80
  2357. package/node_modules/undici/docs/docs/api/api-lifecycle.md +100 -32
  2358. package/node_modules/undici/docs/docs/best-practices/client-certificate.md +2 -0
  2359. package/node_modules/undici/docs/docs/best-practices/crawling.md +3 -1
  2360. package/node_modules/undici/docs/docs/best-practices/migrating-from-v7-to-v8.md +6 -4
  2361. package/node_modules/undici/docs/docs/best-practices/mocking-request.md +9 -7
  2362. package/node_modules/undici/docs/docs/best-practices/proxy.md +3 -1
  2363. package/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +10 -8
  2364. package/node_modules/undici/docs/docs/best-practices/writing-tests.md +2 -0
  2365. package/node_modules/undici/docs/docs/{GettingStarted.md → getting-started.md} +22 -19
  2366. package/node_modules/undici/docs/docs/index.md +784 -0
  2367. package/node_modules/undici/docs/docs/site.json +125 -0
  2368. package/node_modules/undici/docs/docs/type-map.json +79 -0
  2369. package/node_modules/undici/lib/api/api-request.js +7 -1
  2370. package/node_modules/undici/lib/api/readable.js +47 -2
  2371. package/node_modules/undici/lib/cache/memory-cache-store.js +54 -9
  2372. package/node_modules/undici/lib/cache/sqlite-cache-store.js +7 -1
  2373. package/node_modules/undici/lib/core/errors.js +20 -0
  2374. package/node_modules/undici/lib/core/request.js +14 -3
  2375. package/node_modules/undici/lib/core/util.js +30 -2
  2376. package/node_modules/undici/lib/dispatcher/agent.js +3 -3
  2377. package/node_modules/undici/lib/dispatcher/client-h1.js +65 -8
  2378. package/node_modules/undici/lib/dispatcher/client-h2.js +265 -142
  2379. package/node_modules/undici/lib/dispatcher/proxy-agent.js +40 -6
  2380. package/node_modules/undici/lib/global.js +36 -16
  2381. package/node_modules/undici/lib/handler/cache-handler.js +269 -61
  2382. package/node_modules/undici/lib/handler/cache-revalidation-handler.js +13 -3
  2383. package/node_modules/undici/lib/handler/redirect-handler.js +6 -2
  2384. package/node_modules/undici/lib/handler/retry-handler.js +87 -23
  2385. package/node_modules/undici/lib/interceptor/cache.js +159 -52
  2386. package/node_modules/undici/lib/interceptor/decompress.js +9 -2
  2387. package/node_modules/undici/lib/mock/mock-interceptor.js +25 -7
  2388. package/node_modules/undici/lib/mock/mock-utils.js +39 -10
  2389. package/node_modules/undici/lib/util/cache.js +372 -68
  2390. package/node_modules/undici/lib/util/date.js +23 -6
  2391. package/node_modules/undici/lib/web/cookies/parse.js +3 -2
  2392. package/node_modules/undici/lib/web/cookies/util.js +79 -9
  2393. package/node_modules/undici/lib/web/eventsource/util.js +1 -1
  2394. package/node_modules/undici/lib/web/fetch/body.js +2 -1
  2395. package/node_modules/undici/lib/web/fetch/constants.js +1 -1
  2396. package/node_modules/undici/lib/web/fetch/index.js +11 -2
  2397. package/node_modules/undici/lib/web/fetch/response.js +1 -3
  2398. package/node_modules/undici/lib/web/fetch/util.js +4 -1
  2399. package/node_modules/undici/package.json +2 -2
  2400. package/node_modules/undici/types/client.d.ts +3 -3
  2401. package/node_modules/undici/types/cookies.d.ts +1 -1
  2402. package/node_modules/undici/types/dispatcher.d.ts +3 -3
  2403. package/node_modules/undici/types/errors.d.ts +10 -0
  2404. package/node_modules/undici/types/handlers.d.ts +2 -0
  2405. package/node_modules/undici/types/mock-interceptor.d.ts +5 -1
  2406. package/node_modules/undici/types/proxy-agent.d.ts +7 -0
  2407. package/package.json +8 -8
  2408. package/src/prism-extensions/integrations/ai-memory-errors.ts +53 -0
  2409. package/src/prism-extensions/integrations/ai-memory-system.ts +357 -8
  2410. package/src/prism-extensions/integrations/research-tools.ts +4 -2
  2411. package/src/prism-extensions/integrations/youtube.ts +292 -0
  2412. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.d.ts +0 -26
  2413. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.d.ts.map +0 -1
  2414. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.js +0 -103
  2415. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.js.map +0 -1
  2416. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.d.ts +0 -42
  2417. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.d.ts.map +0 -1
  2418. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.js +0 -293
  2419. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.js.map +0 -1
  2420. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.d.ts +0 -18
  2421. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.d.ts.map +0 -1
  2422. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.js +0 -42
  2423. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.js.map +0 -1
  2424. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.d.ts +0 -33
  2425. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.d.ts.map +0 -1
  2426. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.js +0 -168
  2427. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.js.map +0 -1
  2428. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.d.ts +0 -11
  2429. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.d.ts.map +0 -1
  2430. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.js +0 -39
  2431. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Proxy stream function for apps that route LLM calls through a server.\n * The server manages auth and proxies requests to LLM providers.\n */\n\n// Internal import for JSON parsing utility\nimport {\n\ttype AssistantMessage,\n\ttype AssistantMessageEvent,\n\ttype Context,\n\tEventStream,\n\ttype Model,\n\tparseStreamingJson,\n\ttype SimpleStreamOptions,\n\ttype StopReason,\n\ttype ToolCall,\n} from \"@earendil-works/pi-ai\";\n\n// Create stream class matching ProxyMessageEventStream\nclass ProxyMessageEventStream extends EventStream<AssistantMessageEvent, AssistantMessage> {\n\tconstructor() {\n\t\tsuper(\n\t\t\t(event) => event.type === \"done\" || event.type === \"error\",\n\t\t\t(event) => {\n\t\t\t\tif (event.type === \"done\") return event.message;\n\t\t\t\tif (event.type === \"error\") return event.error;\n\t\t\t\tthrow new Error(\"Unexpected event type\");\n\t\t\t},\n\t\t);\n\t}\n}\n\n/**\n * Proxy event types - server sends these with partial field stripped to reduce bandwidth.\n */\nexport type ProxyAssistantMessageEvent =\n\t| { type: \"start\" }\n\t| { type: \"text_start\"; contentIndex: number }\n\t| { type: \"text_delta\"; contentIndex: number; delta: string }\n\t| { type: \"text_end\"; contentIndex: number; contentSignature?: string }\n\t| { type: \"thinking_start\"; contentIndex: number }\n\t| { type: \"thinking_delta\"; contentIndex: number; delta: string }\n\t| { type: \"thinking_end\"; contentIndex: number; contentSignature?: string }\n\t| { type: \"toolcall_start\"; contentIndex: number; id: string; toolName: string }\n\t| { type: \"toolcall_delta\"; contentIndex: number; delta: string }\n\t| { type: \"toolcall_end\"; contentIndex: number }\n\t| {\n\t\t\ttype: \"done\";\n\t\t\treason: Extract<StopReason, \"stop\" | \"length\" | \"toolUse\">;\n\t\t\tusage: AssistantMessage[\"usage\"];\n\t }\n\t| {\n\t\t\ttype: \"error\";\n\t\t\treason: Extract<StopReason, \"aborted\" | \"error\">;\n\t\t\terrorMessage?: string;\n\t\t\tusage: AssistantMessage[\"usage\"];\n\t };\n\ntype ProxySerializableStreamOptions = Pick<\n\tSimpleStreamOptions,\n\t| \"temperature\"\n\t| \"maxTokens\"\n\t| \"reasoning\"\n\t| \"cacheRetention\"\n\t| \"sessionId\"\n\t| \"headers\"\n\t| \"metadata\"\n\t| \"transport\"\n\t| \"thinkingBudgets\"\n\t| \"maxRetryDelayMs\"\n>;\n\nexport interface ProxyStreamOptions extends ProxySerializableStreamOptions {\n\t/** Local abort signal for the proxy request */\n\tsignal?: AbortSignal;\n\t/** Auth token for the proxy server */\n\tauthToken: string;\n\t/** Proxy server URL (e.g., \"https://genai.example.com\") */\n\tproxyUrl: string;\n}\n\n/**\n * Stream function that proxies through a server instead of calling LLM providers directly.\n * The server strips the partial field from delta events to reduce bandwidth.\n * We reconstruct the partial message client-side.\n *\n * Use this as the `streamFn` option when creating an Agent that needs to go through a proxy.\n *\n * @example\n * ```typescript\n * const agent = new Agent({\n * streamFn: (model, context, options) =>\n * streamProxy(model, context, {\n * ...options,\n * authToken: await getAuthToken(),\n * proxyUrl: \"https://genai.example.com\",\n * }),\n * });\n * ```\n */\nfunction buildProxyRequestOptions(options: ProxyStreamOptions): ProxySerializableStreamOptions {\n\treturn {\n\t\ttemperature: options.temperature,\n\t\tmaxTokens: options.maxTokens,\n\t\treasoning: options.reasoning,\n\t\tcacheRetention: options.cacheRetention,\n\t\tsessionId: options.sessionId,\n\t\theaders: options.headers,\n\t\tmetadata: options.metadata,\n\t\ttransport: options.transport,\n\t\tthinkingBudgets: options.thinkingBudgets,\n\t\tmaxRetryDelayMs: options.maxRetryDelayMs,\n\t};\n}\n\nexport function streamProxy(model: Model<any>, context: Context, options: ProxyStreamOptions): ProxyMessageEventStream {\n\tconst stream = new ProxyMessageEventStream();\n\n\t(async () => {\n\t\t// Initialize the partial message that we'll build up from events\n\t\tconst partial: AssistantMessage = {\n\t\t\trole: \"assistant\",\n\t\t\tstopReason: \"pending\",\n\t\t\tcontent: [],\n\t\t\tapi: model.api,\n\t\t\tprovider: model.provider,\n\t\t\tmodel: model.id,\n\t\t\tusage: {\n\t\t\t\tinput: 0,\n\t\t\t\toutput: 0,\n\t\t\t\tcacheRead: 0,\n\t\t\t\tcacheWrite: 0,\n\t\t\t\ttotalTokens: 0,\n\t\t\t\tcost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, total: 0 },\n\t\t\t},\n\t\t\ttimestamp: Date.now(),\n\t\t};\n\n\t\tlet reader: ReadableStreamDefaultReader<Uint8Array> | undefined;\n\n\t\tconst abortHandler = () => {\n\t\t\tif (reader) {\n\t\t\t\treader.cancel(\"Request aborted by user\").catch(() => {});\n\t\t\t}\n\t\t};\n\n\t\tif (options.signal) {\n\t\t\toptions.signal.addEventListener(\"abort\", abortHandler);\n\t\t}\n\n\t\ttry {\n\t\t\tconst response = await fetch(`${options.proxyUrl}/api/stream`, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: {\n\t\t\t\t\tAuthorization: `Bearer ${options.authToken}`,\n\t\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t},\n\t\t\t\tbody: JSON.stringify({\n\t\t\t\t\tmodel,\n\t\t\t\t\tcontext,\n\t\t\t\t\toptions: buildProxyRequestOptions(options),\n\t\t\t\t}),\n\t\t\t\tsignal: options.signal,\n\t\t\t});\n\n\t\t\tif (!response.ok) {\n\t\t\t\tlet errorMessage = `Proxy error: ${response.status} ${response.statusText}`;\n\t\t\t\ttry {\n\t\t\t\t\tconst errorData = (await response.json()) as { error?: string };\n\t\t\t\t\tif (errorData.error) {\n\t\t\t\t\t\terrorMessage = `Proxy error: ${errorData.error}`;\n\t\t\t\t\t}\n\t\t\t\t} catch {\n\t\t\t\t\t// Couldn't parse error response\n\t\t\t\t}\n\t\t\t\tthrow new Error(errorMessage);\n\t\t\t}\n\n\t\t\treader = response.body!.getReader();\n\t\t\tconst decoder = new TextDecoder();\n\t\t\tlet buffer = \"\";\n\n\t\t\twhile (true) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (done) break;\n\n\t\t\t\tif (options.signal?.aborted) {\n\t\t\t\t\tthrow new Error(\"Request aborted by user\");\n\t\t\t\t}\n\n\t\t\t\tbuffer += decoder.decode(value, { stream: true });\n\t\t\t\tconst lines = buffer.split(\"\\n\");\n\t\t\t\tbuffer = lines.pop() || \"\";\n\n\t\t\t\tfor (const line of lines) {\n\t\t\t\t\tif (line.startsWith(\"data: \")) {\n\t\t\t\t\t\tconst data = line.slice(6).trim();\n\t\t\t\t\t\tif (data) {\n\t\t\t\t\t\t\tconst proxyEvent = JSON.parse(data) as ProxyAssistantMessageEvent;\n\t\t\t\t\t\t\tconst event = processProxyEvent(proxyEvent, partial);\n\t\t\t\t\t\t\tif (event) {\n\t\t\t\t\t\t\t\tstream.push(event);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.signal?.aborted) {\n\t\t\t\tthrow new Error(\"Request aborted by user\");\n\t\t\t}\n\n\t\t\tstream.end();\n\t\t} catch (error) {\n\t\t\tconst errorMessage = error instanceof Error ? error.message : String(error);\n\t\t\tconst reason = options.signal?.aborted ? \"aborted\" : \"error\";\n\t\t\tpartial.stopReason = reason;\n\t\t\tpartial.errorMessage = errorMessage;\n\t\t\tstream.push({\n\t\t\t\ttype: \"error\",\n\t\t\t\treason,\n\t\t\t\terror: partial,\n\t\t\t});\n\t\t\tstream.end();\n\t\t} finally {\n\t\t\tif (options.signal) {\n\t\t\t\toptions.signal.removeEventListener(\"abort\", abortHandler);\n\t\t\t}\n\t\t}\n\t})();\n\n\treturn stream;\n}\n\n/**\n * Process a proxy event and update the partial message.\n */\nfunction processProxyEvent(\n\tproxyEvent: ProxyAssistantMessageEvent,\n\tpartial: AssistantMessage,\n): AssistantMessageEvent | undefined {\n\tswitch (proxyEvent.type) {\n\t\tcase \"start\":\n\t\t\treturn { type: \"start\", partial };\n\n\t\tcase \"text_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = { type: \"text\", text: \"\" };\n\t\t\treturn { type: \"text_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"text_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"text\") {\n\t\t\t\tcontent.text += proxyEvent.delta;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"text_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received text_delta for non-text content\");\n\t\t}\n\n\t\tcase \"text_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"text\") {\n\t\t\t\tcontent.textSignature = proxyEvent.contentSignature;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"text_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tcontent: content.text,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received text_end for non-text content\");\n\t\t}\n\n\t\tcase \"thinking_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = { type: \"thinking\", thinking: \"\" };\n\t\t\treturn { type: \"thinking_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"thinking_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"thinking\") {\n\t\t\t\tcontent.thinking += proxyEvent.delta;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"thinking_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received thinking_delta for non-thinking content\");\n\t\t}\n\n\t\tcase \"thinking_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"thinking\") {\n\t\t\t\tcontent.thinkingSignature = proxyEvent.contentSignature;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"thinking_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tcontent: content.thinking,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received thinking_end for non-thinking content\");\n\t\t}\n\n\t\tcase \"toolcall_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = {\n\t\t\t\ttype: \"toolCall\",\n\t\t\t\tid: proxyEvent.id,\n\t\t\t\tname: proxyEvent.toolName,\n\t\t\t\targuments: {},\n\t\t\t\tpartialJson: \"\",\n\t\t\t} satisfies ToolCall & { partialJson: string } as ToolCall;\n\t\t\treturn { type: \"toolcall_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"toolcall_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"toolCall\") {\n\t\t\t\t(content as any).partialJson += proxyEvent.delta;\n\t\t\t\tcontent.arguments = parseStreamingJson((content as any).partialJson) || {};\n\t\t\t\tpartial.content[proxyEvent.contentIndex] = { ...content }; // Trigger reactivity\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"toolcall_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received toolcall_delta for non-toolCall content\");\n\t\t}\n\n\t\tcase \"toolcall_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"toolCall\") {\n\t\t\t\tdelete (content as any).partialJson;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"toolcall_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\ttoolCall: content,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn undefined;\n\t\t}\n\n\t\tcase \"done\":\n\t\t\tpartial.stopReason = proxyEvent.reason;\n\t\t\tpartial.usage = proxyEvent.usage;\n\t\t\treturn { type: \"done\", reason: proxyEvent.reason, message: partial };\n\n\t\tcase \"error\":\n\t\t\tpartial.stopReason = proxyEvent.reason;\n\t\t\tpartial.errorMessage = proxyEvent.errorMessage;\n\t\t\tpartial.usage = proxyEvent.usage;\n\t\t\treturn { type: \"error\", reason: proxyEvent.reason, error: partial };\n\n\t\tdefault: {\n\t\t\tconst _exhaustiveCheck: never = proxyEvent;\n\t\t\tconsole.warn(`Unhandled proxy event type: ${(proxyEvent as any).type}`);\n\t\t\treturn undefined;\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Proxy stream function for apps that route LLM calls through a server.\n * The server manages auth and proxies requests to LLM providers.\n */\n\n// Internal import for JSON parsing utility\nimport {\n\ttype AssistantMessage,\n\ttype AssistantMessageEvent,\n\ttype Context,\n\tEventStream,\n\ttype Model,\n\tparseStreamingJson,\n\ttype SimpleStreamOptions,\n\ttype StopReason,\n\ttype ToolCall,\n} from \"@earendil-works/pi-ai\";\n\n// Create stream class matching ProxyMessageEventStream\nclass ProxyMessageEventStream extends EventStream<AssistantMessageEvent, AssistantMessage> {\n\tconstructor() {\n\t\tsuper(\n\t\t\t(event) => event.type === \"done\" || event.type === \"error\",\n\t\t\t(event) => {\n\t\t\t\tif (event.type === \"done\") return event.message;\n\t\t\t\tif (event.type === \"error\") return event.error;\n\t\t\t\tthrow new Error(\"Unexpected event type\");\n\t\t\t},\n\t\t);\n\t}\n}\n\n/**\n * Proxy event types - server sends these with partial field stripped to reduce bandwidth.\n */\nexport type ProxyAssistantMessageEvent =\n\t| { type: \"start\" }\n\t| { type: \"text_start\"; contentIndex: number }\n\t| { type: \"text_delta\"; contentIndex: number; delta: string }\n\t| { type: \"text_end\"; contentIndex: number; contentSignature?: string }\n\t| { type: \"thinking_start\"; contentIndex: number }\n\t| { type: \"thinking_delta\"; contentIndex: number; delta: string }\n\t| { type: \"thinking_end\"; contentIndex: number; contentSignature?: string }\n\t| { type: \"toolcall_start\"; contentIndex: number; id: string; toolName: string }\n\t| { type: \"toolcall_delta\"; contentIndex: number; delta: string }\n\t| { type: \"toolcall_end\"; contentIndex: number }\n\t| {\n\t\t\ttype: \"done\";\n\t\t\treason: Extract<StopReason, \"stop\" | \"length\" | \"toolUse\">;\n\t\t\tusage: AssistantMessage[\"usage\"];\n\t }\n\t| {\n\t\t\ttype: \"error\";\n\t\t\treason: Extract<StopReason, \"aborted\" | \"error\">;\n\t\t\terrorMessage?: string;\n\t\t\tusage: AssistantMessage[\"usage\"];\n\t };\n\ntype ProxySerializableStreamOptions = Pick<\n\tSimpleStreamOptions,\n\t| \"temperature\"\n\t| \"samplingParams\"\n\t| \"maxTokens\"\n\t| \"reasoning\"\n\t| \"cacheRetention\"\n\t| \"sessionId\"\n\t| \"headers\"\n\t| \"metadata\"\n\t| \"transport\"\n\t| \"thinkingBudgets\"\n\t| \"maxRetryDelayMs\"\n>;\n\nexport interface ProxyStreamOptions extends ProxySerializableStreamOptions {\n\t/** Local abort signal for the proxy request */\n\tsignal?: AbortSignal;\n\t/** Auth token for the proxy server */\n\tauthToken: string;\n\t/** Proxy server URL (e.g., \"https://genai.example.com\") */\n\tproxyUrl: string;\n}\n\n/**\n * Stream function that proxies through a server instead of calling LLM providers directly.\n * The server strips the partial field from delta events to reduce bandwidth.\n * We reconstruct the partial message client-side.\n *\n * Use this as the `streamFn` option when creating an Agent that needs to go through a proxy.\n *\n * @example\n * ```typescript\n * const agent = new Agent({\n * streamFn: (model, context, options) =>\n * streamProxy(model, context, {\n * ...options,\n * authToken: await getAuthToken(),\n * proxyUrl: \"https://genai.example.com\",\n * }),\n * });\n * ```\n */\nfunction buildProxyRequestOptions(options: ProxyStreamOptions): ProxySerializableStreamOptions {\n\treturn {\n\t\ttemperature: options.temperature,\n\t\tsamplingParams: options.samplingParams,\n\t\tmaxTokens: options.maxTokens,\n\t\treasoning: options.reasoning,\n\t\tcacheRetention: options.cacheRetention,\n\t\tsessionId: options.sessionId,\n\t\theaders: options.headers,\n\t\tmetadata: options.metadata,\n\t\ttransport: options.transport,\n\t\tthinkingBudgets: options.thinkingBudgets,\n\t\tmaxRetryDelayMs: options.maxRetryDelayMs,\n\t};\n}\n\nexport function streamProxy(model: Model<any>, context: Context, options: ProxyStreamOptions): ProxyMessageEventStream {\n\tconst stream = new ProxyMessageEventStream();\n\n\t(async () => {\n\t\t// Initialize the partial message that we'll build up from events\n\t\tconst partial: AssistantMessage = {\n\t\t\trole: \"assistant\",\n\t\t\tstopReason: \"pending\",\n\t\t\tcontent: [],\n\t\t\tapi: model.api,\n\t\t\tprovider: model.provider,\n\t\t\tmodel: model.id,\n\t\t\tusage: {\n\t\t\t\tinput: 0,\n\t\t\t\toutput: 0,\n\t\t\t\tcacheRead: 0,\n\t\t\t\tcacheWrite: 0,\n\t\t\t\ttotalTokens: 0,\n\t\t\t\tcost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, total: 0 },\n\t\t\t},\n\t\t\ttimestamp: Date.now(),\n\t\t};\n\n\t\tlet reader: ReadableStreamDefaultReader<Uint8Array> | undefined;\n\n\t\tconst abortHandler = () => {\n\t\t\tif (reader) {\n\t\t\t\treader.cancel(\"Request aborted by user\").catch(() => {});\n\t\t\t}\n\t\t};\n\n\t\tif (options.signal) {\n\t\t\toptions.signal.addEventListener(\"abort\", abortHandler);\n\t\t}\n\n\t\ttry {\n\t\t\tconst response = await fetch(`${options.proxyUrl}/api/stream`, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: {\n\t\t\t\t\tAuthorization: `Bearer ${options.authToken}`,\n\t\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t},\n\t\t\t\tbody: JSON.stringify({\n\t\t\t\t\tmodel,\n\t\t\t\t\tcontext,\n\t\t\t\t\toptions: buildProxyRequestOptions(options),\n\t\t\t\t}),\n\t\t\t\tsignal: options.signal,\n\t\t\t});\n\n\t\t\tif (!response.ok) {\n\t\t\t\tlet errorMessage = `Proxy error: ${response.status} ${response.statusText}`;\n\t\t\t\ttry {\n\t\t\t\t\tconst errorData = (await response.json()) as { error?: string };\n\t\t\t\t\tif (errorData.error) {\n\t\t\t\t\t\terrorMessage = `Proxy error: ${errorData.error}`;\n\t\t\t\t\t}\n\t\t\t\t} catch {\n\t\t\t\t\t// Couldn't parse error response\n\t\t\t\t}\n\t\t\t\tthrow new Error(errorMessage);\n\t\t\t}\n\n\t\t\treader = response.body!.getReader();\n\t\t\tconst decoder = new TextDecoder();\n\t\t\tlet buffer = \"\";\n\n\t\t\twhile (true) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (done) break;\n\n\t\t\t\tif (options.signal?.aborted) {\n\t\t\t\t\tthrow new Error(\"Request aborted by user\");\n\t\t\t\t}\n\n\t\t\t\tbuffer += decoder.decode(value, { stream: true });\n\t\t\t\tconst lines = buffer.split(\"\\n\");\n\t\t\t\tbuffer = lines.pop() || \"\";\n\n\t\t\t\tfor (const line of lines) {\n\t\t\t\t\tif (line.startsWith(\"data: \")) {\n\t\t\t\t\t\tconst data = line.slice(6).trim();\n\t\t\t\t\t\tif (data) {\n\t\t\t\t\t\t\tconst proxyEvent = JSON.parse(data) as ProxyAssistantMessageEvent;\n\t\t\t\t\t\t\tconst event = processProxyEvent(proxyEvent, partial);\n\t\t\t\t\t\t\tif (event) {\n\t\t\t\t\t\t\t\tstream.push(event);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.signal?.aborted) {\n\t\t\t\tthrow new Error(\"Request aborted by user\");\n\t\t\t}\n\n\t\t\tstream.end();\n\t\t} catch (error) {\n\t\t\tconst errorMessage = error instanceof Error ? error.message : String(error);\n\t\t\tconst reason = options.signal?.aborted ? \"aborted\" : \"error\";\n\t\t\tpartial.stopReason = reason;\n\t\t\tpartial.errorMessage = errorMessage;\n\t\t\tstream.push({\n\t\t\t\ttype: \"error\",\n\t\t\t\treason,\n\t\t\t\terror: partial,\n\t\t\t});\n\t\t\tstream.end();\n\t\t} finally {\n\t\t\tif (options.signal) {\n\t\t\t\toptions.signal.removeEventListener(\"abort\", abortHandler);\n\t\t\t}\n\t\t}\n\t})();\n\n\treturn stream;\n}\n\n/**\n * Process a proxy event and update the partial message.\n */\nfunction processProxyEvent(\n\tproxyEvent: ProxyAssistantMessageEvent,\n\tpartial: AssistantMessage,\n): AssistantMessageEvent | undefined {\n\tswitch (proxyEvent.type) {\n\t\tcase \"start\":\n\t\t\treturn { type: \"start\", partial };\n\n\t\tcase \"text_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = { type: \"text\", text: \"\" };\n\t\t\treturn { type: \"text_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"text_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"text\") {\n\t\t\t\tcontent.text += proxyEvent.delta;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"text_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received text_delta for non-text content\");\n\t\t}\n\n\t\tcase \"text_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"text\") {\n\t\t\t\tcontent.textSignature = proxyEvent.contentSignature;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"text_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tcontent: content.text,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received text_end for non-text content\");\n\t\t}\n\n\t\tcase \"thinking_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = { type: \"thinking\", thinking: \"\" };\n\t\t\treturn { type: \"thinking_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"thinking_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"thinking\") {\n\t\t\t\tcontent.thinking += proxyEvent.delta;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"thinking_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received thinking_delta for non-thinking content\");\n\t\t}\n\n\t\tcase \"thinking_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"thinking\") {\n\t\t\t\tcontent.thinkingSignature = proxyEvent.contentSignature;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"thinking_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tcontent: content.thinking,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received thinking_end for non-thinking content\");\n\t\t}\n\n\t\tcase \"toolcall_start\":\n\t\t\tpartial.content[proxyEvent.contentIndex] = {\n\t\t\t\ttype: \"toolCall\",\n\t\t\t\tid: proxyEvent.id,\n\t\t\t\tname: proxyEvent.toolName,\n\t\t\t\targuments: {},\n\t\t\t\tpartialJson: \"\",\n\t\t\t} satisfies ToolCall & { partialJson: string } as ToolCall;\n\t\t\treturn { type: \"toolcall_start\", contentIndex: proxyEvent.contentIndex, partial };\n\n\t\tcase \"toolcall_delta\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"toolCall\") {\n\t\t\t\t(content as any).partialJson += proxyEvent.delta;\n\t\t\t\tcontent.arguments = parseStreamingJson((content as any).partialJson) || {};\n\t\t\t\tpartial.content[proxyEvent.contentIndex] = { ...content }; // Trigger reactivity\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"toolcall_delta\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\tdelta: proxyEvent.delta,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\tthrow new Error(\"Received toolcall_delta for non-toolCall content\");\n\t\t}\n\n\t\tcase \"toolcall_end\": {\n\t\t\tconst content = partial.content[proxyEvent.contentIndex];\n\t\t\tif (content?.type === \"toolCall\") {\n\t\t\t\tdelete (content as any).partialJson;\n\t\t\t\treturn {\n\t\t\t\t\ttype: \"toolcall_end\",\n\t\t\t\t\tcontentIndex: proxyEvent.contentIndex,\n\t\t\t\t\ttoolCall: content,\n\t\t\t\t\tpartial,\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn undefined;\n\t\t}\n\n\t\tcase \"done\":\n\t\t\tpartial.stopReason = proxyEvent.reason;\n\t\t\tpartial.usage = proxyEvent.usage;\n\t\t\treturn { type: \"done\", reason: proxyEvent.reason, message: partial };\n\n\t\tcase \"error\":\n\t\t\tpartial.stopReason = proxyEvent.reason;\n\t\t\tpartial.errorMessage = proxyEvent.errorMessage;\n\t\t\tpartial.usage = proxyEvent.usage;\n\t\t\treturn { type: \"error\", reason: proxyEvent.reason, error: partial };\n\n\t\tdefault: {\n\t\t\tconst _exhaustiveCheck: never = proxyEvent;\n\t\t\tconsole.warn(`Unhandled proxy event type: ${(proxyEvent as any).type}`);\n\t\t\treturn undefined;\n\t\t}\n\t}\n}\n"]}
@@ -40,6 +40,11 @@ export type AgentToolCall = Extract<AssistantMessage["content"][number], {
40
40
  export interface BeforeToolCallResult {
41
41
  block?: boolean;
42
42
  reason?: string;
43
+ /**
44
+ * Hint that the agent should stop after the current tool batch when this call is blocked.
45
+ * Early termination only happens when every finalized tool result in the batch sets this to true.
46
+ */
47
+ terminate?: boolean;
43
48
  }
44
49
  /**
45
50
  * Partial override returned from `afterToolCall`.
@@ -228,6 +233,7 @@ export interface AgentLoopConfig extends SimpleStreamOptions {
228
233
  * Called before a tool is executed, after arguments have been validated.
229
234
  *
230
235
  * Return `{ block: true }` to prevent execution. The loop emits an error tool result instead.
236
+ * A blocked result can also set `terminate: true` to participate in the batch early-termination rule.
231
237
  * The hook receives the agent abort signal and is responsible for honoring it.
232
238
  */
233
239
  beforeToolCall?: (context: BeforeToolCallContext, signal?: AbortSignal) => Promise<BeforeToolCallResult | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n\tApi,\n\tAssistantMessage,\n\tAssistantMessageEvent,\n\tAssistantMessageEventStream,\n\tContext,\n\tImageContent,\n\tMessage,\n\tModel,\n\tSimpleStreamOptions,\n\tTextContent,\n\tTool,\n\tToolResultMessage,\n\tUsage,\n} from \"@earendil-works/pi-ai\";\nimport type { Static, TSchema } from \"typebox\";\n\n/**\n * Stream function used by the agent loop. `Models.streamSimple` satisfies\n * this shape.\n *\n * Contract:\n * - Must not throw or return a rejected promise for request/model/runtime failures.\n * - Must return an AssistantMessageEventStream.\n * - Failures must be encoded in the returned stream via protocol events and a\n * final AssistantMessage with stopReason \"error\" or \"aborted\" and errorMessage.\n */\nexport type StreamFn = (\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n) => AssistantMessageEventStream | Promise<AssistantMessageEventStream>;\n\n/**\n * Configuration for how tool calls from a single assistant message are executed.\n *\n * - \"sequential\": each tool call is prepared, executed, and finalized before the next one starts.\n * - \"parallel\": tool calls are prepared sequentially, then allowed tools execute concurrently.\n * `tool_execution_end` is emitted in tool completion order after each tool is finalized,\n * while tool-result message artifacts are emitted later in assistant source order.\n */\nexport type ToolExecutionMode = \"sequential\" | \"parallel\";\n\n/**\n * Controls how many queued user messages are injected when the agent loop reaches a queue drain point.\n *\n * - \"all\": drain and inject every queued message at that point.\n * - \"one-at-a-time\": drain and inject only the oldest queued message, leaving the rest queued for later drain points.\n */\nexport type QueueMode = \"all\" | \"one-at-a-time\";\n\n/** A single tool call content block emitted by an assistant message. */\nexport type AgentToolCall = Extract<AssistantMessage[\"content\"][number], { type: \"toolCall\" }>;\n\n/**\n * Result returned from `beforeToolCall`.\n *\n * Returning `{ block: true }` prevents the tool from executing. The loop emits an error tool result instead.\n * `reason` becomes the text shown in that error result. If omitted, a default blocked message is used.\n */\nexport interface BeforeToolCallResult {\n\tblock?: boolean;\n\treason?: string;\n}\n\n/**\n * Partial override returned from `afterToolCall`.\n *\n * Merge semantics are field-by-field:\n * - `content`: if provided, replaces the tool result content array in full\n * - `details`: if provided, replaces the tool result details value in full\n * - `isError`: if provided, replaces the tool result error flag\n * - `usage`: if provided, replaces the tool result usage\n * - `terminate`: if provided, replaces the early-termination hint\n *\n * Omitted fields keep the original executed tool result values.\n * There is no deep merge for `content`, `details`, or `usage`.\n */\nexport interface AfterToolCallResult {\n\tcontent?: (TextContent | ImageContent)[];\n\tdetails?: unknown;\n\tisError?: boolean;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/** Context passed to `beforeToolCall`. */\nexport interface BeforeToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** Current agent context at the time the tool call is prepared. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `afterToolCall`. */\nexport interface AfterToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** The executed tool result before any `afterToolCall` overrides are applied. */\n\tresult: AgentToolResult<any>;\n\t/** Whether the executed tool result is currently treated as an error. */\n\tisError: boolean;\n\t/** Current agent context at the time the tool call is finalized. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `shouldStopAfterTurn`. */\nexport interface ShouldStopAfterTurnContext {\n\t/** The assistant message that completed the turn. */\n\tmessage: AssistantMessage;\n\t/** Tool result messages passed to the preceding `turn_end` event. */\n\ttoolResults: ToolResultMessage[];\n\t/** Current agent context after the turn's assistant message and tool results have been appended. */\n\tcontext: AgentContext;\n\t/** Messages that this loop invocation will return if it exits at this point. Prompt runs include the initial prompt messages; continuation runs do not include pre-existing context messages. */\n\tnewMessages: AgentMessage[];\n}\n\n/** Replacement runtime state used by the agent loop before starting another provider request. */\nexport interface AgentLoopTurnUpdate {\n\t/** Context for the next provider request. */\n\tcontext?: AgentContext;\n\t/** Model for the next provider request. */\n\tmodel?: Model<any>;\n\t/** Thinking level for the next provider request. */\n\tthinkingLevel?: ThinkingLevel;\n}\n\nexport interface PrepareNextTurnContext extends ShouldStopAfterTurnContext {}\n\nexport interface AgentLoopConfig extends SimpleStreamOptions {\n\tmodel: Model<any>;\n\n\t/**\n\t * Converts AgentMessage[] to LLM-compatible Message[] before each LLM call.\n\t *\n\t * Each AgentMessage must be converted to a UserMessage, AssistantMessage, or ToolResultMessage\n\t * that the LLM can understand. AgentMessages that cannot be converted (e.g., UI-only notifications,\n\t * status messages) should be filtered out.\n\t *\n\t * Contract: must not throw or reject. Return a safe fallback value instead.\n\t * Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t *\n\t * @example\n\t * ```typescript\n\t * convertToLlm: (messages) => messages.flatMap(m => {\n\t * if (m.role === \"custom\") {\n\t * // Convert custom message to user message\n\t * return [{ role: \"user\", content: m.content, timestamp: m.timestamp }];\n\t * }\n\t * if (m.role === \"notification\") {\n\t * // Filter out UI-only messages\n\t * return [];\n\t * }\n\t * // Pass through standard LLM messages\n\t * return [m];\n\t * })\n\t * ```\n\t */\n\tconvertToLlm: (messages: AgentMessage[]) => Message[] | Promise<Message[]>;\n\n\t/**\n\t * Optional transform applied to the context before `convertToLlm`.\n\t *\n\t * Use this for operations that work at the AgentMessage level:\n\t * - Context window management (pruning old messages)\n\t * - Injecting context from external sources\n\t *\n\t * Contract: must not throw or reject. Return the original messages or another\n\t * safe fallback value instead.\n\t *\n\t * @example\n\t * ```typescript\n\t * transformContext: async (messages) => {\n\t * if (estimateTokens(messages) > MAX_TOKENS) {\n\t * return pruneOldMessages(messages);\n\t * }\n\t * return messages;\n\t * }\n\t * ```\n\t */\n\ttransformContext?: (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\n\t/**\n\t * Resolves an API key dynamically for each LLM call.\n\t *\n\t * Useful for short-lived OAuth tokens (e.g., GitHub Copilot) that may expire\n\t * during long-running tool execution phases.\n\t *\n\t * Contract: must not throw or reject. Return undefined when no key is available.\n\t */\n\tgetApiKey?: (provider: string) => Promise<string | undefined> | string | undefined;\n\n\t/**\n\t * Called after each turn fully completes and `turn_end` has been emitted.\n\t *\n\t * If it returns true, the loop emits `agent_end` and exits before polling steering or follow-up queues,\n\t * without starting another LLM call. The current assistant response and any tool executions finish normally.\n\t *\n\t * Use this to request a graceful stop after the current turn, e.g. before context gets too full.\n\t *\n\t * Contract: must not throw or reject. Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t */\n\tshouldStopAfterTurn?: (context: ShouldStopAfterTurnContext) => boolean | Promise<boolean>;\n\n\t/**\n\t * Called after `turn_end` and before the loop decides whether another provider request should start.\n\t * Return replacement context/model/thinking state to affect the next turn in this run.\n\t * Return undefined to keep using the current context/config.\n\t */\n\tprepareNextTurn?: (\n\t\tcontext: PrepareNextTurnContext,\n\t) => AgentLoopTurnUpdate | undefined | Promise<AgentLoopTurnUpdate | undefined>;\n\n\t/**\n\t * Returns steering messages to inject into the conversation mid-run.\n\t *\n\t * Called after the current assistant turn finishes executing its tool calls, unless `shouldStopAfterTurn` exits first.\n\t * If messages are returned, they are added to the context before the next LLM call.\n\t * Tool calls from the current assistant message are not skipped.\n\t *\n\t * Use this for \"steering\" the agent while it's working.\n\t *\n\t * Contract: must not throw or reject. Return [] when no steering messages are available.\n\t */\n\tgetSteeringMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Returns follow-up messages to process after the agent would otherwise stop.\n\t *\n\t * Called when the agent has no more tool calls and no steering messages.\n\t * If messages are returned, they're added to the context and the agent\n\t * continues with another turn.\n\t *\n\t * Use this for follow-up messages that should wait until the agent finishes.\n\t *\n\t * Contract: must not throw or reject. Return [] when no follow-up messages are available.\n\t */\n\tgetFollowUpMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Tool execution mode.\n\t * - \"sequential\": execute tool calls one by one\n\t * - \"parallel\": preflight tool calls sequentially, then execute allowed tools concurrently;\n\t * emit `tool_execution_end` in tool completion order after each tool is finalized,\n\t * then emit tool-result message artifacts later in assistant source order\n\t *\n\t * Default: \"parallel\"\n\t */\n\ttoolExecution?: ToolExecutionMode;\n\n\t/**\n\t * Called before a tool is executed, after arguments have been validated.\n\t *\n\t * Return `{ block: true }` to prevent execution. The loop emits an error tool result instead.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tbeforeToolCall?: (context: BeforeToolCallContext, signal?: AbortSignal) => Promise<BeforeToolCallResult | undefined>;\n\n\t/**\n\t * Called after a tool finishes executing, before `tool_execution_end` and tool-result message events are emitted.\n\t *\n\t * Return an `AfterToolCallResult` to override parts of the executed tool result:\n\t * - `content` replaces the full content array\n\t * - `details` replaces the full details payload\n\t * - `isError` replaces the error flag\n\t * - `usage` replaces the tool result usage\n\t * - `terminate` replaces the early-termination hint\n\t *\n\t * Any omitted fields keep their original values. No deep merge is performed.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tafterToolCall?: (context: AfterToolCallContext, signal?: AbortSignal) => Promise<AfterToolCallResult | undefined>;\n}\n\n/**\n * Thinking/reasoning level for models that support it.\n * Note: \"xhigh\" and \"max\" are only supported by selected model families. Use model\n * thinking-level metadata from @earendil-works/pi-ai to detect support for a concrete model.\n */\nexport type ThinkingLevel = \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"max\";\n\n/**\n * Extensible interface for custom app messages.\n * Apps can extend via declaration merging:\n *\n * @example\n * ```typescript\n * declare module \"@mariozechner/agent\" {\n * interface CustomAgentMessages {\n * artifact: ArtifactMessage;\n * notification: NotificationMessage;\n * }\n * }\n * ```\n */\nexport interface CustomAgentMessages {\n\t// Empty by default - apps extend via declaration merging\n}\n\n/**\n * AgentMessage: Union of LLM messages + custom messages.\n * This abstraction allows apps to add custom message types while maintaining\n * type safety and compatibility with the base LLM messages.\n */\nexport type AgentMessage = Message | CustomAgentMessages[keyof CustomAgentMessages];\n\n/**\n * Public agent state.\n *\n * `tools` and `messages` use accessor properties so implementations can copy\n * assigned arrays before storing them.\n */\nexport interface AgentState {\n\t/** System prompt sent with each model request. */\n\tsystemPrompt: string;\n\t/** Active model used for future turns. */\n\tmodel: Model<any>;\n\t/** Requested reasoning level for future turns. */\n\tthinkingLevel: ThinkingLevel;\n\t/** Available tools. Assigning a new array copies the top-level array. */\n\tset tools(tools: AgentTool<any>[]);\n\tget tools(): AgentTool<any>[];\n\t/** Conversation transcript. Assigning a new array copies the top-level array. */\n\tset messages(messages: AgentMessage[]);\n\tget messages(): AgentMessage[];\n\t/**\n\t * True while the agent is processing a prompt or continuation.\n\t *\n\t * This remains true until awaited `agent_end` listeners settle.\n\t */\n\treadonly isStreaming: boolean;\n\t/** Partial assistant message for the current streamed response, if any. */\n\treadonly streamingMessage?: AgentMessage;\n\t/** Tool call ids currently executing. */\n\treadonly pendingToolCalls: ReadonlySet<string>;\n\t/** Error message from the most recent failed or aborted assistant turn, if any. */\n\treadonly errorMessage?: string;\n}\n\n/** Final or partial result produced by a tool. */\nexport interface AgentToolResult<T> {\n\t/** Text or image content returned to the model. */\n\tcontent: (TextContent | ImageContent)[];\n\t/** Arbitrary structured details for logs or UI rendering. */\n\tdetails: T;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/** Names of tools introduced by this result and available from this transcript point onward. */\n\taddedToolNames?: string[];\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Callback used by tools to stream partial execution updates.\n *\n * The callback is scoped to the current `execute()` invocation. Calls made after\n * the tool promise settles are ignored.\n */\nexport type AgentToolUpdateCallback<T = any> = (partialResult: AgentToolResult<T>) => void;\n\n/** Tool definition used by the agent runtime. */\nexport interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any> extends Tool<TParameters> {\n\t/** Human-readable label for UI display. */\n\tlabel: string;\n\t/**\n\t * Optional compatibility shim for raw tool-call arguments before schema validation.\n\t * Must return an object that matches `TParameters`.\n\t */\n\tprepareArguments?: (args: unknown) => Static<TParameters>;\n\t/** Execute the tool call. Throw on failure instead of encoding errors in `content`. */\n\texecute: (\n\t\ttoolCallId: string,\n\t\tparams: Static<TParameters>,\n\t\tsignal?: AbortSignal,\n\t\tonUpdate?: AgentToolUpdateCallback<TDetails>,\n\t) => Promise<AgentToolResult<TDetails>>;\n\t/**\n\t * Per-tool execution mode override.\n\t * - \"sequential\": this tool must execute one at a time with other tool calls.\n\t * - \"parallel\": this tool can execute concurrently with other tool calls.\n\t *\n\t * If omitted, the default execution mode applies.\n\t */\n\texecutionMode?: ToolExecutionMode;\n}\n\n/** Context snapshot passed into the low-level agent loop. */\nexport interface AgentContext {\n\t/** System prompt included with the request. */\n\tsystemPrompt: string;\n\t/** Transcript visible to the model. */\n\tmessages: AgentMessage[];\n\t/** Tools available for this run. */\n\ttools?: AgentTool<any>[];\n}\n\n/**\n * Events emitted by the Agent for UI updates.\n *\n * `agent_end` is the last event emitted for a run, but awaited `Agent.subscribe()`\n * listeners for that event are still part of run settlement. The agent becomes\n * idle only after those listeners finish.\n */\nexport type AgentEvent =\n\t// Agent lifecycle\n\t| { type: \"agent_start\" }\n\t| { type: \"agent_end\"; messages: AgentMessage[] }\n\t// Turn lifecycle - a turn is one assistant response + any tool calls/results\n\t| { type: \"turn_start\" }\n\t| { type: \"turn_end\"; message: AgentMessage; toolResults: ToolResultMessage[] }\n\t// Message lifecycle - emitted for user, assistant, and toolResult messages\n\t| { type: \"message_start\"; message: AgentMessage }\n\t// Only emitted for assistant messages during streaming\n\t| { type: \"message_update\"; message: AgentMessage; assistantMessageEvent: AssistantMessageEvent }\n\t| { type: \"message_end\"; message: AgentMessage }\n\t// Tool execution lifecycle\n\t| { type: \"tool_execution_start\"; toolCallId: string; toolName: string; args: any }\n\t| { type: \"tool_execution_update\"; toolCallId: string; toolName: string; args: any; partialResult: any }\n\t| { type: \"tool_execution_end\"; toolCallId: string; toolName: string; result: any; isError: boolean };\n"]}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n\tApi,\n\tAssistantMessage,\n\tAssistantMessageEvent,\n\tAssistantMessageEventStream,\n\tContext,\n\tImageContent,\n\tMessage,\n\tModel,\n\tSimpleStreamOptions,\n\tTextContent,\n\tTool,\n\tToolResultMessage,\n\tUsage,\n} from \"@earendil-works/pi-ai\";\nimport type { Static, TSchema } from \"typebox\";\n\n/**\n * Stream function used by the agent loop. `Models.streamSimple` satisfies\n * this shape.\n *\n * Contract:\n * - Must not throw or return a rejected promise for request/model/runtime failures.\n * - Must return an AssistantMessageEventStream.\n * - Failures must be encoded in the returned stream via protocol events and a\n * final AssistantMessage with stopReason \"error\" or \"aborted\" and errorMessage.\n */\nexport type StreamFn = (\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n) => AssistantMessageEventStream | Promise<AssistantMessageEventStream>;\n\n/**\n * Configuration for how tool calls from a single assistant message are executed.\n *\n * - \"sequential\": each tool call is prepared, executed, and finalized before the next one starts.\n * - \"parallel\": tool calls are prepared sequentially, then allowed tools execute concurrently.\n * `tool_execution_end` is emitted in tool completion order after each tool is finalized,\n * while tool-result message artifacts are emitted later in assistant source order.\n */\nexport type ToolExecutionMode = \"sequential\" | \"parallel\";\n\n/**\n * Controls how many queued user messages are injected when the agent loop reaches a queue drain point.\n *\n * - \"all\": drain and inject every queued message at that point.\n * - \"one-at-a-time\": drain and inject only the oldest queued message, leaving the rest queued for later drain points.\n */\nexport type QueueMode = \"all\" | \"one-at-a-time\";\n\n/** A single tool call content block emitted by an assistant message. */\nexport type AgentToolCall = Extract<AssistantMessage[\"content\"][number], { type: \"toolCall\" }>;\n\n/**\n * Result returned from `beforeToolCall`.\n *\n * Returning `{ block: true }` prevents the tool from executing. The loop emits an error tool result instead.\n * `reason` becomes the text shown in that error result. If omitted, a default blocked message is used.\n */\nexport interface BeforeToolCallResult {\n\tblock?: boolean;\n\treason?: string;\n\t/**\n\t * Hint that the agent should stop after the current tool batch when this call is blocked.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Partial override returned from `afterToolCall`.\n *\n * Merge semantics are field-by-field:\n * - `content`: if provided, replaces the tool result content array in full\n * - `details`: if provided, replaces the tool result details value in full\n * - `isError`: if provided, replaces the tool result error flag\n * - `usage`: if provided, replaces the tool result usage\n * - `terminate`: if provided, replaces the early-termination hint\n *\n * Omitted fields keep the original executed tool result values.\n * There is no deep merge for `content`, `details`, or `usage`.\n */\nexport interface AfterToolCallResult {\n\tcontent?: (TextContent | ImageContent)[];\n\tdetails?: unknown;\n\tisError?: boolean;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/** Context passed to `beforeToolCall`. */\nexport interface BeforeToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** Current agent context at the time the tool call is prepared. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `afterToolCall`. */\nexport interface AfterToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** The executed tool result before any `afterToolCall` overrides are applied. */\n\tresult: AgentToolResult<any>;\n\t/** Whether the executed tool result is currently treated as an error. */\n\tisError: boolean;\n\t/** Current agent context at the time the tool call is finalized. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `shouldStopAfterTurn`. */\nexport interface ShouldStopAfterTurnContext {\n\t/** The assistant message that completed the turn. */\n\tmessage: AssistantMessage;\n\t/** Tool result messages passed to the preceding `turn_end` event. */\n\ttoolResults: ToolResultMessage[];\n\t/** Current agent context after the turn's assistant message and tool results have been appended. */\n\tcontext: AgentContext;\n\t/** Messages that this loop invocation will return if it exits at this point. Prompt runs include the initial prompt messages; continuation runs do not include pre-existing context messages. */\n\tnewMessages: AgentMessage[];\n}\n\n/** Replacement runtime state used by the agent loop before starting another provider request. */\nexport interface AgentLoopTurnUpdate {\n\t/** Context for the next provider request. */\n\tcontext?: AgentContext;\n\t/** Model for the next provider request. */\n\tmodel?: Model<any>;\n\t/** Thinking level for the next provider request. */\n\tthinkingLevel?: ThinkingLevel;\n}\n\nexport interface PrepareNextTurnContext extends ShouldStopAfterTurnContext {}\n\nexport interface AgentLoopConfig extends SimpleStreamOptions {\n\tmodel: Model<any>;\n\n\t/**\n\t * Converts AgentMessage[] to LLM-compatible Message[] before each LLM call.\n\t *\n\t * Each AgentMessage must be converted to a UserMessage, AssistantMessage, or ToolResultMessage\n\t * that the LLM can understand. AgentMessages that cannot be converted (e.g., UI-only notifications,\n\t * status messages) should be filtered out.\n\t *\n\t * Contract: must not throw or reject. Return a safe fallback value instead.\n\t * Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t *\n\t * @example\n\t * ```typescript\n\t * convertToLlm: (messages) => messages.flatMap(m => {\n\t * if (m.role === \"custom\") {\n\t * // Convert custom message to user message\n\t * return [{ role: \"user\", content: m.content, timestamp: m.timestamp }];\n\t * }\n\t * if (m.role === \"notification\") {\n\t * // Filter out UI-only messages\n\t * return [];\n\t * }\n\t * // Pass through standard LLM messages\n\t * return [m];\n\t * })\n\t * ```\n\t */\n\tconvertToLlm: (messages: AgentMessage[]) => Message[] | Promise<Message[]>;\n\n\t/**\n\t * Optional transform applied to the context before `convertToLlm`.\n\t *\n\t * Use this for operations that work at the AgentMessage level:\n\t * - Context window management (pruning old messages)\n\t * - Injecting context from external sources\n\t *\n\t * Contract: must not throw or reject. Return the original messages or another\n\t * safe fallback value instead.\n\t *\n\t * @example\n\t * ```typescript\n\t * transformContext: async (messages) => {\n\t * if (estimateTokens(messages) > MAX_TOKENS) {\n\t * return pruneOldMessages(messages);\n\t * }\n\t * return messages;\n\t * }\n\t * ```\n\t */\n\ttransformContext?: (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\n\t/**\n\t * Resolves an API key dynamically for each LLM call.\n\t *\n\t * Useful for short-lived OAuth tokens (e.g., GitHub Copilot) that may expire\n\t * during long-running tool execution phases.\n\t *\n\t * Contract: must not throw or reject. Return undefined when no key is available.\n\t */\n\tgetApiKey?: (provider: string) => Promise<string | undefined> | string | undefined;\n\n\t/**\n\t * Called after each turn fully completes and `turn_end` has been emitted.\n\t *\n\t * If it returns true, the loop emits `agent_end` and exits before polling steering or follow-up queues,\n\t * without starting another LLM call. The current assistant response and any tool executions finish normally.\n\t *\n\t * Use this to request a graceful stop after the current turn, e.g. before context gets too full.\n\t *\n\t * Contract: must not throw or reject. Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t */\n\tshouldStopAfterTurn?: (context: ShouldStopAfterTurnContext) => boolean | Promise<boolean>;\n\n\t/**\n\t * Called after `turn_end` and before the loop decides whether another provider request should start.\n\t * Return replacement context/model/thinking state to affect the next turn in this run.\n\t * Return undefined to keep using the current context/config.\n\t */\n\tprepareNextTurn?: (\n\t\tcontext: PrepareNextTurnContext,\n\t) => AgentLoopTurnUpdate | undefined | Promise<AgentLoopTurnUpdate | undefined>;\n\n\t/**\n\t * Returns steering messages to inject into the conversation mid-run.\n\t *\n\t * Called after the current assistant turn finishes executing its tool calls, unless `shouldStopAfterTurn` exits first.\n\t * If messages are returned, they are added to the context before the next LLM call.\n\t * Tool calls from the current assistant message are not skipped.\n\t *\n\t * Use this for \"steering\" the agent while it's working.\n\t *\n\t * Contract: must not throw or reject. Return [] when no steering messages are available.\n\t */\n\tgetSteeringMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Returns follow-up messages to process after the agent would otherwise stop.\n\t *\n\t * Called when the agent has no more tool calls and no steering messages.\n\t * If messages are returned, they're added to the context and the agent\n\t * continues with another turn.\n\t *\n\t * Use this for follow-up messages that should wait until the agent finishes.\n\t *\n\t * Contract: must not throw or reject. Return [] when no follow-up messages are available.\n\t */\n\tgetFollowUpMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Tool execution mode.\n\t * - \"sequential\": execute tool calls one by one\n\t * - \"parallel\": preflight tool calls sequentially, then execute allowed tools concurrently;\n\t * emit `tool_execution_end` in tool completion order after each tool is finalized,\n\t * then emit tool-result message artifacts later in assistant source order\n\t *\n\t * Default: \"parallel\"\n\t */\n\ttoolExecution?: ToolExecutionMode;\n\n\t/**\n\t * Called before a tool is executed, after arguments have been validated.\n\t *\n\t * Return `{ block: true }` to prevent execution. The loop emits an error tool result instead.\n\t * A blocked result can also set `terminate: true` to participate in the batch early-termination rule.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tbeforeToolCall?: (context: BeforeToolCallContext, signal?: AbortSignal) => Promise<BeforeToolCallResult | undefined>;\n\n\t/**\n\t * Called after a tool finishes executing, before `tool_execution_end` and tool-result message events are emitted.\n\t *\n\t * Return an `AfterToolCallResult` to override parts of the executed tool result:\n\t * - `content` replaces the full content array\n\t * - `details` replaces the full details payload\n\t * - `isError` replaces the error flag\n\t * - `usage` replaces the tool result usage\n\t * - `terminate` replaces the early-termination hint\n\t *\n\t * Any omitted fields keep their original values. No deep merge is performed.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tafterToolCall?: (context: AfterToolCallContext, signal?: AbortSignal) => Promise<AfterToolCallResult | undefined>;\n}\n\n/**\n * Thinking/reasoning level for models that support it.\n * Note: \"xhigh\" and \"max\" are only supported by selected model families. Use model\n * thinking-level metadata from @earendil-works/pi-ai to detect support for a concrete model.\n */\nexport type ThinkingLevel = \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"max\";\n\n/**\n * Extensible interface for custom app messages.\n * Apps can extend via declaration merging:\n *\n * @example\n * ```typescript\n * declare module \"@mariozechner/agent\" {\n * interface CustomAgentMessages {\n * artifact: ArtifactMessage;\n * notification: NotificationMessage;\n * }\n * }\n * ```\n */\nexport interface CustomAgentMessages {\n\t// Empty by default - apps extend via declaration merging\n}\n\n/**\n * AgentMessage: Union of LLM messages + custom messages.\n * This abstraction allows apps to add custom message types while maintaining\n * type safety and compatibility with the base LLM messages.\n */\nexport type AgentMessage = Message | CustomAgentMessages[keyof CustomAgentMessages];\n\n/**\n * Public agent state.\n *\n * `tools` and `messages` use accessor properties so implementations can copy\n * assigned arrays before storing them.\n */\nexport interface AgentState {\n\t/** System prompt sent with each model request. */\n\tsystemPrompt: string;\n\t/** Active model used for future turns. */\n\tmodel: Model<any>;\n\t/** Requested reasoning level for future turns. */\n\tthinkingLevel: ThinkingLevel;\n\t/** Available tools. Assigning a new array copies the top-level array. */\n\tset tools(tools: AgentTool<any>[]);\n\tget tools(): AgentTool<any>[];\n\t/** Conversation transcript. Assigning a new array copies the top-level array. */\n\tset messages(messages: AgentMessage[]);\n\tget messages(): AgentMessage[];\n\t/**\n\t * True while the agent is processing a prompt or continuation.\n\t *\n\t * This remains true until awaited `agent_end` listeners settle.\n\t */\n\treadonly isStreaming: boolean;\n\t/** Partial assistant message for the current streamed response, if any. */\n\treadonly streamingMessage?: AgentMessage;\n\t/** Tool call ids currently executing. */\n\treadonly pendingToolCalls: ReadonlySet<string>;\n\t/** Error message from the most recent failed or aborted assistant turn, if any. */\n\treadonly errorMessage?: string;\n}\n\n/** Final or partial result produced by a tool. */\nexport interface AgentToolResult<T> {\n\t/** Text or image content returned to the model. */\n\tcontent: (TextContent | ImageContent)[];\n\t/** Arbitrary structured details for logs or UI rendering. */\n\tdetails: T;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/** Names of tools introduced by this result and available from this transcript point onward. */\n\taddedToolNames?: string[];\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Callback used by tools to stream partial execution updates.\n *\n * The callback is scoped to the current `execute()` invocation. Calls made after\n * the tool promise settles are ignored.\n */\nexport type AgentToolUpdateCallback<T = any> = (partialResult: AgentToolResult<T>) => void;\n\n/** Tool definition used by the agent runtime. */\nexport interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any> extends Tool<TParameters> {\n\t/** Human-readable label for UI display. */\n\tlabel: string;\n\t/**\n\t * Optional compatibility shim for raw tool-call arguments before schema validation.\n\t * Must return an object that matches `TParameters`.\n\t */\n\tprepareArguments?: (args: unknown) => Static<TParameters>;\n\t/** Execute the tool call. Throw on failure instead of encoding errors in `content`. */\n\texecute: (\n\t\ttoolCallId: string,\n\t\tparams: Static<TParameters>,\n\t\tsignal?: AbortSignal,\n\t\tonUpdate?: AgentToolUpdateCallback<TDetails>,\n\t) => Promise<AgentToolResult<TDetails>>;\n\t/**\n\t * Per-tool execution mode override.\n\t * - \"sequential\": this tool must execute one at a time with other tool calls.\n\t * - \"parallel\": this tool can execute concurrently with other tool calls.\n\t *\n\t * If omitted, the default execution mode applies.\n\t */\n\texecutionMode?: ToolExecutionMode;\n}\n\n/** Context snapshot passed into the low-level agent loop. */\nexport interface AgentContext {\n\t/** System prompt included with the request. */\n\tsystemPrompt: string;\n\t/** Transcript visible to the model. */\n\tmessages: AgentMessage[];\n\t/** Tools available for this run. */\n\ttools?: AgentTool<any>[];\n}\n\n/**\n * Events emitted by the Agent for UI updates.\n *\n * `agent_end` is the last event emitted for a run, but awaited `Agent.subscribe()`\n * listeners for that event are still part of run settlement. The agent becomes\n * idle only after those listeners finish.\n */\nexport type AgentEvent =\n\t// Agent lifecycle\n\t| { type: \"agent_start\" }\n\t| { type: \"agent_end\"; messages: AgentMessage[] }\n\t// Turn lifecycle - a turn is one assistant response + any tool calls/results\n\t| { type: \"turn_start\" }\n\t| { type: \"turn_end\"; message: AgentMessage; toolResults: ToolResultMessage[] }\n\t// Message lifecycle - emitted for user, assistant, and toolResult messages\n\t| { type: \"message_start\"; message: AgentMessage }\n\t// Only emitted for assistant messages during streaming\n\t| { type: \"message_update\"; message: AgentMessage; assistantMessageEvent: AssistantMessageEvent }\n\t| { type: \"message_end\"; message: AgentMessage }\n\t// Tool execution lifecycle\n\t| { type: \"tool_execution_start\"; toolCallId: string; toolName: string; args: any }\n\t| { type: \"tool_execution_update\"; toolCallId: string; toolName: string; args: any; partialResult: any }\n\t| { type: \"tool_execution_end\"; toolCallId: string; toolName: string; result: any; isError: boolean };\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n\tApi,\n\tAssistantMessage,\n\tAssistantMessageEvent,\n\tAssistantMessageEventStream,\n\tContext,\n\tImageContent,\n\tMessage,\n\tModel,\n\tSimpleStreamOptions,\n\tTextContent,\n\tTool,\n\tToolResultMessage,\n\tUsage,\n} from \"@earendil-works/pi-ai\";\nimport type { Static, TSchema } from \"typebox\";\n\n/**\n * Stream function used by the agent loop. `Models.streamSimple` satisfies\n * this shape.\n *\n * Contract:\n * - Must not throw or return a rejected promise for request/model/runtime failures.\n * - Must return an AssistantMessageEventStream.\n * - Failures must be encoded in the returned stream via protocol events and a\n * final AssistantMessage with stopReason \"error\" or \"aborted\" and errorMessage.\n */\nexport type StreamFn = (\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n) => AssistantMessageEventStream | Promise<AssistantMessageEventStream>;\n\n/**\n * Configuration for how tool calls from a single assistant message are executed.\n *\n * - \"sequential\": each tool call is prepared, executed, and finalized before the next one starts.\n * - \"parallel\": tool calls are prepared sequentially, then allowed tools execute concurrently.\n * `tool_execution_end` is emitted in tool completion order after each tool is finalized,\n * while tool-result message artifacts are emitted later in assistant source order.\n */\nexport type ToolExecutionMode = \"sequential\" | \"parallel\";\n\n/**\n * Controls how many queued user messages are injected when the agent loop reaches a queue drain point.\n *\n * - \"all\": drain and inject every queued message at that point.\n * - \"one-at-a-time\": drain and inject only the oldest queued message, leaving the rest queued for later drain points.\n */\nexport type QueueMode = \"all\" | \"one-at-a-time\";\n\n/** A single tool call content block emitted by an assistant message. */\nexport type AgentToolCall = Extract<AssistantMessage[\"content\"][number], { type: \"toolCall\" }>;\n\n/**\n * Result returned from `beforeToolCall`.\n *\n * Returning `{ block: true }` prevents the tool from executing. The loop emits an error tool result instead.\n * `reason` becomes the text shown in that error result. If omitted, a default blocked message is used.\n */\nexport interface BeforeToolCallResult {\n\tblock?: boolean;\n\treason?: string;\n}\n\n/**\n * Partial override returned from `afterToolCall`.\n *\n * Merge semantics are field-by-field:\n * - `content`: if provided, replaces the tool result content array in full\n * - `details`: if provided, replaces the tool result details value in full\n * - `isError`: if provided, replaces the tool result error flag\n * - `usage`: if provided, replaces the tool result usage\n * - `terminate`: if provided, replaces the early-termination hint\n *\n * Omitted fields keep the original executed tool result values.\n * There is no deep merge for `content`, `details`, or `usage`.\n */\nexport interface AfterToolCallResult {\n\tcontent?: (TextContent | ImageContent)[];\n\tdetails?: unknown;\n\tisError?: boolean;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/** Context passed to `beforeToolCall`. */\nexport interface BeforeToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** Current agent context at the time the tool call is prepared. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `afterToolCall`. */\nexport interface AfterToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** The executed tool result before any `afterToolCall` overrides are applied. */\n\tresult: AgentToolResult<any>;\n\t/** Whether the executed tool result is currently treated as an error. */\n\tisError: boolean;\n\t/** Current agent context at the time the tool call is finalized. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `shouldStopAfterTurn`. */\nexport interface ShouldStopAfterTurnContext {\n\t/** The assistant message that completed the turn. */\n\tmessage: AssistantMessage;\n\t/** Tool result messages passed to the preceding `turn_end` event. */\n\ttoolResults: ToolResultMessage[];\n\t/** Current agent context after the turn's assistant message and tool results have been appended. */\n\tcontext: AgentContext;\n\t/** Messages that this loop invocation will return if it exits at this point. Prompt runs include the initial prompt messages; continuation runs do not include pre-existing context messages. */\n\tnewMessages: AgentMessage[];\n}\n\n/** Replacement runtime state used by the agent loop before starting another provider request. */\nexport interface AgentLoopTurnUpdate {\n\t/** Context for the next provider request. */\n\tcontext?: AgentContext;\n\t/** Model for the next provider request. */\n\tmodel?: Model<any>;\n\t/** Thinking level for the next provider request. */\n\tthinkingLevel?: ThinkingLevel;\n}\n\nexport interface PrepareNextTurnContext extends ShouldStopAfterTurnContext {}\n\nexport interface AgentLoopConfig extends SimpleStreamOptions {\n\tmodel: Model<any>;\n\n\t/**\n\t * Converts AgentMessage[] to LLM-compatible Message[] before each LLM call.\n\t *\n\t * Each AgentMessage must be converted to a UserMessage, AssistantMessage, or ToolResultMessage\n\t * that the LLM can understand. AgentMessages that cannot be converted (e.g., UI-only notifications,\n\t * status messages) should be filtered out.\n\t *\n\t * Contract: must not throw or reject. Return a safe fallback value instead.\n\t * Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t *\n\t * @example\n\t * ```typescript\n\t * convertToLlm: (messages) => messages.flatMap(m => {\n\t * if (m.role === \"custom\") {\n\t * // Convert custom message to user message\n\t * return [{ role: \"user\", content: m.content, timestamp: m.timestamp }];\n\t * }\n\t * if (m.role === \"notification\") {\n\t * // Filter out UI-only messages\n\t * return [];\n\t * }\n\t * // Pass through standard LLM messages\n\t * return [m];\n\t * })\n\t * ```\n\t */\n\tconvertToLlm: (messages: AgentMessage[]) => Message[] | Promise<Message[]>;\n\n\t/**\n\t * Optional transform applied to the context before `convertToLlm`.\n\t *\n\t * Use this for operations that work at the AgentMessage level:\n\t * - Context window management (pruning old messages)\n\t * - Injecting context from external sources\n\t *\n\t * Contract: must not throw or reject. Return the original messages or another\n\t * safe fallback value instead.\n\t *\n\t * @example\n\t * ```typescript\n\t * transformContext: async (messages) => {\n\t * if (estimateTokens(messages) > MAX_TOKENS) {\n\t * return pruneOldMessages(messages);\n\t * }\n\t * return messages;\n\t * }\n\t * ```\n\t */\n\ttransformContext?: (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\n\t/**\n\t * Resolves an API key dynamically for each LLM call.\n\t *\n\t * Useful for short-lived OAuth tokens (e.g., GitHub Copilot) that may expire\n\t * during long-running tool execution phases.\n\t *\n\t * Contract: must not throw or reject. Return undefined when no key is available.\n\t */\n\tgetApiKey?: (provider: string) => Promise<string | undefined> | string | undefined;\n\n\t/**\n\t * Called after each turn fully completes and `turn_end` has been emitted.\n\t *\n\t * If it returns true, the loop emits `agent_end` and exits before polling steering or follow-up queues,\n\t * without starting another LLM call. The current assistant response and any tool executions finish normally.\n\t *\n\t * Use this to request a graceful stop after the current turn, e.g. before context gets too full.\n\t *\n\t * Contract: must not throw or reject. Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t */\n\tshouldStopAfterTurn?: (context: ShouldStopAfterTurnContext) => boolean | Promise<boolean>;\n\n\t/**\n\t * Called after `turn_end` and before the loop decides whether another provider request should start.\n\t * Return replacement context/model/thinking state to affect the next turn in this run.\n\t * Return undefined to keep using the current context/config.\n\t */\n\tprepareNextTurn?: (\n\t\tcontext: PrepareNextTurnContext,\n\t) => AgentLoopTurnUpdate | undefined | Promise<AgentLoopTurnUpdate | undefined>;\n\n\t/**\n\t * Returns steering messages to inject into the conversation mid-run.\n\t *\n\t * Called after the current assistant turn finishes executing its tool calls, unless `shouldStopAfterTurn` exits first.\n\t * If messages are returned, they are added to the context before the next LLM call.\n\t * Tool calls from the current assistant message are not skipped.\n\t *\n\t * Use this for \"steering\" the agent while it's working.\n\t *\n\t * Contract: must not throw or reject. Return [] when no steering messages are available.\n\t */\n\tgetSteeringMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Returns follow-up messages to process after the agent would otherwise stop.\n\t *\n\t * Called when the agent has no more tool calls and no steering messages.\n\t * If messages are returned, they're added to the context and the agent\n\t * continues with another turn.\n\t *\n\t * Use this for follow-up messages that should wait until the agent finishes.\n\t *\n\t * Contract: must not throw or reject. Return [] when no follow-up messages are available.\n\t */\n\tgetFollowUpMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Tool execution mode.\n\t * - \"sequential\": execute tool calls one by one\n\t * - \"parallel\": preflight tool calls sequentially, then execute allowed tools concurrently;\n\t * emit `tool_execution_end` in tool completion order after each tool is finalized,\n\t * then emit tool-result message artifacts later in assistant source order\n\t *\n\t * Default: \"parallel\"\n\t */\n\ttoolExecution?: ToolExecutionMode;\n\n\t/**\n\t * Called before a tool is executed, after arguments have been validated.\n\t *\n\t * Return `{ block: true }` to prevent execution. The loop emits an error tool result instead.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tbeforeToolCall?: (context: BeforeToolCallContext, signal?: AbortSignal) => Promise<BeforeToolCallResult | undefined>;\n\n\t/**\n\t * Called after a tool finishes executing, before `tool_execution_end` and tool-result message events are emitted.\n\t *\n\t * Return an `AfterToolCallResult` to override parts of the executed tool result:\n\t * - `content` replaces the full content array\n\t * - `details` replaces the full details payload\n\t * - `isError` replaces the error flag\n\t * - `usage` replaces the tool result usage\n\t * - `terminate` replaces the early-termination hint\n\t *\n\t * Any omitted fields keep their original values. No deep merge is performed.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tafterToolCall?: (context: AfterToolCallContext, signal?: AbortSignal) => Promise<AfterToolCallResult | undefined>;\n}\n\n/**\n * Thinking/reasoning level for models that support it.\n * Note: \"xhigh\" and \"max\" are only supported by selected model families. Use model\n * thinking-level metadata from @earendil-works/pi-ai to detect support for a concrete model.\n */\nexport type ThinkingLevel = \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"max\";\n\n/**\n * Extensible interface for custom app messages.\n * Apps can extend via declaration merging:\n *\n * @example\n * ```typescript\n * declare module \"@mariozechner/agent\" {\n * interface CustomAgentMessages {\n * artifact: ArtifactMessage;\n * notification: NotificationMessage;\n * }\n * }\n * ```\n */\nexport interface CustomAgentMessages {\n\t// Empty by default - apps extend via declaration merging\n}\n\n/**\n * AgentMessage: Union of LLM messages + custom messages.\n * This abstraction allows apps to add custom message types while maintaining\n * type safety and compatibility with the base LLM messages.\n */\nexport type AgentMessage = Message | CustomAgentMessages[keyof CustomAgentMessages];\n\n/**\n * Public agent state.\n *\n * `tools` and `messages` use accessor properties so implementations can copy\n * assigned arrays before storing them.\n */\nexport interface AgentState {\n\t/** System prompt sent with each model request. */\n\tsystemPrompt: string;\n\t/** Active model used for future turns. */\n\tmodel: Model<any>;\n\t/** Requested reasoning level for future turns. */\n\tthinkingLevel: ThinkingLevel;\n\t/** Available tools. Assigning a new array copies the top-level array. */\n\tset tools(tools: AgentTool<any>[]);\n\tget tools(): AgentTool<any>[];\n\t/** Conversation transcript. Assigning a new array copies the top-level array. */\n\tset messages(messages: AgentMessage[]);\n\tget messages(): AgentMessage[];\n\t/**\n\t * True while the agent is processing a prompt or continuation.\n\t *\n\t * This remains true until awaited `agent_end` listeners settle.\n\t */\n\treadonly isStreaming: boolean;\n\t/** Partial assistant message for the current streamed response, if any. */\n\treadonly streamingMessage?: AgentMessage;\n\t/** Tool call ids currently executing. */\n\treadonly pendingToolCalls: ReadonlySet<string>;\n\t/** Error message from the most recent failed or aborted assistant turn, if any. */\n\treadonly errorMessage?: string;\n}\n\n/** Final or partial result produced by a tool. */\nexport interface AgentToolResult<T> {\n\t/** Text or image content returned to the model. */\n\tcontent: (TextContent | ImageContent)[];\n\t/** Arbitrary structured details for logs or UI rendering. */\n\tdetails: T;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/** Names of tools introduced by this result and available from this transcript point onward. */\n\taddedToolNames?: string[];\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Callback used by tools to stream partial execution updates.\n *\n * The callback is scoped to the current `execute()` invocation. Calls made after\n * the tool promise settles are ignored.\n */\nexport type AgentToolUpdateCallback<T = any> = (partialResult: AgentToolResult<T>) => void;\n\n/** Tool definition used by the agent runtime. */\nexport interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any> extends Tool<TParameters> {\n\t/** Human-readable label for UI display. */\n\tlabel: string;\n\t/**\n\t * Optional compatibility shim for raw tool-call arguments before schema validation.\n\t * Must return an object that matches `TParameters`.\n\t */\n\tprepareArguments?: (args: unknown) => Static<TParameters>;\n\t/** Execute the tool call. Throw on failure instead of encoding errors in `content`. */\n\texecute: (\n\t\ttoolCallId: string,\n\t\tparams: Static<TParameters>,\n\t\tsignal?: AbortSignal,\n\t\tonUpdate?: AgentToolUpdateCallback<TDetails>,\n\t) => Promise<AgentToolResult<TDetails>>;\n\t/**\n\t * Per-tool execution mode override.\n\t * - \"sequential\": this tool must execute one at a time with other tool calls.\n\t * - \"parallel\": this tool can execute concurrently with other tool calls.\n\t *\n\t * If omitted, the default execution mode applies.\n\t */\n\texecutionMode?: ToolExecutionMode;\n}\n\n/** Context snapshot passed into the low-level agent loop. */\nexport interface AgentContext {\n\t/** System prompt included with the request. */\n\tsystemPrompt: string;\n\t/** Transcript visible to the model. */\n\tmessages: AgentMessage[];\n\t/** Tools available for this run. */\n\ttools?: AgentTool<any>[];\n}\n\n/**\n * Events emitted by the Agent for UI updates.\n *\n * `agent_end` is the last event emitted for a run, but awaited `Agent.subscribe()`\n * listeners for that event are still part of run settlement. The agent becomes\n * idle only after those listeners finish.\n */\nexport type AgentEvent =\n\t// Agent lifecycle\n\t| { type: \"agent_start\" }\n\t| { type: \"agent_end\"; messages: AgentMessage[] }\n\t// Turn lifecycle - a turn is one assistant response + any tool calls/results\n\t| { type: \"turn_start\" }\n\t| { type: \"turn_end\"; message: AgentMessage; toolResults: ToolResultMessage[] }\n\t// Message lifecycle - emitted for user, assistant, and toolResult messages\n\t| { type: \"message_start\"; message: AgentMessage }\n\t// Only emitted for assistant messages during streaming\n\t| { type: \"message_update\"; message: AgentMessage; assistantMessageEvent: AssistantMessageEvent }\n\t| { type: \"message_end\"; message: AgentMessage }\n\t// Tool execution lifecycle\n\t| { type: \"tool_execution_start\"; toolCallId: string; toolName: string; args: any }\n\t| { type: \"tool_execution_update\"; toolCallId: string; toolName: string; args: any; partialResult: any }\n\t| { type: \"tool_execution_end\"; toolCallId: string; toolName: string; result: any; isError: boolean };\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n\tApi,\n\tAssistantMessage,\n\tAssistantMessageEvent,\n\tAssistantMessageEventStream,\n\tContext,\n\tImageContent,\n\tMessage,\n\tModel,\n\tSimpleStreamOptions,\n\tTextContent,\n\tTool,\n\tToolResultMessage,\n\tUsage,\n} from \"@earendil-works/pi-ai\";\nimport type { Static, TSchema } from \"typebox\";\n\n/**\n * Stream function used by the agent loop. `Models.streamSimple` satisfies\n * this shape.\n *\n * Contract:\n * - Must not throw or return a rejected promise for request/model/runtime failures.\n * - Must return an AssistantMessageEventStream.\n * - Failures must be encoded in the returned stream via protocol events and a\n * final AssistantMessage with stopReason \"error\" or \"aborted\" and errorMessage.\n */\nexport type StreamFn = (\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n) => AssistantMessageEventStream | Promise<AssistantMessageEventStream>;\n\n/**\n * Configuration for how tool calls from a single assistant message are executed.\n *\n * - \"sequential\": each tool call is prepared, executed, and finalized before the next one starts.\n * - \"parallel\": tool calls are prepared sequentially, then allowed tools execute concurrently.\n * `tool_execution_end` is emitted in tool completion order after each tool is finalized,\n * while tool-result message artifacts are emitted later in assistant source order.\n */\nexport type ToolExecutionMode = \"sequential\" | \"parallel\";\n\n/**\n * Controls how many queued user messages are injected when the agent loop reaches a queue drain point.\n *\n * - \"all\": drain and inject every queued message at that point.\n * - \"one-at-a-time\": drain and inject only the oldest queued message, leaving the rest queued for later drain points.\n */\nexport type QueueMode = \"all\" | \"one-at-a-time\";\n\n/** A single tool call content block emitted by an assistant message. */\nexport type AgentToolCall = Extract<AssistantMessage[\"content\"][number], { type: \"toolCall\" }>;\n\n/**\n * Result returned from `beforeToolCall`.\n *\n * Returning `{ block: true }` prevents the tool from executing. The loop emits an error tool result instead.\n * `reason` becomes the text shown in that error result. If omitted, a default blocked message is used.\n */\nexport interface BeforeToolCallResult {\n\tblock?: boolean;\n\treason?: string;\n\t/**\n\t * Hint that the agent should stop after the current tool batch when this call is blocked.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Partial override returned from `afterToolCall`.\n *\n * Merge semantics are field-by-field:\n * - `content`: if provided, replaces the tool result content array in full\n * - `details`: if provided, replaces the tool result details value in full\n * - `isError`: if provided, replaces the tool result error flag\n * - `usage`: if provided, replaces the tool result usage\n * - `terminate`: if provided, replaces the early-termination hint\n *\n * Omitted fields keep the original executed tool result values.\n * There is no deep merge for `content`, `details`, or `usage`.\n */\nexport interface AfterToolCallResult {\n\tcontent?: (TextContent | ImageContent)[];\n\tdetails?: unknown;\n\tisError?: boolean;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/** Context passed to `beforeToolCall`. */\nexport interface BeforeToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** Current agent context at the time the tool call is prepared. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `afterToolCall`. */\nexport interface AfterToolCallContext {\n\t/** The assistant message that requested the tool call. */\n\tassistantMessage: AssistantMessage;\n\t/** The raw tool call block from `assistantMessage.content`. */\n\ttoolCall: AgentToolCall;\n\t/** Validated tool arguments for the target tool schema. */\n\targs: unknown;\n\t/** The executed tool result before any `afterToolCall` overrides are applied. */\n\tresult: AgentToolResult<any>;\n\t/** Whether the executed tool result is currently treated as an error. */\n\tisError: boolean;\n\t/** Current agent context at the time the tool call is finalized. */\n\tcontext: AgentContext;\n}\n\n/** Context passed to `shouldStopAfterTurn`. */\nexport interface ShouldStopAfterTurnContext {\n\t/** The assistant message that completed the turn. */\n\tmessage: AssistantMessage;\n\t/** Tool result messages passed to the preceding `turn_end` event. */\n\ttoolResults: ToolResultMessage[];\n\t/** Current agent context after the turn's assistant message and tool results have been appended. */\n\tcontext: AgentContext;\n\t/** Messages that this loop invocation will return if it exits at this point. Prompt runs include the initial prompt messages; continuation runs do not include pre-existing context messages. */\n\tnewMessages: AgentMessage[];\n}\n\n/** Replacement runtime state used by the agent loop before starting another provider request. */\nexport interface AgentLoopTurnUpdate {\n\t/** Context for the next provider request. */\n\tcontext?: AgentContext;\n\t/** Model for the next provider request. */\n\tmodel?: Model<any>;\n\t/** Thinking level for the next provider request. */\n\tthinkingLevel?: ThinkingLevel;\n}\n\nexport interface PrepareNextTurnContext extends ShouldStopAfterTurnContext {}\n\nexport interface AgentLoopConfig extends SimpleStreamOptions {\n\tmodel: Model<any>;\n\n\t/**\n\t * Converts AgentMessage[] to LLM-compatible Message[] before each LLM call.\n\t *\n\t * Each AgentMessage must be converted to a UserMessage, AssistantMessage, or ToolResultMessage\n\t * that the LLM can understand. AgentMessages that cannot be converted (e.g., UI-only notifications,\n\t * status messages) should be filtered out.\n\t *\n\t * Contract: must not throw or reject. Return a safe fallback value instead.\n\t * Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t *\n\t * @example\n\t * ```typescript\n\t * convertToLlm: (messages) => messages.flatMap(m => {\n\t * if (m.role === \"custom\") {\n\t * // Convert custom message to user message\n\t * return [{ role: \"user\", content: m.content, timestamp: m.timestamp }];\n\t * }\n\t * if (m.role === \"notification\") {\n\t * // Filter out UI-only messages\n\t * return [];\n\t * }\n\t * // Pass through standard LLM messages\n\t * return [m];\n\t * })\n\t * ```\n\t */\n\tconvertToLlm: (messages: AgentMessage[]) => Message[] | Promise<Message[]>;\n\n\t/**\n\t * Optional transform applied to the context before `convertToLlm`.\n\t *\n\t * Use this for operations that work at the AgentMessage level:\n\t * - Context window management (pruning old messages)\n\t * - Injecting context from external sources\n\t *\n\t * Contract: must not throw or reject. Return the original messages or another\n\t * safe fallback value instead.\n\t *\n\t * @example\n\t * ```typescript\n\t * transformContext: async (messages) => {\n\t * if (estimateTokens(messages) > MAX_TOKENS) {\n\t * return pruneOldMessages(messages);\n\t * }\n\t * return messages;\n\t * }\n\t * ```\n\t */\n\ttransformContext?: (messages: AgentMessage[], signal?: AbortSignal) => Promise<AgentMessage[]>;\n\n\t/**\n\t * Resolves an API key dynamically for each LLM call.\n\t *\n\t * Useful for short-lived OAuth tokens (e.g., GitHub Copilot) that may expire\n\t * during long-running tool execution phases.\n\t *\n\t * Contract: must not throw or reject. Return undefined when no key is available.\n\t */\n\tgetApiKey?: (provider: string) => Promise<string | undefined> | string | undefined;\n\n\t/**\n\t * Called after each turn fully completes and `turn_end` has been emitted.\n\t *\n\t * If it returns true, the loop emits `agent_end` and exits before polling steering or follow-up queues,\n\t * without starting another LLM call. The current assistant response and any tool executions finish normally.\n\t *\n\t * Use this to request a graceful stop after the current turn, e.g. before context gets too full.\n\t *\n\t * Contract: must not throw or reject. Throwing interrupts the low-level agent loop without producing a normal event sequence.\n\t */\n\tshouldStopAfterTurn?: (context: ShouldStopAfterTurnContext) => boolean | Promise<boolean>;\n\n\t/**\n\t * Called after `turn_end` and before the loop decides whether another provider request should start.\n\t * Return replacement context/model/thinking state to affect the next turn in this run.\n\t * Return undefined to keep using the current context/config.\n\t */\n\tprepareNextTurn?: (\n\t\tcontext: PrepareNextTurnContext,\n\t) => AgentLoopTurnUpdate | undefined | Promise<AgentLoopTurnUpdate | undefined>;\n\n\t/**\n\t * Returns steering messages to inject into the conversation mid-run.\n\t *\n\t * Called after the current assistant turn finishes executing its tool calls, unless `shouldStopAfterTurn` exits first.\n\t * If messages are returned, they are added to the context before the next LLM call.\n\t * Tool calls from the current assistant message are not skipped.\n\t *\n\t * Use this for \"steering\" the agent while it's working.\n\t *\n\t * Contract: must not throw or reject. Return [] when no steering messages are available.\n\t */\n\tgetSteeringMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Returns follow-up messages to process after the agent would otherwise stop.\n\t *\n\t * Called when the agent has no more tool calls and no steering messages.\n\t * If messages are returned, they're added to the context and the agent\n\t * continues with another turn.\n\t *\n\t * Use this for follow-up messages that should wait until the agent finishes.\n\t *\n\t * Contract: must not throw or reject. Return [] when no follow-up messages are available.\n\t */\n\tgetFollowUpMessages?: () => Promise<AgentMessage[]>;\n\n\t/**\n\t * Tool execution mode.\n\t * - \"sequential\": execute tool calls one by one\n\t * - \"parallel\": preflight tool calls sequentially, then execute allowed tools concurrently;\n\t * emit `tool_execution_end` in tool completion order after each tool is finalized,\n\t * then emit tool-result message artifacts later in assistant source order\n\t *\n\t * Default: \"parallel\"\n\t */\n\ttoolExecution?: ToolExecutionMode;\n\n\t/**\n\t * Called before a tool is executed, after arguments have been validated.\n\t *\n\t * Return `{ block: true }` to prevent execution. The loop emits an error tool result instead.\n\t * A blocked result can also set `terminate: true` to participate in the batch early-termination rule.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tbeforeToolCall?: (context: BeforeToolCallContext, signal?: AbortSignal) => Promise<BeforeToolCallResult | undefined>;\n\n\t/**\n\t * Called after a tool finishes executing, before `tool_execution_end` and tool-result message events are emitted.\n\t *\n\t * Return an `AfterToolCallResult` to override parts of the executed tool result:\n\t * - `content` replaces the full content array\n\t * - `details` replaces the full details payload\n\t * - `isError` replaces the error flag\n\t * - `usage` replaces the tool result usage\n\t * - `terminate` replaces the early-termination hint\n\t *\n\t * Any omitted fields keep their original values. No deep merge is performed.\n\t * The hook receives the agent abort signal and is responsible for honoring it.\n\t */\n\tafterToolCall?: (context: AfterToolCallContext, signal?: AbortSignal) => Promise<AfterToolCallResult | undefined>;\n}\n\n/**\n * Thinking/reasoning level for models that support it.\n * Note: \"xhigh\" and \"max\" are only supported by selected model families. Use model\n * thinking-level metadata from @earendil-works/pi-ai to detect support for a concrete model.\n */\nexport type ThinkingLevel = \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"max\";\n\n/**\n * Extensible interface for custom app messages.\n * Apps can extend via declaration merging:\n *\n * @example\n * ```typescript\n * declare module \"@mariozechner/agent\" {\n * interface CustomAgentMessages {\n * artifact: ArtifactMessage;\n * notification: NotificationMessage;\n * }\n * }\n * ```\n */\nexport interface CustomAgentMessages {\n\t// Empty by default - apps extend via declaration merging\n}\n\n/**\n * AgentMessage: Union of LLM messages + custom messages.\n * This abstraction allows apps to add custom message types while maintaining\n * type safety and compatibility with the base LLM messages.\n */\nexport type AgentMessage = Message | CustomAgentMessages[keyof CustomAgentMessages];\n\n/**\n * Public agent state.\n *\n * `tools` and `messages` use accessor properties so implementations can copy\n * assigned arrays before storing them.\n */\nexport interface AgentState {\n\t/** System prompt sent with each model request. */\n\tsystemPrompt: string;\n\t/** Active model used for future turns. */\n\tmodel: Model<any>;\n\t/** Requested reasoning level for future turns. */\n\tthinkingLevel: ThinkingLevel;\n\t/** Available tools. Assigning a new array copies the top-level array. */\n\tset tools(tools: AgentTool<any>[]);\n\tget tools(): AgentTool<any>[];\n\t/** Conversation transcript. Assigning a new array copies the top-level array. */\n\tset messages(messages: AgentMessage[]);\n\tget messages(): AgentMessage[];\n\t/**\n\t * True while the agent is processing a prompt or continuation.\n\t *\n\t * This remains true until awaited `agent_end` listeners settle.\n\t */\n\treadonly isStreaming: boolean;\n\t/** Partial assistant message for the current streamed response, if any. */\n\treadonly streamingMessage?: AgentMessage;\n\t/** Tool call ids currently executing. */\n\treadonly pendingToolCalls: ReadonlySet<string>;\n\t/** Error message from the most recent failed or aborted assistant turn, if any. */\n\treadonly errorMessage?: string;\n}\n\n/** Final or partial result produced by a tool. */\nexport interface AgentToolResult<T> {\n\t/** Text or image content returned to the model. */\n\tcontent: (TextContent | ImageContent)[];\n\t/** Arbitrary structured details for logs or UI rendering. */\n\tdetails: T;\n\t/** Usage from the final tool execution itself, if available. Not used for main LLM context accounting. */\n\tusage?: Usage;\n\t/** Names of tools introduced by this result and available from this transcript point onward. */\n\taddedToolNames?: string[];\n\t/**\n\t * Hint that the agent should stop after the current tool batch.\n\t * Early termination only happens when every finalized tool result in the batch sets this to true.\n\t */\n\tterminate?: boolean;\n}\n\n/**\n * Callback used by tools to stream partial execution updates.\n *\n * The callback is scoped to the current `execute()` invocation. Calls made after\n * the tool promise settles are ignored.\n */\nexport type AgentToolUpdateCallback<T = any> = (partialResult: AgentToolResult<T>) => void;\n\n/** Tool definition used by the agent runtime. */\nexport interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any> extends Tool<TParameters> {\n\t/** Human-readable label for UI display. */\n\tlabel: string;\n\t/**\n\t * Optional compatibility shim for raw tool-call arguments before schema validation.\n\t * Must return an object that matches `TParameters`.\n\t */\n\tprepareArguments?: (args: unknown) => Static<TParameters>;\n\t/** Execute the tool call. Throw on failure instead of encoding errors in `content`. */\n\texecute: (\n\t\ttoolCallId: string,\n\t\tparams: Static<TParameters>,\n\t\tsignal?: AbortSignal,\n\t\tonUpdate?: AgentToolUpdateCallback<TDetails>,\n\t) => Promise<AgentToolResult<TDetails>>;\n\t/**\n\t * Per-tool execution mode override.\n\t * - \"sequential\": this tool must execute one at a time with other tool calls.\n\t * - \"parallel\": this tool can execute concurrently with other tool calls.\n\t *\n\t * If omitted, the default execution mode applies.\n\t */\n\texecutionMode?: ToolExecutionMode;\n}\n\n/** Context snapshot passed into the low-level agent loop. */\nexport interface AgentContext {\n\t/** System prompt included with the request. */\n\tsystemPrompt: string;\n\t/** Transcript visible to the model. */\n\tmessages: AgentMessage[];\n\t/** Tools available for this run. */\n\ttools?: AgentTool<any>[];\n}\n\n/**\n * Events emitted by the Agent for UI updates.\n *\n * `agent_end` is the last event emitted for a run, but awaited `Agent.subscribe()`\n * listeners for that event are still part of run settlement. The agent becomes\n * idle only after those listeners finish.\n */\nexport type AgentEvent =\n\t// Agent lifecycle\n\t| { type: \"agent_start\" }\n\t| { type: \"agent_end\"; messages: AgentMessage[] }\n\t// Turn lifecycle - a turn is one assistant response + any tool calls/results\n\t| { type: \"turn_start\" }\n\t| { type: \"turn_end\"; message: AgentMessage; toolResults: ToolResultMessage[] }\n\t// Message lifecycle - emitted for user, assistant, and toolResult messages\n\t| { type: \"message_start\"; message: AgentMessage }\n\t// Only emitted for assistant messages during streaming\n\t| { type: \"message_update\"; message: AgentMessage; assistantMessageEvent: AssistantMessageEvent }\n\t| { type: \"message_end\"; message: AgentMessage }\n\t// Tool execution lifecycle\n\t| { type: \"tool_execution_start\"; toolCallId: string; toolName: string; args: any }\n\t| { type: \"tool_execution_update\"; toolCallId: string; toolName: string; args: any; partialResult: any }\n\t| { type: \"tool_execution_end\"; toolCallId: string; toolName: string; result: any; isError: boolean };\n"]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-agent-core",
3
- "version": "0.83.0",
3
+ "version": "0.84.1",
4
4
  "description": "General-purpose agent with transport abstraction, state management, and attachment support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -14,6 +14,10 @@
14
14
  "types": "./dist/node.d.ts",
15
15
  "import": "./dist/node.js"
16
16
  },
17
+ "./session/testing": {
18
+ "types": "./dist/harness/session/testing/index.d.ts",
19
+ "import": "./dist/harness/session/testing/index.js"
20
+ },
17
21
  "./package.json": "./package.json"
18
22
  },
19
23
  "files": [
@@ -22,6 +26,8 @@
22
26
  ],
23
27
  "scripts": {
24
28
  "clean": "shx rm -rf dist",
29
+ "generate-telemetry-docs": "node scripts/generate-telemetry-docs.ts",
30
+ "check:telemetry-docs": "node scripts/generate-telemetry-docs.ts --check",
25
31
  "build": "tsgo -p tsconfig.build.json",
26
32
  "test": "vitest --run",
27
33
  "test:harness": "vitest --run --config vitest.harness.config.ts",
@@ -29,7 +35,8 @@
29
35
  "prepublishOnly": "npm run build"
30
36
  },
31
37
  "dependencies": {
32
- "@earendil-works/pi-ai": "^0.83.0",
38
+ "@earendil-works/pi-ai": "^0.84.1",
39
+ "@earendil-works/pi-telemetry": "^0.84.1",
33
40
  "diff": "8.0.4",
34
41
  "ignore": "7.0.5",
35
42
  "typebox": "1.3.7",
@@ -76,6 +76,7 @@ Unified LLM API with provider collections, automatic auth resolution, token and
76
76
  - **ZAI Coding Plan (Global)** (with separate China provider)
77
77
  - **MiniMax** (with separate China provider)
78
78
  - **Together AI**
79
+ - **Baseten**
79
80
  - **Hugging Face**
80
81
  - **Moonshot AI** (with separate China provider)
81
82
  - **GitHub Copilot** (requires OAuth, see below)
@@ -84,6 +85,7 @@ Unified LLM API with provider collections, automatic auth resolution, token and
84
85
  - **OpenCode Go**
85
86
  - **Fireworks** (uses OpenAI- and Anthropic-compatible APIs)
86
87
  - **Kimi For Coding** (Moonshot AI subscription endpoint, uses Anthropic-compatible API)
88
+ - **Qwen Token Plan** (separate Individual and existing catalogs, with a separate China provider)
87
89
  - **Xiaomi MiMo** (defaults to API billing endpoint, with separate Token Plan providers for `cn`/`ams`/`sgp` regions)
88
90
  - **Any OpenAI-compatible API**: Ollama, vLLM, LM Studio, etc.
89
91
 
@@ -312,8 +314,8 @@ Providers may have dynamic model lists (a llama.cpp server, a live OpenRouter li
312
314
 
313
315
  ```typescript
314
316
  // getModels() returns the last-known list (empty before the first refresh)
315
- await models.refresh('llamacpp'); // fetch one provider's list; rejects on failure
316
- await models.refresh(); // refresh all providers concurrently, best-effort
317
+ await models.refresh({ providers: ['llamacpp'] }); // refresh one provider
318
+ await models.refresh(); // refresh all providers concurrently, best-effort
317
319
  const fresh = models.getModel('llamacpp', 'qwen3-30b');
318
320
  ```
319
321
 
@@ -351,6 +353,8 @@ if (modelAuth) {
351
353
 
352
354
  Both overloads resolve credentials, refresh expired OAuth when necessary, and may return an auth-derived `apiKey`, `headers`, or `baseUrl`. `getAuth()` resolves `undefined` for unconfigured providers and rejects with `ModelsError` when something is actually broken (`"oauth"`: token refresh failed, credential preserved for re-login; `"auth"`: key resolution or credential store failure). Request paths surface the same failures as stream errors.
353
355
 
356
+ `getAuth()`, `checkAuth()`, `getAvailable()`, login, and logout accept optional caller cancellation through their existing options or interaction objects and remain unbounded when no signal is supplied. Provider `login`, `ApiKeyAuth.check`, `ApiKeyAuth.resolve`, and `OAuthAuth.refresh` implementations always receive a concrete signal and must honor it for blocking work.
357
+
354
358
  ### Transforming Request Headers
355
359
 
356
360
  `Models.stream()`, `complete()`, `streamSimple()`, and `completeSimple()` accept a Models-only `transformHeaders` option. It runs once after provider auth, `model.headers`, and explicit `options.headers` have been merged, but before provider dispatch:
@@ -387,7 +391,7 @@ const models = createModels({ credentials: myFileBackedStore });
387
391
  // const models = builtinModels({ credentials: myFileBackedStore });
388
392
  ```
389
393
 
390
- The contract is small: `read(providerId)`, `list()` for non-secret `{ providerId, type }` metadata, `modify(providerId, fn)` (the only write path — a serialized read-modify-write), and `delete(providerId)`. Enumeration must not resolve secrets or execute configured key commands. OAuth token refresh runs inside `modify`, so concurrent requests and processes cannot double-refresh a rotated token. A stored credential *owns* its provider: environment variables are only consulted when nothing is stored, and a failed refresh never silently falls back to an env key.
394
+ The contract is small: `read(providerId)`, `list()` for non-secret `{ providerId, type }` metadata, `modify(providerId, fn)` (the only write path — a serialized read-modify-write), and `delete(providerId)`. Each operation accepts optional cancellation options. Enumeration must not resolve secrets or execute configured key commands. OAuth token refresh runs inside `modify`, so concurrent requests and processes cannot double-refresh a rotated token. A stored credential *owns* its provider: environment variables are only consulted when nothing is stored, and a failed refresh never silently falls back to an env key.
391
395
 
392
396
  API-key credentials use the same discriminator as pi's `auth.json` and can carry provider-scoped env/config values:
393
397
 
@@ -424,6 +428,7 @@ Built-in providers resolve these env vars (Node.js; in browsers pass `apiKey` ex
424
428
  | xAI | `XAI_API_KEY` |
425
429
  | Fireworks | `FIREWORKS_API_KEY` |
426
430
  | Together AI | `TOGETHER_API_KEY` |
431
+ | Baseten | `BASETEN_API_KEY` |
427
432
  | OpenRouter | `OPENROUTER_API_KEY` |
428
433
  | Vercel AI Gateway | `AI_GATEWAY_API_KEY` |
429
434
  | ZAI Coding Plan (Global) | `ZAI_API_KEY` |
@@ -434,7 +439,8 @@ Built-in providers resolve these env vars (Node.js; in browsers pass `apiKey` ex
434
439
  | Hugging Face | `HF_TOKEN` |
435
440
  | OpenCode Zen / OpenCode Go | `OPENCODE_API_KEY` |
436
441
  | Kimi For Coding | `KIMI_API_KEY` |
437
- | Qwen Token Plan | `QWEN_TOKEN_PLAN_API_KEY` |
442
+ | Qwen Token Plan (existing catalog) | `QWEN_TOKEN_PLAN_API_KEY` |
443
+ | Qwen Token Plan (Individual) | `QWEN_TOKEN_PLAN_API_KEY` |
438
444
  | Qwen Token Plan (China) | `QWEN_TOKEN_PLAN_CN_API_KEY` |
439
445
  | Xiaomi MiMo (API billing) | `XIAOMI_API_KEY` |
440
446
  | Xiaomi MiMo Token Plan (China) | `XIAOMI_TOKEN_PLAN_CN_API_KEY` |
@@ -442,6 +448,11 @@ Built-in providers resolve these env vars (Node.js; in browsers pass `apiKey` ex
442
448
  | Xiaomi MiMo Token Plan (Singapore) | `XIAOMI_TOKEN_PLAN_SGP_API_KEY` |
443
449
  | GitHub Copilot | `COPILOT_GITHUB_TOKEN` |
444
450
 
451
+ `qwen-token-plan-individual` and `qwen-token-plan` share the international endpoint and
452
+ `QWEN_TOKEN_PLAN_API_KEY`. The Individual provider exposes only the models documented for Individual
453
+ subscriptions, while the existing provider retains its broader catalog for backward compatibility.
454
+ Stored credentials remain provider-scoped, so save the key under the provider ID you register.
455
+
445
456
  Amazon Bedrock resolves ambient AWS credentials (`AWS_PROFILE`, access key pairs, `AWS_BEARER_TOKEN_BEDROCK`, ECS task roles, web identity tokens); its provider-owned login flow supports bearer tokens, AWS profiles, and the existing credential chain. Vertex AI resolves either an explicit key or gcloud Application Default Credentials plus project/location, with a provider-owned login flow for API keys, ADC, and service-account files.
446
457
 
447
458
  ## Tools
@@ -1066,7 +1077,7 @@ const tenantGateway = createProvider({
1066
1077
  });
1067
1078
  ```
1068
1079
 
1069
- Dynamic model lists use `fetchModels`. `Models.refresh()` refreshes every configured dynamic provider, passing its effective API-key or refreshed OAuth credential. A `ModelsStore` persists dynamic catalogs; both stores default to in-memory implementations.
1080
+ Dynamic model lists use `fetchModels`. `Models.refresh()` refreshes every configured dynamic provider, passing its effective API-key or refreshed OAuth credential. A `ModelsStore` persists dynamic catalogs; both stores default to in-memory implementations. Its `read`, `write`, and `delete` operations accept optional cancellation, and `Models` binds those waits to the provider refresh signal.
1070
1081
 
1071
1082
  ```typescript
1072
1083
  const models = createModels({ credentials, modelsStore });
@@ -1084,7 +1095,11 @@ if (result.aborted) console.log('refresh cancelled');
1084
1095
  for (const [provider, error] of result.errors) console.error(provider, error);
1085
1096
  ```
1086
1097
 
1087
- Use `models.refresh({ allowNetwork: false })` to restore persisted catalogs without network access, or `models.refresh({ force: true })` to bypass provider freshness checks. Model reads stay synchronous and return the last restored or refreshed list.
1098
+ `Models.refresh()` is unbounded when its optional signal is omitted. Providers always receive a concrete `RefreshModelsContext.signal` and must honor it for network requests and other blocking work. When a caller supplies a signal, `Models.refresh()` returns promptly with `aborted: true` after cancellation even if a custom provider fails to cooperate; the provider must still honor the signal to stop its underlying work.
1099
+
1100
+ Use `models.refresh({ providers: ['openrouter'] })` to restrict work to selected providers, `models.refresh({ allowNetwork: false })` to restore persisted catalogs without network access, or `models.refresh({ force: true })` to bypass provider freshness checks. Model reads stay synchronous and return the last restored or refreshed list.
1101
+
1102
+ `createProvider()` handles dynamic publication and persistence automatically. Handwritten `Provider.refreshModels()` implementations receive the read-only `context.stored` snapshot and publish through `context.publish({ persist?, update? })`. Omit `persist` to leave storage unchanged, pass a `ModelsStoreEntry` to write it, or pass `persist: null` to delete it. Publication is generation-checked; put synchronous in-memory catalog changes in `update` rather than mutating state before publication.
1088
1103
 
1089
1104
  Custom models can carry `headers` (e.g. proxies behind bot detection) and `compat` flags. `Models.getAuth(model)` includes those model headers, and stream methods merge them before explicit request headers and `transformHeaders`. See [OpenAI Compatibility Settings](#openai-compatibility-settings).
1090
1105
 
@@ -1167,8 +1182,9 @@ interface OpenAICompletionsCompat {
1167
1182
  requiresAssistantAfterToolResult?: boolean; // Whether tool results must be followed by an assistant message (default: false)
1168
1183
  requiresThinkingAsText?: boolean; // Whether thinking blocks must be converted to text (default: false)
1169
1184
  requiresReasoningContentOnAssistantMessages?: boolean; // Whether all replayed assistant messages must include empty reasoning_content when reasoning is enabled (default: auto-detected for DeepSeek)
1170
- thinkingFormat?: 'openai' | 'openrouter' | 'deepseek' | 'together' | 'zai' | 'qwen' | 'chat-template' | 'qwen-chat-template' | 'string-thinking' | 'ant-ling'; // Format for reasoning param: 'openai' uses reasoning_effort, 'openrouter' uses reasoning: { effort }, 'deepseek' uses thinking: { type } plus reasoning_effort when supported, 'together' uses reasoning: { enabled } plus reasoning_effort when supported, 'zai' uses thinking: { type }, 'qwen' uses enable_thinking, 'chat-template' uses configurable chat_template_kwargs, 'qwen-chat-template' uses chat_template_kwargs.enable_thinking and preserve_thinking, 'string-thinking' uses top-level thinking, 'ant-ling' uses reasoning: { effort } only for mapped efforts (default: openai)
1185
+ thinkingFormat?: 'openai' | 'openrouter' | 'deepseek' | 'together' | 'baseten' | 'zai' | 'qwen' | 'chat-template' | 'qwen-chat-template' | 'string-thinking' | 'ant-ling'; // Format for reasoning param: 'openai' uses reasoning_effort, 'openrouter' uses reasoning: { effort }, 'deepseek' uses thinking: { type } plus reasoning_effort when supported, 'together' uses reasoning: { enabled } plus reasoning_effort when supported, 'baseten' uses configurable chat_template_args plus reasoning_effort when supported, 'zai' uses thinking: { type }, 'qwen' uses enable_thinking, 'chat-template' uses configurable chat_template_kwargs, 'qwen-chat-template' uses chat_template_kwargs.enable_thinking and preserve_thinking, 'string-thinking' uses top-level thinking, 'ant-ling' uses reasoning: { effort } only for mapped efforts (default: openai)
1171
1186
  chatTemplateKwargs?: Record<string, string | number | boolean | null | { '$var': 'thinking.enabled' | 'thinking.effort'; omitWhenOff?: boolean }>; // chat_template_kwargs values; use $var for pi-controlled thinking values
1187
+ chatTemplateArgs?: Record<string, string | number | boolean | null | { '$var': 'thinking.enabled' | 'thinking.effort'; omitWhenOff?: boolean }>; // chat_template_args values for thinkingFormat: 'baseten'; use $var for pi-controlled thinking values
1172
1188
  cacheControlFormat?: 'anthropic'; // Anthropic-style cache_control on system prompt, last tool, and last user/assistant text content
1173
1189
  openRouterRouting?: OpenRouterRouting; // OpenRouter routing preferences (default: {})
1174
1190
  vercelGatewayRouting?: VercelGatewayRouting; // Vercel AI Gateway routing preferences (default: {})
@@ -1462,7 +1478,7 @@ Several providers support OAuth authentication instead of static API keys:
1462
1478
  - **GitHub Copilot** (Copilot subscription)
1463
1479
  - **OpenRouter** (OAuth PKCE that mints a user-controlled API key)
1464
1480
 
1465
- Each of these providers carries an `OAuthAuth` on `provider.auth.oauth` with three operations: `login(interaction)` uses the provider-neutral `AuthInteraction.prompt()`/`notify()` protocol and returns a credential, `refresh(credential)` refreshes expiring credentials when applicable, and `toAuth(credential)` derives request auth (GitHub Copilot's per-account base URL comes from here). Refresh is automatic: `models.getAuth(providerId)` and request paths refresh expired tokens under a credential-store lock, so concurrent requests and processes cannot double-refresh. OpenRouter's OAuth flow instead returns a permanent API key, so its refresh operation is a no-op.
1481
+ Each of these providers carries an `OAuthAuth` on `provider.auth.oauth` with three operations: `login(interaction)` uses the provider-neutral `AuthInteraction.prompt()`/`notify()` protocol and returns a credential, `refresh(credential, signal)` refreshes expiring credentials when applicable, and `toAuth(credential)` derives request auth (GitHub Copilot's per-account base URL comes from here). Provider login interactions and refresh calls always carry a concrete abort signal. Refresh is automatic: `models.getAuth(providerId)` and request paths refresh expired tokens under a credential-store lock, so concurrent requests and processes cannot double-refresh. OpenRouter's OAuth flow instead returns a permanent API key, so its refresh operation is a no-op.
1466
1482
 
1467
1483
  ```typescript
1468
1484
  import { createModels } from '@earendil-works/pi-ai';