@xrkseek/harness 0.4.3 → 0.4.5

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 (378) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/node_modules/@xrkseek/a2a/README.md +43 -0
  6. package/node_modules/@xrkseek/a2a/dist/client.d.ts +35 -0
  7. package/node_modules/@xrkseek/a2a/dist/client.d.ts.map +1 -0
  8. package/node_modules/@xrkseek/a2a/dist/client.js +229 -0
  9. package/node_modules/@xrkseek/a2a/dist/client.js.map +1 -0
  10. package/node_modules/@xrkseek/a2a/dist/inbound.d.ts +42 -0
  11. package/node_modules/@xrkseek/a2a/dist/inbound.d.ts.map +1 -0
  12. package/node_modules/@xrkseek/a2a/dist/inbound.js +263 -0
  13. package/node_modules/@xrkseek/a2a/dist/inbound.js.map +1 -0
  14. package/node_modules/@xrkseek/a2a/dist/index.d.ts +6 -0
  15. package/node_modules/@xrkseek/a2a/dist/index.d.ts.map +1 -0
  16. package/node_modules/@xrkseek/a2a/dist/index.js +6 -0
  17. package/node_modules/@xrkseek/a2a/dist/index.js.map +1 -0
  18. package/node_modules/@xrkseek/a2a/dist/peers.d.ts +25 -0
  19. package/node_modules/@xrkseek/a2a/dist/peers.d.ts.map +1 -0
  20. package/node_modules/@xrkseek/a2a/dist/peers.js +90 -0
  21. package/node_modules/@xrkseek/a2a/dist/peers.js.map +1 -0
  22. package/node_modules/@xrkseek/a2a/dist/protocol.d.ts +45 -0
  23. package/node_modules/@xrkseek/a2a/dist/protocol.d.ts.map +1 -0
  24. package/node_modules/@xrkseek/a2a/dist/protocol.js +172 -0
  25. package/node_modules/@xrkseek/a2a/dist/protocol.js.map +1 -0
  26. package/node_modules/@xrkseek/a2a/dist/tools.d.ts +10 -0
  27. package/node_modules/@xrkseek/a2a/dist/tools.d.ts.map +1 -0
  28. package/node_modules/@xrkseek/a2a/dist/tools.js +145 -0
  29. package/node_modules/@xrkseek/a2a/dist/tools.js.map +1 -0
  30. package/node_modules/@xrkseek/a2a/package.json +28 -0
  31. package/node_modules/@xrkseek/attachment/README.md +23 -17
  32. package/node_modules/@xrkseek/attachment/dist/image-tokens.d.ts +30 -0
  33. package/node_modules/@xrkseek/attachment/dist/image-tokens.d.ts.map +1 -0
  34. package/node_modules/@xrkseek/attachment/dist/image-tokens.js +142 -0
  35. package/node_modules/@xrkseek/attachment/dist/image-tokens.js.map +1 -0
  36. package/node_modules/@xrkseek/attachment/dist/index.d.ts +2 -0
  37. package/node_modules/@xrkseek/attachment/dist/index.d.ts.map +1 -1
  38. package/node_modules/@xrkseek/attachment/dist/index.js +2 -0
  39. package/node_modules/@xrkseek/attachment/dist/index.js.map +1 -1
  40. package/node_modules/@xrkseek/attachment/dist/request-projection.d.ts +20 -0
  41. package/node_modules/@xrkseek/attachment/dist/request-projection.d.ts.map +1 -0
  42. package/node_modules/@xrkseek/attachment/dist/request-projection.js +49 -0
  43. package/node_modules/@xrkseek/attachment/dist/request-projection.js.map +1 -0
  44. package/node_modules/@xrkseek/attachment-local/dist/request-image.d.ts +2 -11
  45. package/node_modules/@xrkseek/attachment-local/dist/request-image.d.ts.map +1 -1
  46. package/node_modules/@xrkseek/attachment-local/dist/request-image.js +3 -29
  47. package/node_modules/@xrkseek/attachment-local/dist/request-image.js.map +1 -1
  48. package/node_modules/@xrkseek/checkpoint/README.md +4 -2
  49. package/node_modules/@xrkseek/checkpoint/dist/process-git.d.ts +6 -0
  50. package/node_modules/@xrkseek/checkpoint/dist/process-git.d.ts.map +1 -1
  51. package/node_modules/@xrkseek/checkpoint/dist/process-git.js +23 -1
  52. package/node_modules/@xrkseek/checkpoint/dist/process-git.js.map +1 -1
  53. package/node_modules/@xrkseek/checkpoint/dist/store.d.ts +30 -2
  54. package/node_modules/@xrkseek/checkpoint/dist/store.d.ts.map +1 -1
  55. package/node_modules/@xrkseek/checkpoint/dist/store.js +58 -15
  56. package/node_modules/@xrkseek/checkpoint/dist/store.js.map +1 -1
  57. package/node_modules/@xrkseek/checkpoint/dist/types.d.ts +14 -4
  58. package/node_modules/@xrkseek/checkpoint/dist/types.d.ts.map +1 -1
  59. package/node_modules/@xrkseek/checkpoint/dist/types.js.map +1 -1
  60. package/node_modules/@xrkseek/checkpoint/package.json +4 -1
  61. package/node_modules/@xrkseek/context-fragments/dist/index.d.ts +14 -0
  62. package/node_modules/@xrkseek/context-fragments/dist/index.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/context-fragments/dist/index.js +33 -0
  64. package/node_modules/@xrkseek/context-fragments/dist/index.js.map +1 -1
  65. package/node_modules/@xrkseek/core-agent/dist/index.d.ts +7 -0
  66. package/node_modules/@xrkseek/core-agent/dist/index.d.ts.map +1 -1
  67. package/node_modules/@xrkseek/core-agent/dist/index.js +6 -0
  68. package/node_modules/@xrkseek/core-agent/dist/index.js.map +1 -1
  69. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.d.ts.map +1 -1
  70. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.js +1 -0
  71. package/node_modules/@xrkseek/core-agent-loop/dist/compaction.js.map +1 -1
  72. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +12 -0
  73. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  74. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +95 -50
  75. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  76. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts +14 -0
  77. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts.map +1 -1
  78. package/node_modules/@xrkseek/core-session/dist/compaction.js +41 -1
  79. package/node_modules/@xrkseek/core-session/dist/compaction.js.map +1 -1
  80. package/node_modules/@xrkseek/core-session/dist/index.d.ts +1 -1
  81. package/node_modules/@xrkseek/core-session/dist/index.d.ts.map +1 -1
  82. package/node_modules/@xrkseek/core-session/dist/index.js +1 -1
  83. package/node_modules/@xrkseek/core-session/dist/index.js.map +1 -1
  84. package/node_modules/@xrkseek/core-session/package.json +1 -0
  85. package/node_modules/@xrkseek/core-system-prompt/dist/index.d.ts +1 -0
  86. package/node_modules/@xrkseek/core-system-prompt/dist/index.d.ts.map +1 -1
  87. package/node_modules/@xrkseek/core-system-prompt/dist/index.js +1 -0
  88. package/node_modules/@xrkseek/core-system-prompt/dist/index.js.map +1 -1
  89. package/node_modules/@xrkseek/core-system-prompt/dist/time-context.d.ts +22 -0
  90. package/node_modules/@xrkseek/core-system-prompt/dist/time-context.d.ts.map +1 -0
  91. package/node_modules/@xrkseek/core-system-prompt/dist/time-context.js +47 -0
  92. package/node_modules/@xrkseek/core-system-prompt/dist/time-context.js.map +1 -0
  93. package/node_modules/@xrkseek/core-tools/dist/definition.d.ts +14 -0
  94. package/node_modules/@xrkseek/core-tools/dist/definition.d.ts.map +1 -1
  95. package/node_modules/@xrkseek/core-tools/dist/definition.js.map +1 -1
  96. package/node_modules/@xrkseek/core-tools/dist/index.d.ts +2 -2
  97. package/node_modules/@xrkseek/core-tools/dist/index.d.ts.map +1 -1
  98. package/node_modules/@xrkseek/core-tools/dist/index.js +1 -1
  99. package/node_modules/@xrkseek/core-tools/dist/index.js.map +1 -1
  100. package/node_modules/@xrkseek/core-tools/dist/materialize.d.ts +9 -3
  101. package/node_modules/@xrkseek/core-tools/dist/materialize.d.ts.map +1 -1
  102. package/node_modules/@xrkseek/core-tools/dist/materialize.js +38 -8
  103. package/node_modules/@xrkseek/core-tools/dist/materialize.js.map +1 -1
  104. package/node_modules/@xrkseek/exec-computer-use/dist/format.d.ts +2 -0
  105. package/node_modules/@xrkseek/exec-computer-use/dist/format.d.ts.map +1 -1
  106. package/node_modules/@xrkseek/exec-computer-use/dist/format.js +4 -1
  107. package/node_modules/@xrkseek/exec-computer-use/dist/format.js.map +1 -1
  108. package/node_modules/@xrkseek/exec-environment/README.md +21 -0
  109. package/node_modules/@xrkseek/exec-environment/dist/http.d.ts +34 -0
  110. package/node_modules/@xrkseek/exec-environment/dist/http.d.ts.map +1 -0
  111. package/node_modules/@xrkseek/exec-environment/dist/http.js +259 -0
  112. package/node_modules/@xrkseek/exec-environment/dist/http.js.map +1 -0
  113. package/node_modules/@xrkseek/exec-environment/dist/index.d.ts +5 -0
  114. package/node_modules/@xrkseek/exec-environment/dist/index.d.ts.map +1 -0
  115. package/node_modules/@xrkseek/exec-environment/dist/index.js +4 -0
  116. package/node_modules/@xrkseek/exec-environment/dist/index.js.map +1 -0
  117. package/node_modules/@xrkseek/exec-environment/dist/local.d.ts +11 -0
  118. package/node_modules/@xrkseek/exec-environment/dist/local.d.ts.map +1 -0
  119. package/node_modules/@xrkseek/exec-environment/dist/local.js +30 -0
  120. package/node_modules/@xrkseek/exec-environment/dist/local.js.map +1 -0
  121. package/node_modules/@xrkseek/exec-environment/dist/resolve.d.ts +23 -0
  122. package/node_modules/@xrkseek/exec-environment/dist/resolve.d.ts.map +1 -0
  123. package/node_modules/@xrkseek/exec-environment/dist/resolve.js +39 -0
  124. package/node_modules/@xrkseek/exec-environment/dist/resolve.js.map +1 -0
  125. package/node_modules/@xrkseek/exec-environment/dist/types.d.ts +33 -0
  126. package/node_modules/@xrkseek/exec-environment/dist/types.d.ts.map +1 -0
  127. package/node_modules/@xrkseek/exec-environment/dist/types.js +9 -0
  128. package/node_modules/@xrkseek/exec-environment/dist/types.js.map +1 -0
  129. package/node_modules/@xrkseek/exec-environment/package.json +28 -0
  130. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts.map +1 -1
  131. package/node_modules/@xrkseek/exec-fs/dist/index.js +1 -0
  132. package/node_modules/@xrkseek/exec-fs/dist/index.js.map +1 -1
  133. package/node_modules/@xrkseek/exec-fs/dist/present.d.ts +5 -2
  134. package/node_modules/@xrkseek/exec-fs/dist/present.d.ts.map +1 -1
  135. package/node_modules/@xrkseek/exec-fs/dist/present.js +22 -4
  136. package/node_modules/@xrkseek/exec-fs/dist/present.js.map +1 -1
  137. package/node_modules/@xrkseek/exec-image-gen/README.md +6 -4
  138. package/node_modules/@xrkseek/exec-image-gen/dist/format.d.ts.map +1 -1
  139. package/node_modules/@xrkseek/exec-image-gen/dist/format.js +6 -3
  140. package/node_modules/@xrkseek/exec-image-gen/dist/format.js.map +1 -1
  141. package/node_modules/@xrkseek/exec-image-gen/dist/index.d.ts +4 -2
  142. package/node_modules/@xrkseek/exec-image-gen/dist/index.d.ts.map +1 -1
  143. package/node_modules/@xrkseek/exec-image-gen/dist/index.js +4 -2
  144. package/node_modules/@xrkseek/exec-image-gen/dist/index.js.map +1 -1
  145. package/node_modules/@xrkseek/exec-image-gen/dist/memory.d.ts +4 -1
  146. package/node_modules/@xrkseek/exec-image-gen/dist/memory.d.ts.map +1 -1
  147. package/node_modules/@xrkseek/exec-image-gen/dist/memory.js +16 -1
  148. package/node_modules/@xrkseek/exec-image-gen/dist/memory.js.map +1 -1
  149. package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.d.ts +5 -2
  150. package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.d.ts.map +1 -1
  151. package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.js +88 -38
  152. package/node_modules/@xrkseek/exec-image-gen/dist/openai-http.js.map +1 -1
  153. package/node_modules/@xrkseek/exec-image-gen/dist/references.d.ts +21 -0
  154. package/node_modules/@xrkseek/exec-image-gen/dist/references.d.ts.map +1 -0
  155. package/node_modules/@xrkseek/exec-image-gen/dist/references.js +145 -0
  156. package/node_modules/@xrkseek/exec-image-gen/dist/references.js.map +1 -0
  157. package/node_modules/@xrkseek/exec-image-gen/dist/schema.d.ts +15 -0
  158. package/node_modules/@xrkseek/exec-image-gen/dist/schema.d.ts.map +1 -0
  159. package/node_modules/@xrkseek/exec-image-gen/dist/schema.js +67 -0
  160. package/node_modules/@xrkseek/exec-image-gen/dist/schema.js.map +1 -0
  161. package/node_modules/@xrkseek/exec-image-gen/dist/tools.d.ts +5 -2
  162. package/node_modules/@xrkseek/exec-image-gen/dist/tools.d.ts.map +1 -1
  163. package/node_modules/@xrkseek/exec-image-gen/dist/tools.js +38 -36
  164. package/node_modules/@xrkseek/exec-image-gen/dist/tools.js.map +1 -1
  165. package/node_modules/@xrkseek/exec-image-gen/dist/types.d.ts +34 -2
  166. package/node_modules/@xrkseek/exec-image-gen/dist/types.d.ts.map +1 -1
  167. package/node_modules/@xrkseek/exec-image-gen/dist/types.js +16 -1
  168. package/node_modules/@xrkseek/exec-image-gen/dist/types.js.map +1 -1
  169. package/node_modules/@xrkseek/exec-memory/README.md +3 -2
  170. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts +2 -1
  171. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts.map +1 -1
  172. package/node_modules/@xrkseek/exec-memory/dist/index.js +2 -1
  173. package/node_modules/@xrkseek/exec-memory/dist/index.js.map +1 -1
  174. package/node_modules/@xrkseek/exec-memory/dist/provider.d.ts +1 -1
  175. package/node_modules/@xrkseek/exec-memory/dist/provider.d.ts.map +1 -1
  176. package/node_modules/@xrkseek/exec-memory/dist/resolve.d.ts +15 -4
  177. package/node_modules/@xrkseek/exec-memory/dist/resolve.d.ts.map +1 -1
  178. package/node_modules/@xrkseek/exec-memory/dist/resolve.js +13 -3
  179. package/node_modules/@xrkseek/exec-memory/dist/resolve.js.map +1 -1
  180. package/node_modules/@xrkseek/exec-memory/dist/sqlite.d.ts +19 -0
  181. package/node_modules/@xrkseek/exec-memory/dist/sqlite.d.ts.map +1 -0
  182. package/node_modules/@xrkseek/exec-memory/dist/sqlite.js +190 -0
  183. package/node_modules/@xrkseek/exec-memory/dist/sqlite.js.map +1 -0
  184. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts +21 -0
  185. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts.map +1 -1
  186. package/node_modules/@xrkseek/exec-memory/dist/write-path.js +128 -25
  187. package/node_modules/@xrkseek/exec-memory/dist/write-path.js.map +1 -1
  188. package/node_modules/@xrkseek/exec-video-gen/README.md +27 -19
  189. package/node_modules/@xrkseek/exec-video-gen/dist/catalog.d.ts +16 -0
  190. package/node_modules/@xrkseek/exec-video-gen/dist/catalog.d.ts.map +1 -0
  191. package/node_modules/@xrkseek/exec-video-gen/dist/catalog.js +90 -0
  192. package/node_modules/@xrkseek/exec-video-gen/dist/catalog.js.map +1 -0
  193. package/node_modules/@xrkseek/exec-video-gen/dist/format.d.ts.map +1 -1
  194. package/node_modules/@xrkseek/exec-video-gen/dist/format.js +3 -1
  195. package/node_modules/@xrkseek/exec-video-gen/dist/format.js.map +1 -1
  196. package/node_modules/@xrkseek/exec-video-gen/dist/index.d.ts +5 -2
  197. package/node_modules/@xrkseek/exec-video-gen/dist/index.d.ts.map +1 -1
  198. package/node_modules/@xrkseek/exec-video-gen/dist/index.js +5 -2
  199. package/node_modules/@xrkseek/exec-video-gen/dist/index.js.map +1 -1
  200. package/node_modules/@xrkseek/exec-video-gen/dist/memory.d.ts +3 -2
  201. package/node_modules/@xrkseek/exec-video-gen/dist/memory.d.ts.map +1 -1
  202. package/node_modules/@xrkseek/exec-video-gen/dist/memory.js +45 -4
  203. package/node_modules/@xrkseek/exec-video-gen/dist/memory.js.map +1 -1
  204. package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.d.ts +3 -6
  205. package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.d.ts.map +1 -1
  206. package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.js +81 -2
  207. package/node_modules/@xrkseek/exec-video-gen/dist/openai-http.js.map +1 -1
  208. package/node_modules/@xrkseek/exec-video-gen/dist/references.d.ts +24 -0
  209. package/node_modules/@xrkseek/exec-video-gen/dist/references.d.ts.map +1 -0
  210. package/node_modules/@xrkseek/exec-video-gen/dist/references.js +151 -0
  211. package/node_modules/@xrkseek/exec-video-gen/dist/references.js.map +1 -0
  212. package/node_modules/@xrkseek/exec-video-gen/dist/schema.d.ts +15 -0
  213. package/node_modules/@xrkseek/exec-video-gen/dist/schema.d.ts.map +1 -0
  214. package/node_modules/@xrkseek/exec-video-gen/dist/schema.js +104 -0
  215. package/node_modules/@xrkseek/exec-video-gen/dist/schema.js.map +1 -0
  216. package/node_modules/@xrkseek/exec-video-gen/dist/tools.d.ts +4 -2
  217. package/node_modules/@xrkseek/exec-video-gen/dist/tools.d.ts.map +1 -1
  218. package/node_modules/@xrkseek/exec-video-gen/dist/tools.js +99 -70
  219. package/node_modules/@xrkseek/exec-video-gen/dist/tools.js.map +1 -1
  220. package/node_modules/@xrkseek/exec-video-gen/dist/types.d.ts +73 -2
  221. package/node_modules/@xrkseek/exec-video-gen/dist/types.d.ts.map +1 -1
  222. package/node_modules/@xrkseek/exec-video-gen/dist/types.js +20 -1
  223. package/node_modules/@xrkseek/exec-video-gen/dist/types.js.map +1 -1
  224. package/node_modules/@xrkseek/exec-web/README.md +2 -2
  225. package/node_modules/@xrkseek/exec-web/dist/browser-tools.d.ts +3 -0
  226. package/node_modules/@xrkseek/exec-web/dist/browser-tools.d.ts.map +1 -1
  227. package/node_modules/@xrkseek/exec-web/dist/browser-tools.js +3 -0
  228. package/node_modules/@xrkseek/exec-web/dist/browser-tools.js.map +1 -1
  229. package/node_modules/@xrkseek/exec-web/dist/browser-vault-tools.d.ts +32 -0
  230. package/node_modules/@xrkseek/exec-web/dist/browser-vault-tools.d.ts.map +1 -0
  231. package/node_modules/@xrkseek/exec-web/dist/browser-vault-tools.js +141 -0
  232. package/node_modules/@xrkseek/exec-web/dist/browser-vault-tools.js.map +1 -0
  233. package/node_modules/@xrkseek/exec-web/dist/index.d.ts +1 -0
  234. package/node_modules/@xrkseek/exec-web/dist/index.d.ts.map +1 -1
  235. package/node_modules/@xrkseek/exec-web/dist/index.js +1 -0
  236. package/node_modules/@xrkseek/exec-web/dist/index.js.map +1 -1
  237. package/node_modules/@xrkseek/llm-deepseek/dist/index.d.ts +1 -0
  238. package/node_modules/@xrkseek/llm-deepseek/dist/index.d.ts.map +1 -1
  239. package/node_modules/@xrkseek/llm-deepseek/dist/index.js +2 -1
  240. package/node_modules/@xrkseek/llm-deepseek/dist/index.js.map +1 -1
  241. package/node_modules/@xrkseek/llm-deepseek/dist/request-policy.d.ts +13 -3
  242. package/node_modules/@xrkseek/llm-deepseek/dist/request-policy.d.ts.map +1 -1
  243. package/node_modules/@xrkseek/llm-deepseek/dist/request-policy.js +27 -4
  244. package/node_modules/@xrkseek/llm-deepseek/dist/request-policy.js.map +1 -1
  245. package/node_modules/@xrkseek/preset-harness/README.md +8 -8
  246. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts +11 -1
  247. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
  248. package/node_modules/@xrkseek/preset-harness/dist/preset.js +11 -3
  249. package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
  250. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  251. package/node_modules/@xrkseek/preset-minimal/README.md +2 -2
  252. package/node_modules/@xrkseek/preset-minimal/dist/preset.js +1 -1
  253. package/node_modules/@xrkseek/preset-minimal/dist/preset.js.map +1 -1
  254. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  255. package/node_modules/@xrkseek/preset-server/README.md +5 -5
  256. package/node_modules/@xrkseek/preset-server/dist/preset.d.ts.map +1 -1
  257. package/node_modules/@xrkseek/preset-server/dist/preset.js +3 -2
  258. package/node_modules/@xrkseek/preset-server/dist/preset.js.map +1 -1
  259. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  260. package/node_modules/@xrkseek/protocol/dist/session-events.d.ts +9 -0
  261. package/node_modules/@xrkseek/protocol/dist/session-events.d.ts.map +1 -1
  262. package/node_modules/@xrkseek/protocol/dist/session-events.js.map +1 -1
  263. package/node_modules/@xrkseek/protocol/dist/validate.d.ts.map +1 -1
  264. package/node_modules/@xrkseek/protocol/dist/validate.js +9 -0
  265. package/node_modules/@xrkseek/protocol/dist/validate.js.map +1 -1
  266. package/node_modules/@xrkseek/server-config/dist/index.d.ts +1 -0
  267. package/node_modules/@xrkseek/server-config/dist/index.d.ts.map +1 -1
  268. package/node_modules/@xrkseek/server-config/dist/index.js +1 -0
  269. package/node_modules/@xrkseek/server-config/dist/index.js.map +1 -1
  270. package/node_modules/@xrkseek/server-config/dist/json-text.d.ts +8 -0
  271. package/node_modules/@xrkseek/server-config/dist/json-text.d.ts.map +1 -0
  272. package/node_modules/@xrkseek/server-config/dist/json-text.js +12 -0
  273. package/node_modules/@xrkseek/server-config/dist/json-text.js.map +1 -0
  274. package/node_modules/@xrkseek/server-cron/README.md +3 -2
  275. package/node_modules/@xrkseek/server-cron/dist/executions.d.ts +31 -0
  276. package/node_modules/@xrkseek/server-cron/dist/executions.d.ts.map +1 -0
  277. package/node_modules/@xrkseek/server-cron/dist/executions.js +95 -0
  278. package/node_modules/@xrkseek/server-cron/dist/executions.js.map +1 -0
  279. package/node_modules/@xrkseek/server-cron/dist/index.d.ts +1 -0
  280. package/node_modules/@xrkseek/server-cron/dist/index.d.ts.map +1 -1
  281. package/node_modules/@xrkseek/server-cron/dist/index.js +6 -0
  282. package/node_modules/@xrkseek/server-cron/dist/index.js.map +1 -1
  283. package/node_modules/@xrkseek/server-cron/dist/scheduler.d.ts +4 -0
  284. package/node_modules/@xrkseek/server-cron/dist/scheduler.d.ts.map +1 -1
  285. package/node_modules/@xrkseek/server-cron/dist/scheduler.js +33 -24
  286. package/node_modules/@xrkseek/server-cron/dist/scheduler.js.map +1 -1
  287. package/node_modules/@xrkseek/server-cron/dist/tools.d.ts.map +1 -1
  288. package/node_modules/@xrkseek/server-cron/dist/tools.js +44 -6
  289. package/node_modules/@xrkseek/server-cron/dist/tools.js.map +1 -1
  290. package/node_modules/@xrkseek/server-face/dist/dispatch.d.ts.map +1 -1
  291. package/node_modules/@xrkseek/server-face/dist/dispatch.js +2 -0
  292. package/node_modules/@xrkseek/server-face/dist/dispatch.js.map +1 -1
  293. package/node_modules/@xrkseek/server-face/dist/external-agent-runtime.d.ts +37 -2
  294. package/node_modules/@xrkseek/server-face/dist/external-agent-runtime.d.ts.map +1 -1
  295. package/node_modules/@xrkseek/server-face/dist/external-agent-runtime.js +191 -28
  296. package/node_modules/@xrkseek/server-face/dist/external-agent-runtime.js.map +1 -1
  297. package/node_modules/@xrkseek/server-face/dist/handlers/worktree.d.ts +10 -0
  298. package/node_modules/@xrkseek/server-face/dist/handlers/worktree.d.ts.map +1 -0
  299. package/node_modules/@xrkseek/server-face/dist/handlers/worktree.js +33 -0
  300. package/node_modules/@xrkseek/server-face/dist/handlers/worktree.js.map +1 -0
  301. package/node_modules/@xrkseek/server-face/dist/host-open-path.d.ts +9 -0
  302. package/node_modules/@xrkseek/server-face/dist/host-open-path.d.ts.map +1 -1
  303. package/node_modules/@xrkseek/server-face/dist/host-open-path.js +13 -7
  304. package/node_modules/@xrkseek/server-face/dist/host-open-path.js.map +1 -1
  305. package/node_modules/@xrkseek/server-face/dist/index.d.ts +2 -2
  306. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  307. package/node_modules/@xrkseek/server-face/dist/index.js +1 -1
  308. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  309. package/node_modules/@xrkseek/server-face/dist/llm-provider-context.d.ts +2 -0
  310. package/node_modules/@xrkseek/server-face/dist/llm-provider-context.d.ts.map +1 -1
  311. package/node_modules/@xrkseek/server-face/dist/llm-provider-context.js +13 -0
  312. package/node_modules/@xrkseek/server-face/dist/llm-provider-context.js.map +1 -1
  313. package/node_modules/@xrkseek/server-face/dist/llm-resolve.d.ts.map +1 -1
  314. package/node_modules/@xrkseek/server-face/dist/llm-resolve.js +3 -1
  315. package/node_modules/@xrkseek/server-face/dist/llm-resolve.js.map +1 -1
  316. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts +4 -0
  317. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  318. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +24 -5
  319. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  320. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js +5 -5
  321. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js.map +1 -1
  322. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  323. package/node_modules/@xrkseek/server-face/dist/runtime.js +14 -2
  324. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  325. package/node_modules/@xrkseek/server-face/dist/select-session-model.d.ts.map +1 -1
  326. package/node_modules/@xrkseek/server-face/dist/select-session-model.js +8 -0
  327. package/node_modules/@xrkseek/server-face/dist/select-session-model.js.map +1 -1
  328. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts +11 -0
  329. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts.map +1 -0
  330. package/node_modules/@xrkseek/server-face/dist/session-model-store.js +66 -0
  331. package/node_modules/@xrkseek/server-face/dist/session-model-store.js.map +1 -0
  332. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +64 -13
  333. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
  334. package/node_modules/@xrkseek/server-face/dist/session-status.js +173 -5
  335. package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
  336. package/node_modules/@xrkseek/server-face/dist/settings-credentials.d.ts.map +1 -1
  337. package/node_modules/@xrkseek/server-face/dist/settings-credentials.js +4 -5
  338. package/node_modules/@xrkseek/server-face/dist/settings-credentials.js.map +1 -1
  339. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  340. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +36 -4
  341. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  342. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts +1 -1
  343. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  344. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +1 -1
  345. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  346. package/node_modules/@xrkseek/server-face/dist/workspace-checkpoint.d.ts +15 -1
  347. package/node_modules/@xrkseek/server-face/dist/workspace-checkpoint.d.ts.map +1 -1
  348. package/node_modules/@xrkseek/server-face/dist/workspace-checkpoint.js +35 -7
  349. package/node_modules/@xrkseek/server-face/dist/workspace-checkpoint.js.map +1 -1
  350. package/node_modules/@xrkseek/server-host/dist/a2a-inbound-public.d.ts +11 -0
  351. package/node_modules/@xrkseek/server-host/dist/a2a-inbound-public.d.ts.map +1 -0
  352. package/node_modules/@xrkseek/server-host/dist/a2a-inbound-public.js +22 -0
  353. package/node_modules/@xrkseek/server-host/dist/a2a-inbound-public.js.map +1 -0
  354. package/node_modules/@xrkseek/server-host/dist/index.d.ts +3 -0
  355. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  356. package/node_modules/@xrkseek/server-host/dist/index.js +178 -48
  357. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  358. package/node_modules/@xrkseek/server-host/dist/mcp-wire.d.ts.map +1 -1
  359. package/node_modules/@xrkseek/server-host/dist/mcp-wire.js +3 -3
  360. package/node_modules/@xrkseek/server-host/dist/mcp-wire.js.map +1 -1
  361. package/node_modules/@xrkseek/server-host/package.json +2 -0
  362. package/node_modules/@xrkseek/server-http/dist/dsh-compat/embedded-vector-store.d.ts +2 -2
  363. package/node_modules/@xrkseek/server-http/dist/dsh-compat/embedded-vector-store.d.ts.map +1 -1
  364. package/node_modules/@xrkseek/server-http/dist/dsh-compat/embedded-vector-store.js +9 -4
  365. package/node_modules/@xrkseek/server-http/dist/dsh-compat/embedded-vector-store.js.map +1 -1
  366. package/node_modules/@xrkseek/server-http/dist/dsh-compat/memory-embeddings.d.ts +37 -1
  367. package/node_modules/@xrkseek/server-http/dist/dsh-compat/memory-embeddings.d.ts.map +1 -1
  368. package/node_modules/@xrkseek/server-http/dist/dsh-compat/memory-embeddings.js +125 -9
  369. package/node_modules/@xrkseek/server-http/dist/dsh-compat/memory-embeddings.js.map +1 -1
  370. package/node_modules/@xrkseek/workspace/dist/index.d.ts +1 -0
  371. package/node_modules/@xrkseek/workspace/dist/index.d.ts.map +1 -1
  372. package/node_modules/@xrkseek/workspace/dist/index.js +1 -0
  373. package/node_modules/@xrkseek/workspace/dist/index.js.map +1 -1
  374. package/node_modules/@xrkseek/workspace/dist/skill-curator.d.ts +46 -0
  375. package/node_modules/@xrkseek/workspace/dist/skill-curator.d.ts.map +1 -0
  376. package/node_modules/@xrkseek/workspace/dist/skill-curator.js +114 -0
  377. package/node_modules/@xrkseek/workspace/dist/skill-curator.js.map +1 -0
  378. package/package.json +5 -1
