@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.
- package/LICENSE +126 -0
- package/README.md +38 -2
- package/dist/ai/index.d.ts +4 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +4 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/ai/metadata/assets/logos/providers/openai-dark.svg +12 -0
- package/dist/ai/metadata/assets/logos/providers/openai.svg +12 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-4-mini.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-4.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-5.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-luna.json +7 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-sol.json +7 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-5-6-terra.json +7 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-6-1-sol.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-6-1-terra.json +40 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-6-astra.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-6-luna.json +41 -0
- package/dist/ai/metadata/provider-models/openai/openai-gpt-image-1.json +34 -0
- package/dist/ai/metadata/providers/openai.json +36 -0
- package/dist/ai/openai-api.d.ts +39 -0
- package/dist/ai/openai-api.d.ts.map +1 -0
- package/dist/ai/openai-api.js +94 -0
- package/dist/ai/openai-api.js.map +1 -0
- package/dist/ai/openai-client.d.ts +12 -0
- package/dist/ai/openai-client.d.ts.map +1 -0
- package/dist/ai/openai-client.js +37 -0
- package/dist/ai/openai-client.js.map +1 -0
- package/dist/ai/openai-router-codec.d.ts +32 -0
- package/dist/ai/openai-router-codec.d.ts.map +1 -0
- package/dist/ai/openai-router-codec.js +225 -0
- package/dist/ai/openai-router-codec.js.map +1 -0
- package/dist/ai/openai.api.plugin.d.ts +6 -0
- package/dist/ai/openai.api.plugin.d.ts.map +1 -0
- package/dist/ai/openai.api.plugin.js +147 -0
- package/dist/ai/openai.api.plugin.js.map +1 -0
- package/dist/ai/openai.consumer.plugin.d.ts +6 -0
- package/dist/ai/openai.consumer.plugin.d.ts.map +1 -0
- package/dist/ai/openai.consumer.plugin.js +28 -0
- package/dist/ai/openai.consumer.plugin.js.map +1 -0
- package/dist/ai/openai.plugin.d.ts +2 -0
- package/dist/ai/openai.plugin.d.ts.map +1 -0
- package/dist/ai/openai.plugin.js +2 -0
- package/dist/ai/openai.plugin.js.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.d.ts +4194 -0
- package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.d.ts.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.js +28 -0
- package/dist/ai/providers/cloud/frontier/openai/config/config.openai.descriptor.js.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.d.ts +26 -0
- package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.d.ts.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.js +39 -0
- package/dist/ai/providers/cloud/frontier/openai/config/schemas/index.js.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/index.d.ts +4 -0
- package/dist/ai/providers/cloud/frontier/openai/index.d.ts.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/index.js +4 -0
- package/dist/ai/providers/cloud/frontier/openai/index.js.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.d.ts +183 -0
- package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.d.ts.map +1 -0
- package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.js +190 -0
- package/dist/ai/providers/cloud/frontier/openai/provider.openai.descriptor.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.d.ts +25 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.js +20 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.descriptor.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.d.ts +36 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.js +228 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.spec.impl.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.d.ts +13 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.js +11 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.descriptor.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.d.ts +47 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.js +111 -0
- package/dist/ai/providers/openai/codex-app-server/codex-app-server.transport.impl.consumer.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-failure.d.ts +166 -0
- package/dist/ai/providers/openai/codex-app-server/codex-failure.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/codex-failure.js +229 -0
- package/dist/ai/providers/openai/codex-app-server/codex-failure.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/connection.d.ts +83 -0
- package/dist/ai/providers/openai/codex-app-server/connection.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/connection.js +222 -0
- package/dist/ai/providers/openai/codex-app-server/connection.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/failure-chunk.d.ts +10 -0
- package/dist/ai/providers/openai/codex-app-server/failure-chunk.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/failure-chunk.js +33 -0
- package/dist/ai/providers/openai/codex-app-server/failure-chunk.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/index.d.ts +10 -0
- package/dist/ai/providers/openai/codex-app-server/index.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/index.js +9 -0
- package/dist/ai/providers/openai/codex-app-server/index.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/protocol.d.ts +162 -0
- package/dist/ai/providers/openai/codex-app-server/protocol.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/protocol.js +116 -0
- package/dist/ai/providers/openai/codex-app-server/protocol.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-execution.d.ts +3 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-execution.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-execution.js +3 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-execution.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.d.ts +5 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.js +16 -0
- package/dist/ai/providers/openai/codex-app-server/runtime-transport.consumer.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/session.d.ts +24 -0
- package/dist/ai/providers/openai/codex-app-server/session.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/session.js +392 -0
- package/dist/ai/providers/openai/codex-app-server/session.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/spawner.d.ts +9 -0
- package/dist/ai/providers/openai/codex-app-server/spawner.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/spawner.js +48 -0
- package/dist/ai/providers/openai/codex-app-server/spawner.js.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/tool-name.d.ts +14 -0
- package/dist/ai/providers/openai/codex-app-server/tool-name.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-app-server/tool-name.js +45 -0
- package/dist/ai/providers/openai/codex-app-server/tool-name.js.map +1 -0
- package/dist/ai/providers/openai/codex-subscription.d.ts +48 -0
- package/dist/ai/providers/openai/codex-subscription.d.ts.map +1 -0
- package/dist/ai/providers/openai/codex-subscription.js +128 -0
- package/dist/ai/providers/openai/codex-subscription.js.map +1 -0
- package/dist/ai/providers/openai/detection/index.d.ts +2 -0
- package/dist/ai/providers/openai/detection/index.d.ts.map +1 -0
- package/dist/ai/providers/openai/detection/index.js +2 -0
- package/dist/ai/providers/openai/detection/index.js.map +1 -0
- package/dist/ai/providers/openai/detection/system.d.ts +5 -0
- package/dist/ai/providers/openai/detection/system.d.ts.map +1 -0
- package/dist/ai/providers/openai/detection/system.js +25 -0
- package/dist/ai/providers/openai/detection/system.js.map +1 -0
- package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.d.ts +4 -0
- package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.d.ts.map +1 -0
- package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.js +39 -0
- package/dist/ai/providers/openai/docs/ai.providers.openai.docs.descriptor.js.map +1 -0
- package/dist/ai/providers/openai/index.d.ts +4 -0
- package/dist/ai/providers/openai/index.d.ts.map +1 -0
- package/dist/ai/providers/openai/index.js +4 -0
- package/dist/ai/providers/openai/index.js.map +1 -0
- package/dist/ai/providers/openai/openai.provider.impl.d.ts +50 -0
- package/dist/ai/providers/openai/openai.provider.impl.d.ts.map +1 -0
- package/dist/ai/providers/openai/openai.provider.impl.js +331 -0
- package/dist/ai/providers/openai/openai.provider.impl.js.map +1 -0
- package/dist/ai/providers/openai/recommendations.d.ts +25 -0
- package/dist/ai/providers/openai/recommendations.d.ts.map +1 -0
- package/dist/ai/providers/openai/recommendations.js +33 -0
- package/dist/ai/providers/openai/recommendations.js.map +1 -0
- package/dist/ai/transcription/index.d.ts +4 -0
- package/dist/ai/transcription/index.d.ts.map +1 -0
- package/dist/ai/transcription/index.js +4 -0
- package/dist/ai/transcription/index.js.map +1 -0
- package/dist/ai/transcription/metadata/assets/logos/providers/openai-dark.svg +12 -0
- package/dist/ai/transcription/metadata/assets/logos/providers/openai.svg +12 -0
- package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-mini-transcribe-2025-12-15.json +20 -0
- package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-mini-transcribe.json +17 -0
- package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-gpt-4o-transcribe.json +17 -0
- package/dist/ai/transcription/metadata/provider-models/openai-transcription/openai-transcription-whisper-1.json +16 -0
- package/dist/ai/transcription/metadata/providers/openai-transcription.json +30 -0
- package/dist/ai/transcription/provider.plugin.d.ts +6 -0
- package/dist/ai/transcription/provider.plugin.d.ts.map +1 -0
- package/dist/ai/transcription/provider.plugin.js +120 -0
- package/dist/ai/transcription/provider.plugin.js.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.d.ts +4194 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.d.ts.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.js +53 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/config.openai-transcription.descriptor.js.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.d.ts +17 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.d.ts.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.js +10 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/config/schemas/index.js.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.d.ts +5 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.d.ts.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.js +4 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/index.js.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.d.ts +183 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.d.ts.map +1 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.js +49 -0
- package/dist/ai/transcription/providers/cloud/speech/openai-transcription/provider.openai-transcription.descriptor.js.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/index.d.ts +2 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/index.d.ts.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/index.js +2 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/index.js.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/system.d.ts +4 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/system.d.ts.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/system.js +21 -0
- package/dist/ai/transcription/providers/openai-transcription/detection/system.js.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/index.d.ts +4 -0
- package/dist/ai/transcription/providers/openai-transcription/index.d.ts.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/index.js +4 -0
- package/dist/ai/transcription/providers/openai-transcription/index.js.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.d.ts +20 -0
- package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.d.ts.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.js +102 -0
- package/dist/ai/transcription/providers/openai-transcription/openai-transcription.provider.impl.js.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/recommendations.d.ts +24 -0
- package/dist/ai/transcription/providers/openai-transcription/recommendations.d.ts.map +1 -0
- package/dist/ai/transcription/providers/openai-transcription/recommendations.js +74 -0
- package/dist/ai/transcription/providers/openai-transcription/recommendations.js.map +1 -0
- package/dist/ai/tts/index.d.ts +4 -0
- package/dist/ai/tts/index.d.ts.map +1 -0
- package/dist/ai/tts/index.js +4 -0
- package/dist/ai/tts/index.js.map +1 -0
- package/dist/ai/tts/metadata/assets/logos/providers/openai-dark.svg +12 -0
- package/dist/ai/tts/metadata/assets/logos/providers/openai.svg +12 -0
- package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-gpt-4o-mini-tts-2025-12-15.json +17 -0
- package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-gpt-4o-mini-tts.json +17 -0
- package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-tts-1-hd.json +17 -0
- package/dist/ai/tts/metadata/provider-models/openai-tts/openai-tts-tts-1.json +17 -0
- package/dist/ai/tts/metadata/providers/openai-tts.json +32 -0
- package/dist/ai/tts/provider.plugin.d.ts +6 -0
- package/dist/ai/tts/provider.plugin.d.ts.map +1 -0
- package/dist/ai/tts/provider.plugin.js +120 -0
- package/dist/ai/tts/provider.plugin.js.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.d.ts +4194 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.d.ts.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.js +53 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/config.openai-tts.descriptor.js.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.d.ts +17 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.d.ts.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.js +10 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/config/schemas/index.js.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/index.d.ts +5 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/index.d.ts.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/index.js +4 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/index.js.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.d.ts +183 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.d.ts.map +1 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.js +49 -0
- package/dist/ai/tts/providers/cloud/speech/openai-tts/provider.openai-tts.descriptor.js.map +1 -0
- package/dist/ai/tts/providers/openai-tts/detection/index.d.ts +2 -0
- package/dist/ai/tts/providers/openai-tts/detection/index.d.ts.map +1 -0
- package/dist/ai/tts/providers/openai-tts/detection/index.js +2 -0
- package/dist/ai/tts/providers/openai-tts/detection/index.js.map +1 -0
- package/dist/ai/tts/providers/openai-tts/detection/system.d.ts +4 -0
- package/dist/ai/tts/providers/openai-tts/detection/system.d.ts.map +1 -0
- package/dist/ai/tts/providers/openai-tts/detection/system.js +21 -0
- package/dist/ai/tts/providers/openai-tts/detection/system.js.map +1 -0
- package/dist/ai/tts/providers/openai-tts/index.d.ts +4 -0
- package/dist/ai/tts/providers/openai-tts/index.d.ts.map +1 -0
- package/dist/ai/tts/providers/openai-tts/index.js +4 -0
- package/dist/ai/tts/providers/openai-tts/index.js.map +1 -0
- package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.d.ts +24 -0
- package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.d.ts.map +1 -0
- package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.js +120 -0
- package/dist/ai/tts/providers/openai-tts/openai-tts.provider.impl.js.map +1 -0
- package/dist/ai/tts/providers/openai-tts/recommendations.d.ts +24 -0
- package/dist/ai/tts/providers/openai-tts/recommendations.d.ts.map +1 -0
- package/dist/ai/tts/providers/openai-tts/recommendations.js +74 -0
- package/dist/ai/tts/providers/openai-tts/recommendations.js.map +1 -0
- package/dist/external/codex/index.d.ts +162 -0
- package/dist/external/codex/index.d.ts.map +1 -0
- package/dist/external/codex/index.js +5 -0
- package/dist/external/codex/index.js.map +1 -0
- package/dist/external/codex/manifest.d.ts +9 -0
- package/dist/external/codex/manifest.d.ts.map +1 -0
- package/dist/external/codex/manifest.js +201 -0
- package/dist/external/codex/manifest.js.map +1 -0
- package/dist/external/codex-hooks.d.ts +39 -0
- package/dist/external/codex-hooks.d.ts.map +1 -0
- package/dist/external/codex-hooks.js +204 -0
- package/dist/external/codex-hooks.js.map +1 -0
- package/dist/external/codex-presets.d.ts +2033 -0
- package/dist/external/codex-presets.d.ts.map +1 -0
- package/dist/external/codex-presets.js +312 -0
- package/dist/external/codex-presets.js.map +1 -0
- package/dist/external/codex-subscription.operation.descriptors.d.ts +57 -0
- package/dist/external/codex-subscription.operation.descriptors.d.ts.map +1 -0
- package/dist/external/codex-subscription.operation.descriptors.js +22 -0
- package/dist/external/codex-subscription.operation.descriptors.js.map +1 -0
- package/dist/external/codex-subscription.operations.d.ts +4 -0
- package/dist/external/codex-subscription.operations.d.ts.map +1 -0
- package/dist/external/codex-subscription.operations.js +42 -0
- package/dist/external/codex-subscription.operations.js.map +1 -0
- package/dist/external/external.plugin.d.ts +3 -0
- package/dist/external/external.plugin.d.ts.map +1 -0
- package/dist/external/external.plugin.js +30 -0
- package/dist/external/external.plugin.js.map +1 -0
- package/dist/external/index.d.ts +4 -0
- package/dist/external/index.d.ts.map +1 -0
- package/dist/external/index.js +4 -0
- package/dist/external/index.js.map +1 -0
- package/dist/failure-outcome.d.ts +21 -0
- package/dist/failure-outcome.d.ts.map +1 -0
- package/dist/failure-outcome.js +22 -0
- package/dist/failure-outcome.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/schemas/codex-models.d.ts +23 -0
- package/dist/schemas/codex-models.d.ts.map +1 -0
- package/dist/schemas/codex-models.js +15 -0
- package/dist/schemas/codex-models.js.map +1 -0
- package/dist/schemas/codex-wire.d.ts +108 -0
- package/dist/schemas/codex-wire.d.ts.map +1 -0
- package/dist/schemas/codex-wire.js +25 -0
- package/dist/schemas/codex-wire.js.map +1 -0
- 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 @@
|
|
|
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":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAA6B,MAAM,uBAAuB,CAAC;AAElF,uEAAuE;AACvE,kFAAkF;AAClF,MAAM,QAAQ,GAAG,kBAAkB,CAAC;AAEpC,MAAM,iBAAiB,GAAG;;;OAGnB,QAAQ;CACd,CAAC;AAEF,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,wDAAwD;AACxD,MAAM,2BAA2B,GAAG;;;;;;;IAOhC,QAAQ;;;;;;CAMX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;IAC9B,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;IAC3F,2DAA2D;IAC3D,mBAAmB,EAAE,EAAE;IACvB,2EAA2E;IAC3E,gBAAgB,EAAE,GAAG;IACrB,4EAA4E;IAC5E,QAAQ,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAyB,cAAc,CAAC;IACjE,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,OAAO;IAClB,WAAW,EAAE,8DAA8D;IAC3E,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,iCAAiC;IAC1C,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;IAEvC,OAAO,EAAE;QACR;YACC,IAAI,EAAE,4BAA4B;YAClC,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,aAAa;SACtB;QACD;YACC,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,aAAa;SACtB;KACD;IAED,MAAM,EAAE;QACP,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE,wBAAwB;QAChC,QAAQ,EAAE,2BAA2B;KACrC;IAED,GAAG,EAAE;QACJ,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,iBAAiB,EAAE,OAAO;QAC1B,aAAa,EAAE,IAAI;QACnB,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE;YACR,cAAc,EAAE,EAAE;YAClB,WAAW,EAAE,GAAG;SAChB;KACD;IAED,KAAK,EAAE;QACN,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,CAAC,eAAe,EAAE,uBAAuB,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,CAAC;QAC7H,cAAc,EAAE;YACf,YAAY,EAAE,eAAe;YAC7B,UAAU,EAAE,uBAAuB;YACnC,UAAU,EAAE,aAAa;YACzB,UAAU,EAAE,aAAa;YACzB,WAAW,EAAE,YAAY;YACzB,gBAAgB,EAAE,eAAe;YACjC,IAAI,EAAE,YAAY;SAClB;QACD,MAAM,EAAE,OAAO;QACf,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,KAAK;QAChB,iGAAiG;QACjG,sGAAsG;QACtG,0GAA0G;QAC1G,KAAK,EAAE;YACN,IAAI,EAAE,uGAAuG;SAC7G;KACD;IAED,OAAO,EAAE;QACR,SAAS,EAAE,KAAK;KAChB;IAED,MAAM,EAAE;QACP,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,WAAW;QACnB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,wBAAwB;QACpC,WAAW,EAAE,gBAAgB;KAC7B;IAED,SAAS,EAAE;QACV,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,CAAC,WAAW,CAAC;QAC1B,YAAY,EAAE,2BAA2B;QACzC,SAAS,EAAE,gBAAgB;KAC3B;IAED,WAAW,EAAE;QACZ,GAAG,EAAE;YACJ,cAAc,EAAE,sBAAsB;SACtC;QACD,KAAK,EAAE;YACN,SAAS,EAAE;gBACV,eAAe,EAAE,iBAAiB;gBAClC,uBAAuB,EAAE,iBAAiB;gBAC1C,aAAa,EAAE,2BAA2B;gBAC1C,aAAa,EAAE,iBAAiB;gBAChC,YAAY,EAAE,iBAAiB;gBAC/B,eAAe,EAAE,iBAAiB;gBAClC,YAAY,EAAE,iBAAiB;aAC/B;YACD,cAAc,EAAE;gBACf,eAAe,EAAE;oBAChB,OAAO,EAAE,EAAE;oBACX,aAAa,EAAE,yBAAyB;oBACxC,sBAAsB,EAAE,GAAG;iBAC3B;gBACD,uBAAuB,EAAE;oBACxB,OAAO,EAAE,EAAE;oBACX,aAAa,EAAE,+BAA+B;iBAC9C;gBACD,aAAa,EAAE;oBACd,OAAO,EAAE,CAAC;oBACV,aAAa,EAAE,0BAA0B;iBACzC;gBACD,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,sBAAsB,EAAE;gBACrE,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,wBAAwB,EAAE;gBACtE,eAAe,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,wBAAwB,EAAE;gBACzE,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,uBAAuB,EAAE;aACrE;YACD,aAAa,EAAE,oBAAoB;YACnC,mBAAmB,EAAE,aAAa;SAClC;QACD,OAAO,EAAE;YACR,SAAS,EAAE;gBACV,sBAAsB;gBACtB,iBAAiB;gBACjB,iBAAiB;gBACjB,iBAAiB;gBACjB,kBAAkB;aAClB;YACD,OAAO,EAAE,sBAAsB;SAC/B;KACD;IAED,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE;QACP,WAAW,EAAE,UAAU;QACvB,KAAK,EAAE;YACN,QAAQ,EAAE;gBACT,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,MAAM;gBACb,IAAI,EAAE;oBACL,MAAM;oBACN,sBAAsB;oBACtB,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;oBAC3C,iEAAiE;oBACjE,+EAA+E;oBAC/E,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,kCAAkC,CAAC,EAAE;oBACpE,iFAAiF;oBACjF,2EAA2E;oBAC3E,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE;oBAC5D,WAAW;iBACX;aACD;SACD;KACD;IACD,QAAQ,EAAE;QACT,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,IAAI;KAClB;CACD,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -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"}
|