@nodetool-ai/runtime 0.8.1 → 0.8.2

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 (256) hide show
  1. package/dist/.nodetool-build-stamp +1 -1
  2. package/dist/context.d.ts +31 -3
  3. package/dist/context.d.ts.map +1 -1
  4. package/dist/context.js +366 -158
  5. package/dist/context.js.map +1 -1
  6. package/dist/generation-registry.d.ts +8 -0
  7. package/dist/generation-registry.d.ts.map +1 -1
  8. package/dist/generation-registry.js +18 -0
  9. package/dist/generation-registry.js.map +1 -1
  10. package/dist/host-binaries.d.ts.map +1 -1
  11. package/dist/host-binaries.js +18 -10
  12. package/dist/host-binaries.js.map +1 -1
  13. package/dist/image-codec.d.ts +2 -0
  14. package/dist/image-codec.d.ts.map +1 -1
  15. package/dist/image-codec.js +23 -3
  16. package/dist/image-codec.js.map +1 -1
  17. package/dist/image-model-tasks.d.ts +15 -0
  18. package/dist/image-model-tasks.d.ts.map +1 -0
  19. package/dist/image-model-tasks.js +24 -0
  20. package/dist/image-model-tasks.js.map +1 -0
  21. package/dist/index.d.ts +14 -3
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +10 -2
  24. package/dist/index.js.map +1 -1
  25. package/dist/media-ref-bytes.d.ts +18 -2
  26. package/dist/media-ref-bytes.d.ts.map +1 -1
  27. package/dist/media-ref-bytes.js +26 -16
  28. package/dist/media-ref-bytes.js.map +1 -1
  29. package/dist/node-executor.d.ts +6 -0
  30. package/dist/node-executor.d.ts.map +1 -1
  31. package/dist/providers/aki-provider.d.ts +2 -0
  32. package/dist/providers/aki-provider.d.ts.map +1 -1
  33. package/dist/providers/aki-provider.js +6 -0
  34. package/dist/providers/aki-provider.js.map +1 -1
  35. package/dist/providers/atlascloud-provider.d.ts +2 -0
  36. package/dist/providers/atlascloud-provider.d.ts.map +1 -1
  37. package/dist/providers/atlascloud-provider.js +22 -0
  38. package/dist/providers/atlascloud-provider.js.map +1 -1
  39. package/dist/providers/base-provider.d.ts +36 -24
  40. package/dist/providers/base-provider.d.ts.map +1 -1
  41. package/dist/providers/base-provider.js +124 -148
  42. package/dist/providers/base-provider.js.map +1 -1
  43. package/dist/providers/claude-agent-provider.d.ts +6 -36
  44. package/dist/providers/claude-agent-provider.d.ts.map +1 -1
  45. package/dist/providers/claude-agent-provider.js +208 -26
  46. package/dist/providers/claude-agent-provider.js.map +1 -1
  47. package/dist/providers/codex-provider.d.ts +2 -0
  48. package/dist/providers/codex-provider.d.ts.map +1 -1
  49. package/dist/providers/codex-provider.js +15 -2
  50. package/dist/providers/codex-provider.js.map +1 -1
  51. package/dist/providers/cohere-provider.d.ts +2 -1
  52. package/dist/providers/cohere-provider.d.ts.map +1 -1
  53. package/dist/providers/cohere-provider.js +5 -0
  54. package/dist/providers/cohere-provider.js.map +1 -1
  55. package/dist/providers/core-tools.d.ts +2 -1
  56. package/dist/providers/core-tools.d.ts.map +1 -1
  57. package/dist/providers/core-tools.js +2 -1
  58. package/dist/providers/core-tools.js.map +1 -1
  59. package/dist/providers/credential-check.d.ts.map +1 -1
  60. package/dist/providers/credential-check.js +5 -0
  61. package/dist/providers/credential-check.js.map +1 -1
  62. package/dist/providers/custom-openai-provider.d.ts +2 -0
  63. package/dist/providers/custom-openai-provider.d.ts.map +1 -1
  64. package/dist/providers/custom-openai-provider.js +8 -0
  65. package/dist/providers/custom-openai-provider.js.map +1 -1
  66. package/dist/providers/dreamina-models.d.ts +5 -0
  67. package/dist/providers/dreamina-models.d.ts.map +1 -0
  68. package/dist/providers/dreamina-models.js +57 -0
  69. package/dist/providers/dreamina-models.js.map +1 -0
  70. package/dist/providers/dreamina-music.d.ts +52 -0
  71. package/dist/providers/dreamina-music.d.ts.map +1 -0
  72. package/dist/providers/dreamina-music.js +115 -0
  73. package/dist/providers/dreamina-music.js.map +1 -0
  74. package/dist/providers/dreamina-provider.d.ts +62 -0
  75. package/dist/providers/dreamina-provider.d.ts.map +1 -0
  76. package/dist/providers/dreamina-provider.js +790 -0
  77. package/dist/providers/dreamina-provider.js.map +1 -0
  78. package/dist/providers/elevenlabs-provider.d.ts +2 -1
  79. package/dist/providers/elevenlabs-provider.d.ts.map +1 -1
  80. package/dist/providers/elevenlabs-provider.js +5 -0
  81. package/dist/providers/elevenlabs-provider.js.map +1 -1
  82. package/dist/providers/evolink-provider.d.ts +2 -0
  83. package/dist/providers/evolink-provider.d.ts.map +1 -1
  84. package/dist/providers/evolink-provider.js +8 -0
  85. package/dist/providers/evolink-provider.js.map +1 -1
  86. package/dist/providers/fake-provider.d.ts +2 -1
  87. package/dist/providers/fake-provider.d.ts.map +1 -1
  88. package/dist/providers/fake-provider.js +10 -0
  89. package/dist/providers/fake-provider.js.map +1 -1
  90. package/dist/providers/fal-provider.d.ts +2 -1
  91. package/dist/providers/fal-provider.d.ts.map +1 -1
  92. package/dist/providers/fal-provider.js +27 -0
  93. package/dist/providers/fal-provider.js.map +1 -1
  94. package/dist/providers/gemini-provider.d.ts +2 -1
  95. package/dist/providers/gemini-provider.d.ts.map +1 -1
  96. package/dist/providers/gemini-provider.js +15 -0
  97. package/dist/providers/gemini-provider.js.map +1 -1
  98. package/dist/providers/higgsfield-provider.d.ts +2 -1
  99. package/dist/providers/higgsfield-provider.d.ts.map +1 -1
  100. package/dist/providers/higgsfield-provider.js +12 -0
  101. package/dist/providers/higgsfield-provider.js.map +1 -1
  102. package/dist/providers/huggingface-provider.d.ts +2 -1
  103. package/dist/providers/huggingface-provider.d.ts.map +1 -1
  104. package/dist/providers/huggingface-provider.js +10 -0
  105. package/dist/providers/huggingface-provider.js.map +1 -1
  106. package/dist/providers/index.d.ts +5 -2
  107. package/dist/providers/index.d.ts.map +1 -1
  108. package/dist/providers/index.js +13 -2
  109. package/dist/providers/index.js.map +1 -1
  110. package/dist/providers/jina-provider.d.ts +2 -1
  111. package/dist/providers/jina-provider.d.ts.map +1 -1
  112. package/dist/providers/jina-provider.js +5 -0
  113. package/dist/providers/jina-provider.js.map +1 -1
  114. package/dist/providers/kie-provider.d.ts +2 -1
  115. package/dist/providers/kie-provider.d.ts.map +1 -1
  116. package/dist/providers/kie-provider.js +14 -0
  117. package/dist/providers/kie-provider.js.map +1 -1
  118. package/dist/providers/llama-provider.d.ts +4 -1
  119. package/dist/providers/llama-provider.d.ts.map +1 -1
  120. package/dist/providers/llama-provider.js +9 -3
  121. package/dist/providers/llama-provider.js.map +1 -1
  122. package/dist/providers/loop-tracing.d.ts +17 -0
  123. package/dist/providers/loop-tracing.d.ts.map +1 -0
  124. package/dist/providers/loop-tracing.js +132 -0
  125. package/dist/providers/loop-tracing.js.map +1 -0
  126. package/dist/providers/meshy-provider.d.ts +2 -1
  127. package/dist/providers/meshy-provider.d.ts.map +1 -1
  128. package/dist/providers/meshy-provider.js +6 -0
  129. package/dist/providers/meshy-provider.js.map +1 -1
  130. package/dist/providers/minimax-provider.d.ts +2 -0
  131. package/dist/providers/minimax-provider.d.ts.map +1 -1
  132. package/dist/providers/minimax-provider.js +11 -0
  133. package/dist/providers/minimax-provider.js.map +1 -1
  134. package/dist/providers/mistral-provider.d.ts +2 -0
  135. package/dist/providers/mistral-provider.d.ts.map +1 -1
  136. package/dist/providers/mistral-provider.js +5 -0
  137. package/dist/providers/mistral-provider.js.map +1 -1
  138. package/dist/providers/node-llama-cpp-provider.d.ts +2 -1
  139. package/dist/providers/node-llama-cpp-provider.d.ts.map +1 -1
  140. package/dist/providers/node-llama-cpp-provider.js +8 -3
  141. package/dist/providers/node-llama-cpp-provider.js.map +1 -1
  142. package/dist/providers/nodetool-provider.d.ts +1 -1
  143. package/dist/providers/nodetool-provider.d.ts.map +1 -1
  144. package/dist/providers/nodetool-provider.js +0 -2
  145. package/dist/providers/nodetool-provider.js.map +1 -1
  146. package/dist/providers/ollama-provider.d.ts +2 -1
  147. package/dist/providers/ollama-provider.d.ts.map +1 -1
  148. package/dist/providers/ollama-provider.js +5 -0
  149. package/dist/providers/ollama-provider.js.map +1 -1
  150. package/dist/providers/openai-provider.d.ts +10 -2
  151. package/dist/providers/openai-provider.d.ts.map +1 -1
  152. package/dist/providers/openai-provider.js +63 -16
  153. package/dist/providers/openai-provider.js.map +1 -1
  154. package/dist/providers/openrouter-provider.d.ts +52 -1
  155. package/dist/providers/openrouter-provider.d.ts.map +1 -1
  156. package/dist/providers/openrouter-provider.js +372 -11
  157. package/dist/providers/openrouter-provider.js.map +1 -1
  158. package/dist/providers/provider-error.d.ts.map +1 -1
  159. package/dist/providers/provider-error.js +7 -1
  160. package/dist/providers/provider-error.js.map +1 -1
  161. package/dist/providers/provider-generations.d.ts +2 -2
  162. package/dist/providers/provider-generations.js +2 -2
  163. package/dist/providers/provider-request-log.d.ts.map +1 -1
  164. package/dist/providers/provider-request-log.js +18 -7
  165. package/dist/providers/provider-request-log.js.map +1 -1
  166. package/dist/providers/python-provider.d.ts +6 -1
  167. package/dist/providers/python-provider.d.ts.map +1 -1
  168. package/dist/providers/python-provider.js +30 -11
  169. package/dist/providers/python-provider.js.map +1 -1
  170. package/dist/providers/replicate-provider.d.ts +2 -1
  171. package/dist/providers/replicate-provider.d.ts.map +1 -1
  172. package/dist/providers/replicate-provider.js +22 -0
  173. package/dist/providers/replicate-provider.js.map +1 -1
  174. package/dist/providers/requesty-provider.d.ts +30 -0
  175. package/dist/providers/requesty-provider.d.ts.map +1 -0
  176. package/dist/providers/requesty-provider.js +87 -0
  177. package/dist/providers/requesty-provider.js.map +1 -0
  178. package/dist/providers/reve-provider.d.ts +2 -1
  179. package/dist/providers/reve-provider.d.ts.map +1 -1
  180. package/dist/providers/reve-provider.js +6 -0
  181. package/dist/providers/reve-provider.js.map +1 -1
  182. package/dist/providers/rodin-provider.d.ts +2 -1
  183. package/dist/providers/rodin-provider.d.ts.map +1 -1
  184. package/dist/providers/rodin-provider.js +6 -0
  185. package/dist/providers/rodin-provider.js.map +1 -1
  186. package/dist/providers/together-operations.d.ts +27 -0
  187. package/dist/providers/together-operations.d.ts.map +1 -0
  188. package/dist/providers/together-operations.js +95 -0
  189. package/dist/providers/together-operations.js.map +1 -0
  190. package/dist/providers/together-provider.d.ts +5 -8
  191. package/dist/providers/together-provider.d.ts.map +1 -1
  192. package/dist/providers/together-provider.js +54 -159
  193. package/dist/providers/together-provider.js.map +1 -1
  194. package/dist/providers/topaz-provider.d.ts +2 -1
  195. package/dist/providers/topaz-provider.d.ts.map +1 -1
  196. package/dist/providers/topaz-provider.js +5 -0
  197. package/dist/providers/topaz-provider.js.map +1 -1
  198. package/dist/providers/types.d.ts +38 -0
  199. package/dist/providers/types.d.ts.map +1 -1
  200. package/dist/providers/types.js.map +1 -1
  201. package/dist/providers/useapi-provider.d.ts +2 -1
  202. package/dist/providers/useapi-provider.d.ts.map +1 -1
  203. package/dist/providers/useapi-provider.js +8 -0
  204. package/dist/providers/useapi-provider.js.map +1 -1
  205. package/dist/providers/vllm-provider.d.ts +2 -4
  206. package/dist/providers/vllm-provider.d.ts.map +1 -1
  207. package/dist/providers/vllm-provider.js +1 -5
  208. package/dist/providers/vllm-provider.js.map +1 -1
  209. package/dist/providers/voyage-provider.d.ts +2 -1
  210. package/dist/providers/voyage-provider.d.ts.map +1 -1
  211. package/dist/providers/voyage-provider.js +5 -0
  212. package/dist/providers/voyage-provider.js.map +1 -1
  213. package/dist/providers/xai-provider.d.ts +2 -0
  214. package/dist/providers/xai-provider.d.ts.map +1 -1
  215. package/dist/providers/xai-provider.js +8 -0
  216. package/dist/providers/xai-provider.js.map +1 -1
  217. package/dist/recommended-models.d.ts.map +1 -1
  218. package/dist/recommended-models.js +20 -0
  219. package/dist/recommended-models.js.map +1 -1
  220. package/dist/run-context.d.ts +20 -0
  221. package/dist/run-context.d.ts.map +1 -0
  222. package/dist/run-context.js +18 -0
  223. package/dist/run-context.js.map +1 -0
  224. package/dist/run-trace-context.d.ts +30 -0
  225. package/dist/run-trace-context.d.ts.map +1 -0
  226. package/dist/run-trace-context.js +80 -0
  227. package/dist/run-trace-context.js.map +1 -0
  228. package/dist/run-trace-processor.d.ts +65 -0
  229. package/dist/run-trace-processor.d.ts.map +1 -0
  230. package/dist/run-trace-processor.js +417 -0
  231. package/dist/run-trace-processor.js.map +1 -0
  232. package/dist/run-trace-serialization.d.ts +5 -0
  233. package/dist/run-trace-serialization.d.ts.map +1 -0
  234. package/dist/run-trace-serialization.js +113 -0
  235. package/dist/run-trace-serialization.js.map +1 -0
  236. package/dist/storage-workspace.d.ts +3 -0
  237. package/dist/storage-workspace.d.ts.map +1 -1
  238. package/dist/storage-workspace.js +32 -17
  239. package/dist/storage-workspace.js.map +1 -1
  240. package/dist/telemetry.d.ts +9 -3
  241. package/dist/telemetry.d.ts.map +1 -1
  242. package/dist/telemetry.js +53 -20
  243. package/dist/telemetry.js.map +1 -1
  244. package/dist/trace-exporters.d.ts +2 -29
  245. package/dist/trace-exporters.d.ts.map +1 -1
  246. package/dist/trace-exporters.js +10 -2
  247. package/dist/trace-exporters.js.map +1 -1
  248. package/dist/tracing-helpers.d.ts +15 -22
  249. package/dist/tracing-helpers.d.ts.map +1 -1
  250. package/dist/tracing-helpers.js +38 -6
  251. package/dist/tracing-helpers.js.map +1 -1
  252. package/dist/trim-video-window.d.ts +8 -0
  253. package/dist/trim-video-window.d.ts.map +1 -0
  254. package/dist/trim-video-window.js +50 -0
  255. package/dist/trim-video-window.js.map +1 -0
  256. package/package.json +19 -5
