{"_id":"@bentway/openai","_rev":"5-9d00efe8622373899b4f2d282c35cebe","name":"@bentway/openai","dist-tags":{"latest":"0.5.1"},"versions":{"0.1.0":{"name":"@bentway/openai","version":"0.1.0","keywords":["bentway","llm","agent","openai","responses-api","port"],"author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"license":"Apache-2.0","_id":"@bentway/openai@0.1.0","maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"homepage":"https://github.com/bentway-dev/bentway#readme","bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"dist":{"shasum":"870525dc85a58eefde728a564926e7fbe4a6de97","tarball":"https://registry.npmjs.org/@bentway/openai/-/openai-0.1.0.tgz","fileCount":13,"integrity":"sha512-AkGgdn/emfcp/NCj+T9aaXtp456CIr+Uc7yERJi+T3EWulxOUyCSVwExbvrwMoMiN7UUVrs8033Ml71U7G1gxA==","signatures":[{"sig":"MEYCIQC3FadUqRXSdX1DvlDK6miuZfwnvzrfj1H65HbS34NeQQIhAOZmjMxTJtyMqu3RHkYpaVSx8fZfNAirH7a1s9tIYulD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33937},"type":"module","_from":"file:/tmp/bw-boot/bentway-openai-0.1.0.tgz","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.mts","default":"./src/index.mjs"}},"scripts":{"test":"bash scripts/check-file-sizes.sh && bash scripts/check-api-report.sh","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"},"_resolved":"/tmp/bw-boot/bentway-openai-0.1.0.tgz","_integrity":"sha512-AkGgdn/emfcp/NCj+T9aaXtp456CIr+Uc7yERJi+T3EWulxOUyCSVwExbvrwMoMiN7UUVrs8033Ml71U7G1gxA==","repository":{"url":"git+https://github.com/bentway-dev/bentway.git","type":"git","directory":"packages/openai"},"_npmVersion":"10.9.4","description":"OpenAI Responses-API completion port for the bentway kernel","directories":{},"sideEffects":false,"_nodeVersion":"22.22.0","dependencies":{"@bentway/core":"0.1.0","@bentway/stream-json":"0.1.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/openai_0.1.0_1782164835182_0.7316463968842573","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bentway/openai","version":"0.2.0","keywords":["bentway","llm","agent","openai","responses-api","port"],"author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"license":"Apache-2.0","_id":"@bentway/openai@0.2.0","maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"homepage":"https://github.com/bentway-dev/bentway#readme","bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"dist":{"shasum":"c20bcf4739feea356cb9dffcfc4da4c1b953bab6","tarball":"https://registry.npmjs.org/@bentway/openai/-/openai-0.2.0.tgz","fileCount":13,"integrity":"sha512-7jNR/GLcTAVp8INyCSrBAQTbofbylf+50V3MoM0rYHiIxm7AIn+D9T6TRunMGhkzd5iT8f8a8v6VhvmCUMgxTg==","signatures":[{"sig":"MEUCIQD+wZBxO9xdb9rV9re0RqlCb6Pqepgb9QdEJf/O99AtwAIgQeob5luSDppV9ny3f2OegC82xTeErsM21V5inKQByRc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bentway%2fopenai@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33937},"type":"module","_from":"file:/tmp/bw-out/bentway-openai-0.2.0.tgz","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.mts","default":"./src/index.mjs"}},"scripts":{"test":"bash scripts/check-file-sizes.sh && bash scripts/check-api-report.sh","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3002d5fe-1cdb-4f07-9b61-b7d37d841b44"}},"_resolved":"/tmp/bw-out/bentway-openai-0.2.0.tgz","_integrity":"sha512-7jNR/GLcTAVp8INyCSrBAQTbofbylf+50V3MoM0rYHiIxm7AIn+D9T6TRunMGhkzd5iT8f8a8v6VhvmCUMgxTg==","repository":{"url":"git+https://github.com/bentway-dev/bentway.git","type":"git","directory":"packages/openai"},"_npmVersion":"11.17.0","description":"OpenAI Responses-API completion port for the bentway kernel","directories":{},"sideEffects":false,"_nodeVersion":"22.22.3","dependencies":{"@bentway/core":"0.2.0","@bentway/stream-json":"0.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/openai_0.2.0_1782181169869_0.011724123006162213","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bentway/openai","version":"0.3.0","keywords":["bentway","llm","agent","openai","responses-api","port"],"author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"license":"Apache-2.0","_id":"@bentway/openai@0.3.0","maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"homepage":"https://github.com/bentway-dev/bentway#readme","bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"dist":{"shasum":"31a15b2b6e6d35f7a6a683ebe9525e7a297b10f1","tarball":"https://registry.npmjs.org/@bentway/openai/-/openai-0.3.0.tgz","fileCount":13,"integrity":"sha512-ITj4ajS/FoP3Zvhm8OsElwWCAVGkEu9vOpBhrIBS/JTP1IFNdDP0jPUJTDSXd3JXEaDnV/V0qOCbE8/4/n3yog==","signatures":[{"sig":"MEUCIAGwAv8z9CSitgCcgqzB7AkZmmW0W//tQzZ4OdQnkA5xAiEA3Oke/1vnGm3yuSHlzGa/JXq1z5Hq+2G3iubHRRVuUbc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bentway%2fopenai@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33937},"type":"module","_from":"file:/tmp/bw-out/bentway-openai-0.3.0.tgz","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.mts","default":"./src/index.mjs"}},"scripts":{"test":"bash scripts/check-file-sizes.sh && bash scripts/check-api-report.sh","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3002d5fe-1cdb-4f07-9b61-b7d37d841b44"}},"_resolved":"/tmp/bw-out/bentway-openai-0.3.0.tgz","_integrity":"sha512-ITj4ajS/FoP3Zvhm8OsElwWCAVGkEu9vOpBhrIBS/JTP1IFNdDP0jPUJTDSXd3JXEaDnV/V0qOCbE8/4/n3yog==","repository":{"url":"git+https://github.com/bentway-dev/bentway.git","type":"git","directory":"packages/openai"},"_npmVersion":"11.17.0","description":"OpenAI Responses-API completion port for the bentway kernel","directories":{},"sideEffects":false,"_nodeVersion":"22.22.3","dependencies":{"@bentway/core":"0.3.0","@bentway/stream-json":"0.3.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/openai_0.3.0_1782187517124_0.1307921847550142","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bentway/openai","version":"0.4.0","keywords":["bentway","llm","agent","openai","responses-api","port"],"author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"license":"Apache-2.0","_id":"@bentway/openai@0.4.0","maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"homepage":"https://github.com/bentway-dev/bentway#readme","bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"dist":{"shasum":"6bba1a5841437d5c7e38389035ac9dac0fe9ce8b","tarball":"https://registry.npmjs.org/@bentway/openai/-/openai-0.4.0.tgz","fileCount":13,"integrity":"sha512-07jWupwHV4+Yei9ZvQFw/LT9HC09b3pc26h5Qj9PXkP/zeFkY9hWbNqoPkzkKQqFWtKeQr2mE/UDmfJ6xndMzQ==","signatures":[{"sig":"MEYCIQC6QQLlf0t3m6Zv/dQh8OujIJF5Ni+pbmBqghcUOyJnRwIhAN3FQj5WR1ovylzawQ17NqegGH09PCK8yMY0dam7aPeb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bentway%2fopenai@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33937},"type":"module","_from":"file:/tmp/bw-out/bentway-openai-0.4.0.tgz","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.mts","default":"./src/index.mjs"}},"scripts":{"test":"bash scripts/check-file-sizes.sh && bash scripts/check-api-report.sh","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3002d5fe-1cdb-4f07-9b61-b7d37d841b44"}},"_resolved":"/tmp/bw-out/bentway-openai-0.4.0.tgz","_integrity":"sha512-07jWupwHV4+Yei9ZvQFw/LT9HC09b3pc26h5Qj9PXkP/zeFkY9hWbNqoPkzkKQqFWtKeQr2mE/UDmfJ6xndMzQ==","repository":{"url":"git+https://github.com/bentway-dev/bentway.git","type":"git","directory":"packages/openai"},"_npmVersion":"11.17.0","description":"OpenAI Responses-API completion port for the bentway kernel","directories":{},"sideEffects":false,"_nodeVersion":"22.22.3","dependencies":{"@bentway/core":"0.4.0","@bentway/stream-json":"0.4.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/openai_0.4.0_1782243849213_0.1575944061517529","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@bentway/openai","version":"0.5.1","description":"OpenAI Responses-API completion port for the bentway kernel","keywords":["bentway","llm","agent","openai","responses-api","port"],"homepage":"https://github.com/bentway-dev/bentway#readme","bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"license":"Apache-2.0","author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"repository":{"type":"git","url":"git+https://github.com/bentway-dev/bentway.git","directory":"packages/openai"},"type":"module","exports":{".":{"types":"./dist/index.d.mts","default":"./src/index.mjs"}},"engines":{"node":">=22"},"sideEffects":false,"publishConfig":{"access":"public","provenance":true},"dependencies":{"@bentway/core":"0.5.1","@bentway/stream-json":"0.5.1"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.7.0"},"scripts":{"build":"tsc","typecheck":"tsc --noEmit","test":"bash scripts/check-file-sizes.sh && bash scripts/check-api-report.sh"},"_id":"@bentway/openai@0.5.1","_integrity":"sha512-eej6wT2badIDgTrC1OcDosYvdJIMnhPBI1Wub11KVobXJ/GcYT1RLMfu2CSB2BvJPh3fuiWJxtkTwh/VSKzILQ==","_resolved":"/tmp/bw-out/bentway-openai-0.5.1.tgz","_from":"file:/tmp/bw-out/bentway-openai-0.5.1.tgz","_nodeVersion":"22.23.1","_npmVersion":"11.18.0","dist":{"integrity":"sha512-eej6wT2badIDgTrC1OcDosYvdJIMnhPBI1Wub11KVobXJ/GcYT1RLMfu2CSB2BvJPh3fuiWJxtkTwh/VSKzILQ==","shasum":"6900cc07a1b999293821ad8cbf04e2acb3cd2029","tarball":"https://registry.npmjs.org/@bentway/openai/-/openai-0.5.1.tgz","fileCount":13,"unpackedSize":33937,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bentway%2fopenai@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDvI+LdYmhPtWTmIlcwf3ZE8eTRm/K+rAnml/bUJiYoWgIhAMOLGC92Buk9iQA3rUnVrE9Lin4pnXk2fHYHx2ajOjyj"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3002d5fe-1cdb-4f07-9b61-b7d37d841b44"}},"directories":{},"maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/openai_0.5.1_1783013214524_0.15641733370739974"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-22T21:47:14.980Z","modified":"2026-07-02T17:26:54.986Z","0.1.0":"2026-06-22T21:47:15.323Z","0.2.0":"2026-06-23T02:19:30.000Z","0.3.0":"2026-06-23T04:05:17.304Z","0.4.0":"2026-06-23T19:44:09.348Z","0.5.1":"2026-07-02T17:26:54.656Z"},"bugs":{"url":"https://github.com/bentway-dev/bentway/issues"},"author":{"name":"Nathan Sentjens","email":"nate@bentway.dev"},"license":"Apache-2.0","homepage":"https://github.com/bentway-dev/bentway#readme","keywords":["bentway","llm","agent","openai","responses-api","port"],"repository":{"type":"git","url":"git+https://github.com/bentway-dev/bentway.git","directory":"packages/openai"},"description":"OpenAI Responses-API completion port for the bentway kernel","maintainers":[{"name":"nsentjens","email":"fluffy-stats6r@icloud.com"}],"readme":"# @bentway/openai\n\nOpenAI Responses-API completion port for the bentway kernel.\n\nPart of [Bentway](https://github.com/bentway-dev/bentway), a runtime-agnostic\nagent execution kernel.\n\n## Install\n\n```\nnpm install @bentway/openai @bentway/core @bentway/stream-json\n```\n\n## Usage\n\n`complete()` POSTs the /v1/responses endpoint and resolves to the neutral\n`PortResult` shape the turn loop reads directly. Expected transport\nfailures resolve to the neutral error shape instead of throwing.\n\n```js\nimport {\n  complete,\n  isReasoningModel,\n  buildPromptCacheKey,\n  makeOpenAiSerializeRequest,\n  computeTotalCostUsd,\n  DEFAULT_MODEL,\n  DEFAULT_BASE_URL,\n  MAX_API_RETRIES,\n} from '@bentway/openai';\n\nconst reasoningConfig = isReasoningModel('gpt-5.5')\n  ? { reasoning: { effort: 'medium' } }\n  : {};\n\nconst serializeRequest = makeOpenAiSerializeRequest({\n  apiKey: process.env.OPENAI_API_KEY,\n  baseUrl: DEFAULT_BASE_URL,\n  model: 'gpt-5.5',\n  instructions: 'You are helpful.',\n  reasoningConfig,\n  promptCacheKey: buildPromptCacheKey(),\n  stateless: false,\n  tools: [],\n});\n\n// Inject `complete` and `serializeRequest` into runTurnLoop from\n// @bentway/core, plus `computeTotalCostUsd` as the cost function.\n```\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}