@@ -0,0 +1,16 @@
1
+ /**
2
+ * OpenAI Videos family catalog (Hermes fal `MODEL_FAMILIES` shape, thinner).
3
+ * Provider `capabilities().families` surfaces this for `action=catalog`.
4
+ */
5
+ import type { VideoGenCapabilities, VideoGenFamilyEntry, VideoGenSeconds, VideoGenSize } from "./types.js";
6
+ export declare const VIDEO_GEN_SECONDS: readonly VideoGenSeconds[];
7
+ export declare const VIDEO_GEN_SIZES: readonly VideoGenSize[];
8
+ /** Sora-2 family: t2v + first-frame i2v + edit + extend. */
9
+ export declare const OPENAI_VIDEO_GEN_FAMILIES: readonly VideoGenFamilyEntry[];
10
+ /** Caps + catalog for the OpenAI Videos Provider. */
11
+ export declare const OPENAI_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
12
+ /** Memory Provider mirrors OpenAI surface so CI exercises the full schema. */
13
+ export declare const MEMORY_VIDEO_GEN_CAPABILITIES: VideoGenCapabilities;
14
+ /** Format family rows for `action=catalog` tool text. */
15
+ export declare function formatVideoGenCatalog(families: readonly VideoGenFamilyEntry[]): string;
16
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EAAe,CAAC;AAExE,eAAO,MAAM,eAAe,EAAE,SAAS,YAAY,EAKlD,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,yBAAyB,EAAE,SAAS,mBAAmB,EAqBnE,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,6BAA6B,EAAE,oBAM3C,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,6BAA6B,EAAE,oBAiB3C,CAAC;AAEF,yDAAyD;AACzD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACvC,MAAM,CA4BR"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * OpenAI Videos family catalog (Hermes fal `MODEL_FAMILIES` shape, thinner).
3
+ * Provider `capabilities().families` surfaces this for `action=catalog`.
4
+ */
5
+ export const VIDEO_GEN_SECONDS = [4, 8, 12];
6
+ export const VIDEO_GEN_SIZES = [
7
+ "720x1280",
8
+ "1280x720",
9
+ "1024x1792",
10
+ "1792x1024",
11
+ ];
12
+ /** Sora-2 family: t2v + first-frame i2v + edit + extend. */
13
+ export const OPENAI_VIDEO_GEN_FAMILIES = [
14
+ {
15
+ id: "sora-2",
16
+ displayName: "Sora 2",
17
+ modalities: ["text", "image"],
18
+ seconds: VIDEO_GEN_SECONDS,
19
+ sizes: VIDEO_GEN_SIZES,
20
+ supportsEdit: true,
21
+ supportsExtend: true,
22
+ note: "OpenAI Videos — first frame via input_reference; edit/extend via /videos/edits|/videos/extensions.",
23
+ },
24
+ {
25
+ id: "sora-2-pro",
26
+ displayName: "Sora 2 Pro",
27
+ modalities: ["text", "image"],
28
+ seconds: VIDEO_GEN_SECONDS,
29
+ sizes: VIDEO_GEN_SIZES,
30
+ supportsEdit: true,
31
+ supportsExtend: true,
32
+ note: "Higher-fidelity Sora tier; same i2v / edit / extend surface as sora-2.",
33
+ },
34
+ ];
35
+ /** Caps + catalog for the OpenAI Videos Provider. */
36
+ export const OPENAI_VIDEO_GEN_CAPABILITIES = {
37
+ modalities: ["text", "image"],
38
+ maxReferenceImages: 1,
39
+ supportsEdit: true,
40
+ supportsExtend: true,
41
+ families: OPENAI_VIDEO_GEN_FAMILIES,
42
+ };
43
+ /** Memory Provider mirrors OpenAI surface so CI exercises the full schema. */
44
+ export const MEMORY_VIDEO_GEN_CAPABILITIES = {
45
+ modalities: ["text", "image"],
46
+ maxReferenceImages: 1,
47
+ supportsEdit: true,
48
+ supportsExtend: true,
49
+ families: [
50
+ {
51
+ id: "sora-2",
52
+ displayName: "Memory (Sora-shaped)",
53
+ modalities: ["text", "image"],
54
+ seconds: VIDEO_GEN_SECONDS,
55
+ sizes: VIDEO_GEN_SIZES,
56
+ supportsEdit: true,
57
+ supportsExtend: true,
58
+ note: "Deterministic in-memory stand-in for CI / demos.",
59
+ },
60
+ ],
61
+ };
62
+ /** Format family rows for `action=catalog` tool text. */
63
+ export function formatVideoGenCatalog(families) {
64
+ if (families.length === 0) {
65
+ return "catalog=empty (Provider has no family list)";
66
+ }
67
+ const lines = ["catalog:"];
68
+ for (const f of families) {
69
+ const mods = f.modalities.join("+");
70
+ const flags = [
71
+ f.supportsEdit ? "edit" : "",
72
+ f.supportsExtend ? "extend" : "",
73
+ ]
74
+ .filter(Boolean)
75
+ .join(",");
76
+ lines.push([
77
+ `- id=${f.id}`,
78
+ `display=${f.displayName}`,
79
+ `modalities=${mods}`,
80
+ `seconds=${f.seconds.join("|")}`,
81
+ `sizes=${f.sizes.join("|")}`,
82
+ flags ? `ops=${flags}` : "",
83
+ f.note ? `note=${f.note}` : "",
84
+ ]
85
+ .filter(Boolean)
86
+ .join(" "));
87
+ }
88
+ return lines.join("\n");
89
+ }
90
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAMtB,CAAC"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAQtB,CAAC"}
@@ -1,7 +1,9 @@
1
1
  export const VIDEO_GEN_PROMPT_TEXT = [
2
2
  "Video generation:",
3
- "- Use `video_generate` for text-to-video. Renders are **asynchronous**: `action=start` (default) returns a `jobId`; poll with `action=status` (or `action=wait` to block) until `status=completed`; then `action=content` downloads the MP4.",
3
+ "- Use `video_generate` for text-to-video or image-to-video. Renders are **asynchronous**: `action=start` (default) returns a `jobId`; poll with `action=status` (or `action=wait` to block) until `status=completed`; then `action=content` downloads the MP4.",
4
4
  "- Put a complete visual prompt in `prompt` (subject, motion, camera, lighting). Optional `seconds` (4 · 8 · 12) and `size` (e.g. 1280x720).",
5
+ "- Image-to-video: pass `first_frame` or `image_url` (https / data: / attachment:<id>) as the opening still; optional `reference_attachment_ids`. Use `action=catalog` to list model families.",
6
+ "- Edit / extend (when the Provider supports them): `action=edit` or `action=extend` with `job_id` of a prior completed video plus a new `prompt`.",
5
7
  "- Video renders take minutes — call `start`, then poll `status` instead of blocking the turn.",
6
8
  "- Without `XRK_VIDEO_GEN=1` (OpenAI key) or `XRK_VIDEO_GEN=memory`, the tool stays visible and fails honestly.",
7
9
  ].join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,mBAAmB;IACnB,8OAA8O;IAC9O,6IAA6I;IAC7I,+FAA+F;IAC/F,gHAAgH;CACjH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,mBAAmB;IACnB,gQAAgQ;IAChQ,6IAA6I;IAC7I,+LAA+L;IAC/L,mJAAmJ;IACnJ,+FAA+F;IAC/F,gHAAgH;CACjH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
