open-multi-agent-kit 0.80.5 → 0.80.7

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 (1025) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +22 -14
  3. package/dist/cli/config-selector.d.ts +1 -1
  4. package/dist/cli/config-selector.d.ts.map +1 -1
  5. package/dist/cli/config-selector.js +1 -1
  6. package/dist/cli/config-selector.js.map +1 -1
  7. package/dist/config.d.ts +5 -9
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +55 -23
  10. package/dist/config.js.map +1 -1
  11. package/dist/core/agent-session.d.ts +45 -6
  12. package/dist/core/agent-session.d.ts.map +1 -1
  13. package/dist/core/agent-session.js +197 -13
  14. package/dist/core/agent-session.js.map +1 -1
  15. package/dist/core/auth-storage.d.ts +4 -1
  16. package/dist/core/auth-storage.d.ts.map +1 -1
  17. package/dist/core/auth-storage.js +5 -5
  18. package/dist/core/auth-storage.js.map +1 -1
  19. package/dist/core/bash-executor.d.ts.map +1 -1
  20. package/dist/core/bash-executor.js +1 -1
  21. package/dist/core/bash-executor.js.map +1 -1
  22. package/dist/core/command-safety.d.ts +11 -0
  23. package/dist/core/command-safety.d.ts.map +1 -0
  24. package/dist/core/command-safety.js +528 -0
  25. package/dist/core/command-safety.js.map +1 -0
  26. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  27. package/dist/core/compaction/branch-summarization.js +20 -5
  28. package/dist/core/compaction/branch-summarization.js.map +1 -1
  29. package/dist/core/compaction/compaction.d.ts +99 -1
  30. package/dist/core/compaction/compaction.d.ts.map +1 -1
  31. package/dist/core/compaction/compaction.js +655 -21
  32. package/dist/core/compaction/compaction.js.map +1 -1
  33. package/dist/core/compaction/pruner-policy.d.ts +84 -0
  34. package/dist/core/compaction/pruner-policy.d.ts.map +1 -0
  35. package/dist/core/compaction/pruner-policy.js +273 -0
  36. package/dist/core/compaction/pruner-policy.js.map +1 -0
  37. package/dist/core/context-graph-identity-resolution.d.ts +114 -0
  38. package/dist/core/context-graph-identity-resolution.d.ts.map +1 -0
  39. package/dist/core/context-graph-identity-resolution.js +127 -0
  40. package/dist/core/context-graph-identity-resolution.js.map +1 -0
  41. package/dist/core/context-graph-memory-store.d.ts +153 -0
  42. package/dist/core/context-graph-memory-store.d.ts.map +1 -0
  43. package/dist/core/context-graph-memory-store.js +377 -0
  44. package/dist/core/context-graph-memory-store.js.map +1 -0
  45. package/dist/core/context-graph-ontology-generation.d.ts +104 -0
  46. package/dist/core/context-graph-ontology-generation.d.ts.map +1 -0
  47. package/dist/core/context-graph-ontology-generation.js +135 -0
  48. package/dist/core/context-graph-ontology-generation.js.map +1 -0
  49. package/dist/core/context-graph-ontology-registry.d.ts +766 -0
  50. package/dist/core/context-graph-ontology-registry.d.ts.map +1 -0
  51. package/dist/core/context-graph-ontology-registry.js +1133 -0
  52. package/dist/core/context-graph-ontology-registry.js.map +1 -0
  53. package/dist/core/context-graph-policy.d.ts +68 -0
  54. package/dist/core/context-graph-policy.d.ts.map +1 -0
  55. package/dist/core/context-graph-policy.js +221 -0
  56. package/dist/core/context-graph-policy.js.map +1 -0
  57. package/dist/core/context-graph-reasoning.d.ts +130 -0
  58. package/dist/core/context-graph-reasoning.d.ts.map +1 -0
  59. package/dist/core/context-graph-reasoning.js +442 -0
  60. package/dist/core/context-graph-reasoning.js.map +1 -0
  61. package/dist/core/context-graph-retrieval.d.ts +120 -0
  62. package/dist/core/context-graph-retrieval.d.ts.map +1 -0
  63. package/dist/core/context-graph-retrieval.js +288 -0
  64. package/dist/core/context-graph-retrieval.js.map +1 -0
  65. package/dist/core/contract-verification.d.ts +78 -0
  66. package/dist/core/contract-verification.d.ts.map +1 -0
  67. package/dist/core/contract-verification.js +110 -0
  68. package/dist/core/contract-verification.js.map +1 -0
  69. package/dist/core/exact-cache-policy.d.ts +100 -0
  70. package/dist/core/exact-cache-policy.d.ts.map +1 -0
  71. package/dist/core/exact-cache-policy.js +175 -0
  72. package/dist/core/exact-cache-policy.js.map +1 -0
  73. package/dist/core/exec.d.ts +2 -0
  74. package/dist/core/exec.d.ts.map +1 -1
  75. package/dist/core/exec.js +1 -0
  76. package/dist/core/exec.js.map +1 -1
  77. package/dist/core/export-html/template.js +2 -2
  78. package/dist/core/extensions/builtin/command-safety-gate.d.ts +77 -0
  79. package/dist/core/extensions/builtin/command-safety-gate.d.ts.map +1 -0
  80. package/dist/core/extensions/builtin/command-safety-gate.js +147 -0
  81. package/dist/core/extensions/builtin/command-safety-gate.js.map +1 -0
  82. package/dist/core/extensions/loader.d.ts +4 -4
  83. package/dist/core/extensions/loader.d.ts.map +1 -1
  84. package/dist/core/extensions/loader.js +94 -56
  85. package/dist/core/extensions/loader.js.map +1 -1
  86. package/dist/core/extensions/runner.d.ts.map +1 -1
  87. package/dist/core/extensions/runner.js +1 -1
  88. package/dist/core/extensions/runner.js.map +1 -1
  89. package/dist/core/extensions/types.d.ts +38 -10
  90. package/dist/core/extensions/types.d.ts.map +1 -1
  91. package/dist/core/extensions/types.js.map +1 -1
  92. package/dist/core/freedom/banner.d.ts +14 -0
  93. package/dist/core/freedom/banner.d.ts.map +1 -0
  94. package/dist/core/freedom/banner.js +22 -0
  95. package/dist/core/freedom/banner.js.map +1 -0
  96. package/dist/core/freedom/config.d.ts +27 -0
  97. package/dist/core/freedom/config.d.ts.map +1 -0
  98. package/dist/core/freedom/config.js +216 -0
  99. package/dist/core/freedom/config.js.map +1 -0
  100. package/dist/core/freedom/index.d.ts +23 -0
  101. package/dist/core/freedom/index.d.ts.map +1 -0
  102. package/dist/core/freedom/index.js +19 -0
  103. package/dist/core/freedom/index.js.map +1 -0
  104. package/dist/core/freedom/policy.d.ts +42 -0
  105. package/dist/core/freedom/policy.d.ts.map +1 -0
  106. package/dist/core/freedom/policy.js +47 -0
  107. package/dist/core/freedom/policy.js.map +1 -0
  108. package/dist/core/freedom/safety-floor.d.ts +73 -0
  109. package/dist/core/freedom/safety-floor.d.ts.map +1 -0
  110. package/dist/core/freedom/safety-floor.js +275 -0
  111. package/dist/core/freedom/safety-floor.js.map +1 -0
  112. package/dist/core/harness-control-events.d.ts +91 -0
  113. package/dist/core/harness-control-events.d.ts.map +1 -0
  114. package/dist/core/harness-control-events.js +514 -0
  115. package/dist/core/harness-control-events.js.map +1 -0
  116. package/dist/core/harness-control-replay.d.ts +31 -0
  117. package/dist/core/harness-control-replay.d.ts.map +1 -0
  118. package/dist/core/harness-control-replay.js +187 -0
  119. package/dist/core/harness-control-replay.js.map +1 -0
  120. package/dist/core/headroom-middleware.d.ts +35 -0
  121. package/dist/core/headroom-middleware.d.ts.map +1 -0
  122. package/dist/core/headroom-middleware.js +166 -0
  123. package/dist/core/headroom-middleware.js.map +1 -0
  124. package/dist/core/hook-inventory.d.ts +23 -0
  125. package/dist/core/hook-inventory.d.ts.map +1 -0
  126. package/dist/core/hook-inventory.js +50 -0
  127. package/dist/core/hook-inventory.js.map +1 -0
  128. package/dist/core/keybindings.d.ts +12 -0
  129. package/dist/core/keybindings.d.ts.map +1 -1
  130. package/dist/core/keybindings.js +31 -1
  131. package/dist/core/keybindings.js.map +1 -1
  132. package/dist/core/lean-context-middleware.d.ts +12 -0
  133. package/dist/core/lean-context-middleware.d.ts.map +1 -0
  134. package/dist/core/lean-context-middleware.js +87 -0
  135. package/dist/core/lean-context-middleware.js.map +1 -0
  136. package/dist/core/lean-context-policy.d.ts +45 -0
  137. package/dist/core/lean-context-policy.d.ts.map +1 -0
  138. package/dist/core/lean-context-policy.js +108 -0
  139. package/dist/core/lean-context-policy.js.map +1 -0
  140. package/dist/core/loadout-access-policy.d.ts +41 -0
  141. package/dist/core/loadout-access-policy.d.ts.map +1 -0
  142. package/dist/core/loadout-access-policy.js +182 -0
  143. package/dist/core/loadout-access-policy.js.map +1 -0
  144. package/dist/core/loadout-runtime.d.ts +84 -0
  145. package/dist/core/loadout-runtime.d.ts.map +1 -0
  146. package/dist/core/loadout-runtime.js +157 -0
  147. package/dist/core/loadout-runtime.js.map +1 -0
  148. package/dist/core/loadouts.d.ts +147 -0
  149. package/dist/core/loadouts.d.ts.map +1 -0
  150. package/dist/core/loadouts.js +442 -0
  151. package/dist/core/loadouts.js.map +1 -0
  152. package/dist/core/mcp-inventory.d.ts +74 -0
  153. package/dist/core/mcp-inventory.d.ts.map +1 -0
  154. package/dist/core/mcp-inventory.js +156 -0
  155. package/dist/core/mcp-inventory.js.map +1 -0
  156. package/dist/core/mcp-presets.d.ts +57 -0
  157. package/dist/core/mcp-presets.d.ts.map +1 -0
  158. package/dist/core/mcp-presets.js +81 -0
  159. package/dist/core/mcp-presets.js.map +1 -0
  160. package/dist/core/model-registry.d.ts +1 -0
  161. package/dist/core/model-registry.d.ts.map +1 -1
  162. package/dist/core/model-registry.js +40 -17
  163. package/dist/core/model-registry.js.map +1 -1
  164. package/dist/core/model-resolver.d.ts.map +1 -1
  165. package/dist/core/model-resolver.js +1 -0
  166. package/dist/core/model-resolver.js.map +1 -1
  167. package/dist/core/native-adoption-benchmark.d.ts +166 -0
  168. package/dist/core/native-adoption-benchmark.d.ts.map +1 -0
  169. package/dist/core/native-adoption-benchmark.js +624 -0
  170. package/dist/core/native-adoption-benchmark.js.map +1 -0
  171. package/dist/core/observability-trace.d.ts +80 -0
  172. package/dist/core/observability-trace.d.ts.map +1 -0
  173. package/dist/core/observability-trace.js +140 -0
  174. package/dist/core/observability-trace.js.map +1 -0
  175. package/dist/core/orchestration/checkpoint.d.ts +83 -0
  176. package/dist/core/orchestration/checkpoint.d.ts.map +1 -0
  177. package/dist/core/orchestration/checkpoint.js +152 -0
  178. package/dist/core/orchestration/checkpoint.js.map +1 -0
  179. package/dist/core/orchestration/errors.d.ts +74 -0
  180. package/dist/core/orchestration/errors.d.ts.map +1 -0
  181. package/dist/core/orchestration/errors.js +52 -0
  182. package/dist/core/orchestration/errors.js.map +1 -0
  183. package/dist/core/orchestration/merge-queue.d.ts +121 -0
  184. package/dist/core/orchestration/merge-queue.d.ts.map +1 -0
  185. package/dist/core/orchestration/merge-queue.js +149 -0
  186. package/dist/core/orchestration/merge-queue.js.map +1 -0
  187. package/dist/core/orchestration/recovery.d.ts +106 -0
  188. package/dist/core/orchestration/recovery.d.ts.map +1 -0
  189. package/dist/core/orchestration/recovery.js +110 -0
  190. package/dist/core/orchestration/recovery.js.map +1 -0
  191. package/dist/core/orchestration/replay-ledger.d.ts +76 -0
  192. package/dist/core/orchestration/replay-ledger.d.ts.map +1 -0
  193. package/dist/core/orchestration/replay-ledger.js +395 -0
  194. package/dist/core/orchestration/replay-ledger.js.map +1 -0
  195. package/dist/core/orchestration/scheduler-state.d.ts +78 -0
  196. package/dist/core/orchestration/scheduler-state.d.ts.map +1 -0
  197. package/dist/core/orchestration/scheduler-state.js +185 -0
  198. package/dist/core/orchestration/scheduler-state.js.map +1 -0
  199. package/dist/core/orchestration/scheduler-store.d.ts +309 -0
  200. package/dist/core/orchestration/scheduler-store.d.ts.map +1 -0
  201. package/dist/core/orchestration/scheduler-store.js +368 -0
  202. package/dist/core/orchestration/scheduler-store.js.map +1 -0
  203. package/dist/core/orchestration/sqlite-scheduler-store.d.ts +57 -0
  204. package/dist/core/orchestration/sqlite-scheduler-store.d.ts.map +1 -0
  205. package/dist/core/orchestration/sqlite-scheduler-store.js +528 -0
  206. package/dist/core/orchestration/sqlite-scheduler-store.js.map +1 -0
  207. package/dist/core/orchestration/transaction-coordinator.d.ts +217 -0
  208. package/dist/core/orchestration/transaction-coordinator.d.ts.map +1 -0
  209. package/dist/core/orchestration/transaction-coordinator.js +281 -0
  210. package/dist/core/orchestration/transaction-coordinator.js.map +1 -0
  211. package/dist/core/orchestration/verification-contract.d.ts +197 -0
  212. package/dist/core/orchestration/verification-contract.d.ts.map +1 -0
  213. package/dist/core/orchestration/verification-contract.js +145 -0
  214. package/dist/core/orchestration/verification-contract.js.map +1 -0
  215. package/dist/core/package-composition.d.ts +68 -0
  216. package/dist/core/package-composition.d.ts.map +1 -0
  217. package/dist/core/package-composition.js +304 -0
  218. package/dist/core/package-composition.js.map +1 -0
  219. package/dist/core/package-gallery.d.ts +124 -0
  220. package/dist/core/package-gallery.d.ts.map +1 -0
  221. package/dist/core/package-gallery.js +392 -0
  222. package/dist/core/package-gallery.js.map +1 -0
  223. package/dist/core/package-manager.d.ts +69 -0
  224. package/dist/core/package-manager.d.ts.map +1 -1
  225. package/dist/core/package-manager.js +367 -69
  226. package/dist/core/package-manager.js.map +1 -1
  227. package/dist/core/package-procurement.d.ts +268 -0
  228. package/dist/core/package-procurement.d.ts.map +1 -0
  229. package/dist/core/package-procurement.js +697 -0
  230. package/dist/core/package-procurement.js.map +1 -0
  231. package/dist/core/package-trial-runtime.d.ts +75 -0
  232. package/dist/core/package-trial-runtime.d.ts.map +1 -0
  233. package/dist/core/package-trial-runtime.js +73 -0
  234. package/dist/core/package-trial-runtime.js.map +1 -0
  235. package/dist/core/package-trial-sandbox.d.ts +27 -0
  236. package/dist/core/package-trial-sandbox.d.ts.map +1 -0
  237. package/dist/core/package-trial-sandbox.js +102 -0
  238. package/dist/core/package-trial-sandbox.js.map +1 -0
  239. package/dist/core/policy-overlays-runtime.d.ts +141 -0
  240. package/dist/core/policy-overlays-runtime.d.ts.map +1 -0
  241. package/dist/core/policy-overlays-runtime.js +720 -0
  242. package/dist/core/policy-overlays-runtime.js.map +1 -0
  243. package/dist/core/read-anchor-registry.d.ts +27 -0
  244. package/dist/core/read-anchor-registry.d.ts.map +1 -0
  245. package/dist/core/read-anchor-registry.js +103 -0
  246. package/dist/core/read-anchor-registry.js.map +1 -0
  247. package/dist/core/read-anchors.d.ts +110 -0
  248. package/dist/core/read-anchors.d.ts.map +1 -0
  249. package/dist/core/read-anchors.js +193 -0
  250. package/dist/core/read-anchors.js.map +1 -0
  251. package/dist/core/read-content-cache.d.ts +22 -0
  252. package/dist/core/read-content-cache.d.ts.map +1 -0
  253. package/dist/core/read-content-cache.js +79 -0
  254. package/dist/core/read-content-cache.js.map +1 -0
  255. package/dist/core/recovery-checkpoint.d.ts +196 -0
  256. package/dist/core/recovery-checkpoint.d.ts.map +1 -0
  257. package/dist/core/recovery-checkpoint.js +382 -0
  258. package/dist/core/recovery-checkpoint.js.map +1 -0
  259. package/dist/core/resolve-config-value.d.ts +1 -1
  260. package/dist/core/resolve-config-value.d.ts.map +1 -1
  261. package/dist/core/resolve-config-value.js +30 -2
  262. package/dist/core/resolve-config-value.js.map +1 -1
  263. package/dist/core/resource-loader.d.ts +23 -21
  264. package/dist/core/resource-loader.d.ts.map +1 -1
  265. package/dist/core/resource-loader.js +93 -15
  266. package/dist/core/resource-loader.js.map +1 -1
  267. package/dist/core/sandbox/backend.d.ts +25 -0
  268. package/dist/core/sandbox/backend.d.ts.map +1 -0
  269. package/dist/core/sandbox/backend.js +150 -0
  270. package/dist/core/sandbox/backend.js.map +1 -0
  271. package/dist/core/sandbox/env.d.ts +6 -0
  272. package/dist/core/sandbox/env.d.ts.map +1 -0
  273. package/dist/core/sandbox/env.js +46 -0
  274. package/dist/core/sandbox/env.js.map +1 -0
  275. package/dist/core/sandbox/path-resolver.d.ts +4 -0
  276. package/dist/core/sandbox/path-resolver.d.ts.map +1 -0
  277. package/dist/core/sandbox/path-resolver.js +44 -0
  278. package/dist/core/sandbox/path-resolver.js.map +1 -0
  279. package/dist/core/sandbox/policy.d.ts +87 -0
  280. package/dist/core/sandbox/policy.d.ts.map +1 -0
  281. package/dist/core/sandbox/policy.js +280 -0
  282. package/dist/core/sandbox/policy.js.map +1 -0
  283. package/dist/core/sandbox/spawn.d.ts +20 -0
  284. package/dist/core/sandbox/spawn.d.ts.map +1 -0
  285. package/dist/core/sandbox/spawn.js +80 -0
  286. package/dist/core/sandbox/spawn.js.map +1 -0
  287. package/dist/core/sdk.d.ts +83 -4
  288. package/dist/core/sdk.d.ts.map +1 -1
  289. package/dist/core/sdk.js +143 -55
  290. package/dist/core/sdk.js.map +1 -1
  291. package/dist/core/semantic-cache-policy.d.ts +45 -0
  292. package/dist/core/semantic-cache-policy.d.ts.map +1 -0
  293. package/dist/core/semantic-cache-policy.js +220 -0
  294. package/dist/core/semantic-cache-policy.js.map +1 -0
  295. package/dist/core/session-digest.d.ts +57 -0
  296. package/dist/core/session-digest.d.ts.map +1 -0
  297. package/dist/core/session-digest.js +193 -0
  298. package/dist/core/session-digest.js.map +1 -0
  299. package/dist/core/session-manager.d.ts +2 -2
  300. package/dist/core/session-manager.d.ts.map +1 -1
  301. package/dist/core/session-manager.js +5 -4
  302. package/dist/core/session-manager.js.map +1 -1
  303. package/dist/core/settings-manager.d.ts +17 -0
  304. package/dist/core/settings-manager.d.ts.map +1 -1
  305. package/dist/core/settings-manager.js +47 -2
  306. package/dist/core/settings-manager.js.map +1 -1
  307. package/dist/core/slash-commands.d.ts.map +1 -1
  308. package/dist/core/slash-commands.js +4 -1
  309. package/dist/core/slash-commands.js.map +1 -1
  310. package/dist/core/spec-kit/compiler.d.ts +67 -0
  311. package/dist/core/spec-kit/compiler.d.ts.map +1 -0
  312. package/dist/core/spec-kit/compiler.js +268 -0
  313. package/dist/core/spec-kit/compiler.js.map +1 -0
  314. package/dist/core/system-prompt.d.ts.map +1 -1
  315. package/dist/core/system-prompt.js +25 -7
  316. package/dist/core/system-prompt.js.map +1 -1
  317. package/dist/core/telemetry.d.ts.map +1 -1
  318. package/dist/core/telemetry.js +1 -1
  319. package/dist/core/telemetry.js.map +1 -1
  320. package/dist/core/timings.d.ts +1 -1
  321. package/dist/core/timings.d.ts.map +1 -1
  322. package/dist/core/timings.js +2 -2
  323. package/dist/core/timings.js.map +1 -1
  324. package/dist/core/tools/bash.d.ts +28 -3
  325. package/dist/core/tools/bash.d.ts.map +1 -1
  326. package/dist/core/tools/bash.js +53 -10
  327. package/dist/core/tools/bash.js.map +1 -1
  328. package/dist/core/tools/edit.d.ts +12 -0
  329. package/dist/core/tools/edit.d.ts.map +1 -1
  330. package/dist/core/tools/edit.js +24 -0
  331. package/dist/core/tools/edit.js.map +1 -1
  332. package/dist/core/tools/find.d.ts +3 -0
  333. package/dist/core/tools/find.d.ts.map +1 -1
  334. package/dist/core/tools/find.js +3 -0
  335. package/dist/core/tools/find.js.map +1 -1
  336. package/dist/core/tools/grep.d.ts +3 -0
  337. package/dist/core/tools/grep.d.ts.map +1 -1
  338. package/dist/core/tools/grep.js +4 -1
  339. package/dist/core/tools/grep.js.map +1 -1
  340. package/dist/core/tools/index.d.ts +1 -1
  341. package/dist/core/tools/index.d.ts.map +1 -1
  342. package/dist/core/tools/index.js.map +1 -1
  343. package/dist/core/tools/ls.d.ts +3 -0
  344. package/dist/core/tools/ls.d.ts.map +1 -1
  345. package/dist/core/tools/ls.js +3 -0
  346. package/dist/core/tools/ls.js.map +1 -1
  347. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  348. package/dist/core/tools/output-accumulator.js +1 -1
  349. package/dist/core/tools/output-accumulator.js.map +1 -1
  350. package/dist/core/tools/read.d.ts +13 -0
  351. package/dist/core/tools/read.d.ts.map +1 -1
  352. package/dist/core/tools/read.js +29 -2
  353. package/dist/core/tools/read.js.map +1 -1
  354. package/dist/core/tools/write.d.ts +3 -0
  355. package/dist/core/tools/write.d.ts.map +1 -1
  356. package/dist/core/tools/write.js +3 -0
  357. package/dist/core/tools/write.js.map +1 -1
  358. package/dist/core/transaction-coordinator.d.ts +30 -0
  359. package/dist/core/transaction-coordinator.d.ts.map +1 -0
  360. package/dist/core/transaction-coordinator.js +173 -0
  361. package/dist/core/transaction-coordinator.js.map +1 -0
  362. package/dist/index.d.ts +19 -4
  363. package/dist/index.d.ts.map +1 -1
  364. package/dist/index.js +17 -2
  365. package/dist/index.js.map +1 -1
  366. package/dist/main.d.ts.map +1 -1
  367. package/dist/main.js +4 -6
  368. package/dist/main.js.map +1 -1
  369. package/dist/migrations.d.ts +35 -0
  370. package/dist/migrations.d.ts.map +1 -1
  371. package/dist/migrations.js +410 -4
  372. package/dist/migrations.js.map +1 -1
  373. package/dist/modes/interactive/components/control-panel-gradient-motion.d.ts +28 -0
  374. package/dist/modes/interactive/components/control-panel-gradient-motion.d.ts.map +1 -0
  375. package/dist/modes/interactive/components/control-panel-gradient-motion.js +146 -0
  376. package/dist/modes/interactive/components/control-panel-gradient-motion.js.map +1 -0
  377. package/dist/modes/interactive/components/control-panel-gradient.d.ts +27 -0
  378. package/dist/modes/interactive/components/control-panel-gradient.d.ts.map +1 -0
  379. package/dist/modes/interactive/components/control-panel-gradient.js +127 -0
  380. package/dist/modes/interactive/components/control-panel-gradient.js.map +1 -0
  381. package/dist/modes/interactive/components/control-panel.d.ts +56 -0
  382. package/dist/modes/interactive/components/control-panel.d.ts.map +1 -0
  383. package/dist/modes/interactive/components/control-panel.js +240 -0
  384. package/dist/modes/interactive/components/control-panel.js.map +1 -0
  385. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  386. package/dist/modes/interactive/components/custom-editor.js +21 -13
  387. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  388. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
  389. package/dist/modes/interactive/components/earendil-announcement.js +1 -1
  390. package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
  391. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  392. package/dist/modes/interactive/components/extension-editor.js +1 -1
  393. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  394. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  395. package/dist/modes/interactive/components/footer.js +8 -0
  396. package/dist/modes/interactive/components/footer.js.map +1 -1
  397. package/dist/modes/interactive/components/index.d.ts +3 -0
  398. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  399. package/dist/modes/interactive/components/index.js +3 -0
  400. package/dist/modes/interactive/components/index.js.map +1 -1
  401. package/dist/modes/interactive/components/mcp-selector.d.ts +30 -0
  402. package/dist/modes/interactive/components/mcp-selector.d.ts.map +1 -0
  403. package/dist/modes/interactive/components/mcp-selector.js +155 -0
  404. package/dist/modes/interactive/components/mcp-selector.js.map +1 -0
  405. package/dist/modes/interactive/components/model-selector-state.d.ts +101 -0
  406. package/dist/modes/interactive/components/model-selector-state.d.ts.map +1 -0
  407. package/dist/modes/interactive/components/model-selector-state.js +261 -0
  408. package/dist/modes/interactive/components/model-selector-state.js.map +1 -0
  409. package/dist/modes/interactive/components/model-selector.d.ts +52 -9
  410. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  411. package/dist/modes/interactive/components/model-selector.js +212 -66
  412. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  413. package/dist/modes/interactive/components/settings-selector.d.ts +19 -1
  414. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  415. package/dist/modes/interactive/components/settings-selector.js +21 -8
  416. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  417. package/dist/modes/interactive/components/skills-selector.d.ts +32 -0
  418. package/dist/modes/interactive/components/skills-selector.d.ts.map +1 -0
  419. package/dist/modes/interactive/components/skills-selector.js +130 -0
  420. package/dist/modes/interactive/components/skills-selector.js.map +1 -0
  421. package/dist/modes/interactive/components/theme-selector.d.ts +1 -0
  422. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  423. package/dist/modes/interactive/components/theme-selector.js +10 -1
  424. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  425. package/dist/modes/interactive/components/thinking-selector.d.ts +7 -8
  426. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  427. package/dist/modes/interactive/components/thinking-selector.js +7 -48
  428. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  429. package/dist/modes/interactive/interactive-mode.d.ts +13 -2
  430. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  431. package/dist/modes/interactive/interactive-mode.js +399 -108
  432. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  433. package/dist/modes/interactive/theme/catppuccin-mocha.json +86 -0
  434. package/dist/modes/interactive/theme/dracula.json +86 -0
  435. package/dist/modes/interactive/theme/gruvbox-dark.json +86 -0
  436. package/dist/modes/interactive/theme/kanagawa-dragon.json +86 -0
  437. package/dist/modes/interactive/theme/omk-blackboard.json +91 -0
  438. package/dist/modes/interactive/theme/omk-control-panel.json +91 -0
  439. package/dist/modes/interactive/theme/omk-freedom-grid.json +91 -0
  440. package/dist/modes/interactive/theme/omk-neon-ops.json +90 -0
  441. package/dist/modes/interactive/theme/omk-slate-light.json +91 -0
  442. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  443. package/dist/modes/interactive/theme/theme.js +55 -16
  444. package/dist/modes/interactive/theme/theme.js.map +1 -1
  445. package/dist/modes/interactive/theme/tokyo-night-storm.json +86 -0
  446. package/dist/modes/print-mode.d.ts +2 -2
  447. package/dist/modes/print-mode.d.ts.map +1 -1
  448. package/dist/modes/print-mode.js +2 -2
  449. package/dist/modes/print-mode.js.map +1 -1
  450. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  451. package/dist/modes/rpc/rpc-mode.js +4 -0
  452. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  453. package/dist/package-manager-cli.d.ts.map +1 -1
  454. package/dist/package-manager-cli.js +114 -49
  455. package/dist/package-manager-cli.js.map +1 -1
  456. package/dist/utils/clipboard-image.d.ts.map +1 -1
  457. package/dist/utils/clipboard-image.js +1 -1
  458. package/dist/utils/clipboard-image.js.map +1 -1
  459. package/dist/utils/omk-user-agent.d.ts +2 -0
  460. package/dist/utils/omk-user-agent.d.ts.map +1 -0
  461. package/dist/utils/{pi-user-agent.js → omk-user-agent.js} +2 -2
  462. package/dist/utils/omk-user-agent.js.map +1 -0
  463. package/dist/utils/tools-manager.d.ts.map +1 -1
  464. package/dist/utils/tools-manager.js +1 -1
  465. package/dist/utils/tools-manager.js.map +1 -1
  466. package/dist/utils/version-check.d.ts +5 -5
  467. package/dist/utils/version-check.d.ts.map +1 -1
  468. package/dist/utils/version-check.js +8 -11
  469. package/dist/utils/version-check.js.map +1 -1
  470. package/dist/utils/windows-self-update.d.ts.map +1 -1
  471. package/dist/utils/windows-self-update.js +1 -1
  472. package/dist/utils/windows-self-update.js.map +1 -1
  473. package/docs/compaction.md +21 -8
  474. package/docs/packages.md +47 -6
  475. package/docs/prompt-templates.md +2 -0
  476. package/docs/quickstart.md +1 -1
  477. package/docs/themes.md +10 -2
  478. package/docs/usage.md +18 -7
  479. package/examples/README.md +1 -1
  480. package/examples/extensions/README.md +11 -11
  481. package/examples/extensions/auto-commit-on-exit.ts +6 -6
  482. package/examples/extensions/bash-spawn-hook.ts +4 -4
  483. package/examples/extensions/bookmark.ts +5 -5
  484. package/examples/extensions/border-status-editor.ts +7 -7
  485. package/examples/extensions/built-in-tool-renderer.ts +6 -6
  486. package/examples/extensions/claude-rules.ts +4 -4
  487. package/examples/extensions/commands.ts +5 -5
  488. package/examples/extensions/confirm-destructive.ts +3 -3
  489. package/examples/extensions/custom-compaction.ts +3 -3
  490. package/examples/extensions/custom-footer.ts +2 -2
  491. package/examples/extensions/custom-header.ts +5 -5
  492. package/examples/extensions/custom-provider-anthropic/index.ts +4 -4
  493. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  494. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  495. package/examples/extensions/custom-provider-gitlab-duo/index.ts +3 -3
  496. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  497. package/examples/extensions/dirty-repo-guard.ts +7 -7
  498. package/examples/extensions/doom-overlay/README.md +3 -3
  499. package/examples/extensions/doom-overlay/doom/build.sh +2 -2
  500. package/examples/extensions/doom-overlay/doom/doomgeneric_pi.c +1 -1
  501. package/examples/extensions/doom-overlay/index.ts +3 -3
  502. package/examples/extensions/dynamic-resources/dynamic.json +1 -1
  503. package/examples/extensions/dynamic-resources/index.ts +2 -2
  504. package/examples/extensions/dynamic-tools.ts +4 -4
  505. package/examples/extensions/event-bus.ts +8 -8
  506. package/examples/extensions/file-trigger.ts +3 -3
  507. package/examples/extensions/git-checkpoint.ts +7 -7
  508. package/examples/extensions/git-merge-and-resolve.ts +14 -14
  509. package/examples/extensions/github-issue-autocomplete.ts +6 -6
  510. package/examples/extensions/gondolin/index.ts +16 -16
  511. package/examples/extensions/gondolin/package-lock.json +2 -2
  512. package/examples/extensions/gondolin/package.json +1 -1
  513. package/examples/extensions/handoff.ts +2 -2
  514. package/examples/extensions/hello.ts +2 -2
  515. package/examples/extensions/hidden-thinking-label.ts +4 -4
  516. package/examples/extensions/inline-bash.ts +5 -5
  517. package/examples/extensions/input-transform-streaming.ts +5 -5
  518. package/examples/extensions/input-transform.ts +5 -5
  519. package/examples/extensions/interactive-shell.ts +3 -3
  520. package/examples/extensions/mac-system-theme.ts +5 -5
  521. package/examples/extensions/message-renderer.ts +4 -4
  522. package/examples/extensions/minimal-mode.ts +9 -9
  523. package/examples/extensions/modal-editor.ts +3 -3
  524. package/examples/extensions/model-status.ts +3 -3
  525. package/examples/extensions/notify.ts +5 -5
  526. package/examples/extensions/overlay-qa-tests.ts +20 -20
  527. package/examples/extensions/overlay-test.ts +3 -3
  528. package/examples/extensions/permission-gate.ts +2 -2
  529. package/examples/extensions/pirate.ts +4 -4
  530. package/examples/extensions/plan-mode/index.ts +22 -22
  531. package/examples/extensions/preset.ts +30 -30
  532. package/examples/extensions/prompt-customizer.ts +3 -3
  533. package/examples/extensions/protected-paths.ts +2 -2
  534. package/examples/extensions/provider-payload.ts +5 -5
  535. package/examples/extensions/qna.ts +2 -2
  536. package/examples/extensions/question.ts +2 -2
  537. package/examples/extensions/questionnaire.ts +2 -2
  538. package/examples/extensions/rainbow-editor.ts +3 -3
  539. package/examples/extensions/reload-runtime.ts +4 -4
  540. package/examples/extensions/rpc-demo.ts +10 -10
  541. package/examples/extensions/sandbox/index.ts +17 -17
  542. package/examples/extensions/sandbox/package-lock.json +2 -2
  543. package/examples/extensions/sandbox/package.json +1 -1
  544. package/examples/extensions/send-user-message.ts +13 -13
  545. package/examples/extensions/session-name.ts +4 -4
  546. package/examples/extensions/shutdown-command.ts +10 -10
  547. package/examples/extensions/snake.ts +3 -3
  548. package/examples/extensions/space-invaders.ts +3 -3
  549. package/examples/extensions/ssh.ts +12 -12
  550. package/examples/extensions/status-line.ts +4 -4
  551. package/examples/extensions/structured-output.ts +2 -2
  552. package/examples/extensions/subagent/README.md +13 -13
  553. package/examples/extensions/subagent/agents.ts +2 -2
  554. package/examples/extensions/subagent/index.ts +53 -21
  555. package/examples/extensions/summarize.ts +2 -2
  556. package/examples/extensions/system-prompt-header.ts +3 -3
  557. package/examples/extensions/tic-tac-toe.ts +15 -15
  558. package/examples/extensions/timed-confirm.ts +4 -4
  559. package/examples/extensions/titlebar-spinner.ts +9 -9
  560. package/examples/extensions/todo.ts +5 -5
  561. package/examples/extensions/tool-override.ts +5 -5
  562. package/examples/extensions/tools.ts +10 -10
  563. package/examples/extensions/trigger-compact.ts +3 -3
  564. package/examples/extensions/truncated-tool.ts +3 -3
  565. package/examples/extensions/widget-placement.ts +2 -2
  566. package/examples/extensions/with-deps/index.ts +2 -2
  567. package/examples/extensions/with-deps/package-lock.json +2 -2
  568. package/examples/extensions/with-deps/package.json +1 -1
  569. package/examples/extensions/working-indicator.ts +7 -7
  570. package/examples/extensions/working-message-test.ts +3 -3
  571. package/examples/sdk/01-minimal.ts +1 -1
  572. package/examples/sdk/03-custom-prompt.ts +1 -1
  573. package/examples/sdk/04-skills.ts +1 -1
  574. package/examples/sdk/05-tools.ts +1 -1
  575. package/examples/sdk/06-extensions.ts +11 -11
  576. package/examples/sdk/07-context-files.ts +2 -0
  577. package/examples/sdk/08-prompt-templates.ts +1 -1
  578. package/examples/sdk/09-api-keys-and-oauth.ts +2 -2
  579. package/examples/sdk/README.md +2 -2
  580. package/node_modules/@earendil-works/omk-agent-core/README.md +488 -0
  581. package/node_modules/@earendil-works/omk-agent-core/dist/agent-loop.d.ts +24 -0
  582. package/node_modules/@earendil-works/omk-agent-core/dist/agent-loop.d.ts.map +1 -0
  583. package/node_modules/@earendil-works/omk-agent-core/dist/agent-loop.js +553 -0
  584. package/node_modules/@earendil-works/omk-agent-core/dist/agent-loop.js.map +1 -0
  585. package/node_modules/@earendil-works/omk-agent-core/dist/agent.d.ts +118 -0
  586. package/node_modules/@earendil-works/omk-agent-core/dist/agent.d.ts.map +1 -0
  587. package/node_modules/@earendil-works/omk-agent-core/dist/agent.js +402 -0
  588. package/node_modules/@earendil-works/omk-agent-core/dist/agent.js.map +1 -0
  589. package/node_modules/@earendil-works/omk-agent-core/dist/harness/agent-harness.d.ts +95 -0
  590. package/node_modules/@earendil-works/omk-agent-core/dist/harness/agent-harness.d.ts.map +1 -0
  591. package/node_modules/@earendil-works/omk-agent-core/dist/harness/agent-harness.js +996 -0
  592. package/node_modules/@earendil-works/omk-agent-core/dist/harness/agent-harness.js.map +1 -0
  593. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/branch-summarization.d.ts +53 -0
  594. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/branch-summarization.d.ts.map +1 -0
  595. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/branch-summarization.js +175 -0
  596. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/branch-summarization.js.map +1 -0
  597. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/compaction.d.ts +117 -0
  598. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -0
  599. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/compaction.js +568 -0
  600. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/compaction.js.map +1 -0
  601. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/utils.d.ts +25 -0
  602. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/utils.d.ts.map +1 -0
  603. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/utils.js +131 -0
  604. package/node_modules/@earendil-works/omk-agent-core/dist/harness/compaction/utils.js.map +1 -0
  605. package/node_modules/@earendil-works/omk-agent-core/dist/harness/env/nodejs.d.ts +51 -0
  606. package/node_modules/@earendil-works/omk-agent-core/dist/harness/env/nodejs.d.ts.map +1 -0
  607. package/node_modules/@earendil-works/omk-agent-core/dist/harness/env/nodejs.js +510 -0
  608. package/node_modules/@earendil-works/omk-agent-core/dist/harness/env/nodejs.js.map +1 -0
  609. package/node_modules/@earendil-works/omk-agent-core/dist/harness/messages.d.ts +51 -0
  610. package/node_modules/@earendil-works/omk-agent-core/dist/harness/messages.d.ts.map +1 -0
  611. package/node_modules/@earendil-works/omk-agent-core/dist/harness/messages.js +102 -0
  612. package/node_modules/@earendil-works/omk-agent-core/dist/harness/messages.js.map +1 -0
  613. package/node_modules/@earendil-works/omk-agent-core/dist/harness/prompt-templates.d.ts +48 -0
  614. package/node_modules/@earendil-works/omk-agent-core/dist/harness/prompt-templates.d.ts.map +1 -0
  615. package/node_modules/@earendil-works/omk-agent-core/dist/harness/prompt-templates.js +230 -0
  616. package/node_modules/@earendil-works/omk-agent-core/dist/harness/prompt-templates.js.map +1 -0
  617. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-repo.d.ts +26 -0
  618. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-repo.d.ts.map +1 -0
  619. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-repo.js +101 -0
  620. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-repo.js.map +1 -0
  621. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-storage.d.ts +36 -0
  622. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-storage.d.ts.map +1 -0
  623. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-storage.js +273 -0
  624. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/jsonl-storage.js.map +1 -0
  625. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-repo.d.ts +18 -0
  626. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-repo.d.ts.map +1 -0
  627. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-repo.js +42 -0
  628. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-repo.js.map +1 -0
  629. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-storage.d.ts +25 -0
  630. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-storage.d.ts.map +1 -0
  631. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-storage.js +114 -0
  632. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/memory-storage.js.map +1 -0
  633. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/repo-utils.d.ts +11 -0
  634. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/repo-utils.d.ts.map +1 -0
  635. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/repo-utils.js +39 -0
  636. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/repo-utils.js.map +1 -0
  637. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/session.d.ts +33 -0
  638. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/session.d.ts.map +1 -0
  639. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/session.js +210 -0
  640. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/session.js.map +1 -0
  641. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/uuid.d.ts +2 -0
  642. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/uuid.d.ts.map +1 -0
  643. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/uuid.js +50 -0
  644. package/node_modules/@earendil-works/omk-agent-core/dist/harness/session/uuid.js.map +1 -0
  645. package/node_modules/@earendil-works/omk-agent-core/dist/harness/skills.d.ts +44 -0
  646. package/node_modules/@earendil-works/omk-agent-core/dist/harness/skills.d.ts.map +1 -0
  647. package/node_modules/@earendil-works/omk-agent-core/dist/harness/skills.js +311 -0
  648. package/node_modules/@earendil-works/omk-agent-core/dist/harness/skills.js.map +1 -0
  649. package/node_modules/@earendil-works/omk-agent-core/dist/harness/system-prompt.d.ts +3 -0
  650. package/node_modules/@earendil-works/omk-agent-core/dist/harness/system-prompt.d.ts.map +1 -0
  651. package/node_modules/@earendil-works/omk-agent-core/dist/harness/system-prompt.js +30 -0
  652. package/node_modules/@earendil-works/omk-agent-core/dist/harness/system-prompt.js.map +1 -0
  653. package/node_modules/@earendil-works/omk-agent-core/dist/harness/types.d.ts +616 -0
  654. package/node_modules/@earendil-works/omk-agent-core/dist/harness/types.d.ts.map +1 -0
  655. package/node_modules/@earendil-works/omk-agent-core/dist/harness/types.js +94 -0
  656. package/node_modules/@earendil-works/omk-agent-core/dist/harness/types.js.map +1 -0
  657. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/shell-output.d.ts +14 -0
  658. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/shell-output.d.ts.map +1 -0
  659. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/shell-output.js +126 -0
  660. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/shell-output.js.map +1 -0
  661. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/truncate.d.ts +70 -0
  662. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/truncate.d.ts.map +1 -0
  663. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/truncate.js +297 -0
  664. package/node_modules/@earendil-works/omk-agent-core/dist/harness/utils/truncate.js.map +1 -0
  665. package/node_modules/@earendil-works/omk-agent-core/dist/index.d.ts +20 -0
  666. package/node_modules/@earendil-works/omk-agent-core/dist/index.d.ts.map +1 -0
  667. package/node_modules/@earendil-works/omk-agent-core/dist/index.js +25 -0
  668. package/node_modules/@earendil-works/omk-agent-core/dist/index.js.map +1 -0
  669. package/node_modules/@earendil-works/omk-agent-core/dist/node.d.ts +3 -0
  670. package/node_modules/@earendil-works/omk-agent-core/dist/node.d.ts.map +1 -0
  671. package/node_modules/@earendil-works/omk-agent-core/dist/node.js +3 -0
  672. package/node_modules/@earendil-works/omk-agent-core/dist/node.js.map +1 -0
  673. package/node_modules/@earendil-works/omk-agent-core/dist/proxy.d.ts +69 -0
  674. package/node_modules/@earendil-works/omk-agent-core/dist/proxy.d.ts.map +1 -0
  675. package/node_modules/@earendil-works/omk-agent-core/dist/proxy.js +278 -0
  676. package/node_modules/@earendil-works/omk-agent-core/dist/proxy.js.map +1 -0
  677. package/node_modules/@earendil-works/omk-agent-core/dist/types.d.ts +393 -0
  678. package/node_modules/@earendil-works/omk-agent-core/dist/types.d.ts.map +1 -0
  679. package/node_modules/@earendil-works/omk-agent-core/dist/types.js +2 -0
  680. package/node_modules/@earendil-works/omk-agent-core/dist/types.js.map +1 -0
  681. package/node_modules/@earendil-works/omk-agent-core/package.json +60 -0
  682. package/node_modules/@earendil-works/omk-ai/README.md +1389 -0
  683. package/node_modules/@earendil-works/omk-ai/dist/api-registry.d.ts +20 -0
  684. package/node_modules/@earendil-works/omk-ai/dist/api-registry.d.ts.map +1 -0
  685. package/node_modules/@earendil-works/omk-ai/dist/api-registry.js +44 -0
  686. package/node_modules/@earendil-works/omk-ai/dist/api-registry.js.map +1 -0
  687. package/node_modules/@earendil-works/omk-ai/dist/bedrock-provider.d.ts +5 -0
  688. package/node_modules/@earendil-works/omk-ai/dist/bedrock-provider.d.ts.map +1 -0
  689. package/node_modules/@earendil-works/omk-ai/dist/bedrock-provider.js +6 -0
  690. package/node_modules/@earendil-works/omk-ai/dist/bedrock-provider.js.map +1 -0
  691. package/node_modules/@earendil-works/omk-ai/dist/cli.d.ts +3 -0
  692. package/node_modules/@earendil-works/omk-ai/dist/cli.d.ts.map +1 -0
  693. package/node_modules/@earendil-works/omk-ai/dist/cli.js +130 -0
  694. package/node_modules/@earendil-works/omk-ai/dist/cli.js.map +1 -0
  695. package/node_modules/@earendil-works/omk-ai/dist/env-api-keys.d.ts +20 -0
  696. package/node_modules/@earendil-works/omk-ai/dist/env-api-keys.d.ts.map +1 -0
  697. package/node_modules/@earendil-works/omk-ai/dist/env-api-keys.js +199 -0
  698. package/node_modules/@earendil-works/omk-ai/dist/env-api-keys.js.map +1 -0
  699. package/node_modules/@earendil-works/omk-ai/dist/image-models.d.ts +10 -0
  700. package/node_modules/@earendil-works/omk-ai/dist/image-models.d.ts.map +1 -0
  701. package/node_modules/@earendil-works/omk-ai/dist/image-models.generated.d.ts +515 -0
  702. package/node_modules/@earendil-works/omk-ai/dist/image-models.generated.d.ts.map +1 -0
  703. package/node_modules/@earendil-works/omk-ai/dist/image-models.generated.js +517 -0
  704. package/node_modules/@earendil-works/omk-ai/dist/image-models.generated.js.map +1 -0
  705. package/node_modules/@earendil-works/omk-ai/dist/image-models.js +23 -0
  706. package/node_modules/@earendil-works/omk-ai/dist/image-models.js.map +1 -0
  707. package/node_modules/@earendil-works/omk-ai/dist/images-api-registry.d.ts +14 -0
  708. package/node_modules/@earendil-works/omk-ai/dist/images-api-registry.d.ts.map +1 -0
  709. package/node_modules/@earendil-works/omk-ai/dist/images-api-registry.js +22 -0
  710. package/node_modules/@earendil-works/omk-ai/dist/images-api-registry.js.map +1 -0
  711. package/node_modules/@earendil-works/omk-ai/dist/images.d.ts +4 -0
  712. package/node_modules/@earendil-works/omk-ai/dist/images.d.ts.map +1 -0
  713. package/node_modules/@earendil-works/omk-ai/dist/images.js +16 -0
  714. package/node_modules/@earendil-works/omk-ai/dist/images.js.map +1 -0
  715. package/node_modules/@earendil-works/omk-ai/dist/index.d.ts +33 -0
  716. package/node_modules/@earendil-works/omk-ai/dist/index.d.ts.map +1 -0
  717. package/node_modules/@earendil-works/omk-ai/dist/index.js +21 -0
  718. package/node_modules/@earendil-works/omk-ai/dist/index.js.map +1 -0
  719. package/node_modules/@earendil-works/omk-ai/dist/models.d.ts +18 -0
  720. package/node_modules/@earendil-works/omk-ai/dist/models.d.ts.map +1 -0
  721. package/node_modules/@earendil-works/omk-ai/dist/models.generated.d.ts +18762 -0
  722. package/node_modules/@earendil-works/omk-ai/dist/models.generated.d.ts.map +1 -0
  723. package/node_modules/@earendil-works/omk-ai/dist/models.generated.js +17197 -0
  724. package/node_modules/@earendil-works/omk-ai/dist/models.generated.js.map +1 -0
  725. package/node_modules/@earendil-works/omk-ai/dist/models.js +78 -0
  726. package/node_modules/@earendil-works/omk-ai/dist/models.js.map +1 -0
  727. package/node_modules/@earendil-works/omk-ai/dist/oauth.d.ts +2 -0
  728. package/node_modules/@earendil-works/omk-ai/dist/oauth.d.ts.map +1 -0
  729. package/node_modules/@earendil-works/omk-ai/dist/oauth.js +2 -0
  730. package/node_modules/@earendil-works/omk-ai/dist/oauth.js.map +1 -0
  731. package/node_modules/@earendil-works/omk-ai/dist/provider-network.d.ts +39 -0
  732. package/node_modules/@earendil-works/omk-ai/dist/provider-network.d.ts.map +1 -0
  733. package/node_modules/@earendil-works/omk-ai/dist/provider-network.js +170 -0
  734. package/node_modules/@earendil-works/omk-ai/dist/provider-network.js.map +1 -0
  735. package/node_modules/@earendil-works/omk-ai/dist/providers/amazon-bedrock.d.ts +38 -0
  736. package/node_modules/@earendil-works/omk-ai/dist/providers/amazon-bedrock.d.ts.map +1 -0
  737. package/node_modules/@earendil-works/omk-ai/dist/providers/amazon-bedrock.js +826 -0
  738. package/node_modules/@earendil-works/omk-ai/dist/providers/amazon-bedrock.js.map +1 -0
  739. package/node_modules/@earendil-works/omk-ai/dist/providers/anthropic.d.ts +77 -0
  740. package/node_modules/@earendil-works/omk-ai/dist/providers/anthropic.d.ts.map +1 -0
  741. package/node_modules/@earendil-works/omk-ai/dist/providers/anthropic.js +1123 -0
  742. package/node_modules/@earendil-works/omk-ai/dist/providers/anthropic.js.map +1 -0
  743. package/node_modules/@earendil-works/omk-ai/dist/providers/azure-openai-responses.d.ts +15 -0
  744. package/node_modules/@earendil-works/omk-ai/dist/providers/azure-openai-responses.d.ts.map +1 -0
  745. package/node_modules/@earendil-works/omk-ai/dist/providers/azure-openai-responses.js +221 -0
  746. package/node_modules/@earendil-works/omk-ai/dist/providers/azure-openai-responses.js.map +1 -0
  747. package/node_modules/@earendil-works/omk-ai/dist/providers/cloudflare.d.ts +13 -0
  748. package/node_modules/@earendil-works/omk-ai/dist/providers/cloudflare.d.ts.map +1 -0
  749. package/node_modules/@earendil-works/omk-ai/dist/providers/cloudflare.js +26 -0
  750. package/node_modules/@earendil-works/omk-ai/dist/providers/cloudflare.js.map +1 -0
  751. package/node_modules/@earendil-works/omk-ai/dist/providers/faux.d.ts +56 -0
  752. package/node_modules/@earendil-works/omk-ai/dist/providers/faux.d.ts.map +1 -0
  753. package/node_modules/@earendil-works/omk-ai/dist/providers/faux.js +368 -0
  754. package/node_modules/@earendil-works/omk-ai/dist/providers/faux.js.map +1 -0
  755. package/node_modules/@earendil-works/omk-ai/dist/providers/github-copilot-headers.d.ts +8 -0
  756. package/node_modules/@earendil-works/omk-ai/dist/providers/github-copilot-headers.d.ts.map +1 -0
  757. package/node_modules/@earendil-works/omk-ai/dist/providers/github-copilot-headers.js +29 -0
  758. package/node_modules/@earendil-works/omk-ai/dist/providers/github-copilot-headers.js.map +1 -0
  759. package/node_modules/@earendil-works/omk-ai/dist/providers/google-shared.d.ts +70 -0
  760. package/node_modules/@earendil-works/omk-ai/dist/providers/google-shared.d.ts.map +1 -0
  761. package/node_modules/@earendil-works/omk-ai/dist/providers/google-shared.js +331 -0
  762. package/node_modules/@earendil-works/omk-ai/dist/providers/google-shared.js.map +1 -0
  763. package/node_modules/@earendil-works/omk-ai/dist/providers/google-vertex.d.ts +15 -0
  764. package/node_modules/@earendil-works/omk-ai/dist/providers/google-vertex.d.ts.map +1 -0
  765. package/node_modules/@earendil-works/omk-ai/dist/providers/google-vertex.js +442 -0
  766. package/node_modules/@earendil-works/omk-ai/dist/providers/google-vertex.js.map +1 -0
  767. package/node_modules/@earendil-works/omk-ai/dist/providers/google.d.ts +13 -0
  768. package/node_modules/@earendil-works/omk-ai/dist/providers/google.d.ts.map +1 -0
  769. package/node_modules/@earendil-works/omk-ai/dist/providers/google.js +402 -0
  770. package/node_modules/@earendil-works/omk-ai/dist/providers/google.js.map +1 -0
  771. package/node_modules/@earendil-works/omk-ai/dist/providers/images/openrouter.d.ts +3 -0
  772. package/node_modules/@earendil-works/omk-ai/dist/providers/images/openrouter.d.ts.map +1 -0
  773. package/node_modules/@earendil-works/omk-ai/dist/providers/images/openrouter.js +128 -0
  774. package/node_modules/@earendil-works/omk-ai/dist/providers/images/openrouter.js.map +1 -0
  775. package/node_modules/@earendil-works/omk-ai/dist/providers/images/register-builtins.d.ts +4 -0
  776. package/node_modules/@earendil-works/omk-ai/dist/providers/images/register-builtins.d.ts.map +1 -0
  777. package/node_modules/@earendil-works/omk-ai/dist/providers/images/register-builtins.js +34 -0
  778. package/node_modules/@earendil-works/omk-ai/dist/providers/images/register-builtins.js.map +1 -0
  779. package/node_modules/@earendil-works/omk-ai/dist/providers/mistral.d.ts +25 -0
  780. package/node_modules/@earendil-works/omk-ai/dist/providers/mistral.d.ts.map +1 -0
  781. package/node_modules/@earendil-works/omk-ai/dist/providers/mistral.js +534 -0
  782. package/node_modules/@earendil-works/omk-ai/dist/providers/mistral.js.map +1 -0
  783. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-codex-responses.d.ts +30 -0
  784. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-codex-responses.d.ts.map +1 -0
  785. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-codex-responses.js +1171 -0
  786. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-codex-responses.js.map +1 -0
  787. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-completions.d.ts +19 -0
  788. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-completions.d.ts.map +1 -0
  789. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-completions.js +977 -0
  790. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-completions.js.map +1 -0
  791. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-prompt-cache.d.ts +11 -0
  792. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-prompt-cache.d.ts.map +1 -0
  793. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-prompt-cache.js +22 -0
  794. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-prompt-cache.js.map +1 -0
  795. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses-shared.d.ts +18 -0
  796. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses-shared.d.ts.map +1 -0
  797. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses-shared.js +496 -0
  798. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses-shared.js.map +1 -0
  799. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses.d.ts +13 -0
  800. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses.d.ts.map +1 -0
  801. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses.js +233 -0
  802. package/node_modules/@earendil-works/omk-ai/dist/providers/openai-responses.js.map +1 -0
  803. package/node_modules/@earendil-works/omk-ai/dist/providers/register-builtins.d.ts +35 -0
  804. package/node_modules/@earendil-works/omk-ai/dist/providers/register-builtins.d.ts.map +1 -0
  805. package/node_modules/@earendil-works/omk-ai/dist/providers/register-builtins.js +254 -0
  806. package/node_modules/@earendil-works/omk-ai/dist/providers/register-builtins.js.map +1 -0
  807. package/node_modules/@earendil-works/omk-ai/dist/providers/simple-options.d.ts +8 -0
  808. package/node_modules/@earendil-works/omk-ai/dist/providers/simple-options.d.ts.map +1 -0
  809. package/node_modules/@earendil-works/omk-ai/dist/providers/simple-options.js +42 -0
  810. package/node_modules/@earendil-works/omk-ai/dist/providers/simple-options.js.map +1 -0
  811. package/node_modules/@earendil-works/omk-ai/dist/providers/tool-schema.d.ts +13 -0
  812. package/node_modules/@earendil-works/omk-ai/dist/providers/tool-schema.d.ts.map +1 -0
  813. package/node_modules/@earendil-works/omk-ai/dist/providers/tool-schema.js +82 -0
  814. package/node_modules/@earendil-works/omk-ai/dist/providers/tool-schema.js.map +1 -0
  815. package/node_modules/@earendil-works/omk-ai/dist/providers/transform-messages.d.ts +8 -0
  816. package/node_modules/@earendil-works/omk-ai/dist/providers/transform-messages.d.ts.map +1 -0
  817. package/node_modules/@earendil-works/omk-ai/dist/providers/transform-messages.js +184 -0
  818. package/node_modules/@earendil-works/omk-ai/dist/providers/transform-messages.js.map +1 -0
  819. package/node_modules/@earendil-works/omk-ai/dist/session-resources.d.ts +4 -0
  820. package/node_modules/@earendil-works/omk-ai/dist/session-resources.d.ts.map +1 -0
  821. package/node_modules/@earendil-works/omk-ai/dist/session-resources.js +22 -0
  822. package/node_modules/@earendil-works/omk-ai/dist/session-resources.js.map +1 -0
  823. package/node_modules/@earendil-works/omk-ai/dist/stream.d.ts +8 -0
  824. package/node_modules/@earendil-works/omk-ai/dist/stream.d.ts.map +1 -0
  825. package/node_modules/@earendil-works/omk-ai/dist/stream.js +77 -0
  826. package/node_modules/@earendil-works/omk-ai/dist/stream.js.map +1 -0
  827. package/node_modules/@earendil-works/omk-ai/dist/types.d.ts +570 -0
  828. package/node_modules/@earendil-works/omk-ai/dist/types.d.ts.map +1 -0
  829. package/node_modules/@earendil-works/omk-ai/dist/types.js +2 -0
  830. package/node_modules/@earendil-works/omk-ai/dist/types.js.map +1 -0
  831. package/node_modules/@earendil-works/omk-ai/dist/utils/abort-signals.d.ts +6 -0
  832. package/node_modules/@earendil-works/omk-ai/dist/utils/abort-signals.d.ts.map +1 -0
  833. package/node_modules/@earendil-works/omk-ai/dist/utils/abort-signals.js +34 -0
  834. package/node_modules/@earendil-works/omk-ai/dist/utils/abort-signals.js.map +1 -0
  835. package/node_modules/@earendil-works/omk-ai/dist/utils/diagnostics.d.ts +19 -0
  836. package/node_modules/@earendil-works/omk-ai/dist/utils/diagnostics.d.ts.map +1 -0
  837. package/node_modules/@earendil-works/omk-ai/dist/utils/diagnostics.js +25 -0
  838. package/node_modules/@earendil-works/omk-ai/dist/utils/diagnostics.js.map +1 -0
  839. package/node_modules/@earendil-works/omk-ai/dist/utils/event-stream.d.ts +21 -0
  840. package/node_modules/@earendil-works/omk-ai/dist/utils/event-stream.d.ts.map +1 -0
  841. package/node_modules/@earendil-works/omk-ai/dist/utils/event-stream.js +81 -0
  842. package/node_modules/@earendil-works/omk-ai/dist/utils/event-stream.js.map +1 -0
  843. package/node_modules/@earendil-works/omk-ai/dist/utils/hash.d.ts +3 -0
  844. package/node_modules/@earendil-works/omk-ai/dist/utils/hash.d.ts.map +1 -0
  845. package/node_modules/@earendil-works/omk-ai/dist/utils/hash.js +14 -0
  846. package/node_modules/@earendil-works/omk-ai/dist/utils/hash.js.map +1 -0
  847. package/node_modules/@earendil-works/omk-ai/dist/utils/headers.d.ts +2 -0
  848. package/node_modules/@earendil-works/omk-ai/dist/utils/headers.d.ts.map +1 -0
  849. package/node_modules/@earendil-works/omk-ai/dist/utils/headers.js +8 -0
  850. package/node_modules/@earendil-works/omk-ai/dist/utils/headers.js.map +1 -0
  851. package/node_modules/@earendil-works/omk-ai/dist/utils/json-parse.d.ts +16 -0
  852. package/node_modules/@earendil-works/omk-ai/dist/utils/json-parse.d.ts.map +1 -0
  853. package/node_modules/@earendil-works/omk-ai/dist/utils/json-parse.js +113 -0
  854. package/node_modules/@earendil-works/omk-ai/dist/utils/json-parse.js.map +1 -0
  855. package/node_modules/@earendil-works/omk-ai/dist/utils/node-http-proxy.d.ts +10 -0
  856. package/node_modules/@earendil-works/omk-ai/dist/utils/node-http-proxy.d.ts.map +1 -0
  857. package/node_modules/@earendil-works/omk-ai/dist/utils/node-http-proxy.js +97 -0
  858. package/node_modules/@earendil-works/omk-ai/dist/utils/node-http-proxy.js.map +1 -0
  859. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/anthropic.d.ts +25 -0
  860. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/anthropic.d.ts.map +1 -0
  861. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/anthropic.js +335 -0
  862. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/anthropic.js.map +1 -0
  863. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/device-code.d.ts +21 -0
  864. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/device-code.d.ts.map +1 -0
  865. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/device-code.js +56 -0
  866. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/device-code.js.map +1 -0
  867. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/github-copilot.d.ts +30 -0
  868. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/github-copilot.d.ts.map +1 -0
  869. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/github-copilot.js +280 -0
  870. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/github-copilot.js.map +1 -0
  871. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/index.d.ts +58 -0
  872. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/index.d.ts.map +1 -0
  873. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/index.js +122 -0
  874. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/index.js.map +1 -0
  875. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/oauth-page.d.ts +3 -0
  876. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/oauth-page.d.ts.map +1 -0
  877. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/oauth-page.js +105 -0
  878. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/oauth-page.js.map +1 -0
  879. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/openai-codex.d.ts +43 -0
  880. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/openai-codex.d.ts.map +1 -0
  881. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/openai-codex.js +487 -0
  882. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/openai-codex.js.map +1 -0
  883. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/pkce.d.ts +13 -0
  884. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/pkce.d.ts.map +1 -0
  885. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/pkce.js +31 -0
  886. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/pkce.js.map +1 -0
  887. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/types.d.ts +64 -0
  888. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/types.d.ts.map +1 -0
  889. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/types.js +2 -0
  890. package/node_modules/@earendil-works/omk-ai/dist/utils/oauth/types.js.map +1 -0
  891. package/node_modules/@earendil-works/omk-ai/dist/utils/overflow.d.ts +57 -0
  892. package/node_modules/@earendil-works/omk-ai/dist/utils/overflow.d.ts.map +1 -0
  893. package/node_modules/@earendil-works/omk-ai/dist/utils/overflow.js +154 -0
  894. package/node_modules/@earendil-works/omk-ai/dist/utils/overflow.js.map +1 -0
  895. package/node_modules/@earendil-works/omk-ai/dist/utils/sanitize-unicode.d.ts +22 -0
  896. package/node_modules/@earendil-works/omk-ai/dist/utils/sanitize-unicode.d.ts.map +1 -0
  897. package/node_modules/@earendil-works/omk-ai/dist/utils/sanitize-unicode.js +26 -0
  898. package/node_modules/@earendil-works/omk-ai/dist/utils/sanitize-unicode.js.map +1 -0
  899. package/node_modules/@earendil-works/omk-ai/dist/utils/typebox-helpers.d.ts +17 -0
  900. package/node_modules/@earendil-works/omk-ai/dist/utils/typebox-helpers.d.ts.map +1 -0
  901. package/node_modules/@earendil-works/omk-ai/dist/utils/typebox-helpers.js +21 -0
  902. package/node_modules/@earendil-works/omk-ai/dist/utils/typebox-helpers.js.map +1 -0
  903. package/node_modules/@earendil-works/omk-ai/dist/utils/validation.d.ts +18 -0
  904. package/node_modules/@earendil-works/omk-ai/dist/utils/validation.d.ts.map +1 -0
  905. package/node_modules/@earendil-works/omk-ai/dist/utils/validation.js +281 -0
  906. package/node_modules/@earendil-works/omk-ai/dist/utils/validation.js.map +1 -0
  907. package/node_modules/@earendil-works/omk-ai/package.json +106 -0
  908. package/node_modules/@earendil-works/omk-tui/README.md +791 -0
  909. package/node_modules/@earendil-works/omk-tui/dist/autocomplete.d.ts +54 -0
  910. package/node_modules/@earendil-works/omk-tui/dist/autocomplete.d.ts.map +1 -0
  911. package/node_modules/@earendil-works/omk-tui/dist/autocomplete.js +632 -0
  912. package/node_modules/@earendil-works/omk-tui/dist/autocomplete.js.map +1 -0
  913. package/node_modules/@earendil-works/omk-tui/dist/components/box.d.ts +22 -0
  914. package/node_modules/@earendil-works/omk-tui/dist/components/box.d.ts.map +1 -0
  915. package/node_modules/@earendil-works/omk-tui/dist/components/box.js +104 -0
  916. package/node_modules/@earendil-works/omk-tui/dist/components/box.js.map +1 -0
  917. package/node_modules/@earendil-works/omk-tui/dist/components/cancellable-loader.d.ts +22 -0
  918. package/node_modules/@earendil-works/omk-tui/dist/components/cancellable-loader.d.ts.map +1 -0
  919. package/node_modules/@earendil-works/omk-tui/dist/components/cancellable-loader.js +35 -0
  920. package/node_modules/@earendil-works/omk-tui/dist/components/cancellable-loader.js.map +1 -0
  921. package/node_modules/@earendil-works/omk-tui/dist/components/editor.d.ts +249 -0
  922. package/node_modules/@earendil-works/omk-tui/dist/components/editor.d.ts.map +1 -0
  923. package/node_modules/@earendil-works/omk-tui/dist/components/editor.js +1857 -0
  924. package/node_modules/@earendil-works/omk-tui/dist/components/editor.js.map +1 -0
  925. package/node_modules/@earendil-works/omk-tui/dist/components/image.d.ts +28 -0
  926. package/node_modules/@earendil-works/omk-tui/dist/components/image.d.ts.map +1 -0
  927. package/node_modules/@earendil-works/omk-tui/dist/components/image.js +89 -0
  928. package/node_modules/@earendil-works/omk-tui/dist/components/image.js.map +1 -0
  929. package/node_modules/@earendil-works/omk-tui/dist/components/input.d.ts +37 -0
  930. package/node_modules/@earendil-works/omk-tui/dist/components/input.d.ts.map +1 -0
  931. package/node_modules/@earendil-works/omk-tui/dist/components/input.js +378 -0
  932. package/node_modules/@earendil-works/omk-tui/dist/components/input.js.map +1 -0
  933. package/node_modules/@earendil-works/omk-tui/dist/components/loader.d.ts +31 -0
  934. package/node_modules/@earendil-works/omk-tui/dist/components/loader.d.ts.map +1 -0
  935. package/node_modules/@earendil-works/omk-tui/dist/components/loader.js +69 -0
  936. package/node_modules/@earendil-works/omk-tui/dist/components/loader.js.map +1 -0
  937. package/node_modules/@earendil-works/omk-tui/dist/components/markdown.d.ts +96 -0
  938. package/node_modules/@earendil-works/omk-tui/dist/components/markdown.d.ts.map +1 -0
  939. package/node_modules/@earendil-works/omk-tui/dist/components/markdown.js +644 -0
  940. package/node_modules/@earendil-works/omk-tui/dist/components/markdown.js.map +1 -0
  941. package/node_modules/@earendil-works/omk-tui/dist/components/select-list.d.ts +50 -0
  942. package/node_modules/@earendil-works/omk-tui/dist/components/select-list.d.ts.map +1 -0
  943. package/node_modules/@earendil-works/omk-tui/dist/components/select-list.js +159 -0
  944. package/node_modules/@earendil-works/omk-tui/dist/components/select-list.js.map +1 -0
  945. package/node_modules/@earendil-works/omk-tui/dist/components/settings-list.d.ts +50 -0
  946. package/node_modules/@earendil-works/omk-tui/dist/components/settings-list.d.ts.map +1 -0
  947. package/node_modules/@earendil-works/omk-tui/dist/components/settings-list.js +185 -0
  948. package/node_modules/@earendil-works/omk-tui/dist/components/settings-list.js.map +1 -0
  949. package/node_modules/@earendil-works/omk-tui/dist/components/spacer.d.ts +12 -0
  950. package/node_modules/@earendil-works/omk-tui/dist/components/spacer.d.ts.map +1 -0
  951. package/node_modules/@earendil-works/omk-tui/dist/components/spacer.js +23 -0
  952. package/node_modules/@earendil-works/omk-tui/dist/components/spacer.js.map +1 -0
  953. package/node_modules/@earendil-works/omk-tui/dist/components/text.d.ts +19 -0
  954. package/node_modules/@earendil-works/omk-tui/dist/components/text.d.ts.map +1 -0
  955. package/node_modules/@earendil-works/omk-tui/dist/components/text.js +89 -0
  956. package/node_modules/@earendil-works/omk-tui/dist/components/text.js.map +1 -0
  957. package/node_modules/@earendil-works/omk-tui/dist/components/truncated-text.d.ts +13 -0
  958. package/node_modules/@earendil-works/omk-tui/dist/components/truncated-text.d.ts.map +1 -0
  959. package/node_modules/@earendil-works/omk-tui/dist/components/truncated-text.js +51 -0
  960. package/node_modules/@earendil-works/omk-tui/dist/components/truncated-text.js.map +1 -0
  961. package/node_modules/@earendil-works/omk-tui/dist/editor-component.d.ts +39 -0
  962. package/node_modules/@earendil-works/omk-tui/dist/editor-component.d.ts.map +1 -0
  963. package/node_modules/@earendil-works/omk-tui/dist/editor-component.js +2 -0
  964. package/node_modules/@earendil-works/omk-tui/dist/editor-component.js.map +1 -0
  965. package/node_modules/@earendil-works/omk-tui/dist/fuzzy.d.ts +16 -0
  966. package/node_modules/@earendil-works/omk-tui/dist/fuzzy.d.ts.map +1 -0
  967. package/node_modules/@earendil-works/omk-tui/dist/fuzzy.js +110 -0
  968. package/node_modules/@earendil-works/omk-tui/dist/fuzzy.js.map +1 -0
  969. package/node_modules/@earendil-works/omk-tui/dist/index.d.ts +23 -0
  970. package/node_modules/@earendil-works/omk-tui/dist/index.d.ts.map +1 -0
  971. package/node_modules/@earendil-works/omk-tui/dist/index.js +32 -0
  972. package/node_modules/@earendil-works/omk-tui/dist/index.js.map +1 -0
  973. package/node_modules/@earendil-works/omk-tui/dist/keybindings.d.ts +212 -0
  974. package/node_modules/@earendil-works/omk-tui/dist/keybindings.d.ts.map +1 -0
  975. package/node_modules/@earendil-works/omk-tui/dist/keybindings.js +252 -0
  976. package/node_modules/@earendil-works/omk-tui/dist/keybindings.js.map +1 -0
  977. package/node_modules/@earendil-works/omk-tui/dist/keys.d.ts +184 -0
  978. package/node_modules/@earendil-works/omk-tui/dist/keys.d.ts.map +1 -0
  979. package/node_modules/@earendil-works/omk-tui/dist/keys.js +1173 -0
  980. package/node_modules/@earendil-works/omk-tui/dist/keys.js.map +1 -0
  981. package/node_modules/@earendil-works/omk-tui/dist/kill-ring.d.ts +28 -0
  982. package/node_modules/@earendil-works/omk-tui/dist/kill-ring.d.ts.map +1 -0
  983. package/node_modules/@earendil-works/omk-tui/dist/kill-ring.js +44 -0
  984. package/node_modules/@earendil-works/omk-tui/dist/kill-ring.js.map +1 -0
  985. package/node_modules/@earendil-works/omk-tui/dist/native-modifiers.d.ts +3 -0
  986. package/node_modules/@earendil-works/omk-tui/dist/native-modifiers.d.ts.map +1 -0
  987. package/node_modules/@earendil-works/omk-tui/dist/native-modifiers.js +53 -0
  988. package/node_modules/@earendil-works/omk-tui/dist/native-modifiers.js.map +1 -0
  989. package/node_modules/@earendil-works/omk-tui/dist/stdin-buffer.d.ts +50 -0
  990. package/node_modules/@earendil-works/omk-tui/dist/stdin-buffer.d.ts.map +1 -0
  991. package/node_modules/@earendil-works/omk-tui/dist/stdin-buffer.js +361 -0
  992. package/node_modules/@earendil-works/omk-tui/dist/stdin-buffer.js.map +1 -0
  993. package/node_modules/@earendil-works/omk-tui/dist/terminal-image.d.ts +90 -0
  994. package/node_modules/@earendil-works/omk-tui/dist/terminal-image.d.ts.map +1 -0
  995. package/node_modules/@earendil-works/omk-tui/dist/terminal-image.js +366 -0
  996. package/node_modules/@earendil-works/omk-tui/dist/terminal-image.js.map +1 -0
  997. package/node_modules/@earendil-works/omk-tui/dist/terminal.d.ts +113 -0
  998. package/node_modules/@earendil-works/omk-tui/dist/terminal.d.ts.map +1 -0
  999. package/node_modules/@earendil-works/omk-tui/dist/terminal.js +472 -0
  1000. package/node_modules/@earendil-works/omk-tui/dist/terminal.js.map +1 -0
  1001. package/node_modules/@earendil-works/omk-tui/dist/tui.d.ts +242 -0
  1002. package/node_modules/@earendil-works/omk-tui/dist/tui.d.ts.map +1 -0
  1003. package/node_modules/@earendil-works/omk-tui/dist/tui.js +1221 -0
  1004. package/node_modules/@earendil-works/omk-tui/dist/tui.js.map +1 -0
  1005. package/node_modules/@earendil-works/omk-tui/dist/undo-stack.d.ts +17 -0
  1006. package/node_modules/@earendil-works/omk-tui/dist/undo-stack.d.ts.map +1 -0
  1007. package/node_modules/@earendil-works/omk-tui/dist/undo-stack.js +25 -0
  1008. package/node_modules/@earendil-works/omk-tui/dist/undo-stack.js.map +1 -0
  1009. package/node_modules/@earendil-works/omk-tui/dist/utils.d.ts +84 -0
  1010. package/node_modules/@earendil-works/omk-tui/dist/utils.d.ts.map +1 -0
  1011. package/node_modules/@earendil-works/omk-tui/dist/utils.js +1032 -0
  1012. package/node_modules/@earendil-works/omk-tui/dist/utils.js.map +1 -0
  1013. package/node_modules/@earendil-works/omk-tui/dist/word-navigation.d.ts +25 -0
  1014. package/node_modules/@earendil-works/omk-tui/dist/word-navigation.d.ts.map +1 -0
  1015. package/node_modules/@earendil-works/omk-tui/dist/word-navigation.js +96 -0
  1016. package/node_modules/@earendil-works/omk-tui/dist/word-navigation.js.map +1 -0
  1017. package/node_modules/@earendil-works/omk-tui/native/darwin/prebuilds/darwin-arm64/darwin-modifiers.node +0 -0
  1018. package/node_modules/@earendil-works/omk-tui/native/darwin/prebuilds/darwin-x64/darwin-modifiers.node +0 -0
  1019. package/node_modules/@earendil-works/omk-tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node +0 -0
  1020. package/node_modules/@earendil-works/omk-tui/native/win32/prebuilds/win32-x64/win32-console-mode.node +0 -0
  1021. package/node_modules/@earendil-works/omk-tui/package.json +47 -0
  1022. package/package.json +22 -6
  1023. package/dist/utils/pi-user-agent.d.ts +0 -2
  1024. package/dist/utils/pi-user-agent.d.ts.map +0 -1
  1025. package/dist/utils/pi-user-agent.js.map +0 -1
