@vibesdotdev/integrations-openai 0.0.0-stage → 1.0.0-rc.0

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 (295) hide show
  1. package/LICENSE +126 -0
  2. package/README.md +38 -2
  3. package/dist/ai/index.d.ts +4 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/index.js +4 -0
  6. package/dist/ai/index.js.map +1 -0
  7. package/dist/ai/metadata/assets/logos/providers/openai-dark.svg +12 -0
  8. package/dist/ai/metadata/assets/logos/providers/openai.svg +12 -0
  9. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-4-mini.json +41 -0
  10. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-4.json +41 -0
  11. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-5.json +41 -0
  12. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-luna.json +7 -0
  13. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-sol.json +7 -0
  14. package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-terra.json +7 -0
  15. package/dist/ai/metadata/provider-models/openai/openai-gpt-6-1-sol.json +41 -0
  16. package/dist/ai/metadata/provider-models/openai/openai-gpt-6-1-terra.json +40 -0
  17. package/dist/ai/metadata/provider-models/openai/openai-gpt-6-astra.json +41 -0
  18. package/dist/ai/metadata/provider-models/openai/openai-gpt-6-luna.json +41 -0
  19. package/dist/ai/metadata/provider-models/openai/openai-gpt-image-1.json +34 -0
  20. package/dist/ai/metadata/providers/openai.json +36 -0
  21. package/dist/ai/openai-api.d.ts +39 -0
  22. package/dist/ai/openai-api.d.ts.map +1 -0
  23. package/dist/ai/openai-api.js +94 -0
  24. package/dist/ai/openai-api.js.map +1 -0
  25. package/dist/ai/openai-client.d.ts +12 -0
  26. package/dist/ai/openai-client.d.ts.map +1 -0
  27. package/dist/ai/openai-client.js +37 -0
  28. package/dist/ai/openai-client.js.map +1 -0
  29. package/dist/ai/openai-router-codec.d.ts +32 -0
  30. package/dist/ai/openai-router-codec.d.ts.map +1 -0
  31. package/dist/ai/openai-router-codec.js +225 -0
  32. package/dist/ai/openai-router-codec.js.map +1 -0
  33. package/dist/ai/openai.api.plugin.d.ts +6 -0
  34. package/dist/ai/openai.api.plugin.d.ts.map +1 -0
  35. package/dist/ai/openai.api.plugin.js +147 -0
  36. package/dist/ai/openai.api.plugin.js.map +1 -0
  37. package/dist/ai/openai.consumer.plugin.d.ts +6 -0
  38. package/dist/ai/openai.consumer.plugin.d.ts.map +1 -0
  39. package/dist/ai/openai.consumer.plugin.js +28 -0
  40. package/dist/ai/openai.consumer.plugin.js.map +1 -0
  41. package/dist/ai/openai.plugin.d.ts +2 -0
  42. package/dist/ai/openai.plugin.d.ts.map +1 -0
  43. package/dist/ai/openai.plugin.js +2 -0
  44. package/dist/ai/openai.plugin.js.map +1 -0
  45. package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.d.ts +4194 -0
  46. package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.d.ts.map +1 -0
  47. package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.js +28 -0
  48. package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.js.map +1 -0
  49. package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.d.ts +26 -0
  50. package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.d.ts.map +1 -0
  51. package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.js +39 -0
  52. package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.js.map +1 -0
  53. package/dist/ai/providers/cloud/frontier/openai/index.d.ts +4 -0
  54. package/dist/ai/providers/cloud/frontier/openai/index.d.ts.map +1 -0
  55. package/dist/ai/providers/cloud/frontier/openai/index.js +4 -0
  56. package/dist/ai/providers/cloud/frontier/openai/index.js.map +1 -0
  57. package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.d.ts +183 -0
  58. package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.d.ts.map +1 -0
  59. package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.js +190 -0
  60. package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.js.map +1 -0
  61. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.d.ts +25 -0
  62. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.d.ts.map +1 -0
  63. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.js +20 -0
  64. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.js.map +1 -0
  65. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.d.ts +36 -0
  66. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.d.ts.map +1 -0
  67. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.js +228 -0
  68. package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.js.map +1 -0
  69. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.d.ts +13 -0
  70. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.d.ts.map +1 -0
  71. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.js +11 -0
  72. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.js.map +1 -0
  73. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.d.ts +47 -0
  74. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.d.ts.map +1 -0
  75. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.js +111 -0
  76. package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.js.map +1 -0
  77. package/dist/ai/providers/openai/codex-app-server/codex-failure.d.ts +166 -0
  78. package/dist/ai/providers/openai/codex-app-server/codex-failure.d.ts.map +1 -0
  79. package/dist/ai/providers/openai/codex-app-server/codex-failure.js +229 -0
  80. package/dist/ai/providers/openai/codex-app-server/codex-failure.js.map +1 -0
  81. package/dist/ai/providers/openai/codex-app-server/connection.d.ts +83 -0
  82. package/dist/ai/providers/openai/codex-app-server/connection.d.ts.map +1 -0
  83. package/dist/ai/providers/openai/codex-app-server/connection.js +222 -0
  84. package/dist/ai/providers/openai/codex-app-server/connection.js.map +1 -0
  85. package/dist/ai/providers/openai/codex-app-server/failure-chunk.d.ts +10 -0
  86. package/dist/ai/providers/openai/codex-app-server/failure-chunk.d.ts.map +1 -0
  87. package/dist/ai/providers/openai/codex-app-server/failure-chunk.js +33 -0
  88. package/dist/ai/providers/openai/codex-app-server/failure-chunk.js.map +1 -0
  89. package/dist/ai/providers/openai/codex-app-server/index.d.ts +10 -0
  90. package/dist/ai/providers/openai/codex-app-server/index.d.ts.map +1 -0
  91. package/dist/ai/providers/openai/codex-app-server/index.js +9 -0
  92. package/dist/ai/providers/openai/codex-app-server/index.js.map +1 -0
  93. package/dist/ai/providers/openai/codex-app-server/protocol.d.ts +162 -0
  94. package/dist/ai/providers/openai/codex-app-server/protocol.d.ts.map +1 -0
  95. package/dist/ai/providers/openai/codex-app-server/protocol.js +116 -0
  96. package/dist/ai/providers/openai/codex-app-server/protocol.js.map +1 -0
  97. package/dist/ai/providers/openai/codex-app-server/runtime-execution.d.ts +3 -0
  98. package/dist/ai/providers/openai/codex-app-server/runtime-execution.d.ts.map +1 -0
  99. package/dist/ai/providers/openai/codex-app-server/runtime-execution.js +3 -0
  100. package/dist/ai/providers/openai/codex-app-server/runtime-execution.js.map +1 -0
  101. package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.d.ts +5 -0
  102. package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.d.ts.map +1 -0
  103. package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.js +16 -0
  104. package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.js.map +1 -0
  105. package/dist/ai/providers/openai/codex-app-server/session.d.ts +24 -0
  106. package/dist/ai/providers/openai/codex-app-server/session.d.ts.map +1 -0
  107. package/dist/ai/providers/openai/codex-app-server/session.js +392 -0
  108. package/dist/ai/providers/openai/codex-app-server/session.js.map +1 -0
  109. package/dist/ai/providers/openai/codex-app-server/spawner.d.ts +9 -0
  110. package/dist/ai/providers/openai/codex-app-server/spawner.d.ts.map +1 -0
  111. package/dist/ai/providers/openai/codex-app-server/spawner.js +48 -0
  112. package/dist/ai/providers/openai/codex-app-server/spawner.js.map +1 -0
  113. package/dist/ai/providers/openai/codex-app-server/tool-name.d.ts +14 -0
  114. package/dist/ai/providers/openai/codex-app-server/tool-name.d.ts.map +1 -0
  115. package/dist/ai/providers/openai/codex-app-server/tool-name.js +45 -0
  116. package/dist/ai/providers/openai/codex-app-server/tool-name.js.map +1 -0
  117. package/dist/ai/providers/openai/codex-subscription.d.ts +48 -0
  118. package/dist/ai/providers/openai/codex-subscription.d.ts.map +1 -0
  119. package/dist/ai/providers/openai/codex-subscription.js +128 -0
  120. package/dist/ai/providers/openai/codex-subscription.js.map +1 -0
  121. package/dist/ai/providers/openai/detection/index.d.ts +2 -0
  122. package/dist/ai/providers/openai/detection/index.d.ts.map +1 -0
  123. package/dist/ai/providers/openai/detection/index.js +2 -0
  124. package/dist/ai/providers/openai/detection/index.js.map +1 -0
  125. package/dist/ai/providers/openai/detection/system.d.ts +5 -0
  126. package/dist/ai/providers/openai/detection/system.d.ts.map +1 -0
  127. package/dist/ai/providers/openai/detection/system.js +25 -0
  128. package/dist/ai/providers/openai/detection/system.js.map +1 -0
  129. package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.d.ts +4 -0
  130. package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.d.ts.map +1 -0
  131. package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.js +39 -0
  132. package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.js.map +1 -0
  133. package/dist/ai/providers/openai/index.d.ts +4 -0
  134. package/dist/ai/providers/openai/index.d.ts.map +1 -0
  135. package/dist/ai/providers/openai/index.js +4 -0
  136. package/dist/ai/providers/openai/index.js.map +1 -0
  137. package/dist/ai/providers/openai/openai.provider.impl.d.ts +50 -0
  138. package/dist/ai/providers/openai/openai.provider.impl.d.ts.map +1 -0
  139. package/dist/ai/providers/openai/openai.provider.impl.js +331 -0
  140. package/dist/ai/providers/openai/openai.provider.impl.js.map +1 -0
  141. package/dist/ai/providers/openai/recommendations.d.ts +25 -0
  142. package/dist/ai/providers/openai/recommendations.d.ts.map +1 -0
  143. package/dist/ai/providers/openai/recommendations.js +33 -0
  144. package/dist/ai/providers/openai/recommendations.js.map +1 -0
  145. package/dist/ai/transcription/index.d.ts +4 -0
  146. package/dist/ai/transcription/index.d.ts.map +1 -0
  147. package/dist/ai/transcription/index.js +4 -0
  148. package/dist/ai/transcription/index.js.map +1 -0
  149. package/dist/ai/transcription/metadata/assets/logos/providers/openai-dark.svg +12 -0
  150. package/dist/ai/transcription/metadata/assets/logos/providers/openai.svg +12 -0
  151. package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-mini-transcribe-2025-12-15.json +20 -0
  152. package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-mini-transcribe.json +17 -0
  153. package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-transcribe.json +17 -0
  154. package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-whisper-1.json +16 -0
  155. package/dist/ai/transcription/metadata/providers/openai-transcription.json +30 -0
  156. package/dist/ai/transcription/provider.plugin.d.ts +6 -0
  157. package/dist/ai/transcription/provider.plugin.d.ts.map +1 -0
  158. package/dist/ai/transcription/provider.plugin.js +120 -0
  159. package/dist/ai/transcription/provider.plugin.js.map +1 -0
  160. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.d.ts +4194 -0
  161. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.d.ts.map +1 -0
  162. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.js +53 -0
  163. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.js.map +1 -0
  164. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.d.ts +17 -0
  165. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.d.ts.map +1 -0
  166. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.js +10 -0
  167. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.js.map +1 -0
  168. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.d.ts +5 -0
  169. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.d.ts.map +1 -0
  170. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.js +4 -0
  171. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.js.map +1 -0
  172. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.d.ts +183 -0
  173. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.d.ts.map +1 -0
  174. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.js +49 -0
  175. package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.js.map +1 -0
  176. package/dist/ai/transcription/providers/openai-transcription/detection/index.d.ts +2 -0
  177. package/dist/ai/transcription/providers/openai-transcription/detection/index.d.ts.map +1 -0
  178. package/dist/ai/transcription/providers/openai-transcription/detection/index.js +2 -0
  179. package/dist/ai/transcription/providers/openai-transcription/detection/index.js.map +1 -0
  180. package/dist/ai/transcription/providers/openai-transcription/detection/system.d.ts +4 -0
  181. package/dist/ai/transcription/providers/openai-transcription/detection/system.d.ts.map +1 -0
  182. package/dist/ai/transcription/providers/openai-transcription/detection/system.js +21 -0
  183. package/dist/ai/transcription/providers/openai-transcription/detection/system.js.map +1 -0
  184. package/dist/ai/transcription/providers/openai-transcription/index.d.ts +4 -0
  185. package/dist/ai/transcription/providers/openai-transcription/index.d.ts.map +1 -0
  186. package/dist/ai/transcription/providers/openai-transcription/index.js +4 -0
  187. package/dist/ai/transcription/providers/openai-transcription/index.js.map +1 -0
  188. package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.d.ts +20 -0
  189. package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.d.ts.map +1 -0
  190. package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.js +102 -0
  191. package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.js.map +1 -0
  192. package/dist/ai/transcription/providers/openai-transcription/recommendations.d.ts +24 -0
  193. package/dist/ai/transcription/providers/openai-transcription/recommendations.d.ts.map +1 -0
  194. package/dist/ai/transcription/providers/openai-transcription/recommendations.js +74 -0
  195. package/dist/ai/transcription/providers/openai-transcription/recommendations.js.map +1 -0
  196. package/dist/ai/tts/index.d.ts +4 -0
  197. package/dist/ai/tts/index.d.ts.map +1 -0
  198. package/dist/ai/tts/index.js +4 -0
  199. package/dist/ai/tts/index.js.map +1 -0
  200. package/dist/ai/tts/metadata/assets/logos/providers/openai-dark.svg +12 -0
  201. package/dist/ai/tts/metadata/assets/logos/providers/openai.svg +12 -0
  202. package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-gpt-4o-mini-tts-2025-12-15.json +17 -0
  203. package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-gpt-4o-mini-tts.json +17 -0
  204. package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-tts-1-hd.json +17 -0
  205. package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-tts-1.json +17 -0
  206. package/dist/ai/tts/metadata/providers/openai-tts.json +32 -0
  207. package/dist/ai/tts/provider.plugin.d.ts +6 -0
  208. package/dist/ai/tts/provider.plugin.d.ts.map +1 -0
  209. package/dist/ai/tts/provider.plugin.js +120 -0
  210. package/dist/ai/tts/provider.plugin.js.map +1 -0
  211. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.d.ts +4194 -0
  212. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.d.ts.map +1 -0
  213. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.js +53 -0
  214. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.js.map +1 -0
  215. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.d.ts +17 -0
  216. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.d.ts.map +1 -0
  217. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.js +10 -0
  218. package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.js.map +1 -0
  219. package/dist/ai/tts/providers/cloud/speech/openai-tts/index.d.ts +5 -0
  220. package/dist/ai/tts/providers/cloud/speech/openai-tts/index.d.ts.map +1 -0
  221. package/dist/ai/tts/providers/cloud/speech/openai-tts/index.js +4 -0
  222. package/dist/ai/tts/providers/cloud/speech/openai-tts/index.js.map +1 -0
  223. package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.d.ts +183 -0
  224. package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.d.ts.map +1 -0
  225. package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.js +49 -0
  226. package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.js.map +1 -0
  227. package/dist/ai/tts/providers/openai-tts/detection/index.d.ts +2 -0
  228. package/dist/ai/tts/providers/openai-tts/detection/index.d.ts.map +1 -0
  229. package/dist/ai/tts/providers/openai-tts/detection/index.js +2 -0
  230. package/dist/ai/tts/providers/openai-tts/detection/index.js.map +1 -0
  231. package/dist/ai/tts/providers/openai-tts/detection/system.d.ts +4 -0
  232. package/dist/ai/tts/providers/openai-tts/detection/system.d.ts.map +1 -0
  233. package/dist/ai/tts/providers/openai-tts/detection/system.js +21 -0
  234. package/dist/ai/tts/providers/openai-tts/detection/system.js.map +1 -0
  235. package/dist/ai/tts/providers/openai-tts/index.d.ts +4 -0
  236. package/dist/ai/tts/providers/openai-tts/index.d.ts.map +1 -0
  237. package/dist/ai/tts/providers/openai-tts/index.js +4 -0
  238. package/dist/ai/tts/providers/openai-tts/index.js.map +1 -0
  239. package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.d.ts +24 -0
  240. package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.d.ts.map +1 -0
  241. package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.js +120 -0
  242. package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.js.map +1 -0
  243. package/dist/ai/tts/providers/openai-tts/recommendations.d.ts +24 -0
  244. package/dist/ai/tts/providers/openai-tts/recommendations.d.ts.map +1 -0
  245. package/dist/ai/tts/providers/openai-tts/recommendations.js +74 -0
  246. package/dist/ai/tts/providers/openai-tts/recommendations.js.map +1 -0
  247. package/dist/external/codex/index.d.ts +162 -0
  248. package/dist/external/codex/index.d.ts.map +1 -0
  249. package/dist/external/codex/index.js +5 -0
  250. package/dist/external/codex/index.js.map +1 -0
  251. package/dist/external/codex/manifest.d.ts +9 -0
  252. package/dist/external/codex/manifest.d.ts.map +1 -0
  253. package/dist/external/codex/manifest.js +201 -0
  254. package/dist/external/codex/manifest.js.map +1 -0
  255. package/dist/external/codex-hooks.d.ts +39 -0
  256. package/dist/external/codex-hooks.d.ts.map +1 -0
  257. package/dist/external/codex-hooks.js +204 -0
  258. package/dist/external/codex-hooks.js.map +1 -0
  259. package/dist/external/codex-presets.d.ts +2033 -0
  260. package/dist/external/codex-presets.d.ts.map +1 -0
  261. package/dist/external/codex-presets.js +312 -0
  262. package/dist/external/codex-presets.js.map +1 -0
  263. package/dist/external/codex-subscription.operation.descriptors.d.ts +57 -0
  264. package/dist/external/codex-subscription.operation.descriptors.d.ts.map +1 -0
  265. package/dist/external/codex-subscription.operation.descriptors.js +22 -0
  266. package/dist/external/codex-subscription.operation.descriptors.js.map +1 -0
  267. package/dist/external/codex-subscription.operations.d.ts +4 -0
  268. package/dist/external/codex-subscription.operations.d.ts.map +1 -0
  269. package/dist/external/codex-subscription.operations.js +42 -0
  270. package/dist/external/codex-subscription.operations.js.map +1 -0
  271. package/dist/external/external.plugin.d.ts +3 -0
  272. package/dist/external/external.plugin.d.ts.map +1 -0
  273. package/dist/external/external.plugin.js +30 -0
  274. package/dist/external/external.plugin.js.map +1 -0
  275. package/dist/external/index.d.ts +4 -0
  276. package/dist/external/index.d.ts.map +1 -0
  277. package/dist/external/index.js +4 -0
  278. package/dist/external/index.js.map +1 -0
  279. package/dist/failure-outcome.d.ts +21 -0
  280. package/dist/failure-outcome.d.ts.map +1 -0
  281. package/dist/failure-outcome.js +22 -0
  282. package/dist/failure-outcome.js.map +1 -0
  283. package/dist/index.d.ts +3 -0
  284. package/dist/index.d.ts.map +1 -0
  285. package/dist/index.js +3 -0
  286. package/dist/index.js.map +1 -0
  287. package/dist/schemas/codex-models.d.ts +23 -0
  288. package/dist/schemas/codex-models.d.ts.map +1 -0
  289. package/dist/schemas/codex-models.js +15 -0
  290. package/dist/schemas/codex-models.js.map +1 -0
  291. package/dist/schemas/codex-wire.d.ts +108 -0
  292. package/dist/schemas/codex-wire.d.ts.map +1 -0
  293. package/dist/schemas/codex-wire.js +25 -0
  294. package/dist/schemas/codex-wire.js.map +1 -0
  295. package/package.json +142 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendations.d.ts","sourceRoot":"","sources":["../../../../../src/ai/tts/providers/openai-tts/recommendations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACjG,OAAO,KAAK,EACX,mBAAmB,EACnB,qBAAqB,EACrB,WAAW,EACX,SAAS,EACT,OAAO,EACP,MAAM,yCAAyC,CAAC;AAEjD,qBAAa,uBAAwB,SAAQ,sBAAsB;IAClE,QAAQ,CAAC,YAAY,gBAAgB;IACrC,QAAQ,CAAC,WAAW,gBAAgB;IACpC,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAKzC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,MAAM;IAG5D,+BAA+B,IAAI,MAAM,EAAE;IAG3C,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAKnC,YAAY,IAAI,MAAM,EAAE;IAGxB,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,EAAE;IAGvD,wBAAwB,IAAI,WAAW,EAAE;IAGnC,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAiBxD,eAAe,CACpB,QAAQ,EAAE,YAAY,GAAG,IAAI,EAC7B,OAAO,EAAE,qBAAqB,GAC5B,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAejC,mBAAmB;;;;IAGnB,aAAa,IAAI,OAAO;IAGxB,aAAa,IAAI,OAAO;IAGxB,WAAW,IAAI,OAAO;CAGtB;AACD,eAAO,MAAM,uBAAuB,yBAAgC,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { ProviderRecommendation } from '@vibesdotdev/ai/recommendations/base';