@@ -1,5 +1,8 @@
1
1
  import type { VideoGenService } from "./types.js";
2
- export { VideoGenError, isTerminalStatus, isVideoGenError, type VideoGenContent, type VideoGenDelivery, type VideoGenErrorCode, type VideoGenJob, type VideoGenRequest, type VideoGenSeconds, type VideoGenService, type VideoGenSize, type VideoGenStatus, } from "./types.js";
2
+ export { VideoGenError, VIDEO_GEN_CAPABILITIES_TEXT_ONLY, isTerminalStatus, isVideoGenError, resolveVideoGenCapabilities, videoGenSupportsI2v, type VideoGenCapabilities, type VideoGenContent, type VideoGenCreateKind, type VideoGenDelivery, type VideoGenErrorCode, type VideoGenFamilyEntry, type VideoGenJob, type VideoGenRequest, type VideoGenSeconds, type VideoGenService, type VideoGenSize, type VideoGenSourceImage, type VideoGenStatus, } from "./types.js";
3
+ export { MEMORY_VIDEO_GEN_CAPABILITIES, OPENAI_VIDEO_GEN_CAPABILITIES, OPENAI_VIDEO_GEN_FAMILIES, VIDEO_GEN_SECONDS, VIDEO_GEN_SIZES, formatVideoGenCatalog, } from "./catalog.js";
4
+ export { buildVideoGenToolDescription, buildVideoGenToolParameters, videoGenActionsForCapabilities, } from "./schema.js";
5
+ export { resolveVideoGenReferenceImages, type ResolveVideoGenReferencesOptions, } from "./references.js";
3
6
  export { VIDEO_GEN_PROMPT_TEXT } from "./format.js";
