{"_id":"@bman654/clodex","_rev":"69-1391937f8791151918288e2a4df86d4b","name":"@bman654/clodex","dist-tags":{"latest":"2.18.7"},"versions":{"0.1.0":{"name":"@bman654/clodex","version":"0.1.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@0.1.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"30099ad5b717f703773ab4a35274a22f4a89fad8","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-0.1.0.tgz","fileCount":10,"integrity":"sha512-hmJhLqGBW4JVtpOpVRMPmEFFsDqwf1Ss1nYNd1BTIXccKA1QfOH6jKKSHMsAAvMIHtOMRpBH2uleOojsWEayPg==","signatures":[{"sig":"MEQCIHc5WdCd3nUdiqa/GSsBmXzQgwOzk94LcC49flAN9WkrAiAIQW9l88hQBNggmKIxk7L/tBTTGUHceJG+iTsQ4avveQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7792368},"type":"module","engines":{"node":">=22"},"gitHead":"20859b735a6a70d3a948d02e732cb9215115948b","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"11.11.0","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_0.1.0_1784528004637_0.5004585929720302","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bman654/clodex","version":"0.1.1","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@0.1.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"a9a1085e03f1ec6a3e8e9a3ed78a2c6f1d5296a0","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-0.1.1.tgz","fileCount":11,"integrity":"sha512-hZSdUsqSlbD12xRJ/u61tY/1+GJxh1+o8n7CrkoTTrdAq6fFwe/HDjJg4Ut3F5ZVY2LpTgH9NWEs4CuvlNGCrQ==","signatures":[{"sig":"MEQCIGFq8ZIZxrVDKCuhQXaIORYvgZa3cVFpsEnTl7yjAmP7AiAKJu1kHb9IQuVpNBlVP2fOeQcoA+rFYZ91HBFDIKIe4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7875378},"type":"module","engines":{"node":">=22"},"gitHead":"1d30558423cd6c3728e59003ddd13a45d7b30fc2","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_0.1.1_1784552629322_0.5635709803623303","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@bman654/clodex","version":"1.0.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.0.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3f1cea10c249780df683cc2a069a2a95532e21ed","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.0.0.tgz","fileCount":11,"integrity":"sha512-5tP0UNBG3r5BAmT/TJFhJkvwVwufD/P14oZHmqU5EQ2Xi0yQolraNGVHvThKmLlWiAVxlFCaTV33i4b5S7LtGA==","signatures":[{"sig":"MEYCIQCPaHw24ngOB2far4fK3x+fHBWg4JBU2yILj/Z6GwSDKAIhAIwS4YYjj8c3PZSRc2EgTSo6yRILc/oRiaoQHFbPaCws","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7875532},"type":"module","engines":{"node":">=22"},"gitHead":"fbbaf73c42c22a54e16723a85f09c83c4e89830c","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.0.0_1784553574197_0.4561381768786741","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bman654/clodex","version":"1.0.2","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.0.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"75a3fd3fd2c1f5b6ccc6ce6bed49c639ad99a21d","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.0.2.tgz","fileCount":11,"integrity":"sha512-fsZ+I1ZhPq8TpEI4opd8EZE6A3hfUz0a0Z422PFF/XwPT0PfEH2BTEN+ORoWhk2gA5VW/eRzfiOjMAyVMRcBgQ==","signatures":[{"sig":"MEYCIQCsgKWqTaJ6FbazmpOKFbn+T4Y9LxMX/MDSO/jQ6QQfXgIhAOXN7DhcThJBXl7rD+i6w3BsT7hQuXOITYIjY/5SbN9e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7872065},"type":"module","engines":{"node":">=22"},"gitHead":"7d08f676605a33e08abb0600001e6cea83d5f90a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.0.2_1784557117952_0.5001400197435932","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bman654/clodex","version":"1.0.3","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.0.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"ae768bdc59c4e02f971f6550efc2fc0806169a77","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.0.3.tgz","fileCount":11,"integrity":"sha512-oMekisVzlAhfVe0Cm/34zvKMAf48sPPyC2pfUzgSnacThxDsgW1VK3ltbSwnnYQltlv9jTZSgj8lPwXs0Qo8Sg==","signatures":[{"sig":"MEYCIQCf8SimS/jJ6/vqLkaH4cnuRJexgexET1LCBLuKM6/0TAIhAPMvSDHDjxlDwF9cFxKtpPe+Y/jlRqKLn1bPvWi76kCB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7878149},"type":"module","engines":{"node":">=22"},"gitHead":"cf91a90cf94fa6d15c2f0f750a2c043d44a00e08","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.0.3_1784562079332_0.4592180034229074","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bman654/clodex","version":"1.0.4","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.0.4","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"f776b640fdd75aa0ece4071104b852d6c4449315","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.0.4.tgz","fileCount":11,"integrity":"sha512-A88VMihHyb/QAReTx9INSArmhDAZE9aFj32fhCalEl/XT/KEcSjT49hBsxmAbeA0NoI/bTfdHnsCi5jJf85glQ==","signatures":[{"sig":"MEQCIHCJzusmregXvM/pNVMNTa0A6T+UxGm4OKCnVpDD80jmAiASUEhcvwhTPGCqCHgDivk8csKHaeDwmBGmCXRw8N0C9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7882599},"type":"module","engines":{"node":">=22"},"gitHead":"201ac085d70a775fc6095294aaeb41cc1064fda1","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.0.4_1784583868038_0.0662906991622092","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@bman654/clodex","version":"1.1.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.1.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"c23567287da7423e79891c9c4877ab523be95112","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.1.0.tgz","fileCount":11,"integrity":"sha512-9QPmw8Zyd5bplNyocNW6T+CQhF5ZZdfkUywefwe43BMFj4Ve8U0LERDD/24Mn7KYg25t6M0PFUIMWv4j6rEB3w==","signatures":[{"sig":"MEYCIQDEugq2JBHE568feZGbyVkBLqdJNPf9sl7gyaA5OhSWqwIhAIa2xhwpO0pr7bnBX2NxNoxRmF7h4pq/VOY6aizSLkdU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7887959},"type":"module","engines":{"node":">=22"},"gitHead":"0d761e1ae3c5d51aa9abb7432c8e45a0fc3e5ca4","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.1.0_1784656030869_0.25039304626495706","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@bman654/clodex","version":"1.2.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.2.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"f944f1a38a2402fc4b8ff811acc826560031e370","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.2.0.tgz","fileCount":12,"integrity":"sha512-RKo403qOPSOwpDWMZPsEq7x/6vRzsOZWV3ffW1Oih/lqpn03tGAANTUiIV39upyxAgxgKb9V/m5lAPRp7IyEhA==","signatures":[{"sig":"MEQCIDofUjakT5UCwJmpYVPDBmNjh2wiF7mb35A3/Syze3sbAiA61LO6iLGeoJuwOBewitg86AqLA9eMqolQOADlZgvwMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7963991},"type":"module","engines":{"node":">=22"},"gitHead":"6f696f491d01cf1edf2d1b68289447d1592e34c3","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.2.0_1784700655773_0.6782157177520469","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@bman654/clodex","version":"1.2.1","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.2.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"51704dfe5573396c951f580d8902b580531c6cc7","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.2.1.tgz","fileCount":12,"integrity":"sha512-/A4xgc2UQqsHnMwioTjbK2+mcpIkc7BUkYPH3kj7Ugv9+Rk3yMhtYHdE/tPhFxIihjualcQQDq1w0gv/TgpbHQ==","signatures":[{"sig":"MEQCIHHy92qsNbOANCkLj2MBVoCapYr/S/H/VWzF7850dJ+8AiA44SdIhuk0+r+ZU/iF2pCCg8E5emHE3qWUKU5lYKwVxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7964107},"type":"module","engines":{"node":">=22"},"gitHead":"4b28a980589ea45007987771b602b759e5c88336","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.2.1_1784811820537_0.5569029141798794","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@bman654/clodex","version":"1.2.2","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.2.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"80fe05a8e884564d30488f40c93804e7fd8b9183","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.2.2.tgz","fileCount":12,"integrity":"sha512-Ylp/sOSqx2NMz0L9LNZo5NnmZzCFEFoH2J0uD4kFBDDgQVGEtK3Z4BTC/1gOm5ly+oeyyXzFGKb1HJZwIiBKHQ==","signatures":[{"sig":"MEUCIQCJ6Y8+xN6kFmo/EeVZ7uAVZ8LRS6q2Imxg6p9ehi1COQIgZdGLxcASIv5LNKPvZAfm1F1sYrveDX6keQLjH1V04/o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7976225},"type":"module","engines":{"node":">=22"},"gitHead":"a6b30040af54d3d26211444eb371d59269cfc221","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.2.2_1784817576263_0.4673698941292963","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@bman654/clodex","version":"1.3.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@1.3.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"dc6e67db0f509bbb58c9ed43c6b1b78291bd49a8","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-1.3.0.tgz","fileCount":12,"integrity":"sha512-J1tNNE/9h8Oeva1rcQEaFZ9gdGG5/f7Fz/VXMDWX60s1Pz3WBp1WVYwizdsX/kTXI/GHkcJx9FHZAtfJ8TegpQ==","signatures":[{"sig":"MEUCIBgRqdHORSTFA5kA/IuzE5F/EATadg3JK2oVJXmZ0WoSAiEAm71cosPVPI/azsPzzZ2MsrIZwS4DbA+EOJ4YIfO7rvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8083329},"type":"module","engines":{"node":">=22"},"gitHead":"9d89699910d821569018e28842a4cbe4af0389c2","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_1.3.0_1784862013066_0.14994460073486615","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@bman654/clodex","version":"2.0.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.0.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3857c8b0566077322154b63058b21782fa70282b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.0.0.tgz","fileCount":12,"integrity":"sha512-LSsaE4Q7DDWqrvN17gd3ZioOKSLJcxsimMcKPGterlJjah3PqCWu0wN9by4vuq6kBMOmj7XYHpl+QUsJ652HLg==","signatures":[{"sig":"MEQCIGVTl06VvgDE1Q8hhdAOfjemw6cJq/MEKGF9V84ORm4DAiBAkz5XFAgafi03z0cTYGsXIqB9W8smGQ7rbbT1lbhuuw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8086347},"type":"module","engines":{"node":">=22"},"gitHead":"b163fb622c0be68c80a79f2b51e8dbb65520c09b","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.0.0_1784867893915_0.15638136548447568","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@bman654/clodex","version":"2.1.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"0485e8baffa4f4418d738a6ba7c6765052edb3d7","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.0.tgz","fileCount":12,"integrity":"sha512-nR0YDK5p2s+J0PRQs2GhRghhK+RzM4cviNxCOa8ElPRREeYa43lNfaWm3cH21UIlwtJz/i2KfXJzRd1tTlOtRw==","signatures":[{"sig":"MEUCIQCQpMvCKRBvhDl+OH0PQqgKutwXQSZWhIhkbmnB61T13wIgYOD1j0NpJei9EKKISEP5LicknoyV2tWiGkr5z8UmwM0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8103019},"type":"module","engines":{"node":">=22"},"gitHead":"cac6a1152c435d25432da2a84d0ad5845e767592","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.0_1784905193220_0.19829409261296527","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@bman654/clodex","version":"2.1.1","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3c21248e4acbd3f14f25d60db371a1683ff1f4ea","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.1.tgz","fileCount":12,"integrity":"sha512-w64sqzsfQJ/qMt2PKt43qJmfuTGQAF3CdHzLacX9h+9ywpAvOW+Lun3Mv/P6lnxvTVQPH4cyFhGEkeHjxt4Vnw==","signatures":[{"sig":"MEQCIGUFADa4hk+i+oMx0q3XVMoOrAzA5IklRleD3UW3mWNoAiAoEKCJfUdFr9II7QrCFyOo5ThOrKbuBtgqNBI8fPf5dw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8106521},"type":"module","engines":{"node":">=22"},"gitHead":"e2727542211ee66c6b3991f90b9c919398226566","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.1_1784921378833_0.1343083251464059","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@bman654/clodex","version":"2.1.2","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"e7deea99e85c77a3e4cd29f6b27ff949cdc624a4","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.2.tgz","fileCount":12,"integrity":"sha512-Tx6XeUhCdbilxWWvGHoLwjJ1j8ypPRN+R2SeiUXeJ0FsaTGD/o6X7DfTJyrymL+AC6ppGzwy/5q4TeZfkqCzag==","signatures":[{"sig":"MEUCIDWr2vcNfN/noFi93gDjUhts6DyJwH9a7XVgY5uuIkLeAiEAs9bxXd5+i7t02LhFY17zOeuim+XmUk4ymtW1bzlFOfE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8288143},"type":"module","engines":{"node":">=22"},"gitHead":"2770bcd62f4ac2d65ca5bb3c513ec14a7f8b949d","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.2_1784952755715_0.6815211630327682","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"@bman654/clodex","version":"2.1.3","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"555169f24bc25030360794af844bcf7cc8c69381","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.3.tgz","fileCount":12,"integrity":"sha512-7mBEqKmm8/hcMJSBH6IjSCrQfXDbkkItsR5yWkFj3KUMXOm68XuN7B+XvAVCiEyYOyDcE3IpHrExJ2j98Y+ZAw==","signatures":[{"sig":"MEYCIQD7b+5/neNDIBUL8EEiNsOcrii+/SGaGS2A4p2hENZsHgIhAOKDHk6oe3vSfP8jtu/f6qe0NKMKT0EWNx2EVKXVbTw9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8291605},"type":"module","engines":{"node":">=22"},"gitHead":"c1b7850f4fddec7026c41e226319a08667c4bd7b","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.3_1785013420119_0.7499508220346163","host":"s3://npm-registry-packages-npm-production"}},"2.1.4":{"name":"@bman654/clodex","version":"2.1.4","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.4","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"f12bb3f700c1f57d5e67fec880262f3f1674d0c3","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.4.tgz","fileCount":12,"integrity":"sha512-hbVwejoiMy01pdY2fjqc2LqeFtf8fyuVcX1hsbXxm6Q2XjB5QyoKAR5oQnqIu8rQgtx08gFkzj0bxhz6Mc6ufA==","signatures":[{"sig":"MEUCIQDLgb239WFRAB5UhNNMpHmtv81YF4zpDgJIbg0ew5CsdQIgYgM8742YZ5Gce/UTMQsN54zUyds2AYoSNOHaw9luQsE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8293031},"type":"module","engines":{"node":">=22"},"gitHead":"a3fdd7ac884bea47183c25a6567bffb8721df52c","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.4_1785186534186_0.39150319112381404","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"@bman654/clodex","version":"2.1.5","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.5","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"bb7d7ff428e511b2cf19fd3d51fba72602fa4781","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.5.tgz","fileCount":12,"integrity":"sha512-K3KhSNk2XAkc+ZmdCW5v49MN7MjK493feGGq4CreW/m7I/lcU3sUC98ryoYZ7VPZzypRUezcNY2qJRtzxRbMnw==","signatures":[{"sig":"MEQCIEzdkwH2CHuMEsjWV9nmBYHSzbpHgROFjNQ0LVRpQxVqAiBIFmDdBy3xumO61bOTEeuBzAna0hKnIaBtEtDVDQVF+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8403368},"type":"module","engines":{"node":">=22"},"gitHead":"a857f696b3036ba829764ee7eb2d3f03bc05d375","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.5_1785186540063_0.35444760877108417","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"@bman654/clodex","version":"2.1.6","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.6","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"5590763376c633be97766520f5f642afbf349c58","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.6.tgz","fileCount":12,"integrity":"sha512-mwEdq3EOofTfRHBqCCVji1b2Jd5+qu9630+ZAHqK6I+OECkwDjsrWnxDN1KmXOQRXmpyrIrazFle9h8B+51a9A==","signatures":[{"sig":"MEQCIH3N4ewAReNbtNTnwbLr1jv5aSi40haVZ2hXzzO4z763AiBfRTxA2WNAmqzaUz0KVRiefBoSBCLn7XOGaFr7pS8Pjw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8435248},"type":"module","engines":{"node":">=22"},"gitHead":"a058ffd86a91a00e60c7be8fd660c5b425dd3010","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.1","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.6_1785300082819_0.47452083625219776","host":"s3://npm-registry-packages-npm-production"}},"2.1.7":{"name":"@bman654/clodex","version":"2.1.7","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.7","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"fc14d855648c72f2fb9d872756af59de9c3129b1","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.7.tgz","fileCount":12,"integrity":"sha512-QaqkX73ZagUkbVJiq2nZjjbnZEFhUZ/ncNFOgJV+AuCz4TCyb3w7X9wPcj0Rpl+7jNtxhqEN2Us/eKc5fu/Hgw==","signatures":[{"sig":"MEYCIQDIGxN5hrXlaY/hn3JRBLGWkFfvECzqayOwcTMCTFJ9uQIhAPVUl7QCeQAnLlLREK0DsSvS1KS52mt4/COl7wGQvifm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8442110},"type":"module","engines":{"node":">=22"},"gitHead":"592b6affb8160afc6d7095d598f2670046e042bc","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.7_1785639263200_0.9342564876016723","host":"s3://npm-registry-packages-npm-production"}},"2.1.8":{"name":"@bman654/clodex","version":"2.1.8","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.8","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"ff85ea4e96a02169b105fdf40504498ab0dd3d6f","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.8.tgz","fileCount":12,"integrity":"sha512-voBk8EKu37/fKjvC369tsAQNskY8sV4DV4stwIoOQFumbvDrZBcakLagryhW7GZjG1FylmPw0yNoNmV9hUoCHQ==","signatures":[{"sig":"MEUCIBLHviAL7VaYiExeheF3H22l3NGDVweKbTs9CQ+K0Ky1AiEAuZNKniTVHgQb/SYFpkT2tVRV9LskvVxy1f62+qUCAFo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8449466},"type":"module","engines":{"node":">=22"},"gitHead":"169dd7b5a0edc4f9b939cb07ff48dda2cc81a4a0","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.8_1785642904641_0.0931635554315211","host":"s3://npm-registry-packages-npm-production"}},"2.1.9":{"name":"@bman654/clodex","version":"2.1.9","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.1.9","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"b839afaede05bbfb400b6ef89dcdb39309c56b49","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.1.9.tgz","fileCount":12,"integrity":"sha512-7MpEp8WqAg5gYtrYc24HRJpkP4WINbl4KyIiuTqv+Dg9QIN92FcAcO9IMFUu2bmSns5Lx6cErhiEE1MGrP31JA==","signatures":[{"sig":"MEQCIEAAu3KC4RZfqLY/n657fbyqqzdBxVX4xjyNGFpe+r/DAiBbdP97y39rdsPVLCZiLdvdbYeqMpEIf5ngwdGvg0wtYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8451930},"type":"module","engines":{"node":">=22"},"gitHead":"6545461f5c7525c7ccbf10575b4d2da274119324","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.28.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.1.9_1785645599325_0.4002607292835836","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@bman654/clodex","version":"2.2.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.2.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3c7697fb3d43f4107dc06e7d8717a26f8fe8e911","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.2.0.tgz","fileCount":12,"integrity":"sha512-UCrK7JH4pOlPeYGRGdy9aTTCplkNnkA/xn71OlzVzpfZXDuFViifi2pf4UXeNdH4LXyJ7aAJsXF83dd8X/L2yQ==","signatures":[{"sig":"MEYCIQDNWWQgYwZmh/+8GYLBu4ybmW0q8z3CEZkLG81cuyumxgIhAMNhQ5ZkXqLgSA53frNa53JiZlZn+Xt0lqaEvAozvaAv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8503088},"type":"module","engines":{"node":">=22"},"gitHead":"84843604654068bde3e44a61fd560ec33c30d504","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.2.0_1786085094574_0.08401810060193782","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@bman654/clodex","version":"2.2.1","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.2.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3f3878b6fa8c98f0d3b08a337038e8d036b9bd62","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.2.1.tgz","fileCount":12,"integrity":"sha512-4xWksCjSZ3Xly/Sc/hNL+M3uJw9YZw+ttG39l3WHnSO00ckSvoOD2YLQYrLfgsT21kOzMR15DgGf64I9pNMZxA==","signatures":[{"sig":"MEYCIQDzQLgA9odvzJhdlzhoJtXVaUcD3HrIjztS8V1YrMvryQIhAOCyOFHqhHMxTGlX5hbgZVvgnBwwHgpE+0QqUp+1rnxh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8503366},"type":"module","engines":{"node":">=22"},"gitHead":"94e1fc8a48790acdaff18e688486622081c0e89f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.2.1_1786110492052_0.8358910221102034","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"@bman654/clodex","version":"2.2.2","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.2.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"db94d30bdad7117869699779bdb3d1dc94076d77","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.2.2.tgz","fileCount":12,"integrity":"sha512-QQHuOtCrRJNWMh/QTZvL6JXIPbNcW5ti2XD68p5HcDQh8JpjCqu8RbnrZ9NFGEKwYXgQ34IyxHApxYDHjj2n3A==","signatures":[{"sig":"MEQCICNMihhXaJSxlcvcB5p82ZQ6SlATDCVblCTu2D3ydN5yAiBaX48cbhpGUMTHtKg842ZM0Sw4p2MXJQHYJYwPKAwriA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8513573},"type":"module","engines":{"node":">=22"},"gitHead":"d71d1abd7c6e8c4f5c693f89db950b2f27d7977c","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.2.2_1786119652035_0.3270518077644613","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@bman654/clodex","version":"2.3.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.3.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"1e5107814f7863282b78d8c10655ba1908562526","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.3.0.tgz","fileCount":12,"integrity":"sha512-lusOsBBUgwR4KP0WT26jJTxtmgQImifmns63b2mP02cKlNvb0+pnyF3yCXOXGuDwq8I6tdupf/UgdL+89YcOeA==","signatures":[{"sig":"MEQCIHCRqwRMnNHe1IC9y5s4oOOk+jyTSPyw/tLzoZT0063lAiAVickpcgbcJFUR/rsuzgPE7OkLaVxhLYGdwRpx2sBNnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8536415},"type":"module","engines":{"node":">=22"},"gitHead":"4ee1a49f8bf0cd4c6650763e5566e3635e1b7461","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.3.0_1786254523159_0.9088550001596287","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@bman654/clodex","version":"2.4.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.4.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"3723273aa935b4bca7bfc40ff09308763f70494b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.4.0.tgz","fileCount":12,"integrity":"sha512-bOyp8+dMon35ou1dDzicv5u1y/OfFWFaM6Tdm9zC6jQgnFAd7lT+6tRKIakMEC8YuysHXi+K1BmyM/8tF8S+ig==","signatures":[{"sig":"MEUCIQCFXNYybO/kAAoyObVAKAjkHd6VFKatCDK8UjDPLRI+BQIgYCUC/B8isBfgVhUfqJR0lr9V3BddGLXt0Y0fLsoaiDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8589250},"type":"module","engines":{"node":">=22"},"gitHead":"ad907a5436a13cc807e988ad5b4dff0437483d36","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.4.0_1786390604267_0.048388381956485205","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@bman654/clodex","version":"2.5.0","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.5.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"9f7c5c465364c97bf091b7d906430c8d4c821b3b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.5.0.tgz","fileCount":12,"integrity":"sha512-bnYpUBDxImgkFgCUXEebq9YhWR/TEMIc7b0YqC0r0v+cwfaQqOb9KZW00ZV1THlvvYKI9a5LjYmFkCa7TUWjOw==","signatures":[{"sig":"MEQCIGJTbtBAJ5NhStNoJcBc7PSKlL4NI/1Uv6KBx6swZIy9AiAvViOsL0Nk5wqn318y56GKitFVCmGbvjkyeDUtfPWSyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8842433},"type":"module","engines":{"node":">=22"},"gitHead":"378bc3db9561804934ff218a408413e831395ded","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.5.0_1786460706552_0.9985575034047034","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"@bman654/clodex","version":"2.5.1","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.5.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"65ea2d0679adb72b8de3cfd387561b81e7b3b0f5","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.5.1.tgz","fileCount":12,"integrity":"sha512-l3vNhFeAqMejqhTjvzohxdwA1FbrvCcKQwDAyySxOAkhgXLBj3ugyak5wNTx7RkNkwX7wtzx+ZgGrls3+gcZiQ==","signatures":[{"sig":"MEYCIQCpBp7TzYZDkDo+I1hU9Jpp/zruJwAOAeB3Z4xY6WWENQIhAMVabpTD2//MT5dvcwtQfJk0SQqyR36PDDw/c0s2kU3S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8842833},"type":"module","engines":{"node":">=22"},"gitHead":"0c5457b0242c43a842ea2723abf9b3094392d981","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.5.1_1786504647316_0.7924043265116212","host":"s3://npm-registry-packages-npm-production"}},"2.5.2":{"name":"@bman654/clodex","version":"2.5.2","keywords":["claude","claude-code","openai","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.5.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"779b02b50333793da4180d36713d050e11d2ff62","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.5.2.tgz","fileCount":12,"integrity":"sha512-zB15UbT1x8TsV/2DEB+08ZnNCavKJK2Qv4UX6qDpgmOZ55h1Mn9v+TcXQmnHeilDu6YS+9WdWcXRbnKBq5SJkw==","signatures":[{"sig":"MEYCIQC5+qKEkjuugtqLRmRYDqCVMppK46FHxWoJv5PxPKWcTwIhAKrBpoduCiby9SSxG+uDKk0zAkax12CTshOLqOwZfzFQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8872045},"type":"module","engines":{"node":">=22"},"gitHead":"3e8bbb4ce1962a4e71b54fbb5551ea1f8a16cab2","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI models — OpenAI API key or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.5.2_1786624313707_0.6778845145194756","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@bman654/clodex","version":"2.6.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.6.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"5eb741a215edd092a2bfa145e6195ce83ba3360c","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.6.0.tgz","fileCount":13,"integrity":"sha512-M44gK6kaZrsWhm7G5H7AUUDMVzbptvuFrDzBVoMLWu1h3nzwsxl/agFw2Bs4sSV86BVLbnH44pYvj8DU8maKVQ==","signatures":[{"sig":"MEQCIFZBJC8CrSGGIJHfAkegIoEvq37cbkTcDcj1CMU6yIFPAiAwfbqB/25Pup6v1EnMEDzUjuydy9HsX5uca/6/58do/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8956613},"type":"module","engines":{"node":">=22"},"gitHead":"e05e202fdc55ec8bec1fbf0fd3df44487b3fb12b","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.6.0_1786656693423_0.18486471047136455","host":"s3://npm-registry-packages-npm-production"}},"2.6.1":{"name":"@bman654/clodex","version":"2.6.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.6.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"583db3dc0552566cba25dde3fc4d55cd6940eefe","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.6.1.tgz","fileCount":13,"integrity":"sha512-JojWVrmfaGmuH4pZ2rLJkh3cqeECNkh5Qr1Oww4pjuoUmISS4HhVYjvv0PAt2oaWriHqV3dOn95Sx71UcIOT5w==","signatures":[{"sig":"MEYCIQDUx4OUZO3O1W1lKn9xT1mhHtNliYEXGSiHT3dsEKQWRgIhALpeQ9mMqBH+4M4LqtJ8A2rIzdNznbJaLokeMWLXwvUp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8959957},"type":"module","engines":{"node":">=22"},"gitHead":"e6b33d7fea45588a604b628d4bf043806b043515","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.6.1_1787080221445_0.06435301787991987","host":"s3://npm-registry-packages-npm-production"}},"2.6.2":{"name":"@bman654/clodex","version":"2.6.2","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.6.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"ba9b4fb8120bdc0ed1012a29e33f9c2773c59f6f","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.6.2.tgz","fileCount":13,"integrity":"sha512-uwP5OJSTRkWO13cb+5lO9KLwNey0iXjJRTv7l1krSIh8sjL3hbUxuHrXPLVlb2JhDkUuxmiG8ZL3K4xyXpsh1A==","signatures":[{"sig":"MEUCIGqXsIgRZsICn/Q2aSK8IU7/S2nrf2Ft1Aej/N2UsDK0AiEAsy7XpfN1dgVumGKB+tIA1oVhmPQLXMDFMdG7il36HsY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8965657},"type":"module","engines":{"node":">=22"},"gitHead":"d9040510b0ad27adaa2be02a3f503d6ea2fb76a5","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.6.2_1787288394216_0.15889966168089775","host":"s3://npm-registry-packages-npm-production"}},"2.6.3":{"name":"@bman654/clodex","version":"2.6.3","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.6.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"5fc005ca9c9ae993ec26ef263968c20e74c87197","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.6.3.tgz","fileCount":13,"integrity":"sha512-G/yx7G64q+VEhKvcSAfbw5vc52pT3+QClWUQXLOYMCaxwoSBbeT6l4s5gTk3sxomes1dq52j9pRK9SrWzXbFZg==","signatures":[{"sig":"MEQCIATrUmrLU5eXyS/CmJoEHhvMBXZwqxHi/aIHG+kcWunjAiB+HHBKzoxp7QMMoAL2hsFR5ZnLuYEsSiey6cR7HklB+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8976616},"type":"module","engines":{"node":">=22"},"gitHead":"67042c937aee11fd556c0f07500dd05dd4c34a0a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.6.3_1787347441575_0.1843815575208505","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@bman654/clodex","version":"2.7.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.7.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"251023614f82ae29d4701119e35fcdf779c5a048","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.7.0.tgz","fileCount":13,"integrity":"sha512-Kr0AuCbU8pmuyFYG90CZHIcLPGaCd73WQZ8DTKcB5FTdqFOfHw8t+NNuXUSwN7uP8ZksjaOrCXRZY4Bp+SmvBQ==","signatures":[{"sig":"MEQCIGwmwrCu/77qonQcMKZGfG5z5lyeGDl4hbWmtgJMwS+UAiAUg34wgty3fT576k/rIbQIFWvFehpMKdL3V1TZEzTxNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9054291},"type":"module","engines":{"node":">=22"},"gitHead":"8350dd65520cd1baf5d39f4fa08361ed6f278cef","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.7.0_1787351247811_0.1666485474787669","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@bman654/clodex","version":"2.8.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"cc9288f045ffa0741f9b9f4f838115eef1bf9120","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.0.tgz","fileCount":13,"integrity":"sha512-Mlv8Wu9W3Jp9shcRRjVh/IAs9osgTyJeMhhbhc4VuTY4JIMp7BHvTKiGWx9xTDHunPt+B0+zPckxwkaXQcGNOg==","signatures":[{"sig":"MEYCIQDXjsJU7ZiFQKUU4TR2J2QlPRavNhP0NhfbTaoaGQj99gIhALemRYQ9xlbs2OOZFm/iDN96q0Rznr8uzlJQBdZWokAl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9084172},"type":"module","engines":{"node":">=22"},"gitHead":"c8fd2e18b41041478128456929d6120d6c0334a1","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.0_1787538489768_0.45194452954106445","host":"s3://npm-registry-packages-npm-production"}},"2.8.1":{"name":"@bman654/clodex","version":"2.8.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"004fec729e10c526b78c46249b6ee003cdf8b0bb","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.1.tgz","fileCount":13,"integrity":"sha512-7PkoBfbFvryuG+tm9D55E6NQhwI28ly5sotYxyra6r/LaQSN96zGvYXseQxAF7VvYUmB+ZWMWARVfXN/iS85PA==","signatures":[{"sig":"MEQCIEKTS/k3iLy9caS0OSZ35C+G0YeYuRjU7E4X2buvOn4cAiAMQT0EMFd01V/rByOEOBQJHtge5T+MctKtaA++bYzB4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9124310},"type":"module","engines":{"node":">=22"},"gitHead":"55d397277b5cd896ec6816a6ad936b95e51124a7","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.1_1787626830436_0.766690606166524","host":"s3://npm-registry-packages-npm-production"}},"2.8.2":{"name":"@bman654/clodex","version":"2.8.2","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"9b3f50e65e8c1e0626da2419d638519d050fb264","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.2.tgz","fileCount":13,"integrity":"sha512-0NixyUBadVAI0uKi1G5MrlVg4ZtVrt2af1iZffVVtRgyAuJLMy74vhhOrc/botSyo66qpRVRxgq4dCBaQJ2pXA==","signatures":[{"sig":"MEUCIF5BkoxxljJ4TXSBGYhCacB5H3kmELmABvWrzT/6/c+WAiEAhVLqeQA75HZm/uhkutpum1EjkNNeWhwt/6vqRfVGZ/U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9154338},"type":"module","engines":{"node":">=22"},"gitHead":"54750d441c970d8644822ad35d2ead7de247d954","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.2_1787713288153_0.2543926959263496","host":"s3://npm-registry-packages-npm-production"}},"2.8.3":{"name":"@bman654/clodex","version":"2.8.3","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"2b2aa14e354bdbf1ca4aef87521cb8c4e02a1a7f","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.3.tgz","fileCount":13,"integrity":"sha512-BCZDxgST2kJeC9HJxkwgqCtYR3Xo2GRAiqqYkoKvRwouuo+hNtgXwzkMrRchHSxSuxIYo2WyrtPn0A9Qo/QiKQ==","signatures":[{"sig":"MEUCIQCpupbzpW8qLg0K8bF1bGzsDT2ZOl64qeWJtalqWpdY4gIgN9cT5ZwO5bkQCU2QOTadRepeo2eehFNW3+igob+P06s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9158154},"type":"module","engines":{"node":">=22"},"gitHead":"a44b3069da7890213c132f66ee2aaf9dd6c7ea5e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.3_1787803644251_0.9556696883091829","host":"s3://npm-registry-packages-npm-production"}},"2.8.4":{"name":"@bman654/clodex","version":"2.8.4","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.4","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"c76d0b618de01685dbd14eea94d1ecb15b0e0828","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.4.tgz","fileCount":13,"integrity":"sha512-JBA/kzHYJnspLrijzCZr4Pu1xewzm9LsByMadaAZf5gSVXxum3nVqnTvwGdmsc7yjQk7tSwjCg8Z9M4Z919Jlw==","signatures":[{"sig":"MEUCIQDGBlbE3KnKwAGwW3EyPRSqD4tb17qP+iw3IqRH04jSRQIgAWpW/xxsU3IGO4YJ1MVWj8546WTm55mrQs18b8OSwhM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9210743},"type":"module","engines":{"node":">=22"},"gitHead":"c2deba8e2b4be8a05076067ef6a8451d55754721","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.4_1788295987941_0.6458554950674709","host":"s3://npm-registry-packages-npm-production"}},"2.8.5":{"name":"@bman654/clodex","version":"2.8.5","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.8.5","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"dc2988ae08429ac6740689849aa6e43a1ea1064e","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.8.5.tgz","fileCount":13,"integrity":"sha512-UuvK18c7T15i+nZUA1WOfH6VCvR2B32O+tndo4t5/Qor1MY0//IqJ4Je3T1/6VTqXUlaxoqgh5dYxnASl+fe4g==","signatures":[{"sig":"MEYCIQCmnWOXN6m4D/2MavIFKKpiMuAoapv5W2Hv7JgCIDdHnAIhAIkEaK7+dV4jrnWE5aF1RT50vJn8IwjahpENt9191DTz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9217481},"type":"module","engines":{"node":">=22"},"gitHead":"09d3cdb1833f517a2da5d01690d7b97e8a980ead","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.8.5_1788316671853_0.1562929530289634","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@bman654/clodex","version":"2.9.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.9.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"e5bb6b9ec34f2e52f53ba0d6bd18600e5bb2231f","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.9.0.tgz","fileCount":13,"integrity":"sha512-naO4EHOZTrnju6v+aMx3XrNtCVGGNpkYs1XcW1lUkCZJCrurdaSn5JZk6VD4SK+PW+CBQOIuSvr9/5waNS/j9A==","signatures":[{"sig":"MEYCIQDklI+q5unwty1gAORDy6svhrL90PX1exi27WO//04uxAIhAM+SvewyjWwBpANS4Pxi1Vvm5ASNeg+EQNE4BQBzOfEd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9252369},"type":"module","engines":{"node":">=22"},"gitHead":"068273c5e09344f311090a62b3cd174bf4cd5a53","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.9.0_1788506691245_0.3303277309868762","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@bman654/clodex","version":"2.10.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.10.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"8755f856415e4495d7582e30b85c785a00a5b86b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.10.0.tgz","fileCount":13,"integrity":"sha512-tvDnqRE4xZDBQD9TObuA9Ca81kYA2Slfaol/a0axGx8sN0oonQx5F2d25CQw1CAKT0LoV1bMhLkYfUMWp6Cw/A==","signatures":[{"sig":"MEUCIC2rHRxIsZpnOl+q9a/BC+dp6xgZqEh/qHWnXFo4o6LVAiEAuP6LZYH1sRPJMKCYviCh21HTUPvakjw+xnWR+YKycvI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9321193},"type":"module","engines":{"node":">=22"},"gitHead":"c4365a3ca2e301a255d189fdf407f4b42dc3a286","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.10.0_1788528041925_0.9332455046436186","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@bman654/clodex","version":"2.11.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"28e05d48fa24c782ab56a2080a8b3edfb2c35466","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.0.tgz","fileCount":13,"integrity":"sha512-dIPS9c+9ykQVy078CbHZ1YrKYBiYDD5lMlPgRYtcuvTqunDZ9yj4jYILpad2j4r8tuo1qXoPqdOaieA0tgo11g==","signatures":[{"sig":"MEUCIQCC78f6hblE+89F1igzqq6mhtWqHRYV+lRF5lYeGZZ27gIgSRZRPYmUFQPJsjlwv0GwN28axBgkLNmkjJdKAzNIL7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9334812},"type":"module","engines":{"node":">=22"},"gitHead":"678c3e36b3b26c406f1781c037119ec35adc1730","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.0_1788561171676_0.2149762732532734","host":"s3://npm-registry-packages-npm-production"}},"2.11.1":{"name":"@bman654/clodex","version":"2.11.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"1756f0a6ecac5eadf4465ecd805abf728c3f5a2d","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.1.tgz","fileCount":13,"integrity":"sha512-j3yM0Znh9kZiBDrp2l/YYbtd/0SIVaSeN7rV7VwY92oMrVNtLsL+B++Y7bCU9bBLHVElj12tKJtvXvHZ9qAUTQ==","signatures":[{"sig":"MEUCIQCWRR8WHlG1zb8lHGoXcvUZzxf0soJxzk6NUJ+4lU0ftgIgIf1d+3su3o/jsvf5gwWnXNnNyGYoPr/b/VOU8MrEEx4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9337042},"type":"module","engines":{"node":">=22"},"gitHead":"4b73afb88a8a24903a6d3ee1b0676dc001c13a5a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.1_1788586469529_0.36719938150363296","host":"s3://npm-registry-packages-npm-production"}},"2.11.2":{"name":"@bman654/clodex","version":"2.11.2","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"43b639f2dacc21691c837d38433f8109fb0bf26f","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.2.tgz","fileCount":13,"integrity":"sha512-dVQDQ2RA4AbW07osDGwbWaqGvCfpi3YzB/JLBOdhcF6n0c+sCuwzy0/eotzUZn0YZkTNs6iJw7A+yd3bFHfdrg==","signatures":[{"sig":"MEUCIQDl9PdIrG1ohelUke7uYqm3vZ/oIOlijB9LnzCLks3eYAIgTDJbQBq+PTInZtGtEll8ohcifCJP6/Zqc27kuczQoHQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9376064},"type":"module","engines":{"node":">=22"},"gitHead":"bd5a9d5d61b6d162b3be0140137f7291de359bed","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.2_1788666173881_0.5074770352420455","host":"s3://npm-registry-packages-npm-production"}},"2.11.3":{"name":"@bman654/clodex","version":"2.11.3","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"5b33b0a3cbf4f2e8c911d3b252b212c868821ce6","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.3.tgz","fileCount":13,"integrity":"sha512-8XLXkjRUl/tozEX0jKZ3B/543AyGCN4rwZQo7NrC5YrJMTIK1sHLzs6dXlJ0Q2QYyS06TO5wERbQW7oL6DBrww==","signatures":[{"sig":"MEYCIQCIlskxKIHEeGnynj5/P6mIltJebE8L6252PVPNMa664gIhAKccP01VJoUMRCJkAyp5qtDQUZpe+LtECM0ybZG+b7eT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9385923},"type":"module","engines":{"node":">=22"},"gitHead":"a713af061d4bb24abe8c74ec64125179dead014a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.3_1788764189253_0.9368776843961406","host":"s3://npm-registry-packages-npm-production"}},"2.11.4":{"name":"@bman654/clodex","version":"2.11.4","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.4","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"fb371cb6013d9ef2a39ab342bc78d3dcbf5574a5","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.4.tgz","fileCount":13,"integrity":"sha512-l0mpT9bYGu1N0XvWxyw/rb8a+r4v41vaQ2VVRMoDxKOs6u5Fdq4/9yKz8OQfqvSy5/N4lUaqw6bK3kgCscY47g==","signatures":[{"sig":"MEYCIQD/8PEWSQp6UC1mXRNhfbCG4LjwUNA5EDyfmeV0L9UDfQIhAMXXGlCmuXwnQHzxkPgqFWn6H0N5bdj3KdGxhX2m5w7K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9396440},"type":"module","engines":{"node":">=22"},"gitHead":"e415728dc87dc9dfa3ec3384e822663ae2a3d815","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.4_1788893822207_0.9275557738428344","host":"s3://npm-registry-packages-npm-production"}},"2.11.5":{"name":"@bman654/clodex","version":"2.11.5","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.5","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"17cb73c4696f42c09d3fce9604c4fb08d509b576","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.5.tgz","fileCount":13,"integrity":"sha512-XwowZX+h5pNp9dNtic7AVWhDSyUgNlr2u2V3mi37W7y6uljJoaDYfT8Ou1XQX0d7MW7SJqmceA+xOmgtkPJlaw==","signatures":[{"sig":"MEUCIQDh9tOFyRGSzQVQRkP2UBINQ0fqV3OEiBhtNRejSV7wewIgfz3moBuzMXyhgSMzcVHLmlpwJpAIA5lX3ZMLF0XWSbo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9426748},"type":"module","engines":{"node":">=22"},"gitHead":"d6a901bea5da7ee845d77fbc17d8f1273238d149","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.5_1788973454079_0.3778880849734336","host":"s3://npm-registry-packages-npm-production"}},"2.11.6":{"name":"@bman654/clodex","version":"2.11.6","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.6","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"27223cb5081137f5f5687554be9d6f5a00dc04c4","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.6.tgz","fileCount":13,"integrity":"sha512-kR5f5fYUNo/YGuSnbf8MEs9ZcI9ZUDLJf65ZJkvqEkUduHNokV5rhQ+ftExvwtd8paalgIO/Y1NRfblK/g776Q==","signatures":[{"sig":"MEUCIC6xVAoaXGW3W67NwxuUdRpU/cM6ZJrV91fJuMKXoWlHAiEAqtVi6z2lq1JnM64eMkcJWZrOy0wHcbZui0JLam3JC/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9468876},"type":"module","engines":{"node":">=22"},"gitHead":"1e199f7046101d294ba0c594ba9fc91d4408baa7","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.6_1788982702601_0.7974469382123226","host":"s3://npm-registry-packages-npm-production"}},"2.11.7":{"name":"@bman654/clodex","version":"2.11.7","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.11.7","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"d70174a373df50c3a83238c812f72e0e558d5997","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.11.7.tgz","fileCount":14,"integrity":"sha512-VJrTY9Xc7qT+rx52unlVU8g5VBBkMkbHIezSomL1wgTR00me/BHG5XkY7YfsiI5yzIks1j13NjcmzmdYgJV2Og==","signatures":[{"sig":"MEQCIDgvo+ZZkzTdFmLXrKXJezNkITJJwIFdGMZqeXXUuc0ZAiAQ5vwQ1K61E25u+soHYcNcWq1eaRR3N0PxkGKr/PWC5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.11.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9490780},"type":"module","engines":{"node":">=22"},"gitHead":"c6e370564c0ed13054d79d6ef491eb53fc7df196","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.11.7_1789141545176_0.5896374704324943","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@bman654/clodex","version":"2.12.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.12.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"f958c154846165732ae771dd2169096a368908a1","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.12.0.tgz","fileCount":14,"integrity":"sha512-4s8Md/094twLJXUr9xkbPAIwEvhPlAqrn+6w/84h6VOoHaMpGgOd4yeW7KXoLp/Py+Srrkv1Q7X5ByRM+OFQ1w==","signatures":[{"sig":"MEUCID6fOWfBJlnp+KPro5GjaWb2SMlZm7Frch9J/MeV2kq9AiEAiTQZxAiFEO2ERYiIB+3r6oKjzIQnDWwvxlpyoDyPSkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9496271},"type":"module","engines":{"node":">=22"},"gitHead":"e6e4dcae4d4f8ba7662223c28628cb09e5883f1e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.12.0_1789151294945_0.16839296063945386","host":"s3://npm-registry-packages-npm-production"}},"2.12.1":{"name":"@bman654/clodex","version":"2.12.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.12.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"8ef41f5c91ad2ef3e01395b68bf6893a21490a84","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.12.1.tgz","fileCount":14,"integrity":"sha512-wHXKb765ulhVD1WRNHy1cs7ybjjZMX72okasfE0/FPweV5qKcO9wTPl+Mb//sxZeiDQ7v07RRHYMM+RKHIfuyg==","signatures":[{"sig":"MEQCIH1DNqLsPEu4ABxAQmbF9tnEuas7NIKK8sJ29a9OBdNHAiAEJxvlSUQxwqmvgDzRhsMhg226YQTtgqivOP1nx4EXFw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9553147},"type":"module","engines":{"node":">=22"},"gitHead":"0243e079b1daafe7aa05fd7aa2813ee1fa040810","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.12.1_1789177325983_0.08364586266075125","host":"s3://npm-registry-packages-npm-production"}},"2.12.2":{"name":"@bman654/clodex","version":"2.12.2","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.12.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"b9e2743524db3e43774a3e1cd062eae8d42fcf4b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.12.2.tgz","fileCount":14,"integrity":"sha512-GXgLEjQ2dqURTzrUu5wpIJDzDWwrzM2y4LRTW3CF32l3G00jkXyjeTYoKChkWonAUcKUgZkHyHaZry4/zwT1Kg==","signatures":[{"sig":"MEQCIHnh07IIIeyInLAyFoJ9xS8w9SR0iVerOQq3KyT8Prb4AiB0D//dvUh2eYCbk2PJI32Y1folZlJjmZJ5cKQEGwsgSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9575780},"type":"module","engines":{"node":">=22"},"gitHead":"2f4c7f5fcb5c07a0fec81506111f428706413e50","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.12.2_1789271172058_0.6223282168511819","host":"s3://npm-registry-packages-npm-production"}},"2.13.0":{"name":"@bman654/clodex","version":"2.13.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.13.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"85c8a9358947113771b3117cf7735df96d8f672c","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.13.0.tgz","fileCount":14,"integrity":"sha512-KZFxS9dJd2yzWN/oJETY6pCd2SjkA+qBZ23DRzsICdI5shqFWCACPw4OxTMpraRMAOzupdn6gkkl69qd4KhGxg==","signatures":[{"sig":"MEYCIQD3F21ZgOjG1LqP4YGfDy8cj27OJkD3MAXzFgwhwVT8AAIhANG/Ym/Z//Y6o+MI4Jq6BYiOikuILOKqOzIyln2i9krq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9587918},"type":"module","engines":{"node":">=22"},"gitHead":"75bd5cc69e04f05eb0e1ee16e5f2801f2ef4718e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.13.0_1789368796892_0.6874614074668721","host":"s3://npm-registry-packages-npm-production"}},"2.13.1":{"name":"@bman654/clodex","version":"2.13.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.13.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"c4fe658b7b7442ef60bea30c58e8cb22a038d3c5","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.13.1.tgz","fileCount":14,"integrity":"sha512-BIGMOK1GD9LzVfUC8Ce8Txywz1XkjrOG/SJ5ndqktB7ARP88uJyzq1rQqBUiYwfGlzqPtc0l3zKaTKmt9wdoAw==","signatures":[{"sig":"MEQCIBithxTVXWviJkcz3CeevXzBPpfnNRiOQhexitcPJ7DhAiAxbNFPZXUz7sQFoavtINlkbGncPSGKB6+RN2/XpemKBQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9590488},"type":"module","engines":{"node":">=22"},"gitHead":"92b0fbdddb2ddcdbb895a0d8fcb27f64f25b2175","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.13.1_1789412740276_0.853643980845981","host":"s3://npm-registry-packages-npm-production"}},"2.14.0":{"name":"@bman654/clodex","version":"2.14.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.14.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"783defcc7421509c1c8277d8740677f91de4a186","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.14.0.tgz","fileCount":15,"integrity":"sha512-rkNBETL5LwQYHmkQacjCFAkPTcWXakC/0+NVTQDG0FJy4r6vsyQjVLjHYF63JaAbwLw7dPwowwH4a6V+AbuQsQ==","signatures":[{"sig":"MEYCIQD+pIEmmDqFfLo/KtSvdirGIEL/GePXuS60LJOkJnlbRgIhANihcQh1VcywB84H6dPkn03hKzsCPiIGuq69w6Re6GeT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9722479},"type":"module","engines":{"node":">=22"},"gitHead":"5b619b32b76aa9cb337f85c2a530828f799e9828","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.14.0_1789615797352_0.17729204924630704","host":"s3://npm-registry-packages-npm-production"}},"2.14.1":{"name":"@bman654/clodex","version":"2.14.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.14.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"9c9038bad287fa4e09382518c59db9550e90101c","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.14.1.tgz","fileCount":15,"integrity":"sha512-9QAT3HqZI2ee+GsaJITYS6KH6TgVuW3vV9cSWVVqyqA+N/AG2Dqv/qJ3OMjsXUAFvHFafYo7Y/T1NFyksm9lxA==","signatures":[{"sig":"MEYCIQChJ8kHxEZgC9rDPwwy/+BmPEXUcd2Z89CZZW3P58kgeQIhAJT/kqpz31vuRD7NhQ31VM24w3gQm+w5YbxKG25wftpH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.14.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9735902},"type":"module","engines":{"node":">=22"},"gitHead":"9e1e27914c14c2feefe0c23c2468d591d01fa615","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.14.1_1789762631641_0.8545295587610757","host":"s3://npm-registry-packages-npm-production"}},"2.15.0":{"name":"@bman654/clodex","version":"2.15.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.15.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"ed08af7b8a5545eba39640eda6f87a42f26dd815","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.15.0.tgz","fileCount":15,"integrity":"sha512-rCakJrgjAg09qrNsOIzt/1ZiMAYYrTxBMkjX/qhKHLk/9FCGtCrDpo3u8Uv5LXlYvtgpOcqJ2+f+MQf7pb0cMg==","signatures":[{"sig":"MEQCIFoYnjGJRN6E3QH4nvLWMlkgKOruHTrffIm/tEUIPRVbAiArsS6rD7ufyJFXJIBRzevfpKDLEGx3ImsHqXFoSuqG+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9757627},"type":"module","engines":{"node":">=22"},"gitHead":"f1c74ac3158f4d65cd83e372dacefcfe49c89daf","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.15.0_1789788395257_0.6977120558171905","host":"s3://npm-registry-packages-npm-production"}},"2.16.0":{"name":"@bman654/clodex","version":"2.16.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.16.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"7bfe7cc2544f866c4aed1d946f194479f258bb14","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.16.0.tgz","fileCount":15,"integrity":"sha512-AcWM061MUqzwmhDRJ4xjvlHYVQzHwpoweXCbP4rgzqBanNcGkXquAfodrpO15iklnQxRzzBmPvk+y4PoDyIi3g==","signatures":[{"sig":"MEUCIQC7pVGIt7plTg1UHo14Xx9VqpbggDRm0ArArJtzgZe0VAIgGFTZ/1W+8JUGSx43XgA78LZ2otpgDNjEEJnGtypgzPs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9776046},"type":"module","engines":{"node":">=22"},"gitHead":"cb82ecec02b969142b6e422be597c0457225c795","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.0.2","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.16.0_1790084738699_0.9722567242706455","host":"s3://npm-registry-packages-npm-production"}},"2.17.0":{"name":"@bman654/clodex","version":"2.17.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.17.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"9648db283f5162532bc63600c1a282eeb833d3e8","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.17.0.tgz","fileCount":15,"integrity":"sha512-Y14KWUIUZSj42PhOV1y6EfLZel9yjJ4Gmr1opfmQkOQfEOob2uvQaGPBzYBwDlDJM7QioMMrNIRpIW0xNp+lKw==","signatures":[{"sig":"MEQCICgeBS9LwgHPMsrEEWkEKWIq4wvsNCJGVL5PfAtP9+ZzAiA4tBkWlUwLkgQc97ZSegIl4OHT5njEpcJxYnVCoWF4cw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9777843},"type":"module","engines":{"node":">=22"},"gitHead":"3b97b31635ac4591a6a1ae70f096cea178e994de","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.17.0_1790138966417_0.8165655454178031","host":"s3://npm-registry-packages-npm-production"}},"2.18.0":{"name":"@bman654/clodex","version":"2.18.0","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.0","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"11da4cab23d366ef72a1619093626f6f1839aad6","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.0.tgz","fileCount":15,"integrity":"sha512-h6ZX76YFgTIVfSnkZlhuB3kpiNrKbZDMJk8gjMrL/ZEIlT5J6cR2VK3CPZkxMEpZbiQELuvlOFbQk1E9J+PZAg==","signatures":[{"sig":"MEUCIQDnIYqPRQUtP4ngB4E5AViGooOyK27QcL+Y8Q+gkJWHAQIgQ0I+mJShMjI/Y3u60/5rMLXsR++xi3Ul0Chfd7tFeJY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9825430},"type":"module","engines":{"node":">=22"},"gitHead":"aa72c519942301ece20ae4ad0e0aa93aa9ac6500","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.0","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","node-gyp-build":"4.8.4","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.0_1790262513662_0.9149856626818909","host":"s3://npm-registry-packages-npm-production"}},"2.18.1":{"name":"@bman654/clodex","version":"2.18.1","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.1","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"755d1cfd0029df32a433bae715a853ca6f6efe06","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.1.tgz","fileCount":15,"integrity":"sha512-EoHtb8xWZbCurZ27/602Vw8LY8Ex+JRQF2dPzarq17dNYh2oTH9/52Zuy/TLBc8JpJtFxhAEms3PNKmveZwqiQ==","signatures":[{"sig":"MEYCIQCOzShPDisD0QJlfSKINuOVZXf/b9lMceuaFeln4VUdygIhAPzOf9Exjrnw/SjVQcCJsJD4Hv7wYdbXCuuewkLq7M3e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9819910},"type":"module","engines":{"node":">=22"},"gitHead":"98242e8f1f211aafc165285f4e3ce47ef5260506","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.1_1790305882971_0.683024917529186","host":"s3://npm-registry-packages-npm-production"}},"2.18.2":{"name":"@bman654/clodex","version":"2.18.2","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.2","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"f51eaf9ed28741b0fded7b9f4ccd959e10be8f1c","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.2.tgz","fileCount":15,"integrity":"sha512-YaVrU+TgjOrb+vrv/4A3rnM7QrpjbudxiMOw5P29BZCbuKimhKdumYLSgrrEH0hYKGdXZDrzaPKDhgdMVKxvHA==","signatures":[{"sig":"MEYCIQCErW5Ls8GFzTsOPptks306kKvj2j34OqeAvPBz4hBD0QIhANatyQL0iipds3xwVy5K6Qs2WX4/y87wBadr6CJWsBzz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9828357},"type":"module","engines":{"node":">=22"},"gitHead":"239b42e32e118cb09ff07395aa5c6d8c1363b9a4","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.2_1790395597858_0.3868689164627144","host":"s3://npm-registry-packages-npm-production"}},"2.18.3":{"name":"@bman654/clodex","version":"2.18.3","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.3","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"798cfb8ad7527ec5a69e48b00cd6bce30361a2b3","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.3.tgz","fileCount":15,"integrity":"sha512-h2y/qVP1UQDLDI5dtcYLaiN6VmYAgKexwgKgUdeq+dKokX7MZknqTjUrzYL3nYcy61Gs0GZ8HN9KHieGcMVCmw==","signatures":[{"sig":"MEYCIQD1s3+GqVIsQA7X0s4vWazR7pR6xS9glTnZGnkxBJQL9wIhALM85sIAZOjR6I+YduhK9Iiv59FAr3IwI6p1RVgDd+yE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9838044},"type":"module","engines":{"node":">=22"},"gitHead":"ece402cc06ef14874ef877d11e8451c3d6aba01d","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.3_1790601585443_0.30059381281179554","host":"s3://npm-registry-packages-npm-production"}},"2.18.4":{"name":"@bman654/clodex","version":"2.18.4","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.4","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"522817353654d8e9e587f2be70c7fa509b2e5361","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.4.tgz","fileCount":15,"integrity":"sha512-gPSwb9x+bC1SFsVwrqG6zc/eyemC5qkhS9TM2EaaU/2p9y8ukH2RnTduCRDPPv3rbl7Jv9PLXs3iATKWQJBW/g==","signatures":[{"sig":"MEYCIQC7uiKKH5MiAQ8h3QNzs4XXE8Ae7ukJm028N6VDNEUBpgIhAMvIg/hgwVFkfwHZUtDK/LZ7NHU9Xpm2TuxiG606ONSj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9840155},"type":"module","engines":{"node":">=22"},"gitHead":"2ffeefd9c6a67aa5e8728b1bfc81a6247f557523","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.4_1790734763394_0.21976014582537662","host":"s3://npm-registry-packages-npm-production"}},"2.18.5":{"name":"@bman654/clodex","version":"2.18.5","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.5","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"c67cdaed8ae42d2a8c980ea2f7f8b27fc8ed1342","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.5.tgz","fileCount":15,"integrity":"sha512-1qZTXgSdhgnmrZkJAQ8W5Jv241anRN6IARai8QuqKyZX9Axkqiqme0nfijcoYYIMlly8LxdveImpVgXZouyIgQ==","signatures":[{"sig":"MEQCIEohLwpkLtlLSPHS1faFFIQdhtTJkCExSydfGVTWd/1yAiAqrhnKyA6CKty9ohHEN36Sil34SDIoUTWa2a90O5aozg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9843111},"type":"module","engines":{"node":">=22"},"gitHead":"f70953deb88ffefea8758596822962e67e1c81e9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.5_1790734768423_0.13358871718662946","host":"s3://npm-registry-packages-npm-production"}},"2.18.6":{"name":"@bman654/clodex","version":"2.18.6","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"author":{"name":"Brandon Wallace"},"license":"MIT","_id":"@bman654/clodex@2.18.6","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"homepage":"https://github.com/bman654/clodex#readme","bugs":{"url":"https://github.com/bman654/clodex/issues"},"bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"dist":{"shasum":"2a3dbb355751803a4e234072e631527aa5ff065b","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.6.tgz","fileCount":15,"integrity":"sha512-+jwk9hW3cFJeqvU8IBdx3LlleyDUHgbM2NvQSR+yzuypAtQIyXKfA0nGO3/aBW0a6HZ8BxkbrCv5swQ7ZxifQQ==","signatures":[{"sig":"MEUCIA08WvQKPwi5tU3fyuijNNsa2InVjX4ptXh6A+oI/947AiEA/r+YdDYzLXEX2Y/73cDTVfwBSahvG3Pf1DzUmgHl8ko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":9855421},"type":"module","engines":{"node":">=22"},"gitHead":"f12b281ebc05185e650a02247f80faffbe2ef576","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"},"trustedPublisher":{"id":"github","oidcConfigId":"fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"}},"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.1.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/clodex_2.18.6_1790742402372_0.3054107104631425","host":"s3://npm-registry-packages-npm-production"}},"2.18.7":{"_id":"@bman654/clodex@2.18.7","bin":{"clodex":"dist/cli.js","clodex-claude":"dist/claude-wrapper.js"},"bugs":{"url":"https://github.com/bman654/clodex/issues"},"dist":{"shasum":"698a8ddefc242ff3ab2a88075d0bbe4ee32bc219","tarball":"https://registry.npmjs.org/@bman654/clodex/-/clodex-2.18.7.tgz","integrity":"sha512-Gst+ZBsmzddIdpnRjgpgDkvER3bjKyeWosVK6/JUBP/Db/eQnZci+EqvYBcpWoHto1cB8Gv8R/4d2EvyVSRe+Q==","fileCount":15,"unpackedSize":9857214,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bman654%2fclodex@2.18.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCSC2AjCNg0fcGwEcorV4ZD/xuEeHyCt/V4tCSkSG5aUAIgblPlMftUO2yDCfrN4oPhCmXxcFoD6pm59R3OEf+IjuQ="}]},"name":"@bman654/clodex","type":"module","author":{"name":"Brandon Wallace"},"engines":{"node":">=22"},"gitHead":"3cae67d8b6204ae838328452c0f2d79b3db85cda","license":"MIT","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","prepare":"husky","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"pnpm build","update:opencode-go":"node scripts/update-opencode-go-models.mjs"},"version":"2.18.7","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"fa6365a8-e75c-4c6b-ba16-9d15f3f2d2d3"},"approver":{"name":"bman654","email":"brandon.wallace@yahoo.com"}},"homepage":"https://github.com/bman654/clodex#readme","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"_npmVersion":"12.2.0","description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","directories":{},"maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"_nodeVersion":"24.21.0","dependencies":{"ai":"7.0.22","ws":"8.21.0","open":"11.0.0","undici":"7.29.0","tweakcc":"4.3.3","ipaddr.js":"2.4.0","node-forge":"1.4.0","picocolors":"1.1.1","@ai-sdk/openai":"4.0.11","@clack/prompts":"0.9.1","@ai-sdk/anthropic":"4.0.12","https-proxy-agent":"9.1.0","@ai-sdk/provider-utils":"5.0.7","@ai-sdk/openai-compatible":"3.0.7"},"publishConfig":{"access":"public"},"packageManager":"pnpm@10.34.5","devDependencies":{"tsup":"8.5.1","husky":"9.1.7","vitest":"2.1.9","@types/ws":"8.18.1","typescript":"5.9.3","@types/node":"22.19.19","@commitlint/cli":"19.8.1","@types/node-forge":"1.3.14","@commitlint/config-conventional":"19.8.1"},"optionalDependencies":{"@napi-rs/keyring":"1.3.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/clodex_2.18.7_1790795161541_0.5526576522546396"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-20T06:13:24.551Z","modified":"2026-09-30T19:06:02.020Z","0.1.0":"2026-07-20T06:13:24.788Z","0.1.1":"2026-07-20T13:03:49.591Z","1.0.0":"2026-07-20T13:19:34.308Z","1.0.2":"2026-07-20T14:18:38.101Z","1.0.3":"2026-07-20T15:41:19.462Z","1.0.4":"2026-07-20T21:44:28.197Z","1.1.0":"2026-07-21T17:47:11.004Z","1.2.0":"2026-07-22T06:10:55.917Z","1.2.1":"2026-07-23T13:03:40.680Z","1.2.2":"2026-07-23T14:39:36.356Z","1.3.0":"2026-07-24T03:00:13.182Z","2.0.0":"2026-07-24T04:38:14.041Z","2.1.0":"2026-07-24T14:59:53.384Z","2.1.1":"2026-07-24T19:29:38.981Z","2.1.2":"2026-07-25T04:12:35.850Z","2.1.3":"2026-07-25T21:03:40.254Z","2.1.4":"2026-07-27T21:08:54.332Z","2.1.5":"2026-07-27T21:09:00.183Z","2.1.6":"2026-07-29T04:41:22.921Z","2.1.7":"2026-08-02T02:54:23.305Z","2.1.8":"2026-08-02T03:55:04.752Z","2.1.9":"2026-08-02T04:39:59.432Z","2.2.0":"2026-08-07T06:44:54.681Z","2.2.1":"2026-08-07T13:48:12.175Z","2.2.2":"2026-08-07T16:20:52.199Z","2.3.0":"2026-08-09T05:48:43.279Z","2.4.0":"2026-08-10T19:36:44.464Z","2.5.0":"2026-08-11T15:05:06.737Z","2.5.1":"2026-08-12T03:17:27.421Z","2.5.2":"2026-08-13T12:31:53.863Z","2.6.0":"2026-08-13T21:31:33.642Z","2.6.1":"2026-08-18T19:10:21.575Z","2.6.2":"2026-08-21T04:59:54.406Z","2.6.3":"2026-08-21T21:24:01.710Z","2.7.0":"2026-08-21T22:27:27.952Z","2.8.0":"2026-08-24T02:28:09.885Z","2.8.1":"2026-08-25T03:00:30.598Z","2.8.2":"2026-08-26T03:01:28.277Z","2.8.3":"2026-08-27T04:07:24.411Z","2.8.4":"2026-09-01T20:53:08.056Z","2.8.5":"2026-09-02T02:37:51.966Z","2.9.0":"2026-09-04T07:24:51.431Z","2.10.0":"2026-09-04T13:20:42.135Z","2.11.0":"2026-09-04T22:32:51.819Z","2.11.1":"2026-09-05T05:34:29.672Z","2.11.2":"2026-09-06T03:42:54.002Z","2.11.3":"2026-09-07T06:56:29.372Z","2.11.4":"2026-09-08T18:57:02.344Z","2.11.5":"2026-09-09T17:04:14.252Z","2.11.6":"2026-09-09T19:38:22.699Z","2.11.7":"2026-09-11T15:45:45.342Z","2.12.0":"2026-09-11T18:28:15.112Z","2.12.1":"2026-09-12T01:42:06.127Z","2.12.2":"2026-09-13T03:46:12.177Z","2.13.0":"2026-09-14T06:53:17.027Z","2.13.1":"2026-09-14T19:05:40.436Z","2.14.0":"2026-09-17T03:29:57.478Z","2.14.1":"2026-09-18T20:17:11.739Z","2.15.0":"2026-09-19T03:26:35.370Z","2.16.0":"2026-09-22T13:45:38.812Z","2.17.0":"2026-09-23T04:49:26.514Z","2.18.0":"2026-09-24T15:08:33.781Z","2.18.1":"2026-09-25T03:11:23.114Z","2.18.2":"2026-09-26T04:06:38.015Z","2.18.3":"2026-09-28T13:19:45.605Z","2.18.4":"2026-09-30T02:19:23.520Z","2.18.5":"2026-09-30T02:19:28.571Z","2.18.6":"2026-09-30T04:26:42.479Z","2.18.7":"2026-09-30T19:06:01.688Z"},"bugs":{"url":"https://github.com/bman654/clodex/issues"},"author":{"name":"Brandon Wallace"},"license":"MIT","homepage":"https://github.com/bman654/clodex#readme","keywords":["claude","claude-code","openai","opencode","chatgpt","codex","ai","llm","cli","bridge","proxy"],"repository":{"url":"git+https://github.com/bman654/clodex.git","type":"git"},"description":"Bridge Claude Code to OpenAI and OpenCode Go models — API keys or ChatGPT/Codex-plan OAuth, with prompt caching, auto-compaction, model switching, and a Claude Code binary patcher","maintainers":[{"name":"bman654","email":"brandon.wallace@yahoo.com"}],"readme":"# clodex\n\n[![npm version](https://img.shields.io/npm/v/%40bman654%2Fclodex.svg)](https://www.npmjs.com/package/@bman654/clodex)\n\n**clodex** lets you use your ChatGPT/Codex plan, OpenAI API models, or OpenCode Go models with Claude Code as first-class model choices.\nYou can use them anywhere you use Anthropic models like Opus and Sonnet — as the main session model, and in subagents, workflows, and agent teams. Clodex integrates them directly into Claude Code, using Claude Code's system prompt.\nIt works with your existing Claude Code plan as well as your Codex plans WITHOUT violating Anthropic's ToS.\nNo messing with CMUX or child codex processes or any of that stuff.\nYou can finally have Fable and Sol work together to solve the hardest problems.\n\n![Model picker](./docs/model-picker.png)\n\nYou can also run clodex as a local OpenAI-compatible endpoint in front of your Codex plan, so any OpenAI-compatible client can use it.\n\n> clodex is derived from the original [relay-ai](https://github.com/jacob-bd/relay-ai) project, heavily modified and streamlined for this one use case, with the full commit history preserved.\n\nContributions are welcome — see [CONTRIBUTING.md](./CONTRIBUTING.md) for how to scope a PR and what the quality bar is.\n\n## Quick Start (ChatGPT/Codex plan)\n\n```bash\nnpm install -g @bman654/clodex          # 1. install the CLI (Node 22+)\nclodex providers auth openai   # 2. sign in with your ChatGPT/Codex plan (device-code OAuth)\nclodex models                  # 3. pick favorite models and aliases\nclodex models --alias sol=clodex:openai-oauth:gpt-6-sol\nclodex models --alias luna=clodex:openai-oauth:gpt-6-luna\nclodex models --alias terra=clodex:openai-oauth:gpt-5.6-terra\nclodex patch                   # 4. (optional) patch Claude Code so those models are first-class\nclodex claude                  # 5. launch Claude Code on an OpenAI model\n```\n\n1. **Install** — puts the `clodex` command on your PATH.\n2. **Sign in** — opens a device-code OAuth flow for your ChatGPT/Codex plan; the token is stored in your OS credential store. If your workspace admin has disabled device code authorization, add `--browser` to sign in through your browser instead. (API-key users: `clodex providers add` instead.)\n3. **Pick models** — an interactive manager for favorites (max 20) and short aliases like `sol` so you do not need to type the long names. Favorites drive the `/model` switch menu, proxy-mode routing, and the patcher.\n4. **Patch** *(optional but recommended for proxy mode)* — bakes your favorites and aliases into the Claude Code binary so they pass model validation, appear in `/model`, and report their real context windows. Re-run after each `claude` update; `clodex patch --restore` undoes it. This step is required if you want to use clodex-routed models as subagents via the Agent tool.\n5. **Launch** — starts Claude Code bridged to the model you choose.\n\n## Supported providers\n\n| Provider | Auth | Support |\n|---|---|---|\n| OpenAI | API key | Fully supported by the clodex maintainer |\n| OpenAI (ChatGPT / Codex plan) | OAuth | Fully supported by the clodex maintainer |\n| OpenCode Go | API key | Community-supported — maintained by its contributor |\n| Custom OpenAI-compatible server (OpenRouter, vLLM, …) | API key, or none | Community-supported — maintained by its contributor |\n\n**Community-supported** means the maintainer holds no account for that service,\nso it cannot be exercised against the live API here or debugged when the vendor\nchanges something. Such an integration is reviewed and tested like everything\nelse and shipped gladly — it just depends on its contributor when upstream\nmoves. New providers land under this tier by default.\n\n## Difference between Clodex and other solutions\n\n| Feature | Clodex | relay-ai | CLIProxyAPI | Various process-based solutions |\n|--------|--------|----------|-------------|----|\n| url       | https://github.com/bman654/clodex |  https://github.com/jacob-bd/relay-ai | https://help.router-for.me/ |    |\n| Works with Claude Code Plans without violating Anthropic TOS | ✅ | ✅ | ❌ | ✅ |\n| Can use all claude models + All Codex models together? | ✅ | ✅ | ❌ | ✅ |\n| Claude Code aware of true model context window size | ✅ | ❌ | ❌ | n/a |\n| Supports Agent tool | ✅ | ❌ | ✅ | ❌ |\n| Supports use in Dynamic Workflows | ✅ | ✅ | ✅ | ❌ |\n| Routed models use Claude Code skills/tools | ✅ | ✅ | ✅ | ❌ |\n| Routed models use Claude Code system prompt | ✅ | ✅ | ✅ | ❌ |\n| Supports use in skill/agent frontmatter | ✅ | ❌ | ✅ | ❌ |\n| Supports OpenAI prompt caching | ✅ | ❌ | ? | ✅ |\n| Uses Websockets to talk to OpenAI API | ✅ | ❌ | ? | ✅ |\n\n### Claude Code Plans and ToS\n\nIt's important to understand that any tool that duplicates Claude Code's OAuth login flow violates Anthropic's Terms of Service\nand risks getting your account banned.  Any tool that initiates a Claude Code OAuth flow from outside of the Claude Code app falls\ninto this category.\n\nAnother way to tell: if a tool needs you to set `ANTHROPIC_BASE_URL` to a custom value, Claude Code can't run on your plan credentials — so the only way that tool can use your plan is by duplicating Claude Code's OAuth flow, which is against the ToS.\n\nClodex avoids this. In proxy mode it uses an HTTP proxy to intercept requests bound for `api.anthropic.com`: requests for an Anthropic model pass through unmodified, still carrying Claude Code's own auth token untouched — your plan credentials are never duplicated or replaced.\n\n## Bridge modes\n\nBoth `clodex claude` and `clodex server` support two bridge modes. A mode flag applies to **that run only**; to change a command's default, add `--save-mode` (e.g. `clodex claude --endpoint --save-mode`). With no flag and nothing saved, both commands default to **proxy** mode, which works with your existing Claude auth.\n\n- **`--proxy`** (the default): a selective man-in-the-middle proxy for `api.anthropic.com`. Claude Code keeps its normal Anthropic login — Anthropic models work untouched — while models named `clodex:<provider-id>:<model-id>` (or their saved aliases) route to the selected configured provider. Switch with `/model clodex:openai-oauth:gpt-6-sol` or `/model sol` after patching.\n- **`--endpoint`**: clodex runs a local Anthropic-format gateway and launches Claude Code with `ANTHROPIC_BASE_URL` pointed at it. All traffic goes through the gateway. With favorites saved, the gateway is multi-route and Claude Code's `/model` menu lists your starting model plus favorites for live switching.\n\n> [!TIP]\n> Proxy mode allows you to continue using your Claude Code plan: login to claude code like normal and the proxy will intercept requests and leave requests for Anthropic models untouched, while requests for your favorite clodex models are routed to their configured providers.\n\n```mermaid\nflowchart LR\n    CC[\"Claude Code<br/>(own Anthropic login)\"] -->|\"HTTPS via HTTPS_PROXY,<br/>trusts the clodex CA\"| MITM[\"clodex MITM proxy\"]\n    MITM --> DEC{\"model is clodex:...<br/>or a saved alias?\"}\n    DEC -->|\"yes — routed request,<br/>clodex-managed provider credentials\"| UP[\"Configured provider<br/>(OpenAI / OpenCode Go)\"]\n    DEC -->|\"no — passed through untouched,<br/>Claude Code's Anthropic credentials ride along\"| ANT[\"api.anthropic.com\"]\n```\n\nIn endpoint mode, no Anthropic account is involved — Claude Code is launched pointing at the local gateway with a local API key, and its startup `/v1/models` fetch powers the `/model` menu:\n\n```mermaid\nflowchart LR\n    CC[\"Claude Code<br/>(ANTHROPIC_BASE_URL + local API key,<br/>no Anthropic account credentials)\"] -->|\"Anthropic-format /v1/messages<br/>+ local API key\"| GW[\"clodex gateway<br/>(:17645/anthropic)\"]\n    CC -->|\"GET /v1/models at startup\"| GW\n    GW -->|\"model catalog with context windows<br/>(feeds the /model menu)\"| CC\n    GW -->|\"routed request,<br/>clodex-managed provider credentials\"| UP[\"Configured provider\"]\n```\n\n> [!TIP]\n> Using Claude Code's agents view or background agents? Ask your Claude Code agent to read [docs/background-agents.md](docs/background-agents.md) and set it up for you — one global `clodex server --proxy` plus the `clodex-claude` wrapper bin bridges every claude process automatically.\n\n> [!TIP]\n> Using the Claude Code VS Code extension? `clodex-claude` launches your verified clodex-patched install in place of the extension's bundled binary, so clodex models appear in its model picker; follow the [VS Code setup](docs/background-agents.md#vs-code-model-picker). On Windows, `clodex install-vscode-launcher` first builds the `.exe` the extension needs to launch Claude Code through `clodex-claude`; see [docs/windows-setup.md](docs/windows-setup.md).\n\n## CLI reference\n\n### `clodex claude [options] [claude-flags]`\n\nLaunch Claude Code bridged to configured model providers. Unrecognized flags (and everything after `--`) pass through to Claude Code (`-c`, `--resume`, `--print`, …).\n\n| Flag | Effect |\n| --- | --- |\n| `--endpoint` | Endpoint bridge mode for this run: local gateway + `ANTHROPIC_BASE_URL` |\n| `--proxy` | Proxy bridge mode for this run: keep Claude Code's Anthropic auth; `clodex:` models route to configured providers (default when nothing is saved) |\n| `--save-mode` | With `--endpoint`/`--proxy`: save that mode as the `claude` default |\n| `--dry-run` | Run the wizard but print a launch preview instead of launching (never persists anything) |\n| `--trace` | Write debug logs to `~/.clodex/logs/` and show errors on exit |\n| `--fast` | Request Codex fast mode (`service_tier=priority`) for ChatGPT/Codex OAuth routes; equivalent to `CLODEX_SERVICE_TIER=fast` |\n| `--provider <id>` | Endpoint mode only: boot provider id (`openai`, `openai-oauth`, or `opencode-go`); with `--model`, skips the wizard |\n| `--model <id>` | Endpoint mode only: boot model id; with `--provider`, skips the wizard |\n| `--context <model=stop>` | Use a different share of a model's context window for this launch only; never saved. Reaches Claude Code through the exported catalog, so a binary patched by `clodex patch` keeps its baked window until the stop is saved and the patch re-run |\n| `--help`, `--version` | Help / version |\n\nNotes:\n\n- Claude Code may save the launched model to `~/.claude/settings.json`, so bare `claude` later can still show a clodex model name. Reset with `claude --model sonnet`.\n- Non-interactive stdin reuses your last provider/model instead of showing the wizard.\n\n### `clodex server [options]`\n\nForeground gateway, same two bridge modes, no Claude Code launch — point any Anthropic-format (or OpenAI-format) client at it.\n\nCommon options (both modes):\n\n| Flag | Effect |\n| --- | --- |\n| `--endpoint` | Endpoint mode for this run: Anthropic-format HTTP gateway |\n| `--proxy` | Proxy mode for this run: selective `api.anthropic.com` MITM proxy (default when nothing is saved; local only) |\n| `--save-mode` | With `--endpoint`/`--proxy`: save that mode as the `server` default |\n| `--port <1-65535>` | Listen port (default 17645) |\n| `--no-discovery` | Don't advertise this server in `~/.clodex/server-runtime.json` (`CLODEX_NO_DISCOVERY=1` also works). Use it for a standalone endpoint the `clodex-claude` wrapper should ignore. |\n| `--ws-diagnostics` | Log sanitized request envelopes and WebSocket head decisions, plus the usage-limit reports the OpenAI socket sends, verbatim (they include account state such as credits) |\n| `--help`, `--version` | Help / version |\n\nEndpoint mode only (an error if combined with `--proxy`):\n\n| Flag | Effect |\n| --- | --- |\n| `--quick`, `--saved` | Start immediately from saved/default settings, skipping the wizard |\n| `--listen local\\|network` | One-run listen mode override |\n| `--providers all\\|favorites\\|id1,id2` | One-run provider catalog override |\n| `--mask-gateway-ids` / `--no-mask-gateway-ids` | Mask or expose vendor names in discovery model ids (see below) |\n| `--password <value>` | One-run network-mode server password |\n\nProxy mode has no extra options — it takes only the common options.\n\nBare `clodex server` uses the saved default mode (proxy if none saved). Proxy mode starts immediately. Endpoint mode on a TTY opens a short wizard — start from saved settings, or configure: favorites-only catalog?, which providers to expose, discovery-id masking, and listen local/network (network asks for a password). Without a TTY (or with `--quick`/any endpoint-mode option) it skips all prompts and starts from saved settings; network mode then needs a saved password or `--password`.\n\n**`--mask-gateway-ids`:** endpoint-mode discovery ids look like `anthropic-openai-oauth__gpt-5.6`. Some Claude clients validate model names (Claude Desktop / Cowork pickers, Claude Code skill/agent `model:` frontmatter) and reject or filter ids containing non-Anthropic vendor names. Masking reverses the provider and model segments (`anthropic-htuao-ianepo__6.5-tpg`) so vendor strings never appear literally; display names stay readable (`GPT 5.6 (OpenAI)`). As the request `model`, the gateway accepts the masked id, the unmasked id, the canonical `clodex:<provider>:<model>` id, or a saved alias (e.g. `luna`) — and the response echoes back whichever id you sent. Tradeoff: masked ids are unreadable — copy them exactly from the printed catalog. Masking is on by default; use `--no-mask-gateway-ids` for clients that don't need it.\n\nEndpoint-mode endpoints (default port 17645):\n\n```\nANTHROPIC_BASE_URL=http://127.0.0.1:17645/anthropic\nOPENAI_BASE_URL=http://127.0.0.1:17645/openai/v1\n```\n\nUse any API key locally; network mode requires the server password. Proxy mode prints `HTTPS_PROXY`, `HTTP_PROXY`, `NODE_EXTRA_CA_CERTS`, and adjusted `NO_PROXY` / `no_proxy` values to export. The adjusted bypass lists preserve unrelated hosts while ensuring `api.anthropic.com` reaches the selective proxy. Do **not** set `ANTHROPIC_BASE_URL` in that mode.\n\nSeveral `clodex server` instances can run at once — each advertises itself in `~/.clodex/server-runtime.json`, and `clodex-claude` prefers a proxy-mode server (newest first) when bridging (see [docs/background-agents.md](docs/background-agents.md)). Pass `--no-discovery` to keep a server out of that file, e.g. a dedicated endpoint you point another tool at.\n\nExamples:\n\n```bash\n# Endpoint gateway serving only your favorites, no prompts, for a local client\nclodex server --endpoint --quick --providers favorites\n\n# Proxy mode for an existing-auth Claude Code (export the env it prints)\nclodex server --proxy\n```\n\n### `clodex patch`\n\nPatch the installed Claude Code binary so clodex favorites and aliases are first-class: accepted by the Agent tool's model field, listed in `/model`, resolved to their real ids, and reporting the correct context window.\n\n| Flag | Effect |\n| --- | --- |\n| `--restore` | Restore the pristine (unpatched) Claude Code binary |\n| `--trace` | Show per-site `OK`/`SKIP`/`FAIL` results |\n| `--enable-local-patches` | Persistently enable the fixed local patch module |\n| `--disable-local-patches` | Disable local patches and rebuild from pristine bytes without them |\n| `--help` | Help |\n\nOn Windows, when Claude Code was installed with `npm install -g`, the `claude` on your PATH is a small launcher script (`claude.cmd`, `claude.ps1`, and an extensionless one) rather than the program itself; `clodex patch` follows it to the program and patches that. (On macOS and Linux npm makes a symlink instead, which always worked.) If the launcher cannot be followed — its program moved or removed, or it names two different programs — `clodex patch` stops without touching anything and tells you to set `TWEAKCC_CC_INSTALLATION_PATH` to the program directly.\n\nThe patch map is built from your favorites and aliases; context windows come from provider metadata. A pristine per-version backup is kept — recorded against the install it was made for, so a machine with two installs of one Claude Code version restores each from its own bytes — and a manifest (`~/.clodex/patch-state.json`) makes re-runs no-ops until your config or Claude Code version changes — then the binary is restored first and re-patched fresh. `clodex claude` checks patch freshness at launch and offers to re-patch (a non-blocking notice when not interactive). Re-run `clodex patch` after every `claude` update.\n\nIf an editor has the Claude Code extension installed at a different version from the Claude Code `clodex patch` just patched — the extension and the CLI update independently, so they can end up on different versions — `clodex patch` warns and prints the commands that align them (for example `npm install -g @anthropic-ai/claude-code@2.1.276` then `clodex patch` for a global npm install, or `claude install 2.1.276` for a native install; any other install, such as Claude Code's own `~/.claude/local` install or a project's `node_modules`, is named with its path so you can update it with the tool that installed it). An editor launching Claude Code through `clodex-claude` runs the patched install only when the two builds match, so until then its model picker drops the clodex models. The editors checked are VS Code, VS Code Insiders, the VS Code remote server (`~/.vscode-server`), VSCodium, Cursor and Windsurf, each in its default extensions directory under your home; nothing is printed when none of them has the extension. The check compares version numbers only, so no warning does not prove the builds match, and it never modifies the extension directory.\n\n#### Local patches (trusted code)\n\nLocal patches are an explicitly enabled extension layer for private transforms that do not belong in clodex itself. Put one self-contained ES module at `~/.clodex/local-patches.mjs` (or `$CLODEX_HOME/local-patches.mjs`) and opt in with `clodex patch --enable-local-patches`. It must be a regular UTF-8 file no larger than 1 MiB. File presence alone never loads it.\n\nEnabling this feature executes that JavaScript with your full user permissions; it is not sandboxed. Only use code you trust. Clodex never searches the current project, its installation, dependencies, or `node_modules` for patches.\n\nThe module must default-export an array. Each site has a unique lowercase `id` and an `apply` function that returns the complete source and emits the generated `marker` exactly once when it applies:\n\nThe `source` your `apply` receives is every JavaScript module in the binary joined together, with a ``/*clodex:module-boundary`;{}\"]*/`` line between them. This is true of every Claude Code version — a pre-2.1.242 binary carries the bundle plus five small helper modules; a 2.1.242-or-later one carries the bundle split across roughly 1,370. Match and replace as you always have; just do not add or remove one of those lines, or the whole patch is refused. (The punctuation in the marker is there so that a wildcard bounded by a character class cannot run across a module boundary.)\n\nIf your transform works by **position** rather than by matching an anchor, mind where it lands: text prepended to `source` goes into the first module and text appended to it goes into the last, and neither is necessarily the module that runs at startup. Anchor your edit to text you match, the way the examples below do.\n\n```js\nexport default [\n  {\n    id: 'example-site',\n    apply(source, { marker }) {\n      const anchor = 'exampleAnchor()';\n      if (!source.includes(anchor)) return source;\n      return source.replace(anchor, `${marker}${anchor}`);\n    },\n  },\n];\n```\n\nClodex hashes the captured module bytes into patch freshness, so editing the file triggers a pristine rebuild. The module is then applied after all built-in routing sites as one transaction: if any local site fails, every local change is discarded, the complete built-in patch still publishes, and `--trace` reports the failure. Local sites receive markers in the separate `/*clodex-local:...*/` namespace and cannot add, remove, or replace built-in `/*ccpatch:...*/` markers. Before publishing local output, Clodex compares exact postconditions captured from every successful built-in site and reruns the built-in verifier. Keep the module deterministic and self-contained; imported helper files are not part of its freshness identity.\n\n### `clodex models` / `clodex favorites`\n\nManage favorite models (max 20) and short aliases. Favorites feed the endpoint-mode `/model` switch menu, proxy-mode routing, and the patcher. Saved to `~/.clodex/config.json`.\n\n| Flag | Effect |\n| --- | --- |\n| *(none)* | Interactive manager: search all providers or browse one at a time |\n| `--list` | Print the exact `clodex:<provider-id>:<model-id>` names (and aliases) without opening the manager |\n| `--alias <name=target>` | Save a short name for a favorite, e.g. `--alias sol=clodex:openai-oauth:gpt-6-sol` (the `clodex:` prefix is optional in the target) |\n| `--unalias <name>` | Remove a saved short name |\n| `--context <model=stop>` | Choose how much of a model's context window to use: `standard`, `max`, `default` to clear, or a token count such as `500k`. Applies to this run unless `--save` is given |\n| `--save` | With `--context`: store the stop as that model's default |\n| `--json` | Print resolved metadata for saved favorites as JSON (ids, aliases, context stop and windows, output limit, pricing boundary, effort levels). Diagnostics go to stderr so stdout stays parseable |\n| `--help`, `--version` | Help / version |\n\n#### Context stops and the pricing boundary\n\nA context window is a cost dial as much as a capacity number. OpenAI prices GPT-5.5\nand later prompts above **272,000 input tokens at 2x input and 1.5x output for the\nfull request**, which is why the Codex catalog reports a 272,000 window rather than\nthe model's ceiling. Newer families inherit the same boundary, so a model released\nafter this was written is covered without a clodex update. For ChatGPT/Codex-plan\nmodels whose catalog reports that window, the default `standard` stop stays at the\nline and a larger window is something you ask for. **OpenAI API-key models retain\ntheir full API context window by default**, so their `standard` stop can already\nexceed the pricing boundary. Choose a smaller numeric stop if you want to limit\nexposure to the higher rate, for example\n`clodex models --context clodex:openai:gpt-6-sol=250k --save`.\n\n```sh\nclodex models --context sol=max --save     # this model's default, with a cost warning\nclodex claude --context sol=max            # this launch only, nothing saved\nclodex models --context sol=default --save # back to the provider's tuned window\n```\n\nEach stop is reported with the numbers behind it: the raw window, the effective\nwindow a client should fill, and the account ceiling a larger stop can reach. A stop\nabove the ceiling is clamped and says so. When a request's own reported token count\ncrosses the boundary, clodex warns once per model for the life of the process,\nbecause the client's token count and the provider's differ after translation and only\nthe provider's settles it. This warning covers both OpenAI API keys and ChatGPT/Codex\nplans, including model lists saved before pricing warnings were supported; no manual\nmodel refresh is needed.\n\nTwo things worth knowing about the numbers:\n\n- **Clodex reports the window the provider actually gives, and holds nothing back.**\n  Deciding how much of a window to leave free is the client's job — Claude Code\n  already reserves a fixed amount below whatever window it is told, and shrinking the\n  number first only costs usable context. A provider that declares a share of its own\n  is still honoured; clodex just never invents one. Use `--context` if you want a\n  smaller window than the provider offers.\n- **A window nobody published is not a ceiling.** Some servers list their models\n  without saying how much context each one takes. Clodex reports the 200,000 Claude\n  Code assumes anyway, but that number is a guess, not a measurement — so\n  `clodex models --context <model>=1m --save` raises it instead of being clamped back\n  down to the guess. Clamping still applies in full wherever a window *is* published,\n  by the provider or by clodex's own catalog. If the model is already baked into a\n  patched binary, re-run `clodex patch` so it picks the new window up. Set this model up\n  before this version? Run `clodex providers refresh-models <provider>` once — an older\n  clodex stored the guess as if the server had published it, and until you refresh it is\n  indistinguishable from a real limit and still clamps.\n- **The account ceiling moves.** It is server-side and per-account, and it has\n  changed by more than 2x within a single day in the past. `max` reads whatever the\n  catalog reports now and clamps to it, so a stale ceiling shrinks the stop rather\n  than overshooting it.\n\n### `clodex providers [subcommand]`\n\n| Subcommand | Effect |\n| --- | --- |\n| *(none)* | Provider hub wizard |\n| `add` | Add OpenAI or OpenCode Go with an API key, add a custom OpenAI-compatible server by base URL, or sign in with ChatGPT |\n| `auth openai` | Sign in with ChatGPT/Codex-plan OAuth (device code; `--browser` for workspaces that disable device codes) |\n| `list` | Show configured providers |\n| `remove <id>` | Remove a provider by id |\n| `refresh-models [id]` | Update cached model lists |\n\nFor ChatGPT-plan models using Responses-Lite (the catalog's `use_responses_lite` flag), refresh\nwarns when the catalog requires a newer Codex client version than clodex sends, including a\nmodel the catalog does not offer to clodex's version even though its published minimum is\nlower. Those models stay cached but are hidden from clodex's selectable catalog to avoid\nversion rejections. Update clodex to a release supporting the required version to make them\navailable again. Saved favorites and aliases are preserved but unavailable while their models\nare hidden: a patched model picker can still list them, and choosing one gets an error from\nclodex instead of reaching OpenAI (\"model route … is unavailable\" in the default proxy mode,\n\"Unknown model\" in endpoint mode). Older caches without this metadata need a refresh for newly\ndiscovered models. Known built-in models use their seeded minimums when absent from the cache\nand their seeded flags when discovery omits them. Models not using Responses-Lite do not send\nthis version header and are not hidden by this check. This check does not establish your\naccount's model entitlement.\n\nProviders supported: `openai` (API key, platform.openai.com), `openai-oauth` (ChatGPT/Codex plan), and `opencode-go` (OpenCode Go API key). OpenCode Go exposes its Anthropic Messages, Chat Completions, and Responses models; entries whose transport has not been verified against the live endpoint are left out. See [OpenCode Go provider](docs/opencode-go.md).\n\nA **custom OpenAI-compatible server** is any OpenAI-style API, given by its base URL (the part before `/chat/completions`), such as `https://openrouter.ai/api/v1`. `providers add` asks for a name, the base URL and an API key (leave it empty for a local server without auth), lists the server's models to check the connection, and saves the provider as `custom-<name>`. Its models then appear in `clodex models`; once saved as favorites they are addressed as `clodex:custom-<name>:<model>` and can be given a short alias with `clodex models --alias`. The base URL is checked before anything is saved and again when its models are refreshed: plain `http://` is accepted only after you confirm it, and only if every address the host resolves to is on this machine, your LAN or a private network such as Tailscale (loopback, private, unique-local IPv6 or carrier-grade-NAT `100.64.0.0/10` addresses); `https://` is accepted on any of those networks as well as the public internet; and a link-local (`169.254.0.0/16`, `fe80::/10`) or well-known cloud-metadata address is refused whether or not HTTP was approved. A server on another machine in your tailnet can be added by its `100.x` address, its MagicDNS name, or the HTTPS name `tailscale serve` gives it. A model's id and name are stored with surrounding whitespace trimmed, and a model whose trimmed id or name still contains a control character is skipped, whether the list is fetched by `providers add` or by `providers refresh-models`, and error text from the server is shown with control characters replaced by spaces. Only the OpenAI-compatible kind is offered in the menu.\n\n### `clodex install-vscode-launcher`\n\nWindows only. Builds `%USERPROFILE%\\.clodex\\bin\\clodex-claude.exe`, the executable the Claude Code VS Code extension can use as its `claudeCode.claudeProcessWrapper`, so chats in the editor launch Claude Code through `clodex-claude` (on Windows npm installs that wrapper as three script shims — extensionless, `.cmd`, `.ps1` — and no executable the extension can spawn). It compiles a short C# source shipped in the package with the compiler already inside the .NET Framework — nothing is downloaded — and prints the setting to paste; it never edits VS Code or Claude settings. The paths to `node.exe` and the clodex install are compiled in, so re-run it after switching Node versions or moving clodex. Like `clodex patch`, it warns when an installed Claude Code extension is a different version from the Claude Code clodex last patched (on any platform). Setup guide: [docs/windows-setup.md](docs/windows-setup.md).\n\n### Root\n\n```\nclodex --help       # overview of all commands\nclodex --version    # version\n```\n\n## Configuration\n\n- Config home: `~/.clodex` (override with `CLODEX_HOME`). A legacy `~/.relay-ai` directory is never read or modified — automatic migration from it was removed in 2.0.0.\n- The config-home filesystem and the native account home must support hard\n  links because registry and credential locks are published atomically. Keep\n  `CLODEX_HOME` and `~/.clodex/credential-locks` on local filesystems rather\n  than FAT, exFAT, or a network mount that rejects hard links. An abrupt process\n  kill during lock publication can leave a `*.lock.*.tmp` file; it does not\n  block later lock acquisition and can be removed when no Clodex process is\n  running. A canonical `providers.json.lock` whose recorded PID is no longer\n  running is reclaimed automatically on the next lock acquisition. If it\n  remains while that PID is active, stop every Clodex process and verify the\n  recorded PID before removing the lock manually. Never remove the canonical\n  lock while a Clodex process is active.\n- Credentials live in the OS credential store (Keychain / Windows Credential\n  Manager / Secret Service). The `clodex` service holds the main value or\n  published marker; `clodex-chunks` holds current long-credential chunks;\n  `clodex-journal` holds crash-recovery metadata and a deletion marker; and\n  `clodex-deleted` holds a redundant non-secret deletion guard. A\n  `clodex-state-key` entry protects each account's recovery metadata. Use\n  Clodex provider removal instead of deleting these entries individually.\n  Authenticated encrypted per-account managed-state markers live under the\n  native OS account home at `~/.clodex/keyring-state`; before each journal\n  write they record the exact recovery intent so a retry can replay and verify\n  it. The encryption key remains in the OS credential store, so the filesystem\n  marker alone cannot be used to test credential guesses. The marker also\n  prevents a temporarily unavailable keyring journal from being mistaken for\n  an absent one. If the OS credential store was completely reset, Clodex\n  permits direct reauthorization only after sentinel checks prove the main and\n  chunk namespaces are empty. Hidden, locked, or partially restored state\n  remains fail-closed. Credential mutation locks live beside that state at\n  `~/.clodex/credential-locks`. Both paths are independent of `CLODEX_HOME` and\n  runtime or temporary-directory environment overrides. This keeps concurrent\n  processes serialized when they use different config homes. Set\n  `CLODEX_CREDENTIAL_HELPER` to an absolute executable path to use an external\n  secure store instead; see [credential helpers](docs/credential-helpers.md).\n- Proxied routes forward configured provider headers for API-key and OAuth authentication. Anonymous routes preserve non-credential headers while removing authorization, API-key, cookie, token, secret, and credential-bearing header names before dispatch.\n- `CLODEX_CLAUDE_PATH` overrides which Claude Code gets **launched**. It does not choose what\n  `clodex patch` writes to — set `TWEAKCC_CC_INSTALLATION_PATH` for that, and `clodex patch`\n  says so when `CLODEX_CLAUDE_PATH` points somewhere else. The two are separate because a\n  `CLODEX_CLAUDE_PATH` aimed at a wrapper script is right for launching and wrong for patching.\n- **Codex service tier:** `CLODEX_SERVICE_TIER` accepts `fast` (normalized to\n  `priority`), `priority`, `flex`, `auto`, or `default`. Clodex requests the\n  resolved value only after selecting a ChatGPT/Codex OAuth route; OpenAI\n  API-key and non-OpenAI routes are unaffected. `clodex claude --fast` sets the\n  value to `fast` for that invocation, overriding an ambient value, and composes\n  the same environment before a dry-run preview. Request diagnostics record\n  this pre-dispatch intent, not proof of wire serialization. If the provider\n  SDK reports that it omitted the tier for a model, clodex warns once and the\n  backend default remains in use.\n- **Outbound proxy:** when `HTTP_PROXY`/`HTTPS_PROXY` (and optionally `NO_PROXY`) are set in clodex's environment, all clodex-originated network calls honor them — OAuth sign-in and token refresh, model-list and models.dev refreshes, upstream OpenAI API calls, and the ChatGPT/Codex OAuth WebSocket transport (tunneled via HTTP CONNECT). In proxy mode this also covers the web traffic Claude Code itself makes through the clodex proxy, so web fetches and searches work behind a corporate proxy instead of failing on a blocked direct connection. clodex's CONNECT requests for passthrough tunnels and WebSockets to that proxy carry an `x-clodex-proxy-hop` header with a random per-process ID to detect proxy loops, and the header is never sent to the destination.\n- **Provider timeouts:** `CLODEX_UPSTREAM_IDLE_TIMEOUT_MS` controls how long an\n  SDK-backed translated stream may produce no event (default `120000`; range\n  `10000`–`3600000` ms). `CLODEX_UPSTREAM_TOTAL_TIMEOUT_MS` limits each call\n  clodex makes to a configured provider, including non-streaming calls (default\n  `600000`; range `60000`–`21600000` ms). An authentication refresh can start a\n  new call with a fresh timer, so this is not an end-to-end route deadline. Set\n  both variables on the process serving the request: the embedded server\n  started by `clodex claude`, or a standalone `clodex server`. `clodex-claude`\n  only connects to an existing server, so setting them on that wrapper does not\n  reconfigure the server. Empty values use the defaults, malformed values are\n  ignored, and integers outside the supported ranges clamp to the nearest\n  bound. Clodex warns once for each malformed, clamped, or inconsistent setting\n  when a request first resolves it; `clodex claude` displays that parent notice\n  after Claude Code exits. The total timeout can never be shorter than the idle\n  timeout: increasing only the idle timeout raises the default total to match,\n  while an explicit shorter total lowers the idle timeout. The 10s/1m floors\n  avoid near-immediate termination; the 1h/6h ceilings allow deliberately long\n  calls without leaving stalls attached indefinitely. At either deadline,\n  clodex aborts the SDK call; cancellation is cooperative, so a provider\n  transport that ignores the abort signal can settle later. clodex also asks\n  the provider to stop as soon as the client that made the request goes away —\n  a Ctrl-C, a killed agent, or a closed browser — instead of waiting for a\n  deadline, whether the answer had started arriving or not. The same\n  cooperative limit applies: clodex stops relaying and requests cancellation,\n  but cannot guarantee the provider stops generating. These are\n  server-side limits, and callers may stop sooner. Claude Code currently\n  defaults to about 180s of downstream byte silence in proxy mode and 300s in\n  endpoint mode, with\n  a 30m byte-watchdog ceiling. In Claude Code's environment, `API_TIMEOUT_MS`\n  controls the pre-header deadline; `CLAUDE_STREAM_IDLE_TIMEOUT_MS` and\n  `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` control stream silence. Waits beyond 30m\n  also require `CLAUDE_ENABLE_BYTE_WATCHDOG=false`. With a standalone server,\n  set those client variables on the Claude Code process, not the server.\n- **Upstream retries:** clodex retries retryable failures on SDK-backed\n  provider calls up to `5` times by default. Set\n  `CLODEX_UPSTREAM_MAX_RETRIES` to a non-negative integer to override it; `0`\n  disables retries. The default and configuration ceiling\n  are derived from the resolved idle timeout and the SDK's fallback 2s, 4s, 8s,\n  … backoff, so a shorter idle timeout automatically lowers both. The ceiling\n  is `5` at the default timeout and can rise to `10` at the maximum. Larger\n  integers clamp with a one-time warning that names the active idle timeout.\n  Without a retry hint, five retries can add roughly 62s of fallback\n  backoff instead of the SDK default's roughly 6s, giving a transiently\n  unavailable provider more time to recover. When OpenAI explicitly states an\n  acceptable delay for a WebSocket throttle, clodex gives that value to the\n  SDK instead of its fallback schedule. Clodex's existing 5s default remains a\n  client-facing hint for upgrade 403s and WebSocket connection-limit errors\n  that state no delay; it does not replace the SDK's fallback. Other hintless\n  429s also retain the fallback schedule. Provider `retry-after` hints and time\n  spent in failed attempts can mean fewer retries start before a streaming idle\n  deadline; the shared abort signal still\n  interrupts backoff when that deadline fires. If a deadline interrupts a\n  retry delay, clodex preserves the provider failure that prompted the retry;\n  if a currently active call is silent, clodex reports the timeout instead.\n  Unset, empty, or malformed values preserve the clodex default. The SDK only\n  retries before model output is exposed downstream; a stream that fails after\n  partial output cannot be\n  replayed safely and still terminates the request. The same\n  retry setting also controls proxy mode's raw HTTP MITM path, which replays\n  once by default and retains an independent ceiling of `5`. Only a request\n  sent on a pooled connection the far end had already closed, with no response\n  received, is replayed there; other direct raw relays add no transport-failure\n  replay (an OAuth 401 refresh can still start a new authenticated call). The\n  timeout settings add no timers to any raw relay. A valid\n  `CLODEX_UPSTREAM_MAX_RETRIES` value takes precedence on the HTTP MITM path;\n  otherwise, Claude Code's own `CLAUDE_CODE_MAX_RETRIES=0` disables that replay\n  so telling the client never to resend a request is not quietly undone one\n  layer down.\n  Recovered requests appear in the inference log as `response_retried`.\n- **Connection pacing (ChatGPT/Codex plans):** when many agents run at once,\n  clodex spaces out the new connections it opens to OpenAI, which should make a\n  burst of parallel work less likely to trip OpenAI's own rate limit. (In the\n  traffic we sampled, the rejections clustered in the busiest minutes; that the\n  rate is what triggers them is a reasonable reading of that, not something we\n  can prove.) A follow-up turn that already has a connection it can reuse when\n  it arrives is never delayed by this;\n  what goes through the limiter is work that needs a *new* connection — a first\n  turn, a conversation that branched, or several agents running at once. If a\n  turn that is waiting its place in the queue finds, on being let through, that\n  a connection has freed up and is carrying exactly the conversation it is\n  continuing, it picks that one up instead of opening another. That is\n  uncommon — it needs another turn to finish inside the few seconds this one\n  spends waiting AND to have been on the same conversation history — so treat\n  it as an edge taken when it appears, not as agents routinely sharing\n  connections. The\n  default is 60 new connections a minute, with an allowance of 10 opened back\n  to back after a quiet spell.\n  **This is a real throughput ceiling, not a brief pause.** One new connection\n  per second means that if you run many agents at once and each needs its own\n  connection, they end up sharing that budget: roughly 20 agents settle at\n  about 20 seconds per turn instead of a few seconds. That is the trade — you\n  wait longer, in exchange for a lower chance of losing turns to rate-limit\n  errors. It reduces that risk rather than removing it: clodex cannot see\n  OpenAI's actual limit, and under a heavy enough fan-out pacing can itself\n  answer a turn with a rate-limit response. Work over the\n  rate is queued for a few seconds, and anything still over is answered with\n  the same \"try again shortly\" response OpenAI itself would return, which\n  clodex retries for you with backoff. Set\n  `CLODEX_WS_MAX_NEW_CONNECTIONS_PER_MIN` to another whole number between `1`\n  and `600` to change the rate, or to `0` to turn pacing off. Higher values\n  clamp to `600` with a one-time warning, and an unreadable value is reported\n  once and ignored. If you have turned retries off with\n  `CLODEX_UPSTREAM_MAX_RETRIES=0`, pacing never refuses a request — but it also\n  stops limiting once its initial allowance is used up, because there would be\n  nothing left to retry a refused request. The same applies at very low rates:\n  if clodex cannot retry a turned-away request for long enough to reach the\n  next free connection slot — which is the case around 1 or 2 connections a\n  minute at the default timeouts — it admits the excess late rather than\n  failing it, and says so once. Turning a rate that low into hard failures\n  would manufacture the errors this feature exists to reduce.\n\n## Known limitations\n\n- Cost display inside Claude Code is inaccurate for routed third-party models (Claude Code applies its own pricing table).\n- In the endpoint-mode switch menu, the displayed context window reflects the launch model and does not update on live `/model` switches (Claude Code fetches window metadata once at startup). Proxy mode with `clodex patch` reports correct per-model windows.\n- ChatGPT/Codex OAuth requires `store:false` upstream; some OpenAI cache controls are intentionally omitted on OAuth routes because they returned empty responses during compatibility testing.\n\n## License\n\nMIT — see [LICENSE](LICENSE).\n","readmeFilename":"README.md"}