{"_id":"@sisu-ai/adapter-openai","_rev":"28-886bbd17ca104f0625cb47b992ce4b51","name":"@sisu-ai/adapter-openai","dist-tags":{"latest":"12.0.0"},"versions":{"1.0.0":{"name":"@sisu-ai/adapter-openai","version":"1.0.0","_id":"@sisu-ai/adapter-openai@1.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"dist":{"shasum":"8d754ddbb7f83d98526c56763b2711ccaf4320fa","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-1.0.0.tgz","fileCount":4,"integrity":"sha512-kSc67PgEK0mVNhW2yGy5DI29Uw/WmDJVESthuZg4dv/EbM0TV5K8hLlRqyxfdSOaV6I7oLJe/i99WmOD7OHAbw==","signatures":[{"sig":"MEUCIQCAPyhbjYspYcSo42B8/sQ54scG4wlg6f455QxR5BjrXAIgYG8veK6DC3aI8wDlevBgrEq3isEKmhvelJAs0naCW2w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9176},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"7892b52a5af1d0db589a97fabb634ed4ad46497a","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"0.2.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_1.0.0_1756592104480_0.3956437286304255","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@sisu-ai/adapter-openai","version":"1.0.1","_id":"@sisu-ai/adapter-openai@1.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"f68054b7494b244ee23aaee0333dbb819ea957ed","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-1.0.1.tgz","fileCount":4,"integrity":"sha512-UV0Q6+QNkKlOfwWcMk5E5bXwtJkx8K6ebMbT8j3WtMGH03FMk6YEweMvdwpbFAR3KomLxsA+1wTUCe7pBpvp/Q==","signatures":[{"sig":"MEYCIQDOQBCP6aoe9EngnDUUmFllChq4cprAyjJNbeDBeVEu8wIhAPOus6uzIp0F3qv1vcnW8YlYXOvKGSxKAURd79A5LXZq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9617},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"88d142e47f9949977a3e88b32af680333f4f27fe","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"0.2.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_1.0.1_1756594216496_0.47667408708341497","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@sisu-ai/adapter-openai","version":"2.0.0","_id":"@sisu-ai/adapter-openai@2.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"76d6fed5477772acee7f96d9dd5798ab7e1a7f55","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-2.0.0.tgz","fileCount":4,"integrity":"sha512-jsTqGP7Ih5CtQB3P/LLsUcJZCA6F7VIM0GS9YbjkQS7hoPniA3iQ+hjBqksFP959aJnkBZsLaoAApmI2s6lDUw==","signatures":[{"sig":"MEUCIQDGRW/pO3GPJANg7q6GxkRc3iykJkxzlQVY/J9Pmwlr2AIgFBX4D0UL9n8NovXab1oHNBaUWJYIr/uHgs4OLPWxwXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14923},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"1cd9e0ec873fbbd9164636dc0a42ccf834eca966","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_2.0.0_1756675392646_0.7228346678480331","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@sisu-ai/adapter-openai","version":"3.0.0","_id":"@sisu-ai/adapter-openai@3.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e139e79f9908f59e3bedd17bb26b76ab31fdb8ba","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-3.0.0.tgz","fileCount":4,"integrity":"sha512-id3jmc2CYdYBeoWSWNEMqjFc5Synbg2RORLM/gEcXdYZ3Nn4WbbmLZ4qNtOTY2aD4yc4F3GDFIV4ptaxp3CdJg==","signatures":[{"sig":"MEUCIA5pAxwz0u1TY0afgYbYfyAgPZqMnn4mlnRQWLcr4/e8AiEA3fmhFSB0N1oA4Qb90V9RmraJIgMT/WrEfF+LuzwrvlA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18655},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"0cb1f3ac3c297fd27d41cb22a0d9eacb584bcc76","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_3.0.0_1757057058776_0.10980830789925355","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@sisu-ai/adapter-openai","version":"3.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"_id":"@sisu-ai/adapter-openai@3.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"8153ec6630f9ef93ae618e95ef4e917817ed9c6a","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-3.0.1.tgz","fileCount":4,"integrity":"sha512-a9OMwpHO1xFa9gs3aREBwtNV8e2rtqhZvfFSoV1eocpBCrBfIGr54Cey66AsrQL7Ja4TrpcvqdbaC9P0gXQSOQ==","signatures":[{"sig":"MEYCIQDGve5zXyrfOxcGQqZcWtND8sdGKGWfpRJvtdMkoG22qQIhAOLjMZgFCgWkUrEfOYmahFPUkM/MuYFz47nh/xDhnfKs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18757},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"7a58e6670813759831158b9caca31b559fc4dda3","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_3.0.1_1757058463981_0.8966492583326195","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@sisu-ai/adapter-openai","version":"3.0.2","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@3.0.2","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"61020b227d06d90f13e7c5b999ab5c8a136a91b7","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-3.0.2.tgz","fileCount":4,"integrity":"sha512-TN+YfBUc7Y27fI7GIbKooSuofh4Zxsm2wLCJ5E/fNS4wXTrvjgGvIpW0sdRgSDhNftMxpZNTBWprenM6C4MnCQ==","signatures":[{"sig":"MEUCIQCYnouIjIRcFfRcHiP4elTocg6I5gPg6ezv8ycbg/7i7AIgcOv09vO40UnCyrxH4cPosUxvUNdnX5hZ82Pc+f79uWM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19776},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"be5ee34d40af7335ec60727bcd1710f1a02fccc5","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"[![Tests](https://github.com/finger-gun/sisu/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/finger-gun/sisu/actions/workflows/tests.yml) [![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/finger-","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_3.0.2_1757063216080_0.12517250392051826","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@sisu-ai/adapter-openai","version":"3.0.3","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@3.0.3","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"831777c38e8cafba340b66c717988ef311a64548","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-3.0.3.tgz","fileCount":4,"integrity":"sha512-EuuYQptm5Y2UITFUnzHR66fUnhLc4zNvqS42rm0dRvS1B43k26pC27gd4JZQSgibjITZUxIyt4NejQaxII/TNQ==","signatures":[{"sig":"MEYCIQCfALecFDJCAWy95ujq1v9URUJIS/syKL4TU9yM/zTwSwIhAOW7+0J0v8q/mL2mIOnzCJm3RnTQQQM5jiKmLlCdZB8u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20203},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"5f3bff6b49ff0580e63b58e8bebe27226ccbf4da","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"[![Tests](https://github.com/finger-gun/sisu/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/finger-gun/sisu/actions/workflows/tests.yml) [![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/finger-","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_3.0.3_1757517200627_0.48927421662296067","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@sisu-ai/adapter-openai","version":"3.1.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@3.1.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"f40664090733a4ad72565315bf22e5d4f18c83f6","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-3.1.0.tgz","fileCount":4,"integrity":"sha512-cTxOV95n6KksB8lQdVQHG9rOU7GbnqEnbXxYZaTVQwK/5v2HLwdWjgDtV50MCnVztisD8uJBkrt3QILwV3MDlw==","signatures":[{"sig":"MEYCIQCj8tPO31DKGuialvlxvwNmIEuZBgfvR5T850zr8zN0mQIhAMnYhqey98b5FWw+jZ31NAtJLsQId5qKQAkD9ZOB2yQ0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20429},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"7f9f1273a8d7260260e79b03ec2201ec51e3fd6b","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_3.1.0_1757572774801_0.8969312930634203","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@sisu-ai/adapter-openai","version":"4.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@4.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"170d16280136ef94338ed53b7dabaf808e31a148","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-4.0.0.tgz","fileCount":4,"integrity":"sha512-z4LWfAei1JiYQI7+O/1ulAPi54CoRwRJ75dvsHVU4Quxj0jiusL8s/IeT18/UFhVoW+9+flZvaUpzfnrip0xUg==","signatures":[{"sig":"MEUCIQCDkhpHLP3ZjYBtHhMoWsW4EbyzZ84CSm4mSs/Lt9SreQIgY5vFAB43yXDPhpPZLimniLop4hyG7Xx/SP2f6Dp7d3E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20429},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"19cad86bac8f019f11b435337f784930904f01ad","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_4.0.0_1757573006228_0.47839992002118814","host":"s3://npm-registry-packages-npm-production"}},"4.0.1":{"name":"@sisu-ai/adapter-openai","version":"4.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@4.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"c002f4f06a02051694abc3139b908e912fb4268c","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-4.0.1.tgz","fileCount":4,"integrity":"sha512-ycFYJWwISFIReVlw/Oblkn8dHidcYaauG+dTQLGRlBpOasYus46IR9ZE9TYS16XGjmZvIV/0zblI1Jk28K545A==","signatures":[{"sig":"MEMCIAbYIoeTbiIsmC8z6mUcX5kAZekbpTRVvMLIdu3rbX3BAh8pdalIgeLkmcA89GvC5Cb5TBViITkShiBICO97RPKc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20615},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"7cae6f1b7e34453a05dd7b2c29e48ed6dc403594","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_4.0.1_1757573768525_0.9306387668816105","host":"s3://npm-registry-packages-npm-production"}},"4.0.2":{"name":"@sisu-ai/adapter-openai","version":"4.0.2","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@4.0.2","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"6b421624b6f91a129145ee2428a51eb4742e352d","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-4.0.2.tgz","fileCount":4,"integrity":"sha512-GHZzgyPP2ApskKldGO592/IF8MMGigmNCfP/kaHjjsj1CwoEhdsTA2DHMlBJK83NdTxoTeU51wez9uCC/p44rA==","signatures":[{"sig":"MEQCIFAlRMQp2Nh6lT7z42qFvjRJI3hM2CHHPb/W1YNBS6+6AiAidCXAFJNF8EQegGW9ixHiY+7nOO2b5Bm/WCx0QLvTyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20615},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"006b6f3e8af85cdded8215c845f8e2bfe32a9314","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.1.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_4.0.2_1757574409874_0.5689666224094796","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@sisu-ai/adapter-openai","version":"4.1.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@4.1.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e0fc9aac6d4e8243d40152443faef90d61c80dae","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-4.1.0.tgz","fileCount":4,"integrity":"sha512-kzd/gvJkVSkQ+R8Ra/6Tn+p1IGHJ7usEo+J1ez6PYMyHDTw6euJQ6MHnHoSBeY+oBEoXTVTlxggYyKw8Rk83Rw==","signatures":[{"sig":"MEQCIDNULeOZGJjBeoAnr0YwNNHbexo61yMXD/GOxG6kjjIaAiBSy3kXO0Sv+qbs5ds98qLw4pHZzxdhHsLHUM/tOxhk1A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"af3b4cf60e7f727c85622499d7275b47e22823ef","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"10.9.2","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"23.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.1.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_4.1.0_1757801258308_0.47445671995634564","host":"s3://npm-registry-packages-npm-production"}},"4.1.1":{"name":"@sisu-ai/adapter-openai","version":"4.1.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@4.1.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"6826baf0880667624ebf6447d198c566a2aeeec0","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-4.1.1.tgz","fileCount":4,"integrity":"sha512-k+UlVJiWLeDoOLIVhmIk1nxFCG/wBii0g7jCnhuuoByPQc5WipoIhzb8GbfcuT1XA6rXbUUNUvAihujDsROjvA==","signatures":[{"sig":"MEYCIQCAmdhL4YdGEkMK5WprBFkMmEq1F6RfC5VWVu5Dv/K2fQIhAN2XFIDUnXpkbkQthhK52gh2zE0wWdVzjNsjzEZkqTQu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"cd0beb1010a3c4876a5883343d35e5376fdeb1e6","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.1.3"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_4.1.1_1761780330493_0.6251391511124988","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@sisu-ai/adapter-openai","version":"5.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@5.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"8f3e6b17f0b6496b8d97d2abab51c04a95a34bff","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-5.0.0.tgz","fileCount":4,"integrity":"sha512-ISfNfRPgQRg8BPoal9Xtt33+i/kj8Ij1WwTqYl7jIXi7qYdSe/OmKPLjxLdgGtccl1MuEIyqS/k8OZIZbgFmIA==","signatures":[{"sig":"MEUCIQDgFRBaCn+V547SZR7cKjjrSRx4uTSUzcQizbjncXPqGQIgZYVEhiiMIV6aH4JDG/ryEa3wSDK4Z6TMG+TrKLyTYlk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"e9f7d6c2869e71566012258c7d7f7362414f8784","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"1.2.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_5.0.0_1761781016673_0.941358398240735","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@sisu-ai/adapter-openai","version":"6.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@6.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"eb76c5751ef23b1a568849f8750b25dcb45b0b2e","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-6.0.0.tgz","fileCount":4,"integrity":"sha512-IcaIzPoRukbmv0GPUvNUcp2GNYjAEMoQD4wDuA8SaZ4CfzJ1wL07jZUEBqeGeAQLwqhuYsK3ndA39u26AYPFEw==","signatures":[{"sig":"MEYCIQDxGEufUtctdkLGkWNUZlG5ABBP7+8jO5rRrDMqur/5BAIhALd41nQbrTRvCnQ5XichrDIdAknWDi8yrNWUoiGaXjoQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"de892010e395e8cfdc25adbafa08c3a607ce14da","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_6.0.0_1761784026536_0.4749757206077916","host":"s3://npm-registry-packages-npm-production"}},"6.0.1":{"name":"@sisu-ai/adapter-openai","version":"6.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@6.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e490f82fbbac40aaaf9f1169982b718329789051","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-6.0.1.tgz","fileCount":4,"integrity":"sha512-YNS8X72ZLfxd1ccjgJVMkLEkTE+myx71ybU/he6JWVx+fTO1wHKqf25flKoqMdqEbJfnjgjVTqAnALebHnXoPw==","signatures":[{"sig":"MEQCIFT/3T2DeXqqinAkcn7iql7iHLArZZa8psrLVDxZ+wn8AiBIfXaxg+65txMVI5No1L0n9+bM3hkdi7gddC16C5LK9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"bacf2455535f75536384e6616e0e11814e4d25b6","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"2.0.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_6.0.1_1761784495081_0.21455348580835487","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"@sisu-ai/adapter-openai","version":"7.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@7.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"60fa692d05c10e703438c0250c95c1d268504fa9","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-7.0.0.tgz","fileCount":4,"integrity":"sha512-hsFk4NhZ4zVfaHiVQ3jdakoa9kFQqa99zfCjcH+Cx7XjZ2L3zpyBz+k5I3R6b6T8vzWHxGHqhcbC9a7WajJQPQ==","signatures":[{"sig":"MEUCIC/5+85FkeLU5xzYyiNtjh8Jcx2NXR+Ne2U4oQqweFmRAiEA0bQmHwHwJxFkGE/JxBIQyLmQsRqsKcTvphvKhRKWfx8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"58799da36249b77d36168ee9e60256c1c5ed23e4","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_7.0.0_1761786195188_0.25684350390078503","host":"s3://npm-registry-packages-npm-production"}},"8.0.0":{"name":"@sisu-ai/adapter-openai","version":"8.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@8.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"ec31994048995fe96b4253f29fd93deefe35bccf","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-8.0.0.tgz","fileCount":4,"integrity":"sha512-Av04FicX1UAUoIYIHxhpfar3XeTuzlYAGdoLrMKZvI9+3G7FeFFW1dAXwlZ9IDaXXPKvv4fgN+4hbzTDTimpmQ==","signatures":[{"sig":"MEUCID1nLFlpwVrpY78x48l+X1Sid1IiBOdvlGKHqiQ7HXmrAiEAr4mf8B8x0GKk/H8C8IschV/5znj+SnDAwOG6Sx5vtlw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"874a78588d78627903ae71df01791d97ec6cbfb2","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_8.0.0_1761789226505_0.7324555168522833","host":"s3://npm-registry-packages-npm-production"}},"8.0.1":{"name":"@sisu-ai/adapter-openai","version":"8.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@8.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e39a5bd87e0c0b06d1eb43e92a36ecb5d866da27","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-8.0.1.tgz","fileCount":4,"integrity":"sha512-UnrrESxuUW3p0/+Av1QXO4E5P8daWiI6/AS9QQJAesZVdLxphmhU3t7pIhFhSKd/YjLryO39UKsV0iitmnT8LQ==","signatures":[{"sig":"MEUCID/1IJ2KY1YQwAhEXlcxqFVb4BmzgRyjW51zmLECVAGtAiEAtqUwp7PXBZG4K0fnPMfNOTBbunOx/mKCxFU6UbJwFoU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20614},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"db17ddeb7402173a938702ec888bd31d5f04f144","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_8.0.1_1761792982599_0.5729873591999144","host":"s3://npm-registry-packages-npm-production"}},"9.0.0":{"name":"@sisu-ai/adapter-openai","version":"9.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@9.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"a437628ac4e3b41c8a911b012220a9a03f1972ee","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-9.0.0.tgz","fileCount":4,"integrity":"sha512-EkFXH5s3RedjlLkhokaBEtYs4lD/Cybp8hFl16PqkAusO5ukpzTmBDOeqQJdHyx9f9eagVBSzljLRIwQqu8x1A==","signatures":[{"sig":"MEUCIGGmwY8priA/Pq8Cv9kFwa1rufzXzZGUpGKNDy3GzPrvAiEA8U0x9ksLA6xOLETKHkj8e7z7W0mCCPq+px2by7MHSjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28712},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"284bbdcf4a7e8156df26f2de58bfbe05d96c3f24","scripts":{"build":"tsc -b"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.6.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"24.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_9.0.0_1763552789050_0.9323644474517991","host":"s3://npm-registry-packages-npm-production"}},"9.0.1":{"name":"@sisu-ai/adapter-openai","version":"9.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@9.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"bad141cb66c535c16c32af5acd093a01e92d3e13","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-9.0.1.tgz","fileCount":5,"integrity":"sha512-e0BxrpaNg2dPnqaITC2OyYsBfC9i8uMqj75ThJhyeDgbv3uP768srYPQA2V6Pbpl/IcqMBVIu3iOOfk2GKXgNg==","signatures":[{"sig":"MEUCIEr5lVze5LGj+f4v5CaB2JmouEZNcHUSyS6R/dvotjHOAiEAkmfibbo0v6gzIT4JhquZ6hQwRP2fALRFw5LGZ/KGD4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40219},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-9.0.1.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/c9050a93041070aa7182cc80958ee323/sisu-ai-adapter-openai-9.0.1.tgz","_integrity":"sha512-e0BxrpaNg2dPnqaITC2OyYsBfC9i8uMqj75ThJhyeDgbv3uP768srYPQA2V6Pbpl/IcqMBVIu3iOOfk2GKXgNg==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"OpenAI‑compatible Chat adapter with tools support.","directories":{},"_nodeVersion":"25.6.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"^2.3.1"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_9.0.1_1770862393634_0.36606287951724337","host":"s3://npm-registry-packages-npm-production"}},"9.0.2":{"name":"@sisu-ai/adapter-openai","version":"9.0.2","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@9.0.2","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"143ae6bd3788024d61368de3d716e4ef034dfd57","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-9.0.2.tgz","fileCount":5,"integrity":"sha512-E7oIi3v55/bw8t3Sgt8gquY7mpgeSZzFFoMg7uTGUJ/kbDQ0JbjWFn08X6h5ZfDsuG+Ug7YNyGSahcHT3bQmwA==","signatures":[{"sig":"MEUCIQDkMmAEf0OjC/dq0oABU+9icsHfVgiiRIJJTK0tT1I3GAIgfa1+dfHU6i7+lKvotilkZXYRrhaa6WPipWwqR+BqCAE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46663},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-9.0.2.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/d025b6e6f070c3fb1ce42b24ec8ba62d/sisu-ai-adapter-openai-9.0.2.tgz","_integrity":"sha512-E7oIi3v55/bw8t3Sgt8gquY7mpgeSZzFFoMg7uTGUJ/kbDQ0JbjWFn08X6h5ZfDsuG+Ug7YNyGSahcHT3bQmwA==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"<div align=\"right\">   <a href=\"https://github.com/finger-gun/sisu\"><img src=\"https://github.com/finger-gun/sisu/raw/main/sisu-light.svg\" alt=\"ProjectSpecs\" width=\"100\" /></a> </div>","directories":{},"_nodeVersion":"25.6.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"^2.3.2"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_9.0.2_1773440768178_0.9605240429806803","host":"s3://npm-registry-packages-npm-production"}},"9.0.3":{"name":"@sisu-ai/adapter-openai","version":"9.0.3","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@9.0.3","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"0673d98f2cdbd07d94ca2c54a4632c17062d23a6","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-9.0.3.tgz","fileCount":5,"integrity":"sha512-nr5xxQSQ+8Y28uJU7Ntja/zuF5JEFOb8B5SFYh0hixIy1AVWcS2OnxVPUw0HwDKH8h+1VdfdFYNwiYcfJUhvSQ==","signatures":[{"sig":"MEYCIQDoX33H44EnsrRSmRZE1G2RyG7ScrAU4dAyz7sKVMt4SQIhALfL6PS4yZHRANxP7M9p9HJz+uWxq2fRLhiYhhqJ6W6o","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46506},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-9.0.3.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/c8899359a9d18abf423799e976bee685/sisu-ai-adapter-openai-9.0.3.tgz","_integrity":"sha512-nr5xxQSQ+8Y28uJU7Ntja/zuF5JEFOb8B5SFYh0hixIy1AVWcS2OnxVPUw0HwDKH8h+1VdfdFYNwiYcfJUhvSQ==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","directories":{},"_nodeVersion":"25.6.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"^2.3.3"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_9.0.3_1773503179263_0.6200816361564097","host":"s3://npm-registry-packages-npm-production"}},"10.0.0":{"name":"@sisu-ai/adapter-openai","version":"10.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@10.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"ac5cc81f752cf93a8f6e6afbb33fc4b5c8f9e51d","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-10.0.0.tgz","fileCount":5,"integrity":"sha512-ZDVuW7e2uzLlmMUtEhBDA3SRcCLi2FTDBV6bcYOKKY9MjtapaMj+Q03PYqxMXRsTcvAkBfceR9o8f6NtdpDe1g==","signatures":[{"sig":"MEUCIQCqR0YOwbvAWsjIAdPkDFi/qcQ2YG+9ci/U7Rk4YJrDgwIgWfJq/4A9fn5fcS4q9TG9Pc2jO5p0rRxGoj7senXJnVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49917},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-10.0.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/d953bec438d424a592602f671eafaf6d/sisu-ai-adapter-openai-10.0.0.tgz","_integrity":"sha512-ZDVuW7e2uzLlmMUtEhBDA3SRcCLi2FTDBV6bcYOKKY9MjtapaMj+Q03PYqxMXRsTcvAkBfceR9o8f6NtdpDe1g==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","directories":{},"_nodeVersion":"25.6.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@sisu-ai/core":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_10.0.0_1774629385531_0.9854992466452077","host":"s3://npm-registry-packages-npm-production"}},"10.0.1":{"name":"@sisu-ai/adapter-openai","version":"10.0.1","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@10.0.1","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e4f8cbae50548fba8eaca3fe4c94b423be4153ba","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-10.0.1.tgz","fileCount":5,"integrity":"sha512-KCZrDZQi1FObcr21uEIDlrW7VD1M4SOOuWrX8sy2tE7bO69eLM5pjwcTuxhGl+rrRmopGO8n5AsQgPL0J+vgPg==","signatures":[{"sig":"MEYCIQCXeALXFqZPvxA7BURBLmd/Ef5jRWE7tLFRs/YM5mB01gIhALT3bzY1E0nbcQQ/xBdovAOoNo23URqDLDfvMGkm0OGg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46903},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-10.0.1.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/d064ad53946a720a92d550dcaee54de1/sisu-ai-adapter-openai-10.0.1.tgz","_integrity":"sha512-KCZrDZQi1FObcr21uEIDlrW7VD1M4SOOuWrX8sy2tE7bO69eLM5pjwcTuxhGl+rrRmopGO8n5AsQgPL0J+vgPg==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","directories":{},"_nodeVersion":"25.6.1","dependencies":{"openai":"^6.33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sisu-ai/core":"2.4.0"},"peerDependencies":{"@sisu-ai/core":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_10.0.1_1774747198509_0.8894953320907273","host":"s3://npm-registry-packages-npm-production"}},"10.0.2":{"name":"@sisu-ai/adapter-openai","version":"10.0.2","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@10.0.2","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"e90db420174a903ba7c5779a6c16cc18d49d9ae5","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-10.0.2.tgz","fileCount":5,"integrity":"sha512-4sBnWCeHMSX49I5AaldqvuCFuKBXaG8YQSeAP4u7R1MyI0Ev2bTPG88zteS7vfixZ2M3Q+I9jsveRXcThaJkJw==","signatures":[{"sig":"MEUCIHb5VRJz8EDkkdScUf/lYkiZ5vsV9tUFZXe69RfxDkLRAiEAowb0Ng9jbKqVFEwgSIwOQDRSMHJv6xSj4+4L1WEH5ao=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50247},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-10.0.2.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/edffb06c79e3d315951d3dba6c6fd70c/sisu-ai-adapter-openai-10.0.2.tgz","_integrity":"sha512-4sBnWCeHMSX49I5AaldqvuCFuKBXaG8YQSeAP4u7R1MyI0Ev2bTPG88zteS7vfixZ2M3Q+I9jsveRXcThaJkJw==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.10.0","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","directories":{},"_nodeVersion":"25.6.1","dependencies":{"openai":"^6.33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sisu-ai/core":"2.4.0"},"peerDependencies":{"@sisu-ai/core":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_10.0.2_1774776880430_0.8054489322350538","host":"s3://npm-registry-packages-npm-production"}},"11.0.0":{"name":"@sisu-ai/adapter-openai","version":"11.0.0","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"license":"Apache-2.0","_id":"@sisu-ai/adapter-openai@11.0.0","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"dist":{"shasum":"4dfb60e537d6c8935d0798f2f7e9fd5f260178c0","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-11.0.0.tgz","fileCount":5,"integrity":"sha512-Ra52GAwtZphyy63Um22gxi54g25hg2tgdhm314prZQ+dbXG2pyzjGbYCrVvqja2qah8IYvnjqtvChjE/7q0bLw==","signatures":[{"sig":"MEYCIQCoKlW1aJ8A/4K6+mdeg5L1ad8hdnyUXXhcsDSPKobUXwIhAIwH45ABHNIy8BZPVNbYD+Xzb2O0r6dKkb3oCxGToX1p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50247},"main":"dist/index.js","type":"module","_from":"file:sisu-ai-adapter-openai-11.0.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src --ext .ts,.js","build":"tsc -b","clean":"rm -rf dist","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/8a2f8dcbd5131ac2450de0b68248e074/sisu-ai-adapter-openai-11.0.0.tgz","_integrity":"sha512-Ra52GAwtZphyy63Um22gxi54g25hg2tgdhm314prZQ+dbXG2pyzjGbYCrVvqja2qah8IYvnjqtvChjE/7q0bLw==","repository":{"url":"git+https://github.com/finger-gun/sisu.git","type":"git","directory":"packages/adapters/openai"},"_npmVersion":"11.11.1","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","directories":{},"_nodeVersion":"25.8.2","dependencies":{"openai":"^6.33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sisu-ai/core":"2.5.0"},"peerDependencies":{"@sisu-ai/core":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/adapter-openai_11.0.0_1775400515387_0.36345040464040146","host":"s3://npm-registry-packages-npm-production"}},"12.0.0":{"name":"@sisu-ai/adapter-openai","version":"12.0.0","license":"Apache-2.0","type":"module","main":"dist/index.js","types":"dist/index.d.ts","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/finger-gun/sisu.git","directory":"packages/adapters/openai"},"homepage":"https://github.com/finger-gun/sisu#readme","bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"peerDependencies":{"@sisu-ai/core":"^2.6.0"},"devDependencies":{"@sisu-ai/core":"2.6.0"},"keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"dependencies":{"openai":"^6.33.0"},"scripts":{"build":"tsc -b","clean":"rm -rf dist","lint":"eslint src --ext .ts,.js","lint:fix":"eslint src --ext .ts,.js --fix","typecheck":"tsc --noEmit"},"_id":"@sisu-ai/adapter-openai@12.0.0","description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","_integrity":"sha512-9O3KVOVMhWN48HCI5zSbbAKAEtQPjK7RBdrRgjbikBRukAMvFy+4ezyqllzLtXKWIgg9nYVaa47T0OV4LYNoFw==","_resolved":"/private/var/folders/7b/t1vt1p6528x2tkdz02vxb_080000gn/T/efe130e34283aac997dc6c97fa3bf86d/sisu-ai-adapter-openai-12.0.0.tgz","_from":"file:sisu-ai-adapter-openai-12.0.0.tgz","_nodeVersion":"25.8.2","_npmVersion":"11.11.1","dist":{"integrity":"sha512-9O3KVOVMhWN48HCI5zSbbAKAEtQPjK7RBdrRgjbikBRukAMvFy+4ezyqllzLtXKWIgg9nYVaa47T0OV4LYNoFw==","shasum":"99c591d169805cc6e15b356fb132a3e7157854f2","tarball":"https://registry.npmjs.org/@sisu-ai/adapter-openai/-/adapter-openai-12.0.0.tgz","fileCount":5,"unpackedSize":50231,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCDc5tB3//g5AfgwloNRppv3hDCdzXQfqewTuAxarxPngIhAK8nX7BneKKO4NGHiQOmnGqkPwEMSYe8r8xPPaxbPxKA"}]},"_npmUser":{"name":"lejahmie","email":"jamie.telin@gmail.com"},"directories":{},"maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/adapter-openai_12.0.0_1775473938714_0.7138157261121441"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-30T22:15:04.380Z","modified":"2026-04-06T11:12:19.004Z","1.0.0":"2025-08-30T22:15:04.654Z","1.0.1":"2025-08-30T22:50:16.702Z","2.0.0":"2025-08-31T21:23:12.853Z","3.0.0":"2025-09-05T07:24:18.970Z","3.0.1":"2025-09-05T07:47:44.153Z","3.0.2":"2025-09-05T09:06:56.294Z","3.0.3":"2025-09-10T15:13:20.811Z","3.1.0":"2025-09-11T06:39:34.987Z","4.0.0":"2025-09-11T06:43:26.400Z","4.0.1":"2025-09-11T06:56:08.705Z","4.0.2":"2025-09-11T07:06:50.055Z","4.1.0":"2025-09-13T22:07:38.488Z","4.1.1":"2025-10-29T23:25:30.699Z","5.0.0":"2025-10-29T23:36:56.858Z","6.0.0":"2025-10-30T00:27:06.728Z","6.0.1":"2025-10-30T00:34:55.283Z","7.0.0":"2025-10-30T01:03:15.352Z","8.0.0":"2025-10-30T01:53:46.709Z","8.0.1":"2025-10-30T02:56:22.798Z","9.0.0":"2025-11-19T11:46:29.254Z","9.0.1":"2026-02-12T02:13:13.782Z","9.0.2":"2026-03-13T22:26:08.363Z","9.0.3":"2026-03-14T15:46:19.397Z","10.0.0":"2026-03-27T16:36:25.701Z","10.0.1":"2026-03-29T01:19:58.689Z","10.0.2":"2026-03-29T09:34:40.579Z","11.0.0":"2026-04-05T14:48:35.532Z","12.0.0":"2026-04-06T11:12:18.874Z"},"bugs":{"url":"https://github.com/finger-gun/sisu/issues"},"license":"Apache-2.0","homepage":"https://github.com/finger-gun/sisu#readme","keywords":["sisu","ai","ai-agent","agentic","adapter","openai"],"repository":{"type":"git","url":"git+https://github.com/finger-gun/sisu.git","directory":"packages/adapters/openai"},"description":"Connect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.","maintainers":[{"name":"lejahmie","email":"jamie.telin@gmail.com"}],"readme":"# @sisu-ai/adapter-openai\n\nConnect Sisu to OpenAI and OpenAI-compatible APIs with tools and streaming support.\n\n[![Tests](https://github.com/finger-gun/sisu/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/finger-gun/sisu/actions/workflows/tests.yml)\n[![CodeQL](https://github.com/finger-gun/sisu/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/finger-gun/sisu/actions/workflows/github-code-scanning/codeql)\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/finger-gun/sisu/blob/main/LICENSE)\n[![Downloads](https://img.shields.io/npm/dm/%40sisu-ai%2Fadapter-openai)](https://www.npmjs.com/package/@sisu-ai/adapter-openai)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/finger-gun/sisu/blob/main/CONTRIBUTING.md)\n\n## Setup\n```bash\nnpm i @sisu-ai/adapter-openai\n```\n\n- Env: `API_KEY`.\n- Optional: `DEBUG_LLM=1` to log redacted request/response summaries on errors.\n - Base URL: `BASE_URL` (or pass `baseUrl` in code).\n - Examples may support CLI flags to override env at runtime, e.g. `--openai-api-key`, `--openai-base-url`, `--openai-model`.\n\n## Transport and compatibility\n\n- The adapter now uses the official `openai` Node SDK for chat completions transport.\n- Public Sisu adapter behavior stays the same: `generate(...)`, tool normalization, streaming event shape, and usage mapping are preserved.\n- Existing integrations should not require API changes. If you mocked raw `fetch` internals in tests, update mocks to use `Response`-compatible objects (or SDK-level call boundaries).\n\n## Documentation\nDiscover what you can do through examples or documentation. Check it out at https://github.com/finger-gun/sisu\n\n## Tools\n- Sends `tools` and `tool_choice` (or `function_call` compatibility when needed).\n- Maps `message.tool_calls` to simplified `{ id, name, arguments }` for the middleware loop.\n- Assistant messages that carry only `tool_calls` use `content: null`.\n\n## Usage\n```ts\nimport { createEmbeddingsClient } from '@sisu-ai/core';\nimport { openAIAdapter, openAIEmbeddings } from '@sisu-ai/adapter-openai';\n\nconst model = openAIAdapter({ model: 'gpt-5.4' });\n// or with a gateway\nconst model = openAIAdapter({ model: 'gpt-5.4', baseUrl: 'https://openrouter.ai/api/' });\n\nconst embeddings = openAIEmbeddings({ model: 'text-embedding-3-small' });\nconst vectors = await embeddings.embed(['first text', 'second text']);\n\nconst genericEmbeddings = createEmbeddingsClient({\n  apiKey: process.env.API_KEY,\n  baseUrl: process.env.BASE_URL || 'https://api.openai.com',\n  model: 'text-embedding-3-small',\n});\n```\n\n## Images (Vision)\n- Supports OpenAI multi-part content arrays with `type: 'text' | 'image_url'`.\n- You can pass OpenAI-style `content` parts directly, or use convenience fields like `images`/`image_url`.\n\nOpenAI-style content parts:\n```ts\nconst messages: any[] = [\n  { role: 'system', content: 'You are concise.' },\n  {\n    role: 'user',\n    content: [\n      { type: 'text', text: 'What is in this image?' },\n      { type: 'image_url', image_url: { url: 'https://example.com/pic.jpg' } },\n    ],\n  },\n];\nconst res = await model.generate(messages, { toolChoice: 'none' });\n```\n\nConvenience shape (adapter builds parts under the hood):\n```ts\nconst messages: any[] = [\n  { role: 'system', content: 'You are concise.' },\n  { role: 'user', content: 'Describe the image.', images: ['https://example.com/pic.jpg'] },\n];\nconst res = await model.generate(messages, { toolChoice: 'none' });\n```\n\n**Cost estimation:** With `@sisu-ai/mw-usage-tracker`, configure pricing per 1M tokens.   \n\n**Examples:**\n- gpt-5.4: inputPer1M ≈ 0.15, outputPer1M ≈ 0.60\n- Images: Prefer `imagePer1K` (e.g., ≈0.217 per 1K images). Alternatively, use `imageInputPer1K` + `imageTokenPerImage`.\n\n## Reasoning Models Support\n\nThe OpenAI adapter supports reasoning/thinking models (o1-preview, o1-mini, o3, ChatGPT 5.1) that provide extended chain-of-thought capabilities through internal reasoning that can be preserved across conversation turns.\n\n### Quick Start\n\nEnable reasoning with a simple boolean flag:\n\n```typescript\nimport { openAIAdapter } from '@sisu-ai/adapter-openai';\n\nconst llm = openAIAdapter({ model: 'o1-preview' });\n\nconst response = await llm.generate(\n  [{ role: 'user', content: 'How many \"r\"s are in \"strawberry\"?' }],\n  { reasoning: true }\n);\n\nconsole.log(response.message.content); // \"There are 3 'r's in 'strawberry'\"\nconsole.log(response.message.reasoning_details); // Contains reasoning context\n```\n\n### Reasoning Parameter Formats\n\nThe adapter accepts two formats for the `reasoning` parameter:\n\n```typescript\n// Boolean (recommended) - automatically normalized to { enabled: true }\n{ reasoning: true }\n\n// Object format (OpenAI native) - passed through as-is\n{ reasoning: { enabled: true } }\n```\n\n### Understanding reasoning_details\n\nWhen reasoning is enabled, the API returns a `reasoning_details` field in the assistant message. This field is **opaque** (provider-specific) and typically contains:\n\n```typescript\n// Example structure (actual format may vary by provider)\n{\n  reasoning_details: [\n    {\n      type: 'reasoning.summary',\n      summary: '...human-readable reasoning process...'\n    },\n    {\n      type: 'reasoning.encrypted',\n      data: '...encrypted internal state...'\n    }\n  ]\n}\n```\n\n**Important characteristics:**\n\n- **Summary**: Contains a human-readable explanation of the model's thinking process (when available)\n- **Encrypted contexts**: Preserve internal model state for improved multi-turn coherence\n- **Opaque format**: Treat as a black box; do not modify or parse\n- **Preservation required**: Must be included in subsequent turns for optimal performance\n\n### Multi-Turn Conversations\n\nFor multi-turn conversations with reasoning, you **must** preserve the entire assistant message including `reasoning_details`:\n\n```typescript\nconst llm = openAIAdapter({ model: 'o1-preview' });\n\n// First turn\nconst response1 = await llm.generate(\n  [{ role: 'user', content: 'Solve this complex math problem...' }],\n  { reasoning: true }\n);\n\n// Build conversation history - CRITICAL: include full message with reasoning_details\nconst messages = [\n  { role: 'user', content: 'Solve this complex math problem...' },\n  response1.message, // Complete message with reasoning_details\n  { role: 'user', content: 'Now explain your reasoning step-by-step' }\n];\n\n// Second turn - reasoning context is automatically preserved\nconst response2 = await llm.generate(messages, { reasoning: true });\n```\n\n**Why preservation matters:**\n- Improves response accuracy on follow-up questions\n- Maintains reasoning coherence across turns\n- Enables the model to reference its previous thinking\n- Required by some models for optimal performance\n\n### Supported Models\n\n| Model | Provider | Reasoning Support | Notes |\n|-------|----------|-------------------|-------|\n| o1-preview | OpenAI | ✅ Full | Extended reasoning, higher cost |\n| o1-mini | OpenAI | ✅ Full | Faster reasoning, lower cost |\n| o3-preview | OpenAI | ✅ Full | Next-gen reasoning (limited access) |\n| gpt-5.1 | OpenRouter | ✅ Full | Via OpenRouter with `baseUrl` |\n| gpt-4o | OpenAI | ⚠️ Partial | Accepts parameter but limited reasoning |\n| gpt-5.4 | OpenAI | ⚠️ Partial | Accepts parameter but limited reasoning |\n\n**Usage with OpenRouter:**\n```typescript\nconst llm = openAIAdapter({\n  model: 'gpt-5.1',\n  baseUrl: 'https://openrouter.ai/api/v1',\n  apiKey: process.env.OPENROUTER_API_KEY\n});\n```\n\n### Cost Considerations\n\nReasoning models typically have higher costs due to extended thinking time:\n\n| Model | Input (per 1M tokens) | Output (per 1M tokens) | Notes |\n|-------|----------------------|------------------------|-------|\n| o1-preview | ~$15-20 | ~$60-80 | Premium reasoning |\n| o1-mini | ~$3-5 | ~$12-15 | Cost-effective reasoning |\n| gpt-5.1 | Varies | Varies | Check OpenRouter pricing |\n\n**Tips for cost optimization:**\n- Use `o1-mini` for most reasoning tasks\n- Reserve `o1-preview` for complex problems requiring deep analysis\n- Enable reasoning only when needed (not for simple queries)\n- Use `temperature: 0.1` or lower for deterministic output\n\n### Streaming Support\n\nReasoning is fully supported in streaming mode:\n\n```typescript\nconst stream = await llm.generate(\n  [{ role: 'user', content: 'Complex question...' }],\n  { reasoning: true, stream: true }\n);\n\nfor await (const event of stream) {\n  if (event.type === 'token') {\n    process.stdout.write(event.token);\n  } else if (event.type === 'assistant_message') {\n    // reasoning_details available in final message\n    console.log('\\nReasoning captured:', event.message.reasoning_details);\n  }\n}\n```\n\n### Troubleshooting\n\n**Error: 400/405 when enabling reasoning**\n\nSome models don't support the reasoning parameter. Try:\n- Verify you're using a reasoning-capable model (o1-preview, o1-mini, etc.)\n- Check that your API key has access to reasoning models\n- Ensure `baseUrl` is correct (especially for OpenRouter)\n\n```typescript\ntry {\n  const res = await llm.generate(messages, { reasoning: true });\n} catch (error) {\n  if (error.message.includes('405') || error.message.includes('400')) {\n    console.error('Model may not support reasoning parameter');\n    console.error('Try: o1-preview, o1-mini, or gpt-5.1 via OpenRouter');\n  }\n  throw error;\n}\n```\n\n**No reasoning_details in response**\n\nThis is normal for non-reasoning models:\n- Standard GPT-4/GPT-3.5 models accept the parameter but don't return reasoning details\n- The adapter handles this gracefully - no error, just no `reasoning_details` field\n\n**Multi-turn context lost**\n\nEnsure you're preserving the complete message:\n```typescript\n// ✅ Correct - preserves reasoning_details\nmessages.push(response.message);\n\n// ❌ Wrong - loses reasoning_details\nmessages.push({ role: 'assistant', content: response.message.content });\n```\n\n**High costs**\n\nReasoning models use more tokens:\n- Monitor usage with `@sisu-ai/mw-usage-tracker`\n- Use `o1-mini` instead of `o1-preview` when possible\n- Enable reasoning only for complex tasks\n\n### Complete Example\n\nSee the [openai-reasoning example](../../../examples/openai-reasoning/) for a full working demonstration including:\n- Basic reasoning usage\n- Multi-turn conversations with preserved context\n- Error handling\n- Usage tracking\n- Trace visualization\n\n## Debugging\n- `DEBUG_LLM=1` prints sanitized payloads and error bodies.\n- Combine with `LOG_LEVEL=debug` to see middleware events.\n\n\n# Community & Support\n\nDiscover what you can do through examples or documentation. Check it out at https://github.com/finger-gun/sisu. Example projects live under [`examples/`](https://github.com/finger-gun/sisu/tree/main/examples) in the repo.\n\n- [Code of Conduct](https://github.com/finger-gun/sisu/blob/main/CODE_OF_CONDUCT.md)\n- [Contributing Guide](https://github.com/finger-gun/sisu/blob/main/CONTRIBUTING.md)\n- [License](https://github.com/finger-gun/sisu/blob/main/LICENSE)\n- [Report a Bug](https://github.com/finger-gun/sisu/issues/new?template=bug_report.md)\n- [Request a Feature](https://github.com/finger-gun/sisu/issues/new?template=feature_request.md)\n\n---\n\n## Documentation\n\n**Core** — [Package docs](packages/core/README.md) · [Error types](packages/core/ERROR_TYPES.md)\n\n**Adapters** — [OpenAI](packages/adapters/openai/README.md) · [Anthropic](packages/adapters/anthropic/README.md) · [Ollama](packages/adapters/ollama/README.md)\n\n<details>\n<summary>All middleware packages</summary>\n\n- [@sisu-ai/mw-agent-run-api](packages/middleware/agent-run-api/README.md)\n- [@sisu-ai/mw-context-compressor](packages/middleware/context-compressor/README.md)\n- [@sisu-ai/mw-control-flow](packages/middleware/control-flow/README.md)\n- [@sisu-ai/mw-conversation-buffer](packages/middleware/conversation-buffer/README.md)\n- [@sisu-ai/mw-cors](packages/middleware/cors/README.md)\n- [@sisu-ai/mw-error-boundary](packages/middleware/error-boundary/README.md)\n- [@sisu-ai/mw-guardrails](packages/middleware/guardrails/README.md)\n- [@sisu-ai/mw-invariants](packages/middleware/invariants/README.md)\n- [@sisu-ai/mw-orchestration](packages/middleware/orchestration/README.md)\n- [@sisu-ai/mw-rag](packages/middleware/rag/README.md)\n- [@sisu-ai/mw-react-parser](packages/middleware/react-parser/README.md)\n- [@sisu-ai/mw-register-tools](packages/middleware/register-tools/README.md)\n- [@sisu-ai/mw-tool-calling](packages/middleware/tool-calling/README.md)\n- [@sisu-ai/mw-trace-viewer](packages/middleware/trace-viewer/README.md)\n- [@sisu-ai/mw-usage-tracker](packages/middleware/usage-tracker/README.md)\n</details>\n\n<details>\n<summary>All tool packages</summary>\n\n- [@sisu-ai/tool-aws-s3](packages/tools/aws-s3/README.md)\n- [@sisu-ai/tool-azure-blob](packages/tools/azure-blob/README.md)\n- [@sisu-ai/tool-extract-urls](packages/tools/extract-urls/README.md)\n- [@sisu-ai/tool-github-projects](packages/tools/github-projects/README.md)\n- [@sisu-ai/tool-rag](packages/tools/rag/README.md)\n- [@sisu-ai/tool-summarize-text](packages/tools/summarize-text/README.md)\n- [@sisu-ai/tool-terminal](packages/tools/terminal/README.md)\n- [@sisu-ai/tool-web-fetch](packages/tools/web-fetch/README.md)\n- [@sisu-ai/tool-web-search-duckduckgo](packages/tools/web-search-duckduckgo/README.md)\n- [@sisu-ai/tool-web-search-google](packages/tools/web-search-google/README.md)\n- [@sisu-ai/tool-web-search-openai](packages/tools/web-search-openai/README.md)\n- [@sisu-ai/tool-wikipedia](packages/tools/wikipedia/README.md)\n</details>\n\n<details>\n<summary>All RAG packages</summary>\n\n- [@sisu-ai/rag-core](packages/rag/core/README.md)\n</details>\n\n<details>\n<summary>All vector packages</summary>\n\n- [@sisu-ai/vector-core](packages/vector/core/README.md)\n- [@sisu-ai/vector-chroma](packages/vector/chroma/README.md)\n</details>\n\n<details>\n<summary>All examples</summary>\n\n**Anthropic** — [hello](examples/anthropic-hello/README.md) · [control-flow](examples/anthropic-control-flow/README.md) · [stream](examples/anthropic-stream/README.md) · [weather](examples/anthropic-weather/README.md)\n\n**Ollama** — [hello](examples/ollama-hello/README.md) · [stream](examples/ollama-stream/README.md) · [vision](examples/ollama-vision/README.md) · [weather](examples/ollama-weather/README.md) · [web-search](examples/ollama-web-search/README.md)\n\n**OpenAI** — [hello](examples/openai-hello/README.md) · [weather](examples/openai-weather/README.md) · [stream](examples/openai-stream/README.md) · [vision](examples/openai-vision/README.md) · [reasoning](examples/openai-reasoning/README.md) · [react](examples/openai-react/README.md) · [control-flow](examples/openai-control-flow/README.md) · [branch](examples/openai-branch/README.md) · [parallel](examples/openai-parallel/README.md) · [graph](examples/openai-graph/README.md) · [orchestration](examples/openai-orchestration/README.md) · [orchestration-adaptive](examples/openai-orchestration-adaptive/README.md) · [guardrails](examples/openai-guardrails/README.md) · [error-handling](examples/openai-error-handling/README.md) · [rag-chroma](examples/openai-rag-chroma/README.md) · [web-search](examples/openai-web-search/README.md) · [web-fetch](examples/openai-web-fetch/README.md) · [wikipedia](examples/openai-wikipedia/README.md) · [terminal](examples/openai-terminal/README.md) · [github-projects](examples/openai-github-projects/README.md) · [server](examples/openai-server/README.md) · [aws-s3](examples/openai-aws-s3/README.md) · [azure-blob](examples/openai-azure-blob/README.md)\n</details>\n\n---\n\n## Contributing\n\nWe build Sisu in the open. Contributions welcome.\n\n[Contributing Guide](CONTRIBUTING.md) · [Report a Bug](https://github.com/finger-gun/sisu/issues/new?template=bug_report.md) · [Request a Feature](https://github.com/finger-gun/sisu/issues/new?template=feature_request.md) · [Code of Conduct](CODE_OF_CONDUCT.md)\n\n---\n\n<div align=\"center\">\n\n**[Star on GitHub](https://github.com/finger-gun/sisu)** if Sisu helps you build better agents.\n\n*Quiet, determined, relentlessly useful.*\n\n[Apache 2.0 License](LICENSE)\n\n</div>\n","readmeFilename":"README.md"}