4
7
  export { createMemoryVideoGenProvider, minimalMp4Bytes, type MemoryVideoGenOptions, } from "./memory.js";
5
8
  export { createOpenAiVideoGenProvider, type OpenAiVideoGenOptions, } from "./openai-http.js";
@@ -27,7 +30,7 @@ export interface DefaultVideoGenAccess {
27
30
  readonly unavailableMessage: string;
28
31
  }
29
32
  /**
30
- * Resolve a text-to-video Provider.
33
+ * Resolve a text-to-video / i2v Provider.
31
34
  * - Injected `service` wins.
32
35
  * - Non-empty `XRK_VIDEO_GEN` is CI bypass over Face `product`.
33
36
  * - Product / env: `off` · `openai` (`1`) · `memory` (env-only).
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,KAAK,qBAAqB,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,0BAA0B,GAChC,MAAM,YAAY,CAAC;AAEpB,8EAA8E;AAC9E,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEnD,sCAAsC;AACtC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;CACrC;AASD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,GAAE,4BAAiC,GACzC,qBAAqB,CAyCvB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,EACL,aAAa,EACb,gCAAgC,EAChC,gBAAgB,EAChB,eAAe,EACf,2BAA2B,EAC3B,mBAAmB,EACnB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,yBAAyB,EACzB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,GAC/B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,8BAA8B,EAC9B,KAAK,gCAAgC,GACtC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,eAAe,EACf,KAAK,qBAAqB,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,0BAA0B,GAChC,MAAM,YAAY,CAAC;AAEpB,8EAA8E;AAC9E,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEnD,sCAAsC;AACtC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;CACrC;AASD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,GAAE,4BAAiC,GACzC,qBAAqB,CAyCvB"}
@@ -1,7 +1,10 @@
1
1
  import { createMemoryVideoGenProvider } from "./memory.js";
2
2
  import { createOpenAiVideoGenProvider } from "./openai-http.js";
3
3
  import { videoGenUnavailableMessage } from "./tools.js";
4
- export { VideoGenError, isTerminalStatus, isVideoGenError, } from "./types.js";
4
+ export { VideoGenError, VIDEO_GEN_CAPABILITIES_TEXT_ONLY, isTerminalStatus, isVideoGenError, resolveVideoGenCapabilities, videoGenSupportsI2v, } from "./types.js";
5
+ export { MEMORY_VIDEO_GEN_CAPABILITIES, OPENAI_VIDEO_GEN_CAPABILITIES, OPENAI_VIDEO_GEN_FAMILIES, VIDEO_GEN_SECONDS, VIDEO_GEN_SIZES, formatVideoGenCatalog, } from "./catalog.js";
6
+ export { buildVideoGenToolDescription, buildVideoGenToolParameters, videoGenActionsForCapabilities, } from "./schema.js";
7
+ export { resolveVideoGenReferenceImages, } from "./references.js";
5
8
  export { VIDEO_GEN_PROMPT_TEXT } from "./format.js";
6
9
  export { createMemoryVideoGenProvider, minimalMp4Bytes, } from "./memory.js";
7
10
  export { createOpenAiVideoGenProvider, } from "./openai-http.js";
@@ -14,7 +17,7 @@ function resolveApiKey(env) {
14
17
  return b || undefined;
15
18
  }
16
19
  /**
17
- * Resolve a text-to-video Provider.
20
+ * Resolve a text-to-video / i2v Provider.
18
21
  * - Injected `service` wins.
19
22
  * - Non-empty `XRK_VIDEO_GEN` is CI bypass over Face `product`.
20
23
  * - Product / env: `off` · `openai` (`1`) · `memory` (env-only).
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAExD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,eAAe,GAUhB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,eAAe,GAEhB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,GAE7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,GAE3B,MAAM,YAAY,CAAC;AA4BpB,SAAS,aAAa,CAAC,GAAsB;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAChB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,OAAO,CAAC,IAAI,SAAS,CAAC;AACxB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,UAAwC,EAAE;IAE1C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC1D,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,MAAM,IAAI,GACR,MAAM,KAAK,EAAE;QACX,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;QACtB,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,KAAK,QAAQ;YAClC,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,EAAE,CAAC;IACX,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE,4BAA4B,EAAE;YACvC,kBAAkB;SACnB,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAChC,CAAC;QACD,MAAM,OAAO,GACX,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;YAChC,MAAM,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,KAAK,GACT,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;YAC9B,MAAM,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO;YACL,OAAO,EAAE,4BAA4B,CAAC;gBACpC,MAAM;gBACN,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3B,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/D,CAAC;YACF,kBAAkB;SACnB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { VideoGenService } from "./types.js";
1
+ import type { VideoGenCapabilities, VideoGenService } from "./types.js";
2
2
  /**
3
3
  * Minimal MP4: a lone `ftyp` box (24 bytes). Enough for a stable format
4
4
  * signature without shipping a real encode in CI.
@@ -11,10 +11,11 @@ export interface MemoryVideoGenOptions {
11
11
  * succeed — a test hook for the terminal-failure path.
12
12
  */