@@ -5,6 +5,26 @@
5
5
  * list without pulling in a Fastify server.
6
6
  */
7
7
  export const RECOMMENDED_MODELS = [
8
+ ...["ggml-base.en.bin", "ggml-small.bin", "ggml-large-v3-turbo-q5_0.bin"].map((file) => ({
9
+ id: `ggerganov/whisper.cpp/${file}`,
10
+ type: "hf.whisper_cpp",
11
+ name: file.replace(/^ggml-/, "").replace(/\.bin$/, ""),
12
+ repo_id: "ggerganov/whisper.cpp",
13
+ path: file,
14
+ downloaded: false,
15
+ modality: "asr",
16
+ provider: "whisper_cpp"
17
+ })),
18
+ {
19
+ id: "ggml-org/whisper-vad/ggml-silero-v5.1.2.bin",
20
+ type: "hf.whisper_cpp_vad",
21
+ name: "Silero VAD v5.1.2",
22
+ repo_id: "ggml-org/whisper-vad",
23
+ path: "ggml-silero-v5.1.2.bin",
24
+ downloaded: false,
25
+ modality: "asr",
26
+ provider: "whisper_cpp"
27
+ },
8
28
  {
9
29
  id: "gpt-5-mini",
10
30
  type: "language_model",
@@ -1 +1 @@
1
- {"version":3,"file":"recommended-models.js","sourceRoot":"","sources":["../src/recommended-models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recommended-models.js","sourceRoot":"","sources":["../src/recommended-models.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA2BH,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IAC3D,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,8BAA8B,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAA2B,EAAE,CAAC,CAAC;QAChH,EAAE,EAAE,yBAAyB,IAAI,EAAE;QACnC,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;QACtD,OAAO,EAAE,uBAAuB;QAChC,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,aAAa;KACxB,CAAC,CAAC;IACH;QACE,EAAE,EAAE,6CAA6C;QACjD,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,sBAAsB;QAC/B,IAAI,EAAE,wBAAwB;QAC9B,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,aAAa;KACxB;IACD;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,WAAW;KACtB;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,QAAQ;KACnB;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,WAAW;KACtB;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,SAAS;KACpB;CACF,CAAC"}
@@ -0,0 +1,20 @@
1
+ /** Immutable app identity. Secrets are held by ProcessingContext, never serialized. */
2
+ export interface AppRunContext {
3
+ readonly userId: string;
4
+ readonly instanceId: string;
5
+ readonly appRunId: string;
6
+ readonly traceId: string;
7
+ readonly origin: "ui" | "agent" | "cli" | "debug" | "public";
8
+ }
9
+ /** Run-local accounting remains distinct from the node's retry account. */
10
+ export interface AppRunCostAccount {
11
+ llmCostUsd: number;
12
+ unpriced: boolean;
13
+ }
14
+ export declare function inAppRunCostAccount<T>(account: AppRunCostAccount | null, execute: () => Promise<T>): Promise<T>;
15
+ export declare function recordAppRunLlmCost(cost: number | undefined): void;
16
+ export interface AppRunDocumentRef {
17
+ readonly kind: "sketch" | "timeline" | "script" | "storyboard";
18
+ readonly id: string;
19
+ }
20
+ //# sourceMappingURL=run-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-context.d.ts","sourceRoot":"","sources":["../src/run-context.ts"],"names":[],"mappings":"AAEA,uFAAuF;AACvF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;CAC9D;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAGD,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,OAAO,EAAE,iBAAiB,GAAG,IAAI,EACjC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAUlE;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,CAAC;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,18 @@
1
+ import { AsyncLocalStorage } from "./async-local-storage.js";
2
+ const costStore = new AsyncLocalStorage();
3
+ export function inAppRunCostAccount(account, execute) {
4
+ return account ? costStore.run(account, execute) : execute();
5
+ }
6
+ export function recordAppRunLlmCost(cost) {
7
+ const account = costStore.getStore();
8
+ if (!account) {
9
+ return;
10
+ }
11
+ if (cost === undefined || !Number.isFinite(cost) || cost < 0) {
12
+ account.unpriced = true;
13
+ }
14
+ else {
15
+ account.llmCostUsd += cost;
16
+ }
17
+ }
18
+ //# sourceMappingURL=run-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-context.js","sourceRoot":"","sources":["../src/run-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAgB7D,MAAM,SAAS,GAAG,IAAI,iBAAiB,EAAqB,CAAC;AAE7D,MAAM,UAAU,mBAAmB,CACjC,OAAiC,EACjC,OAAyB;IAEzB,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAwB;IAC1D,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QAC7D,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;IAC7B,CAAC;AACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { type Span, type SpanContext } from "@opentelemetry/api";
2
+ export interface RunTraceScope {
3
+ readonly userId: string;
4
+ readonly runId: string;
5
+ readonly traceId: string;
6
+ readonly origin: "ui" | "agent" | "cli" | "debug" | "public";
7
+ readonly secretValues: ReadonlySet<string>;
8
+ readonly policy: {
9
+ contentSuppressed: boolean;
10
+ };
11
+ readonly parentSpanContext?: SpanContext;
12
+ }
13
+ export declare function bindSpanRunTraceScope(span: Span, scope: RunTraceScope): void;
14
+ export declare function getSpanRunTraceScope(span: Span): RunTraceScope | undefined;
15
+ /** Execute child work under a trusted durable run without inheriting another request's trace. */
16
+ export declare function withRunTrace<T>(scope: RunTraceScope, fn: () => T): T;
17
+ /** The owner and policy shared by every span beneath the current run. */
18
+ export declare function getRunTraceScope(): RunTraceScope | undefined;
19
+ /** Add credentials resolved outside ProcessingContext to the shared run redaction set. */
20
+ export declare function recordRunTraceSecret(value: string | null | undefined): void;
21
+ /** Producers report content caps before the original value leaves their scope. */
22
+ export declare function markTraceContentTruncated(): void;
23
+ /** Exclude third-party content from this run and all subsequent inseparable work. */
24
+ export declare function suppressRunTraceContent(): void;
25
+ /** Add a run event to an explicit span or the active span. */
26
+ export declare function recordTraceEvent(name: string, attributes: Record<string, unknown>, span?: Span): void;
27
+ /** Run-store IO and diagnostics must not recursively record themselves. */
28
+ export declare function withoutRunTrace<T>(fn: () => T): T;
29
+ export declare function isRunTraceSuppressed(): boolean;
30
+ //# sourceMappingURL=run-trace-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-trace-context.d.ts","sourceRoot":"","sources":["../src/run-trace-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAK/F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC7D,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE;QAAE,iBAAiB,EAAE,OAAO,CAAA;KAAE,CAAC;IAChD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC;CAC1C;AAMD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAiC;AAC9G,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS,CAAiC;AAE5G,iGAAiG;AACjG,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAUpE;AAED,yEAAyE;AACzE,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,SAAS,CAE5D;AAED,0FAA0F;AAC1F,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAG3E;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAED,qFAAqF;AACrF,wBAAgB,uBAAuB,IAAI,IAAI,CAG9C;AAED,8DAA8D;AAC9D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAiBrG;AAED,2EAA2E;AAC3E,wBAAgB,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAEjD;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAA2C"}
@@ -0,0 +1,80 @@
1
+ import { context, ROOT_CONTEXT, trace } from "@opentelemetry/api";
2
+ import { isTraceContentKey } from "@nodetool-ai/protocol";
3
+ import { AsyncLocalStorage } from "./async-local-storage.js";
4
+ import { sanitizeTraceContentText, stringifyTraceContent } from "./run-trace-serialization.js";
5
+ const runScope = new AsyncLocalStorage();
6
+ const suppressed = new AsyncLocalStorage();
7
+ const spanScopes = new WeakMap();
8
+ export function bindSpanRunTraceScope(span, scope) { spanScopes.set(span, scope); }
9
+ export function getSpanRunTraceScope(span) { return spanScopes.get(span); }
10
+ /** Execute child work under a trusted durable run without inheriting another request's trace. */
11
+ export function withRunTrace(scope, fn) {
12
+ if (!/^[0-9a-f]{32}$/.test(scope.traceId)) {
13
+ throw new Error("Invalid run trace id");
14
+ }
15
+ const active = context.active();
16
+ const activeSpan = trace.getSpanContext(active);
17
+ const parent = activeSpan?.traceId === scope.traceId
18
+ ? active
19
+ : scope.parentSpanContext?.traceId === scope.traceId
20
+ ? trace.setSpanContext(ROOT_CONTEXT, scope.parentSpanContext)
21
+ : ROOT_CONTEXT;
22
+ return runScope.run(scope, () => context.with(parent, fn));
23
+ }
24
+ /** The owner and policy shared by every span beneath the current run. */
25
+ export function getRunTraceScope() {
26
+ return suppressed.getStore() ? undefined : runScope.getStore();
27
+ }
28
+ /** Add credentials resolved outside ProcessingContext to the shared run redaction set. */
29
+ export function recordRunTraceSecret(value) {
30
+ const secrets = getRunTraceScope()?.secretValues;
31
+ if (value && secrets instanceof Set) {
32
+ secrets.add(value);
33
+ }
34
+ }
35
+ /** Producers report content caps before the original value leaves their scope. */
36
+ export function markTraceContentTruncated() {
37
+ if (getRunTraceScope()) {
38
+ trace.getActiveSpan()?.setAttribute("nodetool.trace.truncated", true);
39
+ }
40
+ }
41
+ /** Exclude third-party content from this run and all subsequent inseparable work. */
42
+ export function suppressRunTraceContent() {
43
+ const scope = getRunTraceScope();
44
+ if (scope) {
45
+ scope.policy.contentSuppressed = true;
46
+ }
47
+ }
48
+ /** Add a run event to an explicit span or the active span. */
49
+ export function recordTraceEvent(name, attributes, span) {
50
+ if (isRunTraceSuppressed()) {
51
+ return;
52
+ }
53
+ const target = span ?? trace.getSpan(context.active());
54
+ const scope = getRunTraceScope() ?? (target ? spanScopes.get(target) : undefined);
55
+ if (!target || !scope) {
56
+ return;
57
+ }
58
+ const safe = {};
59
+ for (const [key, value] of Object.entries(attributes)) {
60
+ if ((scope.origin === "public" || scope.policy.contentSuppressed) && isTraceContentKey(key)) {
61
+ continue;
62
+ }
63
+ if (typeof value === "string" && isTraceContentKey(key)) {
64
+ safe[key] = sanitizeTraceContentText(value, scope.secretValues);
65
+ }
66
+ else if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
67
+ safe[key] = value;
68
+ }
69
+ else if (value !== undefined) {
70
+ safe[key] = stringifyTraceContent(value, scope.secretValues);
71
+ }
72
+ }
73
+ target.addEvent(name, safe);
74
+ }
75
+ /** Run-store IO and diagnostics must not recursively record themselves. */
76
+ export function withoutRunTrace(fn) {
77
+ return suppressed.run(true, () => context.with(ROOT_CONTEXT, fn));
78
+ }
79
+ export function isRunTraceSuppressed() { return suppressed.getStore() === true; }
80
+ //# sourceMappingURL=run-trace-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-trace-context.js","sourceRoot":"","sources":["../src/run-trace-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { type Context } from "@opentelemetry/api";
2
+ import type { ReadableSpan, Span, SpanProcessor, SpanExporter } from "@opentelemetry/sdk-trace-base";
3
+ import { type TraceRecord, type RunTraceRegistration, type RunTraceUpdate } from "@nodetool-ai/protocol";
4
+ import { type RunTraceScope } from "./run-trace-context.js";
5
+ export type TraceIncompleteReason = "queue_overflow" | "store_failure";
6
+ export interface RunTraceWrite {
7
+ readonly runId?: string;
8
+ readonly userId?: string;
9
+ readonly update: RunTraceUpdate;
10
+ readonly secretValues: ReadonlySet<string>;
11
+ readonly contentSuppressed: boolean;
12
+ readonly isRoot: boolean;
13
+ }
14
+ export interface TraceSanitizerOptions {
15
+ readonly secretValues: ReadonlySet<string>;
16
+ readonly public: boolean;
17
+ readonly contentSuppressed: boolean;
18
+ }
19
+ export interface RunTraceStore {
20
+ lookup(traceId: string): Promise<RunTraceRegistration | null>;
21
+ write(updates: readonly RunTraceWrite[]): Promise<void>;
22
+ markIncomplete(traceId: string, reason: TraceIncompleteReason): Promise<void>;
23
+ flush(): Promise<void>;
24
+ sanitize(record: TraceRecord, options: TraceSanitizerOptions): TraceRecord;
25
+ }
26
+ /** Attach durable storage independently of external sink initialization. */
27
+ export declare function configureRunTraceStore(adapter: RunTraceStore): void;
28
+ /** External copies always mask credentials and exclude visitor and suppressed content. */
29
+ export declare function externalTraceRecord(record: TraceRecord, scope?: RunTraceScope): TraceRecord;
30
+ /** Preserve the captured run policy even when an exporter runs after its async scope ends. */
31
+ export declare function externalSpanRecord(span: ReadableSpan): TraceRecord;
32
+ /** Filter before OTLP or the legacy console exporter can inspect an SDK span. */
33
+ export declare class ContentFilteringSpanExporter implements SpanExporter {
34
+ private readonly exporter;
35
+ constructor(exporter: SpanExporter);
36
+ export(spans: ReadableSpan[], callback: Parameters<SpanExporter["export"]>[1]): void;
37
+ shutdown(): Promise<void>;
38
+ forceFlush(): Promise<void>;
39
+ }
40
+ /** Record registered spans with bounded coalescing, preserving final roots under pressure. */
41
+ export declare class RunTraceSpanProcessor implements SpanProcessor {
42
+ private readonly queue;
43
+ private readonly roots;
44
+ private queueBytes;
45
+ private pending;
46
+ private readonly failed;
47
+ private readonly diagnosticQueue;
48
+ private diagnostic;
49
+ private readonly diagnosticWaiters;
50
+ private readonly eventIds;
51
+ private readonly eventCounters;
52
+ onStart(span: Span, _parent: Context): void;
53
+ onEnd(span: ReadableSpan): void;
54
+ private capture;
55
+ private flagIncomplete;
56
+ private scheduleDiagnostic;
57
+ private flushDiagnostics;
58
+ private schedule;
59
+ private drain;
60
+ forceFlush(): Promise<void>;
61
+ shutdown(): Promise<void>;
62
+ }
63
+ /** Convert run log output to trace events and keep its external copy content-free. */
64
+ export declare function installRunTraceLogHook(): void;
65
+ //# sourceMappingURL=run-trace-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-trace-processor.d.ts","sourceRoot":"","sources":["../src/run-trace-processor.ts"],"names":[],"mappings":"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"}