2
+ export class OpenAITTSRecommendation extends ProviderRecommendation {
3
+ providerType = 'openai-tts';
4
+ displayName = 'OpenAI TTS';
5
+ getUseCaseScore(useCase) {
6
+ return { chat: 0, development: 14, research: 18, images: 0, video: 0, audio: 44, organization: 6 }[useCase];
7
+ }
8
+ getStageScore(stage) {
9
+ return stage === 'production' ? 14 : 0;
10
+ }
11
+ getRequiredEnvironmentVariables() {
12
+ return ['OPENAI_API_KEY'];
13
+ }
14
+ getReason(useCase) {
15
+ return useCase === 'audio'
16
+ ? 'Natural OpenAI speech synthesis with a shared credential reference'
17
+ : 'Cloud TTS when spoken output is part of the workflow';
18
+ }
19
+ getStrengths() {
20
+ return ['Built-in voice catalog', 'HD and low-latency models', 'Shared OpenAI credential reference'];
21
+ }
22
+ getWeaknesses(context) {
23
+ return context.requiresLocal ? ['No local inference deployment'] : [];
24
+ }
25
+ getSupportedSetupMethods() {
26
+ return ['api_key', 'env_var'];
27
+ }
28
+ async getSetupSteps(method) {
29
+ if (method === 'api_key') {
30
+ return [
31
+ {
32
+ step: 'Store OpenAI API key',
33
+ description: 'Bind the shared OPENAI_API_KEY through the Vibes credential boundary.',
34
+ action: 'https://platform.openai.com/api-keys'
35
+ }
36
+ ];
37
+ }
38
+ return [
39
+ {
40
+ step: 'Bind environment credential',
41
+ description: 'Bind OPENAI_API_KEY through the runtime environment.'
42
+ }
43
+ ];
44
+ }
45
+ async recommendModels(_adapter, context) {
46
+ return [
47
+ {
48
+ modelId: 'tts-1-hd',
49
+ modelName: 'TTS 1 HD',
50
+ score: context.useCase === 'audio' ? 95 : 88,
51
+ reason: 'High-definition OpenAI text-to-speech',
52
+ contextWindow: 0,
53
+ capabilities: ['tts'],
54
+ isAvailable: true,
55
+ requiresUpgrade: false,
56
+ useCaseFit: context.useCase === 'audio' ? 95 : 88
57
+ }
58
+ ];
59
+ }
60
+ getExecutionContext() {
61
+ return { recommendModels: 'server', getSetupSteps: 'both' };
62
+ }
63
+ supportsOAuth() {
64
+ return false;
65
+ }
66
+ supportsLocal() {
67
+ return false;
68
+ }
69
+ requiresGPU() {
70
+ return false;
71
+ }
72
+ }
73
+ export const openaiTtsRecommendation = new OpenAITTSRecommendation();
74
+ //# sourceMappingURL=recommendations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendations.js","sourceRoot":"","sources":["../../../../../src/ai/tts/providers/openai-tts/recommendations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAqB,MAAM,sCAAsC,CAAC;AASjG,MAAM,OAAO,uBAAwB,SAAQ,sBAAsB;IACzD,YAAY,GAAG,YAAY,CAAC;IAC5B,WAAW,GAAG,YAAY,CAAC;IACpC,eAAe,CAAC,OAAgB;QAC/B,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,CACjG,OAAO,CACP,CAAC;IACH,CAAC;IACD,aAAa,CAAC,KAAqC;QAClD,OAAO,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,+BAA+B;QAC9B,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC3B,CAAC;IACD,SAAS,CAAC,OAAgB;QACzB,OAAO,OAAO,KAAK,OAAO;YACzB,CAAC,CAAC,oEAAoE;YACtE,CAAC,CAAC,sDAAsD,CAAC;IAC3D,CAAC;IACD,YAAY;QACX,OAAO,CAAC,wBAAwB,EAAE,2BAA2B,EAAE,oCAAoC,CAAC,CAAC;IACtG,CAAC;IACD,aAAa,CAAC,OAA8B;QAC3C,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IACD,wBAAwB;QACvB,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC/B,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,MAAmB;QACtC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO;gBACN;oBACC,IAAI,EAAE,sBAAsB;oBAC5B,WAAW,EAAE,uEAAuE;oBACpF,MAAM,EAAE,sCAAsC;iBAC9C;aACD,CAAC;QACH,CAAC;QACD,OAAO;YACN;gBACC,IAAI,EAAE,6BAA6B;gBACnC,WAAW,EAAE,sDAAsD;aACnE;SACD,CAAC;IACH,CAAC;IACD,KAAK,CAAC,eAAe,CACpB,QAA6B,EAC7B,OAA8B;QAE9B,OAAO;YACN;gBACC,OAAO,EAAE,UAAU;gBACnB,SAAS,EAAE,UAAU;gBACrB,KAAK,EAAE,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;gBAC5C,MAAM,EAAE,uCAAuC;gBAC/C,aAAa,EAAE,CAAC;gBAChB,YAAY,EAAE,CAAC,KAAK,CAAC;gBACrB,WAAW,EAAE,IAAI;gBACjB,eAAe,EAAE,KAAK;gBACtB,UAAU,EAAE,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;aACjD;SACD,CAAC;IACH,CAAC;IACD,mBAAmB;QAClB,OAAO,EAAE,eAAe,EAAE,QAAiB,EAAE,aAAa,EAAE,MAAe,EAAE,CAAC;IAC/E,CAAC;IACD,aAAa;QACZ,OAAO,KAAK,CAAC;IACd,CAAC;IACD,aAAa;QACZ,OAAO,KAAK,CAAC;IACd,CAAC;IACD,WAAW;QACV,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AACD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,162 @@
1
+ import { codexManifest } from './manifest.ts';
2
+ export { codexManifest };
3
+ declare const _default: {
4
+ id: string;
5
+ kind: "external/host";
6
+ manifest: {
7
+ schemaVersion: "1.0";
8
+ id: string;
9
+ name: string;
10
+ description: string;
11
+ category: "cli" | "ide-extension" | "ide-native";
12
+ website: string;
13
+ platforms: ("win32" | "darwin" | "linux" | "all")[];
14
+ configs: {
15
+ path: string;
16
+ format: "json" | "yaml" | "toml" | "jsonc";
17
+ scope: "global" | "project";
18
+ platform?: "win32" | "darwin" | "linux" | "all" | undefined;
19
+ mcpPath?: string | undefined;
20
+ }[];
21
+ mcp: {
22
+ supported: boolean;
23
+ transports: ("sse" | "http" | "stdio")[];
24
+ defaultServerName: string;
25
+ projectConfig: boolean;
26
+ envVarsInConfig: boolean;
27
+ options?: {
28
+ startupTimeout?: number | undefined;
29
+ toolTimeout?: number | undefined;
30
+ autoRestart?: boolean | undefined;
31
+ } | undefined;
32
+ };
33
+ hooks: {
34
+ supported: boolean;
35
+ events: ("session.start" | "session.end" | "prompt.submit" | "tool.before" | "tool.after" | "context.beforeCompact" | "context.afterCompact" | "permission.request" | "agent.stop" | "subagent.stop" | "notification")[];
36
+ nativeEventMap: Record<string, "session.start" | "session.end" | "prompt.submit" | "tool.before" | "tool.after" | "context.beforeCompact" | "context.afterCompact" | "permission.request" | "agent.stop" | "subagent.stop" | "notification">;
37
+ structuredInput: boolean;
38
+ canModify: boolean;
39
+ format?: "json" | "typescript" | "shell" | "python" | undefined;
40
+ trust?: {
41
+ step: string;
42
+ } | undefined;
43
+ };
44
+ plugins: {
45
+ supported: boolean;
46
+ format?: "typescript" | "python" | "javascript" | "lua" | undefined;
47
+ entryPoint?: string | undefined;
48
+ manifestFile?: string | undefined;
49
+ };
50
+ skills: {
51
+ supported: boolean;
52
+ format: "agents-md";
53
+ projectScoped: boolean;
54
+ globalPath?: string | undefined;
55
+ projectPath?: string | undefined;
56
+ };
57
+ detection: {
58
+ command?: string | undefined;
59
+ altCommands?: string[] | undefined;
60
+ configDir?: string | undefined;
61
+ binaryPath?: string | undefined;
62
+ versionArgs?: string[] | undefined;
63
+ versionRegex?: string | undefined;
64
+ platformPaths?: {
65
+ darwin?: {
66
+ binaryPath?: string | undefined;
67
+ configDir?: string | undefined;
68
+ } | undefined;
69
+ linux?: {
70
+ binaryPath?: string | undefined;
71
+ configDir?: string | undefined;
72
+ } | undefined;
73
+ win32?: {
74
+ binaryPath?: string | undefined;
75
+ configDir?: string | undefined;
76
+ } | undefined;
77
+ } | undefined;
78
+ extensionMatch?: {
79
+ dir: string;
80
+ prefixes: string[];
81
+ } | undefined;
82
+ };
83
+ integration: {
84
+ mcp?: {
85
+ installer?: string | undefined;
86
+ configTemplate?: Record<string, import("@vibesdotdev/kernel/bootstrap").JsonValue> | undefined;
87
+ } | undefined;
88
+ hooks?: {
89
+ defaultPromptPolicy: "default" | "none" | "custom-only";
90
+ installer?: string | undefined;
91
+ templates?: Partial<Record<"session.start" | "session.end" | "prompt.submit" | "tool.before" | "tool.after" | "context.beforeCompact" | "context.afterCompact" | "permission.request" | "agent.stop" | "subagent.stop" | "notification", string>> | undefined;
92
+ handlerOptions?: Partial<Record<"session.start" | "session.end" | "prompt.submit" | "tool.before" | "tool.after" | "context.beforeCompact" | "context.afterCompact" | "permission.request" | "agent.stop" | "subagent.stop" | "notification", Record<string, import("@vibesdotdev/kernel/bootstrap").JsonValue>>> | undefined;
93
+ hookAdapterId?: string | undefined;
94
+ workspaceRootEnv?: string | undefined;
95
+ } | undefined;
96
+ plugins?: {
97
+ installer?: string | undefined;
98
+ template?: string | undefined;
99
+ } | undefined;
100
+ presets?: {
101
+ available: string[];
102
+ default?: string | undefined;
103
+ } | undefined;
104
+ };
105
+ version: string;
106
+ hostAliases?: string[] | undefined;
107
+ shortName?: string | undefined;
108
+ assets?: {
109
+ hooks?: string | undefined;
110
+ plugins?: string | undefined;
111
+ commands?: string | undefined;
112
+ agents?: string | undefined;
113
+ templates?: string | undefined;
114
+ skills?: string | undefined;
115
+ settings?: string | undefined;
116
+ globalSettings?: string | undefined;
117
+ } | undefined;
118
+ launch?: {
119
+ defaultMode: string;
120
+ modes: Record<string, string[] | {
121
+ argv: (string | {
122
+ when: string;
123
+ args: string[];
124
+ })[];
125
+ stdin: "null" | "inherit";
126
+ command?: string | undefined;
127
+ structuredOutput?: {
128
+ field: string;
129
+ schemaTarget?: "draft-2020-12" | "draft-7" | undefined;
130
+ wrap?: string | undefined;
131
+ } | undefined;
132
+ }>;
133
+ } | undefined;
134
+ metadata?: Record<string, unknown> | undefined;
135
+ };
136
+ adapters: {
137
+ adapter: string;
138
+ supported: boolean;
139
+ config: Record<string, unknown>;
140
+ }[];
141
+ name?: string | undefined;
142
+ description?: string | undefined;
143
+ tags?: string[] | undefined;
144
+ hardware?: string[] | undefined;
145
+ enabled?: boolean | undefined;
146
+ priority?: number | undefined;
147
+ capabilityId?: string | undefined;
148
+ requiredContext?: string[] | undefined;
149
+ optionalContext?: string[] | undefined;
150
+ config?: unknown;
151
+ retention?: string | {
152
+ reason: string;
153
+ maxAgeDays?: number | undefined;
154
+ maxEntries?: number | undefined;
155
+ maxBytes?: number | undefined;
156
+ cascadeFrom?: string | undefined;
157
+ ageField?: string | undefined;
158
+ enforcedBy?: string | undefined;
159
+ } | undefined;
160
+ };
161
+ export default _default;
162
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/external/codex/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACzB,wBAAiE"}
@@ -0,0 +1,5 @@
1
+ import { externalHostDescriptorFromManifest } from '@vibesdotdev/external';
2
+ import { codexManifest } from "./manifest.js";
3
+ export { codexManifest };
4
+ export default externalHostDescriptorFromManifest(codexManifest);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/external/codex/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,CAAC;AACzB,eAAe,kCAAkC,CAAC,aAAa,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Codex CLI Manifest
3
+ *
4
+ * OpenAI's Codex command-line interface with TOML configuration.
5
+ */
6
+ import { type ExternalHostManifest } from '@vibesdotdev/external';
7
+ export declare const codexManifest: ExternalHostManifest;
8
+ export default codexManifest;
9
+ //# sourceMappingURL=manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/external/codex/manifest.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AA+ClF,eAAO,MAAM,aAAa,EAAE,oBAgK1B,CAAC;AAEH,eAAe,aAAa,CAAC"}
@@ -0,0 +1,201 @@
1
+ /**
2
+ * Codex CLI Manifest
3
+ *
4
+ * OpenAI's Codex command-line interface with TOML configuration.
5
+ */
6
+ import { createManifest } from '@vibesdotdev/external';
7
+ // The installer bakes the shared dispatcher's absolute path (under the
8
+ // runtime's vibes home) into `{{dispatchPath}}`; a fired hook re-derives no home.
9
+ const DISPATCH = '{{dispatchPath}}';
10
+ const codexHookTemplate = `#!/bin/bash
11
+ # Codex {{event}} Hook - Vibes Delegator
12
+ export VIBES_AGENT_ID="\${VIBES_AGENT_ID:-codex}"
13
+ exec ${DISPATCH} {{event}} {{target}} --output native
14
+ `;
15
+ // Codex caps SessionEnd hooks at three seconds while the full Vibes CLI takes
16
+ // roughly two seconds just to compose. Detach the advisory close operation with
17
+ // its stdin captured in a private temp file so Codex can exit promptly and the
18
+ // local-only metabolize pass can still finish honestly.
19
+ const codexSessionEndHookTemplate = `#!/bin/bash
20
+ # Codex SessionEnd Hook - detached Vibes continuity close
21
+ export VIBES_AGENT_ID="\${VIBES_AGENT_ID:-codex}"
22
+ umask 077
23
+ payload_path="$(mktemp "\${TMPDIR:-/tmp}/vibes-codex-session-end.XXXXXX")" || { echo "Vibes Codex SessionEnd hook: could not create a private payload file" >&2; exit 1; }
24
+ cat > "$payload_path"
25
+ (
26
+ ${DISPATCH} {{event}} {{target}} --output native < "$payload_path"
27
+ hook_status=$?
28
+ rm -f -- "$payload_path"
29
+ exit "$hook_status"
30
+ ) >/dev/null 2>&1 &
31
+ exit 0
32
+ `;
33
+ /**
34
+ * Codex's MCP policy. It names no `command`: the MCP installer resolves the
35
+ * local CLI at install time through the External installer, and
36
+ * a pack supplies its resolved executable. Nothing here reads the environment
37
+ * at import.
38
+ */
39
+ const codexMcpConfigTemplate = {
40
+ args: ['dev', 'mcp', 'serve', '--preset', 'full', '--harness', 'codex', '--agent', 'codex'],
41
+ // OpenAI recommends 20s startup timeout per docs/config.md
42
+ startup_timeout_sec: 20,
43
+ // Generous tool timeout for long-running operations (Atlas indexing, etc.)
44
+ tool_timeout_sec: 120,
45
+ // A continuity-class MCP body is an availability requirement, not an extra.
46
+ required: true
47
+ };
48
+ export const codexManifest = createManifest({
49
+ id: 'codex',
50
+ name: 'Codex CLI',
51
+ shortName: 'codex',
52
+ description: "OpenAI's Codex command-line interface for AI-assisted coding",
53
+ category: 'cli',
54
+ website: 'https://github.com/openai/codex',
55
+ platforms: ['darwin', 'linux', 'win32'],
56
+ configs: [
57
+ {
58
+ path: '${HOME}/.codex/config.toml',
59
+ format: 'toml',
60
+ scope: 'global',
61
+ mcpPath: 'mcp_servers'
62
+ },
63
+ {
64
+ path: 'codex.toml',
65
+ format: 'toml',
66
+ scope: 'project',
67
+ mcpPath: 'mcp_servers'
68
+ }
69
+ ],
70
+ assets: {
71
+ hooks: '${HOME}/.codex/hooks',
72
+ skills: '${HOME}/.agents/skills',
73
+ settings: '${HOME}/.codex/hooks.json'
74
+ },
75
+ mcp: {
76
+ supported: true,
77
+ transports: ['stdio'],
78
+ defaultServerName: 'vibes',
79
+ projectConfig: true,
80
+ envVarsInConfig: true,
81
+ options: {
82
+ startupTimeout: 20,
83
+ toolTimeout: 120
84
+ }
85
+ },
86
+ hooks: {
87
+ supported: true,
88
+ events: ['session.start', 'context.beforeCompact', 'session.end', 'tool.before', 'tool.after', 'prompt.submit', 'agent.stop'],
89
+ nativeEventMap: {
90
+ SessionStart: 'session.start',
91
+ PreCompact: 'context.beforeCompact',
92
+ SessionEnd: 'session.end',
93
+ PreToolUse: 'tool.before',
94
+ PostToolUse: 'tool.after',
95
+ UserPromptSubmit: 'prompt.submit',
96
+ Stop: 'agent.stop'
97
+ },
98
+ format: 'shell',
99
+ structuredInput: true,
100
+ canModify: false,
101
+ // https://learn.chatgpt.com/docs/hooks: Codex runs a user or project hook only after its current
102
+ // definition is trusted in /hooks. Managed hooks (requirements.toml) are trusted by policy but are an
103
+ // admin channel, and the only non-interactive bypass (--dangerously-bypass-hook-trust) is per invocation.
104
+ trust: {
105
+ step: 'start Codex, run /hooks, review the Vibes hooks and trust them (a changed hook must be trusted again)'
106
+ }
107
+ },
108
+ plugins: {
109
+ supported: false
110
+ },
111
+ skills: {
112
+ supported: true,
113
+ format: 'agents-md',
114
+ projectScoped: true,
115
+ globalPath: '${HOME}/.agents/skills',
116
+ projectPath: '.agents/skills'
117
+ },
118
+ detection: {
119
+ command: 'codex',
120
+ versionArgs: ['--version'],
121
+ versionRegex: 'codex[- ]cli[/ ]([\\d.]+)',
122
+ configDir: '${HOME}/.codex'
123
+ },
124
+ integration: {
125
+ mcp: {
126
+ configTemplate: codexMcpConfigTemplate
127
+ },
128
+ hooks: {
129
+ templates: {
130
+ 'session.start': codexHookTemplate,
131
+ 'context.beforeCompact': codexHookTemplate,
132
+ 'session.end': codexSessionEndHookTemplate,
133
+ 'tool.before': codexHookTemplate,
134
+ 'tool.after': codexHookTemplate,
135
+ 'prompt.submit': codexHookTemplate,
136
+ 'agent.stop': codexHookTemplate
137
+ },
138
+ handlerOptions: {
139
+ 'session.start': {
140
+ timeout: 15,
141
+ statusMessage: 'Waking Vibes continuity',
142
+ additionalContextLimit: 600
143
+ },
144
+ 'context.beforeCompact': {
145
+ timeout: 15,
146
+ statusMessage: 'Metabolizing Vibes continuity'
147
+ },
148
+ 'session.end': {
149
+ timeout: 3,
150
+ statusMessage: 'Closing Vibes continuity'
151
+ },
152
+ 'tool.before': { timeout: 15, statusMessage: 'Checking Vibes locks' },
153
+ 'tool.after': { timeout: 15, statusMessage: 'Reading Vibes messages' },
154
+ 'prompt.submit': { timeout: 15, statusMessage: 'Reading Vibes messages' },
155
+ 'agent.stop': { timeout: 15, statusMessage: 'Checking Vibes review' }
156
+ },
157
+ hookAdapterId: 'openai/codex-hooks',
158
+ defaultPromptPolicy: 'custom-only'
159
+ },
160
+ presets: {
161
+ available: [
162
+ 'codex-vibes-deferred',
163
+ 'codex-vibes-mcp',
164
+ 'codex-full-auto',
165
+ 'codex-oss-model',
166
+ 'codex-vibes-only'
167
+ ],
168
+ default: 'codex-vibes-deferred'
169
+ }
170
+ },
171
+ version: '1.0.0',
172
+ launch: {
173
+ defaultMode: 'headless',
174
+ modes: {
175
+ headless: {
176
+ command: 'codex',
177
+ stdin: 'null',
178
+ argv: [
179
+ 'exec',
180
+ '--ignore-user-config',
181
+ { when: 'model', args: ['-m', '${model}'] },
182
+ // codex 0.162.1: `codex exec -c model_reasoning_effort=<level>`.
183
+ // The installed binary names none, minimal, low, medium, high, xhigh, and max.
184
+ { when: 'effort', args: ['-c', 'model_reasoning_effort=${effort}'] },
185
+ // Writes are opt-in, as for claude-code: only a declared sandboxed or restricted
186
+ // execution policy lets Codex edit, and only inside its workspace sandbox.
187
+ { when: 'executionPolicy', args: ['-s', 'workspace-write'] },
188
+ '${prompt}'
189
+ ]
190
+ }
191
+ }
192
+ },
193
+ metadata: {
194
+ vendor: 'OpenAI',
195
+ modelFamily: 'GPT',
196
+ configFormat: 'toml',
197
+ requiresAuth: true
198
+ }
199
+ });
200
+ export default codexManifest;
201
+ //# sourceMappingURL=manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/external/codex/manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Codex-native lifecycle-hook edge adapter.
3
+ *
4
+ * Codex sends one structured JSON object on stdin and expects event-specific
5
+ * JSON on stdout. The unified hook handler stays host-neutral; this module is
6
+ * the thin dialect boundary that parses Codex input and renders Codex output.
7
+ */
8
+ import type { HookEvent } from '@vibesdotdev/external';
9
+ import { type ExternalHookAdapterModule, type ExternalHookEnvelope } from '@vibesdotdev/external/hooks';
10
+ /**
11
+ * Parse and normalize the payload Codex writes to hook stdin.
12
+ *
13
+ * stdin is untrusted: a refusal never echoes any of it. Its messages are fixed,
14
+ * and the issues it reports are the schema's paths and codes, not the values.
15
+ * The transcript path is parsed only as part of validating the native envelope,
16
+ * then discarded. Codex documents that transcript format as unstable, and
17
+ * ambient continuity must not retain a pointer to conversation content it has
18
+ * no business reading.
19
+ */
20
+ export declare function parseCodexHookPayload(event: HookEvent, raw: string): ExternalHookEnvelope;
21
+ interface NeutralHookOutput {
22
+ success: boolean;
23
+ event: HookEvent;
24
+ context?: string;
25
+ error?: string;
26
+ data?: {
27
+ blocked?: string;
28
+ };
29
+ }
30
+ /**
31
+ * Return a Codex hook stdout payload, or undefined for successful events that
32
+ * should stay silent. Silence is intentional for PreCompact/SessionEnd: their
33
+ * value is the local side effect, not another prompt competing with Responses
34
+ * compaction.
35
+ */
36
+ export declare function renderCodexHookOutput(result: NeutralHookOutput): string | undefined;
37
+ export declare const codexHookAdapterModule: ExternalHookAdapterModule;
38
+ export {};
39
+ //# sourceMappingURL=codex-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-hooks.d.ts","sourceRoot":"","sources":["../../src/external/codex-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAGN,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,MAAM,6BAA6B,CAAC;AAgErC;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAmEzF;AAED,UAAU,iBAAiB;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAkDnF;AAED,eAAO,MAAM,sBAAsB,EAAE,yBAWpC,CAAC"}