13
13
  readonly failAfter?: number;
14
+ readonly capabilities?: VideoGenCapabilities;
14
15
  }
15
16
  /**
16
17
  * Deterministic in-memory Provider for CI / demos (`XRK_VIDEO_GEN=memory`).
17
- * Models the async lifecycle without any network or encoder.
18
+ * Models the async lifecycle (incl. i2v / edit / extend) without network.
18
19
  */
19
20
  export declare function createMemoryVideoGenProvider(options?: MemoryVideoGenOptions): VideoGenService;
20
21
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,eAAe,EAEhB,MAAM,YAAY,CAAC;AAGpB;;;GAGG;AACH,wBAAgB,eAAe,IAAI,UAAU,CAU5C;AAmBD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,GAAE,qBAA0B,GAClC,eAAe,CAqFjB"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EAIpB,eAAe,EAEhB,MAAM,YAAY,CAAC;AAGpB;;;GAGG;AACH,wBAAgB,eAAe,IAAI,UAAU,CAU5C;AAuBD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,oBAAoB,CAAC;CAC9C;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,GAAE,qBAA0B,GAClC,eAAe,CAsJjB"}
@@ -1,3 +1,4 @@
1
+ import { MEMORY_VIDEO_GEN_CAPABILITIES } from "./catalog.js";
1
2
  import { VideoGenError } from "./types.js";