@@ -0,0 +1,77 @@
1
+ import "./providers/register-builtins.js";
2
+ import { getApiProvider } from "./api-registry.js";
3
+ import { getEnvApiKey } from "./env-api-keys.js";
4
+ import { createProviderNetworkGuardedStream } from "./provider-network.js";
5
+ export { getEnvApiKey } from "./env-api-keys.js";
6
+ function hasExplicitApiKey(apiKey) {
7
+ return typeof apiKey === "string" && apiKey.trim().length > 0;
8
+ }
9
+ function withEnvApiKey(model, options) {
10
+ if (hasExplicitApiKey(options?.apiKey))
11
+ return options;
12
+ const apiKey = getEnvApiKey(model.provider);
13
+ if (!apiKey)
14
+ return options;
15
+ return { ...options, apiKey };
16
+ }
17
+ function resolveApiProvider(api) {
18
+ const provider = getApiProvider(api);
19
+ if (!provider) {
20
+ throw new Error(`No API provider registered for api: ${api}`);
21
+ }
22
+ return provider;
23
+ }
24
+ function applyBeforeProviderSend(model, context, options, mode) {
25
+ const nextContext = options?.beforeProviderSend?.({
26
+ model: model,
27
+ context,
28
+ options,
29
+ mode,
30
+ });
31
+ return nextContext ?? context;
32
+ }
33
+ export function stream(model, context, options) {
34
+ const providerContext = applyBeforeProviderSend(model, context, options, "stream");
35
+ if (options?.beforeNetworkRequest) {
36
+ return createProviderNetworkGuardedStream({
37
+ model,
38
+ purpose: "chat",
39
+ transport: "http",
40
+ source: "model.baseUrl",
41
+ beforeNetworkRequest: options.beforeNetworkRequest,
42
+ invoke: () => {
43
+ const provider = resolveApiProvider(model.api);
44
+ return provider.stream(model, providerContext, withEnvApiKey(model, options));
45
+ },
46
+ });
47
+ }
48
+ const provider = resolveApiProvider(model.api);
49
+ return provider.stream(model, providerContext, withEnvApiKey(model, options));
50
+ }
51
+ export async function complete(model, context, options) {
52
+ const s = stream(model, context, options);
53
+ return s.result();
54
+ }
55
+ export function streamSimple(model, context, options) {
56
+ const providerContext = applyBeforeProviderSend(model, context, options, "streamSimple");
57
+ if (options?.beforeNetworkRequest) {
58
+ return createProviderNetworkGuardedStream({
59
+ model,
60
+ purpose: "completion",
61
+ transport: "http",
62
+ source: "model.baseUrl",
63
+ beforeNetworkRequest: options.beforeNetworkRequest,
64
+ invoke: () => {
65
+ const provider = resolveApiProvider(model.api);
66
+ return provider.streamSimple(model, providerContext, withEnvApiKey(model, options));
67
+ },
68
+ });
69
+ }
70
+ const provider = resolveApiProvider(model.api);
71
+ return provider.streamSimple(model, providerContext, withEnvApiKey(model, options));
72
+ }
73
+ export async function completeSimple(model, context, options) {
74
+ const s = streamSimple(model, context, options);
75
+ return s.result();
76
+ }
77
+ //# sourceMappingURL=stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,kCAAkC,EAAE,MAAM,uBAAuB,CAAC;AAY3E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,SAAS,iBAAiB,CAAC,MAA0B,EAAoB;IACxE,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAAA,CAC9D;AAED,SAAS,aAAa,CACrB,KAAiB,EACjB,OAA6B,EACN;IACvB,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IACvD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO,EAAE,GAAG,OAAO,EAAE,MAAM,EAAc,CAAC;AAAA,CAC1C;AAED,SAAS,kBAAkB,CAAC,GAAQ,EAAE;IACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,GAAG,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,QAAQ,CAAC;AAAA,CAChB;AAED,SAAS,uBAAuB,CAC/B,KAAkB,EAClB,OAAgB,EAChB,OAAkC,EAClC,IAA+B,EACrB;IACV,MAAM,WAAW,GAAG,OAAO,EAAE,kBAAkB,EAAE,CAAC;QACjD,KAAK,EAAE,KAAmB;QAC1B,OAAO;QACP,OAAO;QACP,IAAI;KACJ,CAAC,CAAC;IACH,OAAO,WAAW,IAAI,OAAO,CAAC;AAAA,CAC9B;AAED,MAAM,UAAU,MAAM,CACrB,KAAkB,EAClB,OAAgB,EAChB,OAA+B,EACD;IAC9B,MAAM,eAAe,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACnF,IAAI,OAAO,EAAE,oBAAoB,EAAE,CAAC;QACnC,OAAO,kCAAkC,CAAC;YACzC,KAAK;YACL,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,eAAe;YACvB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,MAAM,EAAE,GAAG,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/C,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAkB,CAAC,CAAC;YAAA,CAC/F;SACD,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAkB,CAAC,CAAC;AAAA,CAC/F;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC7B,KAAkB,EAClB,OAAgB,EAChB,OAA+B,EACH;IAC5B,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;AAAA,CAClB;AAED,MAAM,UAAU,YAAY,CAC3B,KAAkB,EAClB,OAAgB,EAChB,OAA6B,EACC;IAC9B,MAAM,eAAe,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACzF,IAAI,OAAO,EAAE,oBAAoB,EAAE,CAAC;QACnC,OAAO,kCAAkC,CAAC;YACzC,KAAK;YACL,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,eAAe;YACvB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,MAAM,EAAE,GAAG,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/C,OAAO,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;YAAA,CACpF;SACD,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAAA,CACpF;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,KAAkB,EAClB,OAAgB,EAChB,OAA6B,EACD;IAC5B,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;AAAA,CAClB","sourcesContent":["import \"./providers/register-builtins.ts\";\n\nimport { getApiProvider } from \"./api-registry.ts\";\nimport { getEnvApiKey } from \"./env-api-keys.ts\";\nimport { createProviderNetworkGuardedStream } from \"./provider-network.ts\";\nimport type {\n\tApi,\n\tAssistantMessage,\n\tAssistantMessageEventStream,\n\tContext,\n\tModel,\n\tProviderStreamOptions,\n\tSimpleStreamOptions,\n\tStreamOptions,\n} from \"./types.ts\";\n\nexport { getEnvApiKey } from \"./env-api-keys.ts\";\n\nfunction hasExplicitApiKey(apiKey: string | undefined): apiKey is string {\n\treturn typeof apiKey === \"string\" && apiKey.trim().length > 0;\n}\n\nfunction withEnvApiKey<TOptions extends StreamOptions>(\n\tmodel: Model<Api>,\n\toptions: TOptions | undefined,\n): TOptions | undefined {\n\tif (hasExplicitApiKey(options?.apiKey)) return options;\n\tconst apiKey = getEnvApiKey(model.provider);\n\tif (!apiKey) return options;\n\treturn { ...options, apiKey } as TOptions;\n}\n\nfunction resolveApiProvider(api: Api) {\n\tconst provider = getApiProvider(api);\n\tif (!provider) {\n\t\tthrow new Error(`No API provider registered for api: ${api}`);\n\t}\n\treturn provider;\n}\n\nfunction applyBeforeProviderSend<TApi extends Api>(\n\tmodel: Model<TApi>,\n\tcontext: Context,\n\toptions: StreamOptions | undefined,\n\tmode: \"stream\" | \"streamSimple\",\n): Context {\n\tconst nextContext = options?.beforeProviderSend?.({\n\t\tmodel: model as Model<Api>,\n\t\tcontext,\n\t\toptions,\n\t\tmode,\n\t});\n\treturn nextContext ?? context;\n}\n\nexport function stream<TApi extends Api>(\n\tmodel: Model<TApi>,\n\tcontext: Context,\n\toptions?: ProviderStreamOptions,\n): AssistantMessageEventStream {\n\tconst providerContext = applyBeforeProviderSend(model, context, options, \"stream\");\n\tif (options?.beforeNetworkRequest) {\n\t\treturn createProviderNetworkGuardedStream({\n\t\t\tmodel,\n\t\t\tpurpose: \"chat\",\n\t\t\ttransport: \"http\",\n\t\t\tsource: \"model.baseUrl\",\n\t\t\tbeforeNetworkRequest: options.beforeNetworkRequest,\n\t\t\tinvoke: () => {\n\t\t\t\tconst provider = resolveApiProvider(model.api);\n\t\t\t\treturn provider.stream(model, providerContext, withEnvApiKey(model, options) as StreamOptions);\n\t\t\t},\n\t\t});\n\t}\n\tconst provider = resolveApiProvider(model.api);\n\treturn provider.stream(model, providerContext, withEnvApiKey(model, options) as StreamOptions);\n}\n\nexport async function complete<TApi extends Api>(\n\tmodel: Model<TApi>,\n\tcontext: Context,\n\toptions?: ProviderStreamOptions,\n): Promise<AssistantMessage> {\n\tconst s = stream(model, context, options);\n\treturn s.result();\n}\n\nexport function streamSimple<TApi extends Api>(\n\tmodel: Model<TApi>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n): AssistantMessageEventStream {\n\tconst providerContext = applyBeforeProviderSend(model, context, options, \"streamSimple\");\n\tif (options?.beforeNetworkRequest) {\n\t\treturn createProviderNetworkGuardedStream({\n\t\t\tmodel,\n\t\t\tpurpose: \"completion\",\n\t\t\ttransport: \"http\",\n\t\t\tsource: \"model.baseUrl\",\n\t\t\tbeforeNetworkRequest: options.beforeNetworkRequest,\n\t\t\tinvoke: () => {\n\t\t\t\tconst provider = resolveApiProvider(model.api);\n\t\t\t\treturn provider.streamSimple(model, providerContext, withEnvApiKey(model, options));\n\t\t\t},\n\t\t});\n\t}\n\tconst provider = resolveApiProvider(model.api);\n\treturn provider.streamSimple(model, providerContext, withEnvApiKey(model, options));\n}\n\nexport async function completeSimple<TApi extends Api>(\n\tmodel: Model<TApi>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n): Promise<AssistantMessage> {\n\tconst s = streamSimple(model, context, options);\n\treturn s.result();\n}\n"]}
@@ -0,0 +1,570 @@
1
+ import type { TSchema } from "typebox";
2
+ import type { AssistantMessageDiagnostic } from "./utils/diagnostics.ts";
3
+ import type { AssistantMessageEventStream } from "./utils/event-stream.ts";
4
+ export type { AssistantMessageEventStream } from "./utils/event-stream.ts";
5
+ export type KnownApi = "openai-completions" | "mistral-conversations" | "openai-responses" | "azure-openai-responses" | "openai-codex-responses" | "anthropic-messages" | "bedrock-converse-stream" | "google-generative-ai" | "google-vertex";
6
+ export type Api = KnownApi | (string & {});
7
+ export type KnownImagesApi = "openrouter-images";
8
+ export type ImagesApi = KnownImagesApi | (string & {});
9
+ export type KnownProvider = "amazon-bedrock" | "ant-ling" | "anthropic" | "google" | "google-vertex" | "openai" | "azure-openai-responses" | "openai-codex" | "nvidia" | "deepseek" | "github-copilot" | "xai" | "groq" | "cerebras" | "openrouter" | "vercel-ai-gateway" | "zai" | "zai-coding-cn" | "mistral" | "minimax" | "minimax-cn" | "moonshotai" | "moonshotai-cn" | "huggingface" | "fireworks" | "together" | "opencode" | "opencode-go" | "kimi-coding" | "duckcoding" | "cloudflare-workers-ai" | "cloudflare-ai-gateway" | "xiaomi" | "xiaomi-token-plan-cn" | "xiaomi-token-plan-ams" | "xiaomi-token-plan-sgp";
10
+ export type Provider = KnownProvider | string;
11
+ export type KnownImagesProvider = "openrouter";
12
+ export type ImagesProvider = KnownImagesProvider | string;
13
+ export type ThinkingLevel = "minimal" | "low" | "medium" | "high" | "xhigh";
14
+ export type ModelThinkingLevel = "off" | ThinkingLevel;
15
+ export type ThinkingLevelMap = Partial<Record<ModelThinkingLevel, string | null>>;
16
+ /** Token budgets for each thinking level (token-based providers only) */
17
+ export interface ThinkingBudgets {
18
+ minimal?: number;
19
+ low?: number;
20
+ medium?: number;
21
+ high?: number;
22
+ }
23
+ export type CacheRetention = "none" | "short" | "long";
24
+ export type Transport = "sse" | "websocket" | "websocket-cached" | "auto";
25
+ export interface ProviderResponse {
26
+ status: number;
27
+ headers: Record<string, string>;
28
+ }
29
+ export type ProviderNetworkTransport = "http" | "websocket";
30
+ export type ProviderNetworkProtocol = "http:" | "https:" | "ws:" | "wss:";
31
+ export type ProviderNetworkPurpose = "chat" | "completion" | "responses" | "images" | "codex-sse" | "codex-websocket";
32
+ export type ProviderNetworkRequestSource = "model.baseUrl" | "provider-derived-url" | "option-override" | "env-derived";
33
+ export interface ProviderNetworkRequest {
34
+ provider: string;
35
+ api: Api | ImagesApi;
36
+ modelId: string;
37
+ /** Sanitized origin URL for the configured model endpoint. Credentials, query, fragment, and path are omitted. */
38
+ baseUrl: string;
39
+ /** Sanitized origin URL for the concrete provider endpoint. Credentials, query, fragment, and path are omitted. */
40
+ url: string;
41
+ host: string;
42
+ protocol: ProviderNetworkProtocol;
43
+ port?: string;
44
+ loopback: boolean;
45
+ transport: ProviderNetworkTransport;
46
+ purpose: ProviderNetworkPurpose;
47
+ source: ProviderNetworkRequestSource;
48
+ }
49
+ export interface ProviderNetworkDecision {
50
+ allowed: boolean;
51
+ rule: string;
52
+ reason: string;
53
+ mode: "off" | "audit" | "enforce";
54
+ wouldDeny?: boolean;
55
+ }
56
+ export type BeforeProviderNetworkRequest = (request: ProviderNetworkRequest) => ProviderNetworkDecision | Promise<ProviderNetworkDecision>;
57
+ export type ProviderSendMode = "stream" | "streamSimple";
58
+ export interface BeforeProviderSendInput<TApi extends Api = Api> {
59
+ model: Model<TApi>;
60
+ context: Context;
61
+ options: StreamOptions;
62
+ mode: ProviderSendMode;
63
+ }
64
+ export type BeforeProviderSend = (input: BeforeProviderSendInput) => Context | undefined;
65
+ export interface StreamOptions {
66
+ temperature?: number;
67
+ maxTokens?: number;
68
+ signal?: AbortSignal;
69
+ apiKey?: string;
70
+ /**
71
+ * Preferred transport for providers that support multiple transports.
72
+ * Providers that do not support this option ignore it.
73
+ */
74
+ transport?: Transport;
75
+ /**
76
+ * Prompt cache retention preference. Providers map this to their supported values.
77
+ * Default: "short".
78
+ */
79
+ cacheRetention?: CacheRetention;
80
+ /**
81
+ * Optional session identifier for providers that support session-based caching.
82
+ * Providers can use this to enable prompt caching, request routing, or other
83
+ * session-aware features. Ignored by providers that don't support it.
84
+ */
85
+ sessionId?: string;
86
+ /**
87
+ * Optional sanitized network preflight hook invoked before provider network I/O.
88
+ * The request never contains headers, API keys, request bodies, prompts, or responses.
89
+ */
90
+ beforeNetworkRequest?: BeforeProviderNetworkRequest;
91
+ /**
92
+ * Optional synchronous middleware invoked before provider-specific payload conversion.
93
+ * It may return a replacement context for output shaping/compression while leaving
94
+ * the caller-owned Context immutable. Return undefined to keep the context unchanged.
95
+ * System/developer prompts, user messages, and tool-call metadata should be treated
96
+ * as immutable by callers that implement compression middleware.
97
+ */
98
+ beforeProviderSend?: BeforeProviderSend;
99
+ /**
100
+ * Optional callback for inspecting or replacing provider payloads before sending.
101
+ * Return undefined to keep the payload unchanged.
102
+ */
103
+ onPayload?: (payload: unknown, model: Model<Api>) => unknown | undefined | Promise<unknown | undefined>;
104
+ /**
105
+ * Optional callback invoked after an HTTP response is received and before
106
+ * its body stream is consumed.
107
+ */
108
+ onResponse?: (response: ProviderResponse, model: Model<Api>) => void | Promise<void>;
109
+ /**
110
+ * Optional custom HTTP headers to include in API requests.
111
+ * Merged with provider defaults; caller values override default headers.
112
+ * On AWS Bedrock these are injected via a Smithy `build`-step middleware so
113
+ * they are covered by SigV4 signing; reserved headers (`x-amz-*`,
114
+ * `authorization`, `host`) are silently ignored to preserve SigV4 / bearer auth.
115
+ */
116
+ headers?: Record<string, string>;
117
+ /**
118
+ * HTTP request timeout in milliseconds for providers/SDKs that support it.
119
+ * For example, OpenAI and Anthropic SDK clients default to 10 minutes.
120
+ */
121
+ timeoutMs?: number;
122
+ /**
123
+ * WebSocket connect timeout in milliseconds for providers that support
124
+ * WebSocket transports. This covers the connection/open handshake only;
125
+ * stream idleness after connection uses timeoutMs.
126
+ */
127
+ websocketConnectTimeoutMs?: number;
128
+ /**
129
+ * Maximum retry attempts for providers/SDKs that support client-side retries.
130
+ * For example, OpenAI and Anthropic SDK clients default to 2.
131
+ */
132
+ maxRetries?: number;
133
+ /**
134
+ * Maximum delay in milliseconds to wait for a retry when the server requests a long wait.
135
+ * If the server's requested delay exceeds this value, the request fails immediately
136
+ * with an error containing the requested delay, allowing higher-level retry logic
137
+ * to handle it with user visibility.
138
+ * Default: 60000 (60 seconds). Set to 0 to disable the cap.
139
+ */
140
+ maxRetryDelayMs?: number;
141
+ /**
142
+ * Optional metadata to include in API requests.
143
+ * Providers extract the fields they understand and ignore the rest.
144
+ * For example, Anthropic uses `user_id` for abuse tracking and rate limiting.
145
+ */
146
+ metadata?: Record<string, unknown>;
147
+ }
148
+ export type ProviderStreamOptions = StreamOptions & Record<string, unknown>;
149
+ export interface ImagesOptions {
150
+ signal?: AbortSignal;
151
+ apiKey?: string;
152
+ /**
153
+ * Optional sanitized network preflight hook invoked before provider network I/O.
154
+ * The request never contains headers, API keys, request bodies, prompts, or responses.
155
+ */
156
+ beforeNetworkRequest?: BeforeProviderNetworkRequest;
157
+ /**
158
+ * Optional callback for inspecting or replacing provider payloads before sending.
159
+ * Return undefined to keep the payload unchanged.
160
+ */
161
+ onPayload?: (payload: unknown, model: ImagesModel<ImagesApi>) => unknown | undefined | Promise<unknown | undefined>;
162
+ /**
163
+ * Optional callback invoked after an HTTP response is received.
164
+ */
165
+ onResponse?: (response: ProviderResponse, model: ImagesModel<ImagesApi>) => void | Promise<void>;
166
+ /**
167
+ * Optional custom HTTP headers to include in API requests.
168
+ * Merged with provider defaults; can override default headers.
169
+ */
170
+ headers?: Record<string, string>;
171
+ /**
172
+ * HTTP request timeout in milliseconds for providers/SDKs that support it.
173
+ */
174
+ timeoutMs?: number;
175
+ /**
176
+ * Maximum retry attempts for providers/SDKs that support client-side retries.
177
+ */
178
+ maxRetries?: number;
179
+ /**
180
+ * Maximum delay in milliseconds to wait for a retry when the server requests a long wait.
181
+ * If the server's requested delay exceeds this value, the request fails immediately
182
+ * with an error containing the requested delay, allowing higher-level retry logic
183
+ * to handle it with user visibility.
184
+ * Default: 60000 (60 seconds). Set to 0 to disable the cap.
185
+ */
186
+ maxRetryDelayMs?: number;
187
+ /**
188
+ * Optional metadata to include in API requests.
189
+ * Providers extract the fields they understand and ignore the rest.
190
+ */
191
+ metadata?: Record<string, unknown>;
192
+ }
193
+ export type ProviderImagesOptions = ImagesOptions & Record<string, unknown>;
194
+ export interface SimpleStreamOptions extends StreamOptions {
195
+ reasoning?: ThinkingLevel;
196
+ /** Custom token budgets for thinking levels (token-based providers only) */
197
+ thinkingBudgets?: ThinkingBudgets;
198
+ }
199
+ export type StreamFunction<TApi extends Api = Api, TOptions extends StreamOptions = StreamOptions> = (model: Model<TApi>, context: Context, options?: TOptions) => AssistantMessageEventStream;
200
+ export type ImagesFunction<TApi extends ImagesApi = ImagesApi, TOptions extends ImagesOptions = ImagesOptions> = (model: ImagesModel<TApi>, context: ImagesContext, options?: TOptions) => Promise<AssistantImages>;
201
+ export interface TextSignatureV1 {
202
+ v: 1;
203
+ id: string;
204
+ phase?: "commentary" | "final_answer";
205
+ }
206
+ export interface TextContent {
207
+ type: "text";
208
+ text: string;
209
+ textSignature?: string;
210
+ }
211
+ export interface ThinkingContent {
212
+ type: "thinking";
213
+ thinking: string;
214
+ thinkingSignature?: string;
215
+ /** When true, the thinking content was redacted by safety filters. The opaque
216
+ * encrypted payload is stored in `thinkingSignature` so it can be passed back
217
+ * to the API for multi-turn continuity. */
218
+ redacted?: boolean;
219
+ }
220
+ export interface ImageContent {
221
+ type: "image";
222
+ data: string;
223
+ mimeType: string;
224
+ }
225
+ export interface ToolCall {
226
+ type: "toolCall";
227
+ id: string;
228
+ name: string;
229
+ arguments: Record<string, any>;
230
+ thoughtSignature?: string;
231
+ }
232
+ export interface Usage {
233
+ input: number;
234
+ output: number;
235
+ cacheRead: number;
236
+ cacheWrite: number;
237
+ totalTokens: number;
238
+ cost: {
239
+ input: number;
240
+ output: number;
241
+ cacheRead: number;
242
+ cacheWrite: number;
243
+ total: number;
244
+ };
245
+ }
246
+ export type StopReason = "stop" | "length" | "toolUse" | "error" | "aborted";
247
+ export interface UserMessage {
248
+ role: "user";
249
+ content: string | (TextContent | ImageContent)[];
250
+ timestamp: number;
251
+ }
252
+ export interface AssistantMessage {
253
+ role: "assistant";
254
+ content: (TextContent | ThinkingContent | ToolCall)[];
255
+ api: Api;
256
+ provider: Provider;
257
+ model: string;
258
+ responseModel?: string;
259
+ responseId?: string;
260
+ diagnostics?: AssistantMessageDiagnostic[];
261
+ usage: Usage;
262
+ stopReason: StopReason;
263
+ errorMessage?: string;
264
+ timestamp: number;
265
+ }
266
+ export interface ToolResultMessage<TDetails = any> {
267
+ role: "toolResult";
268
+ toolCallId: string;
269
+ toolName: string;
270
+ content: (TextContent | ImageContent)[];
271
+ details?: TDetails;
272
+ isError: boolean;
273
+ timestamp: number;
274
+ }
275
+ export type Message = UserMessage | AssistantMessage | ToolResultMessage;
276
+ export type ImagesInputContent = TextContent | ImageContent;
277
+ export type ImagesOutputContent = TextContent | ImageContent;
278
+ export interface ImagesContext {
279
+ input: ImagesInputContent[];
280
+ }
281
+ export type ImagesStopReason = "stop" | "error" | "aborted";
282
+ export interface AssistantImages {
283
+ api: ImagesApi;
284
+ provider: ImagesProvider;
285
+ model: string;
286
+ output: ImagesOutputContent[];
287
+ responseId?: string;
288
+ usage?: Usage;
289
+ stopReason: ImagesStopReason;
290
+ errorMessage?: string;
291
+ timestamp: number;
292
+ }
293
+ export interface Tool<TParameters extends TSchema = TSchema> {
294
+ name: string;
295
+ description: string;
296
+ parameters: TParameters;
297
+ }
298
+ export interface Context {
299
+ systemPrompt?: string;
300
+ messages: Message[];
301
+ tools?: Tool[];
302
+ }
303
+ /**
304
+ * Event protocol for AssistantMessageEventStream.
305
+ *
306
+ * Streams should emit `start` before partial updates, then terminate with either:
307
+ * - `done` carrying the final successful AssistantMessage, or
308
+ * - `error` carrying the final AssistantMessage with stopReason "error" or "aborted"
309
+ * and errorMessage.
310
+ */
311
+ export type AssistantMessageEvent = {
312
+ type: "start";
313
+ partial: AssistantMessage;
314
+ } | {
315
+ type: "text_start";
316
+ contentIndex: number;
317
+ partial: AssistantMessage;
318
+ } | {
319
+ type: "text_delta";
320
+ contentIndex: number;
321
+ delta: string;
322
+ partial: AssistantMessage;
323
+ } | {
324
+ type: "text_end";
325
+ contentIndex: number;
326
+ content: string;
327
+ partial: AssistantMessage;
328
+ } | {
329
+ type: "thinking_start";
330
+ contentIndex: number;
331
+ partial: AssistantMessage;
332
+ } | {
333
+ type: "thinking_delta";
334
+ contentIndex: number;
335
+ delta: string;
336
+ partial: AssistantMessage;
337
+ } | {
338
+ type: "thinking_end";
339
+ contentIndex: number;
340
+ content: string;
341
+ partial: AssistantMessage;
342
+ } | {
343
+ type: "toolcall_start";
344
+ contentIndex: number;
345
+ partial: AssistantMessage;
346
+ } | {
347
+ type: "toolcall_delta";
348
+ contentIndex: number;
349
+ delta: string;
350
+ partial: AssistantMessage;
351
+ } | {
352
+ type: "toolcall_end";
353
+ contentIndex: number;
354
+ toolCall: ToolCall;
355
+ partial: AssistantMessage;
356
+ } | {
357
+ type: "done";
358
+ reason: Extract<StopReason, "stop" | "length" | "toolUse">;
359
+ message: AssistantMessage;
360
+ } | {
361
+ type: "error";
362
+ reason: Extract<StopReason, "aborted" | "error">;
363
+ error: AssistantMessage;
364
+ };
365
+ /**
366
+ * Compatibility settings for OpenAI-compatible completions APIs.
367
+ * Use this to override URL-based auto-detection for custom providers.
368
+ */
369
+ export interface OpenAICompletionsCompat {
370
+ /** Whether the provider supports the `store` field. Default: auto-detected from URL. */
371
+ supportsStore?: boolean;
372
+ /** Whether the provider supports the `developer` role (vs `system`). Default: auto-detected from URL. */
373
+ supportsDeveloperRole?: boolean;
374
+ /** Whether the provider supports `reasoning_effort`. Default: auto-detected from URL. */
375
+ supportsReasoningEffort?: boolean;
376
+ /** Whether the provider supports `stream_options: { include_usage: true }` for token usage in streaming responses. Default: true. */
377
+ supportsUsageInStreaming?: boolean;
378
+ /** Which field to use for max tokens. Default: auto-detected from URL. */
379
+ maxTokensField?: "max_completion_tokens" | "max_tokens";
380
+ /** Whether tool results require the `name` field. Default: auto-detected from URL. */
381
+ requiresToolResultName?: boolean;
382
+ /** Whether a user message after tool results requires an assistant message in between. Default: auto-detected from URL. */
383
+ requiresAssistantAfterToolResult?: boolean;
384
+ /** Whether thinking blocks must be converted to text blocks with <thinking> delimiters. Default: auto-detected from URL. */
385
+ requiresThinkingAsText?: boolean;
386
+ /** Whether all replayed assistant messages must include an empty reasoning_content field when reasoning is enabled. Default: auto-detected from URL. */
387
+ requiresReasoningContentOnAssistantMessages?: boolean;
388
+ /** Format for reasoning/thinking parameter. "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 top-level enable_thinking: boolean, "qwen" uses top-level enable_thinking: boolean, "qwen-chat-template" uses chat_template_kwargs.enable_thinking, "string-thinking" uses top-level thinking: string, and "ant-ling" uses reasoning: { effort } only when the mapped effort is non-null. Default: "openai". */
389
+ thinkingFormat?: "openai" | "openrouter" | "deepseek" | "together" | "zai" | "qwen" | "qwen-chat-template" | "string-thinking" | "ant-ling";
390
+ /** OpenRouter-specific routing preferences. Only used when baseUrl points to OpenRouter. */
391
+ openRouterRouting?: OpenRouterRouting;
392
+ /** Vercel AI Gateway routing preferences. Only used when baseUrl points to Vercel AI Gateway. */
393
+ vercelGatewayRouting?: VercelGatewayRouting;
394
+ /** Whether z.ai supports top-level `tool_stream: true` for streaming tool call deltas. Default: false. */
395
+ zaiToolStream?: boolean;
396
+ /** Whether the provider supports the `strict` field in tool definitions. Default: true. */
397
+ supportsStrictMode?: boolean;
398
+ /** Cache control convention for prompt caching. "anthropic" applies Anthropic-style `cache_control` markers to the system prompt, last tool definition, and last user/assistant text content. */
399
+ cacheControlFormat?: "anthropic";
400
+ /** Whether to send known session-affinity headers (`session_id`, `x-client-request-id`, `x-session-affinity`) from `options.sessionId` when caching is enabled. Default: false. */
401
+ sendSessionAffinityHeaders?: boolean;
402
+ /** Whether the provider supports long prompt cache retention (`prompt_cache_retention: "24h"` or Anthropic-style `cache_control.ttl: "1h"`, depending on format). Default: true. */
403
+ supportsLongCacheRetention?: boolean;
404
+ }
405
+ /** Compatibility settings for OpenAI Responses APIs. */
406
+ export interface OpenAIResponsesCompat {
407
+ /** Whether to send the OpenAI `session_id` cache-affinity header from `options.sessionId` when caching is enabled. Default: true. */
408
+ sendSessionIdHeader?: boolean;
409
+ /** Whether the provider supports `prompt_cache_retention: "24h"`. Default: true. */
410
+ supportsLongCacheRetention?: boolean;
411
+ }
412
+ /** Compatibility settings for Anthropic Messages-compatible APIs. */
413
+ export interface AnthropicMessagesCompat {
414
+ /**
415
+ * Whether the provider accepts per-tool `eager_input_streaming`.
416
+ * When false, the Anthropic provider omits `tools[].eager_input_streaming`
417
+ * and sends the legacy `fine-grained-tool-streaming-2025-05-14` beta header
418
+ * for tool-enabled requests.
419
+ * Default: true.
420
+ */
421
+ supportsEagerToolInputStreaming?: boolean;
422
+ /** Whether the provider supports Anthropic long cache retention (`cache_control.ttl: "1h"`). Default: true. */
423
+ supportsLongCacheRetention?: boolean;
424
+ /**
425
+ * Whether to send the `x-session-affinity` header from `options.sessionId`
426
+ * when caching is enabled. Required for providers like Fireworks that use
427
+ * session affinity for prompt cache routing (requests to the same replica
428
+ * maximize cache hits).
429
+ * Default: false.
430
+ */
431
+ sendSessionAffinityHeaders?: boolean;
432
+ /**
433
+ * Whether the provider supports Anthropic-style `cache_control` markers on
434
+ * tool definitions. When false, `cache_control` is omitted from tool params.
435
+ * Some Anthropic-compatible providers (e.g., Fireworks) do not support this
436
+ * field on tools and may reject or ignore it.
437
+ * Default: true.
438
+ */
439
+ supportsCacheControlOnTools?: boolean;
440
+ /**
441
+ * Whether the model accepts the Anthropic `temperature` request field.
442
+ * Claude Opus 4.7+ rejects non-default temperature values.
443
+ * Default: true.
444
+ */
445
+ supportsTemperature?: boolean;
446
+ /**
447
+ * Whether to force adaptive thinking (`thinking.type: "adaptive"` plus
448
+ * `output_config.effort`) regardless of the model id. Built-in models that
449
+ * require adaptive thinking set this in generated metadata. Custom
450
+ * Anthropic-compatible providers can set this to `true` for any model whose
451
+ * upstream requires the adaptive format. Set to `false` to
452
+ * opt out on overridden built-in models.
453
+ * Default: false.
454
+ */
455
+ forceAdaptiveThinking?: boolean;
456
+ /** Whether to replay empty thinking signatures as `signature: ""` instead of converting thinking to text. Default: false. */
457
+ allowEmptySignature?: boolean;
458
+ /** Whether to place cache_control on both the last assistant tool_use block and last user block. Default: false. */
459
+ supportsDualMessageCache?: boolean;
460
+ }
461
+ /**
462
+ * OpenRouter provider routing preferences.
463
+ * Controls which upstream providers OpenRouter routes requests to.
464
+ * Sent as the `provider` field in the OpenRouter API request body.
465
+ * @see https://openrouter.ai/docs/guides/routing/provider-selection
466
+ */
467
+ export interface OpenRouterRouting {
468
+ /** Whether to allow backup providers to serve requests. Default: true. */
469
+ allow_fallbacks?: boolean;
470
+ /** Whether to filter providers to only those that support all parameters in the request. Default: false. */
471
+ require_parameters?: boolean;
472
+ /** Data collection setting. "allow" (default): allow providers that may store/train on data. "deny": only use providers that don't collect user data. */
473
+ data_collection?: "deny" | "allow";
474
+ /** Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. */
475
+ zdr?: boolean;
476
+ /** Whether to restrict routing to only models that allow text distillation. */
477
+ enforce_distillable_text?: boolean;
478
+ /** An ordered list of provider names/slugs to try in sequence, falling back to the next if unavailable. */
479
+ order?: string[];
480
+ /** List of provider names/slugs to exclusively allow for this request. */
481
+ only?: string[];
482
+ /** List of provider names/slugs to skip for this request. */
483
+ ignore?: string[];
484
+ /** A list of quantization levels to filter providers by (e.g., ["fp16", "bf16", "fp8", "fp6", "int8", "int4", "fp4", "fp32"]). */
485
+ quantizations?: string[];
486
+ /** Sorting strategy. Can be a string (e.g., "price", "throughput", "latency") or an object with `by` and `partition`. */
487
+ sort?: string | {
488
+ /** The sorting metric: "price", "throughput", "latency". */
489
+ by?: string;
490
+ /** Partitioning strategy: "model" (default) or "none". */
491
+ partition?: string | null;
492
+ };
493
+ /** Maximum price per million tokens (USD). */
494
+ max_price?: {
495
+ /** Price per million prompt tokens. */
496
+ prompt?: number | string;
497
+ /** Price per million completion tokens. */
498
+ completion?: number | string;
499
+ /** Price per image. */
500
+ image?: number | string;
501
+ /** Price per audio unit. */
502
+ audio?: number | string;
503
+ /** Price per request. */
504
+ request?: number | string;
505
+ };
506
+ /** Preferred minimum throughput (tokens/second). Can be a number (applies to p50) or an object with percentile-specific cutoffs. */
507
+ preferred_min_throughput?: number | {
508
+ /** Minimum tokens/second at the 50th percentile. */
509
+ p50?: number;
510
+ /** Minimum tokens/second at the 75th percentile. */
511
+ p75?: number;
512
+ /** Minimum tokens/second at the 90th percentile. */
513
+ p90?: number;
514
+ /** Minimum tokens/second at the 99th percentile. */
515
+ p99?: number;
516
+ };
517
+ /** Preferred maximum latency (seconds). Can be a number (applies to p50) or an object with percentile-specific cutoffs. */
518
+ preferred_max_latency?: number | {
519
+ /** Maximum latency in seconds at the 50th percentile. */
520
+ p50?: number;
521
+ /** Maximum latency in seconds at the 75th percentile. */
522
+ p75?: number;
523
+ /** Maximum latency in seconds at the 90th percentile. */
524
+ p90?: number;
525
+ /** Maximum latency in seconds at the 99th percentile. */
526
+ p99?: number;
527
+ };
528
+ }
529
+ /**
530
+ * Vercel AI Gateway routing preferences.
531
+ * Controls which upstream providers the gateway routes requests to.
532
+ * @see https://vercel.com/docs/ai-gateway/models-and-providers/provider-options
533
+ */
534
+ export interface VercelGatewayRouting {
535
+ /** List of provider slugs to exclusively use for this request (e.g., ["bedrock", "anthropic"]). */
536
+ only?: string[];
537
+ /** List of provider slugs to try in order (e.g., ["anthropic", "openai"]). */
538
+ order?: string[];
539
+ }
540
+ export interface Model<TApi extends Api> {
541
+ id: string;
542
+ name: string;
543
+ api: TApi;
544
+ provider: Provider;
545
+ baseUrl: string;
546
+ reasoning: boolean;
547
+ /**
548
+ * Maps OMK thinking levels to provider/model-specific values.
549
+ * Missing keys use provider defaults. null marks a level as unsupported.
550
+ */
551
+ thinkingLevelMap?: ThinkingLevelMap;
552
+ input: ("text" | "image")[];
553
+ cost: {
554
+ input: number;
555
+ output: number;
556
+ cacheRead: number;
557
+ cacheWrite: number;
558
+ };
559
+ contextWindow: number;
560
+ maxTokens: number;
561
+ headers?: Record<string, string>;
562
+ /** Compatibility overrides for OpenAI-compatible APIs. If not set, auto-detected from baseUrl. */
563
+ compat?: TApi extends "openai-completions" ? OpenAICompletionsCompat : TApi extends "openai-responses" ? OpenAIResponsesCompat : TApi extends "anthropic-messages" ? AnthropicMessagesCompat : never;
564
+ }
565
+ export interface ImagesModel<TApi extends ImagesApi> extends Omit<Model<Api>, "api" | "provider" | "reasoning" | "contextWindow" | "maxTokens" | "compat"> {
566
+ api: TApi;
567
+ provider: ImagesProvider;
568
+ output: ("text" | "image")[];
569
+ }
570
+ //# sourceMappingURL=types.d.ts.map