2
3
  /**
3
4
  * Minimal MP4: a lone `ftyp` box (24 bytes). Enough for a stable format
@@ -22,11 +23,12 @@ const PROGRESS_STEPS = [
22
23
  ];
23
24
  /**
24
25
  * Deterministic in-memory Provider for CI / demos (`XRK_VIDEO_GEN=memory`).
25
- * Models the async lifecycle without any network or encoder.
26
+ * Models the async lifecycle (incl. i2v / edit / extend) without network.
26
27
  */
27
28
  export function createMemoryVideoGenProvider(options = {}) {
28
29
  const jobs = new Map();
29
30
  let seq = 0;
31
+ const caps = options.capabilities ?? MEMORY_VIDEO_GEN_CAPABILITIES;
30
32
  const record = (jobId) => {
31
33
  const id = String(jobId ?? "").trim();
32
34
  const rec = jobs.get(id);
@@ -50,21 +52,58 @@ export function createMemoryVideoGenProvider(options = {}) {
50
52
  size: rec.size,
51
53
  provider: "memory",
52
54
  delivery: "memory",
53
- note: options.note ?? `memory-video-gen:${rec.prompt.slice(0, 80)}`,
55
+ kind: rec.kind,
56
+ modality: rec.modality,
57
+ note: options.note ??
58
+ `memory-video-gen:${rec.kind}:${rec.modality}:${rec.prompt.slice(0, 60)}`,
54
59
  };
55
60
  };
56
61
  return {
62
+ capabilities() {
63
+ return caps;
64
+ },
57
65
  async create(req) {
58
66
  const prompt = String(req.prompt ?? "").trim();
59
67
  if (!prompt) {
60
68
  throw new VideoGenError("prompt is empty", "VIDEO_GEN_BAD_ARGS");
61
69
  }
70
+ const kind = req.kind ?? "generate";
71
+ if (kind === "edit" || kind === "extend") {
72
+ if (kind === "edit" && !caps.supportsEdit) {
73
+ throw new VideoGenError("memory Provider configured without edit capability", "VIDEO_GEN_BAD_ARGS");
74
+ }
75
+ if (kind === "extend" && !caps.supportsExtend) {
76
+ throw new VideoGenError("memory Provider configured without extend capability", "VIDEO_GEN_BAD_ARGS");
77
+ }
78
+ const sourceId = String(req.sourceVideoId ?? "").trim();
79
+ if (!sourceId) {
80
+ throw new VideoGenError(`sourceVideoId is required for ${kind}`, "VIDEO_GEN_BAD_ARGS");
81
+ }
82
+ // Source must exist (completed or otherwise) so tests can chain.
83
+ if (!jobs.has(sourceId)) {
84
+ throw new VideoGenError(`unknown source video job: ${sourceId}`, "VIDEO_GEN_BAD_ARGS");
85
+ }
86
+ }
87
+ const first = req.firstFrame;
88
+ const extras = req.referenceImages ?? [];
89
+ const stillCount = (first ? 1 : 0) + extras.length;
90
+ if (stillCount > 0 && caps.maxReferenceImages <= 0) {
91
+ throw new VideoGenError("memory Provider configured without i2v capability", "VIDEO_GEN_BAD_ARGS");
92
+ }
93
+ if (stillCount > caps.maxReferenceImages) {
94
+ throw new VideoGenError(`at most ${caps.maxReferenceImages} reference image(s) allowed`, "VIDEO_GEN_BAD_ARGS");
95
+ }
96
+ const modality = kind === "generate" && stillCount > 0 ? "image" : "text";
62
97
  const rec = {
63
98
  id: `video_mem_${(++seq).toString(16)}`,
64
99
  prompt,
65
100
  model: req.model ?? "sora-2",
66
101
  seconds: req.seconds ?? 4,
67
102
  size: req.size ?? "1280x720",
103
+ kind,
104
+ modality,
105
+ ...(req.sourceVideoId ? { sourceVideoId: req.sourceVideoId } : {}),
106
+ ...(first?.label ? { firstFrameLabel: first.label } : {}),
68
107
  step: 0,
69
108
  polls: 0,
70
109
  };
@@ -78,7 +117,9 @@ export function createMemoryVideoGenProvider(options = {}) {
78
117
  size: rec.size,
79
118
  provider: "memory",
80
119
  delivery: "memory",
81
- note: `memory-video-gen queued:${prompt.slice(0, 80)}`,
120
+ kind: rec.kind,
121
+ modality: rec.modality,
122
+ note: `memory-video-gen queued:${kind}:${modality}:${prompt.slice(0, 60)}`,
82
123
  };
83
124
  },
84
125
  async get(jobId) {
@@ -97,7 +138,7 @@ export function createMemoryVideoGenProvider(options = {}) {
97
138
  bytes: minimalMp4Bytes(),
98
139
  mimeType: "video/mp4",
99
140
  provider: "memory",
100
- note: `memory-video:${rec.id}`,
141
+ note: `memory-video:${rec.id}:${rec.kind}:${rec.modality}`,
101
142
  };
102
143
  },
103
144
  };
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,4 @@
1
- /**
2
- * OpenAI Videos API Provider (Sora): `POST /videos` → `GET /videos/{id}` →
3
- * `GET /videos/{id}/content`, the documented async render lifecycle.
4
- * @see https://developers.openai.com/api/docs/guides/video-generation
5
- */
6
- import type { VideoGenSeconds, VideoGenService, VideoGenSize } from "./types.js";
1
+ import type { VideoGenCapabilities, VideoGenSeconds, VideoGenService, VideoGenSize } from "./types.js";
7
2
  export interface OpenAiVideoGenOptions {
8
3
  readonly apiKey: string;
9
4
  readonly baseUrl?: string;
@@ -11,6 +6,8 @@ export interface OpenAiVideoGenOptions {
11
6
  readonly model?: string;
12
7
  readonly defaultSeconds?: VideoGenSeconds;
13
8
  readonly defaultSize?: VideoGenSize;
9
+ /** Override caps (tests); default = OpenAI family catalog. */
10
+ readonly capabilities?: VideoGenCapabilities;
14
11
  }
15
12
  export declare function createOpenAiVideoGenProvider(options: OpenAiVideoGenOptions): VideoGenService;
16
13
  //# sourceMappingURL=openai-http.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-http.d.ts","sourceRoot":"","sources":["../src/openai-http.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAIV,eAAe,EACf,eAAe,EACf,YAAY,EAEb,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC;CACrC;AA2DD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,qBAAqB,GAC7B,eAAe,CA2FjB"}
1
+ {"version":3,"file":"openai-http.d.ts","sourceRoot":"","sources":["../src/openai-http.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,oBAAoB,EAKpB,eAAe,EACf,eAAe,EACf,YAAY,EAGb,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC;IACpC,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,CAAC,EAAE,oBAAoB,CAAC;CAC9C;AAyED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,qBAAqB,GAC7B,eAAe,CAiMjB"}
@@ -1,3 +1,10 @@
1
+ /**
2
+ * OpenAI Videos API Provider (Sora): `POST /videos` → `GET /videos/{id}` →
3
+ * `GET /videos/{id}/content`, plus i2v (`input_reference`), edit
4
+ * (`POST /videos/edits`), and extend (`POST /videos/extensions`).
5
+ * @see https://developers.openai.com/api/docs/guides/video-generation
6
+ */
7
+ import { OPENAI_VIDEO_GEN_CAPABILITIES } from "./catalog.js";
1
8
  import { VideoGenError } from "./types.js";
2
9
  const STATUSES = [
3
10
  "queued",
@@ -8,7 +15,14 @@ const STATUSES = [
8
15
  function joinUrl(base, path) {
9
16
  return `${base.replace(/\/+$/, "")}/${path.replace(/^\/+/, "")}`;
10
17
  }
11
- function parseJob(json) {
18
+ function extForMime(mime) {
19
+ if (mime === "image/jpeg")
20
+ return "jpg";
21
+ if (mime === "image/webp")
22
+ return "webp";
23
+ return "png";
24
+ }
25
+ function parseJob(json, extras) {
12
26
  const row = (json ?? {});
13
27
  const jobId = String(row.id ?? "").trim();
14
28
  if (!jobId) {
@@ -36,6 +50,8 @@ function parseJob(json) {
36
50
  provider: "openai",
37
51
  delivery: "openai",
38
52
  note: `openai-videos status=${status}`,
53
+ ...(extras?.kind ? { kind: extras.kind } : {}),
54
+ ...(extras?.modality ? { modality: extras.modality } : {}),
39
55
  };
40
56
  }
41
57
  export function createOpenAiVideoGenProvider(options) {
@@ -44,6 +60,7 @@ export function createOpenAiVideoGenProvider(options) {
44
60
  const model = options.model ?? "sora-2";
45
61
  const defaultSeconds = options.defaultSeconds ?? 4;
46
62
  const defaultSize = options.defaultSize ?? "1280x720";
63
+ const caps = options.capabilities ?? OPENAI_VIDEO_GEN_CAPABILITIES;
47
64
  const auth = { Authorization: `Bearer ${options.apiKey}` };
48
65
  const requireId = (jobId) => {
49
66
  const id = String(jobId ?? "").trim();
@@ -63,17 +80,76 @@ export function createOpenAiVideoGenProvider(options) {
63
80
  }
64
81
  return parseJob(await res.json());
65
82
  };
83
+ const postJson = async (path, body, kind) => {
84
+ const res = await fetchImpl(joinUrl(baseUrl, path), {
85
+ method: "POST",
86
+ headers: {
87
+ ...auth,
88
+ "Content-Type": "application/json",
89
+ },
90
+ body: JSON.stringify(body),
91
+ });
92
+ if (!res.ok) {
93
+ const text = await res.text().catch(() => "");
94
+ throw new VideoGenError(`OpenAI ${path} HTTP ${res.status}: ${text.slice(0, 200)}`, "VIDEO_GEN_BACKEND");
95
+ }
96
+ return parseJob(await res.json(), { kind, modality: "text" });
97
+ };
66
98
  return {
99
+ capabilities() {
100
+ return caps;
101
+ },
67
102
  async create(req) {
68
103
  const prompt = String(req.prompt ?? "").trim();
69
104
  if (!prompt) {
70
105
  throw new VideoGenError("prompt is empty", "VIDEO_GEN_BAD_ARGS");
71
106
  }
107
+ const kind = req.kind ?? "generate";
108
+ if (kind === "edit") {
109
+ if (!caps.supportsEdit) {
110
+ throw new VideoGenError("OpenAI Provider configured without edit capability", "VIDEO_GEN_BAD_ARGS");
111
+ }
112
+ const sourceId = String(req.sourceVideoId ?? "").trim();
113
+ if (!sourceId) {
114
+ throw new VideoGenError("sourceVideoId is required for edit", "VIDEO_GEN_BAD_ARGS");
115
+ }
116
+ return postJson("videos/edits", { video: { id: sourceId }, prompt }, "edit");
117
+ }
118
+ if (kind === "extend") {
119
+ if (!caps.supportsExtend) {
120
+ throw new VideoGenError("OpenAI Provider configured without extend capability", "VIDEO_GEN_BAD_ARGS");
121
+ }
122
+ const sourceId = String(req.sourceVideoId ?? "").trim();
123
+ if (!sourceId) {
124
+ throw new VideoGenError("sourceVideoId is required for extend", "VIDEO_GEN_BAD_ARGS");
125
+ }
126
+ const body = {
127
+ video: { id: sourceId },
128
+ prompt,
129
+ seconds: String(req.seconds ?? defaultSeconds),
130
+ };
131
+ return postJson("videos/extensions", body, "extend");
132
+ }
133
+ // kind === generate (t2v / i2v)
134
+ const first = req.firstFrame;
135
+ const extras = req.referenceImages ?? [];
136
+ const stills = first ? [first, ...extras] : [...extras];
137
+ if (stills.length > 0 && caps.maxReferenceImages <= 0) {
138
+ throw new VideoGenError("OpenAI Provider configured without i2v capability", "VIDEO_GEN_BAD_ARGS");
139
+ }
140
+ if (stills.length > caps.maxReferenceImages) {
141
+ throw new VideoGenError(`at most ${caps.maxReferenceImages} reference image(s) for OpenAI i2v`, "VIDEO_GEN_BAD_ARGS");
142
+ }
72
143
  const form = new FormData();
73
144
  form.append("model", req.model ?? model);
74
145
  form.append("prompt", prompt);
75
146
  form.append("seconds", String(req.seconds ?? defaultSeconds));
76
147
  form.append("size", req.size ?? defaultSize);
148
+ if (stills[0]) {
149
+ const src = stills[0];
150
+ const blob = new Blob([src.bytes], { type: src.mimeType });
151
+ form.append("input_reference", blob, `first_frame.${extForMime(src.mimeType)}`);
152
+ }
77
153
  const res = await fetchImpl(joinUrl(baseUrl, "videos"), {
78
154
  method: "POST",
79
155
  headers: auth,
@@ -83,7 +159,10 @@ export function createOpenAiVideoGenProvider(options) {
83
159
  const body = await res.text().catch(() => "");
84
160
  throw new VideoGenError(`OpenAI videos HTTP ${res.status}: ${body.slice(0, 200)}`, "VIDEO_GEN_BACKEND");
85
161
  }
86
- return parseJob(await res.json());
162
+ return parseJob(await res.json(), {
163
+ kind: "generate",
164
+ modality: stills.length > 0 ? "image" : "text",
165
+ });
87
166
  },
88
167
  async get(jobId) {
89
168
  return getJob(requireId(jobId));
@@ -1 +1 @@
1
- {"version":3,"file":"openai-http.js","sourceRoot":"","sources":["../src/openai-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-http.js","sourceRoot":"","sources":["../src/openai-http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Resolve Hermes-style `image_url` / `first_frame` / `reference_image_urls` /
3
+ * attachment ids into decoded {@link VideoGenSourceImage} rows for i2v.
4
+ */
5
+ import type { AttachmentStore } from "@xrkseek/attachment";
6
+ import { type VideoGenSourceImage } from "./types.js";
7
+ export interface ResolveVideoGenReferencesOptions {
8
+ /** Hermes / OpenAI first-frame alias. */
9
+ readonly firstFrame?: string;
10
+ /** Hermes `image_url` (same schemes as first_frame). */
11
+ readonly imageUrl?: string;
12
+ readonly referenceImageUrls?: readonly string[];
13
+ readonly referenceAttachmentIds?: readonly string[];
14
+ readonly attachments?: AttachmentStore;
15
+ readonly maxReferenceImages: number;
16
+ readonly fetchImpl?: typeof fetch;
17
+ }
18
+ /**
19
+ * Collect `first_frame` / `image_url` + refs + attachment ids.
20
+ * First non-empty of first_frame / image_url is the primary still (OpenAI
21
+ * `input_reference`). Throws when i2v is requested but maxReferenceImages === 0.
22
+ */
23
+ export declare function resolveVideoGenReferenceImages(options: ResolveVideoGenReferencesOptions): Promise<readonly VideoGenSourceImage[]>;
24
+ //# sourceMappingURL=references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../src/references.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAoHrE,MAAM,WAAW,gCAAgC;IAC/C,yCAAyC;IACzC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,wDAAwD;IACxD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CACnC;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CA4EzC"}