{"_id":"@cgaravitoq/open-langchain-ts","_rev":"6-5c0468b0c26b21dc158c73c53be7c2f3","name":"@cgaravitoq/open-langchain-ts","dist-tags":{"latest":"0.8.0"},"versions":{"0.5.1":{"name":"@cgaravitoq/open-langchain-ts","version":"0.5.1","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"author":{"name":"cgaravitoq"},"license":"MIT","_id":"@cgaravitoq/open-langchain-ts@0.5.1","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"d51bfee58c165370122b93045c177cd8f2da1bed","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.5.1.tgz","fileCount":21,"integrity":"sha512-EU/AC4GSCTSXxBXayNI0kfZlShWGwMftqhWMGi1qRbu1MbHdd/mIpIQ0huT66mmnbfiUp+leonjyoWRVnuXhkQ==","signatures":[{"sig":"MEYCIQCjhQ3OQHpU5czwWUgw/UyvYXUt3zNHN9wvM4CYq7gXWAIhANGZ9M4UhcIrOj5nzrz3okajQJJBepoxDD9dH0pg703b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132417},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"gitHead":"074c4bb0d03b4ae3e5f22c03a20f661ba1c815f4","scripts":{"build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"11.13.0","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"sideEffects":false,"_nodeVersion":"26.1.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"tmp":"tmp/open-langchain-ts_0.5.1_1781394568842_0.7226233661699626","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@cgaravitoq/open-langchain-ts","version":"0.5.2","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"author":{"name":"cgaravitoq"},"license":"MIT","_id":"@cgaravitoq/open-langchain-ts@0.5.2","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"805f3c4beea4b47e58e788cb38eb43b0026b309a","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.5.2.tgz","fileCount":21,"integrity":"sha512-IRSgQydwlsg4aYpIuCZLe7LJTHMipCbAEYgHUBrbwfMJntiMIYpdqY9EoMj8+QmbiZOaubVHPTT64We0vE/xvw==","signatures":[{"sig":"MEUCIAcYL2uhYaGNrHRhQoGazTzqX+8X9yxYjy+aaHgcHbgKAiEAjGUDvclza4dEB7OBZUvob6Oci309OuYoYH7le7KR00k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133163},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"gitHead":"c2e446a85a00e3c3cd0685066ecdb93a32a59c71","scripts":{"build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"11.13.0","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"sideEffects":false,"_nodeVersion":"26.1.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"tmp":"tmp/open-langchain-ts_0.5.2_1781396133160_0.07741725898468776","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@cgaravitoq/open-langchain-ts","version":"0.6.0","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"author":"cgaravitoq","license":"MIT","_id":"@cgaravitoq/open-langchain-ts@0.6.0","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"5e9341c64e666ca3906edff45988ca57983a0868","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.6.0.tgz","fileCount":21,"integrity":"sha512-UDeQYK9jTS3VBHYcH0AYxkIU4Lk0FKd7Ezi+w9qCg8K2ceF512rp6UAQSrtku5ptCxDVLZqdYrgmfuytwUfdMQ==","signatures":[{"sig":"MEUCIAUQmLqWGGI2sZ/CuBn3mFprogLiK+bRxHu6vuj4o9R5AiEA2UDLjlQHrmtbgzMMQwjdlBI4FOylwXj9iWWHQqfDu/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135318},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"5e9341c64e666ca3906edff45988ca57983a0868","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"scripts":{"build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"_integrity":"sha512-UDeQYK9jTS3VBHYcH0AYxkIU4Lk0FKd7Ezi+w9qCg8K2ceF512rp6UAQSrtku5ptCxDVLZqdYrgmfuytwUfdMQ==","repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"10.8.3","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"tmp":"tmp/open-langchain-ts_0.6.0_1784331524841_0.09666826645340931","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@cgaravitoq/open-langchain-ts","version":"0.6.1","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"author":"cgaravitoq","license":"MIT","_id":"@cgaravitoq/open-langchain-ts@0.6.1","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"e2a59f7315da90e71566a5e84093ef7ab331a142","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.6.1.tgz","fileCount":21,"integrity":"sha512-d2/zbJBo2Bkob7DgFaQXVZgkh1E3tekUc8TrGTDHEiTENnRqcIAixuPZtcSbJJ0BAD0O0KLA+6KKqoZx8r9JJQ==","signatures":[{"sig":"MEQCIGBZQO4m3ujn3Jykx5AttBvOfrNdUFc7VqXEguM5I1BAAiBXqzbLNa1VYy/sRSb89Pw1rNvXIf4sRWDAqq0knoI4nQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134951},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"e2a59f7315da90e71566a5e84093ef7ab331a142","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"scripts":{"build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"_integrity":"sha512-d2/zbJBo2Bkob7DgFaQXVZgkh1E3tekUc8TrGTDHEiTENnRqcIAixuPZtcSbJJ0BAD0O0KLA+6KKqoZx8r9JJQ==","repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"10.8.3","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.2.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"tmp":"tmp/open-langchain-ts_0.6.1_1784331979922_0.9028739945277653","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@cgaravitoq/open-langchain-ts","version":"0.7.0","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"author":{"name":"cgaravitoq"},"license":"MIT","_id":"@cgaravitoq/open-langchain-ts@0.7.0","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"60c21901809e0cd7fb2f6d8d84e329e65c91367a","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.7.0.tgz","fileCount":21,"integrity":"sha512-9HpupP9KDhdt+J2sTn0/++dHUkdc5gAlAQVmDg7yRtuVAykG+++yWVEGoblwVhhHAfN8pHIiJg2xZY7VW5ZqUA==","signatures":[{"sig":"MEUCIQCOUAMQndjYAYcYNGPsI3qs61KL8JowMZ7acr/ukdvuhQIgJECiBitdB0HRSJJFKJ8CQZAvvoUrlCsbbbt1TJeRlI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135783},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"gitHead":"c07ccc3cf025a735ff671716a168bc7d8635a240","scripts":{"test":"bun test","build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun test && bun run build"},"_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"11.17.0","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"sideEffects":false,"_nodeVersion":"26.5.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"tmp":"tmp/open-langchain-ts_0.7.0_1784916089237_0.8773601795519774","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"_id":"@cgaravitoq/open-langchain-ts@0.8.0","bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"dist":{"shasum":"04e0a29021e15882195a9e23f8e7c3a6e7b3ef54","tarball":"https://registry.npmjs.org/@cgaravitoq/open-langchain-ts/-/open-langchain-ts-0.8.0.tgz","fileCount":21,"integrity":"sha512-RAmCudkKH7I4qSp7ytALWi/wbi0W/e2/7OGzrVxevCew4oM6r9Xscdf5hVFU1d0neOwB6nuiVKhEg+ef/gCN8g==","signatures":[{"sig":"MEUCIQC5Sh8uqJjxgsg2IZUFzF7t3QpSdCuiMOAxtx4a2Ng1/AIgDdcR62velHF9nhBP2ZYXQEgnO4msgrKrnV42fNhHmtQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGak+8AyTUZl/oLAMPmF5jPevFG5+CHwoHoFklgRfZGCAiEA0Q0mFhxzeyONyGdGiC1TZJYBO622XxFTMT/duE56rnU="}],"unpackedSize":137587},"main":"./dist/index.js","name":"@cgaravitoq/open-langchain-ts","type":"module","types":"./dist/index.d.ts","author":{"name":"cgaravitoq"},"module":"./dist/index.js","engines":{"node":">=22.19.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./codex":{"types":"./dist/codex-chat.d.ts","import":"./dist/codex-chat.js"},"./opencode":{"types":"./dist/opencode-chat.d.ts","import":"./dist/opencode-chat.js"},"./claude-code":{"types":"./dist/claude-code-chat.d.ts","import":"./dist/claude-code-chat.js"},"./package.json":"./package.json"},"gitHead":"3081aef52ba029f04d2a1efa364b3ee6fb075690","license":"MIT","scripts":{"test":"bun test","build":"tsup","check":"biome check --write .","format":"biome format --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run typecheck && bun test && bun run build"},"version":"0.8.0","_npmUser":{"name":"cgaravito.dev","email":"cg9822@gmail.com"},"homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"_npmVersion":"11.17.0","description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","directories":{},"maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"sideEffects":false,"_nodeVersion":"26.5.0","dependencies":{"@anthropic-ai/sdk":"^0.91.1","@langchain/openai":"^1.4.7","@cgaravitoq/claude-code-core":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","@types/bun":"^1.3.14","typescript":"^6.0.3","@biomejs/biome":"^2.4.16","@langchain/core":"^1.1.48"},"peerDependencies":{"@langchain/core":"^1.1.44"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/open-langchain-ts_0.8.0_1789059199205_0.8462414503489974"}}},"time":{"created":"2026-06-13T23:49:28.693Z","modified":"2026-09-10T16:53:19.594Z","0.5.1":"2026-06-13T23:49:28.992Z","0.5.2":"2026-06-14T00:15:33.304Z","0.6.0":"2026-07-17T23:38:44.966Z","0.6.1":"2026-07-17T23:46:20.059Z","0.7.0":"2026-07-24T18:01:29.362Z","0.8.0":"2026-09-10T16:53:19.345Z"},"bugs":{"url":"https://github.com/cgaravitoq/open-langchain-ts/issues"},"author":{"name":"cgaravitoq"},"license":"MIT","homepage":"https://github.com/cgaravitoq/open-langchain-ts#readme","keywords":["langchain","claude-code","opencode","anthropic","llm","chat-model","adapter"],"repository":{"url":"git+https://github.com/cgaravitoq/open-langchain-ts.git","type":"git"},"description":"Native LangChain BaseChatModel adapters for the Claude Code OAuth subscription (Anthropic) and opencode/Zen — no Pi, no API key.","maintainers":[{"name":"cgaravito.dev","email":"cg9822@gmail.com"}],"readme":"# @cgaravitoq/open-langchain-ts\n\nNative LangChain [`BaseChatModel`](https://js.langchain.com/) adapters for coding-agent\nsubscriptions — **no Pi, no API key**:\n\n- **`ChatClaudeCode`** — Anthropic Messages API billed against your Claude Code OAuth subscription.\n- **`ChatCodex`** — OpenAI Codex (ChatGPT Plus/Pro) over the responses API.\n- **`ChatOpencode`** — [OpenCode Zen](https://opencode.ai/docs/zen/), an OpenAI-compatible endpoint.\n\nTool calling and streaming work across all three. The TypeScript half of a pair; a Python\ntwin ([`open-langchain`](https://github.com/cgaravitoq/open-langchain)) ships the same models.\n\n## Install\n\n```sh\nnpm install @cgaravitoq/open-langchain-ts @langchain/core\n```\n\n`@langchain/core` is a **peer dependency** (`^1.1.44`). ESM-only, **Node >= 22.19.0**.\n\n## Usage\n\n`createChat` routes by provider:\n\n```ts\nimport { createChat } from \"@cgaravitoq/open-langchain-ts\";\n\nconst free = createChat({ provider: \"opencode\", model: \"nemotron-3.5-lightning-free\" }); // no key\nconst paid = createChat({ provider: \"opencode\", model: \"minimax-m3\", apiKey: \"...\" });\nconst go = createChat({ provider: \"opencode-go\", model: \"minimax-m3\", apiKey: \"...\" });\nconst codex = createChat({ provider: \"openai-codex\", model: \"gpt-5.3-codex-spark\" });\nconst claude = createChat({ provider: \"claude-code\", model: \"claude-sonnet-4-6\" });\n```\n\nUnknown providers throw. Or import a model directly from its subpath\n(`/claude-code`, `/codex`, `/opencode`).\n\n### Tool calling & streaming\n\n```ts\nimport { tool } from \"@langchain/core/tools\";\nimport { z } from \"zod\";\n\nconst getWeather = tool(({ city }) => `Sunny in ${city}.`, {\n  name: \"get_weather\",\n  description: \"Get the weather for a city.\",\n  schema: z.object({ city: z.string() }),\n});\n\nconst model = createChat({ provider: \"claude-code\", model: \"claude-sonnet-4-6\" });\nconst withTools = model.bindTools([getWeather]);\n\nfor await (const chunk of await model.stream(\"Write a haiku.\")) {\n  process.stdout.write(chunk.content as string);\n}\n```\n\n## Claude Code (Anthropic subscription)\n\n```ts\nimport { ChatClaudeCode } from \"@cgaravitoq/open-langchain-ts/claude-code\";\n\nconst opus = new ChatClaudeCode({ model: \"claude-opus-5\", reasoning: \"medium\" });\n```\n\nReads the Claude Code OAuth session at `~/.claude/.credentials.json` (log in once with the\n`claude` CLI). Models: `claude-opus-5`, `claude-fable-5`, `claude-fable-5-1`, `claude-opus-4-8`,\n`claude-opus-4-7`, `claude-sonnet-5`, `claude-sonnet-4-6`, `claude-haiku-4-5`. Adaptive thinking on the\nClaude 5 family and Opus 4.8/4.7. The Claude 5 models ship a 1M context window by default;\nfor the older models the 1M-context beta is opt-in via `longContext: true`, since the\nsubscription rejects long-context requests without extra credits otherwise. `claude-fable-5-1`\nrejects a forced `tool_choice` (`any` or a named tool) with a 400; this adapter does not\nexpose `tool_choice`, so the choice is always left to the model. The native\nClaude Code stack (OAuth refresh, signed billing header,\nbetas, payload transforms) lives in [`@cgaravitoq/claude-code-core`](https://github.com/cgaravitoq/claude-code-core).\n\n## OpenAI Codex (ChatGPT subscription)\n\n```ts\nimport { ChatCodex } from \"@cgaravitoq/open-langchain-ts/codex\";\n\nconst codex = new ChatCodex({ model: \"gpt-5.5\", reasoning: \"low\" });\n```\n\nReads the Codex OAuth session at `~/.pi/agent/auth.json` (sign in via `pi` or the Python\ntwin's `codex-login`). Models: `gpt-5.3-codex-spark`, `gpt-5.5`, `gpt-5.6-sol`,\n`gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`.\n\n## OpenCode Zen\n\n```ts\nimport { ChatOpencode } from \"@cgaravitoq/open-langchain-ts/opencode\";\n\nconst free = new ChatOpencode({ model: \"nemotron-3.5-lightning-free\" }); // no key\nconst paid = new ChatOpencode({ model: \"minimax-m3\" }); // OPENCODE_API_KEY or apiKey\nconst go = new ChatOpencode({ model: \"minimax-m3\", tier: \"go\" }); // OPENCODE_API_KEY or apiKey\n```\n\n## Notes\n\nUsing a subscription OAuth session from a third-party app may violate the provider's terms\nand risk your account. See the\n[`pi-claude-code-auth`](https://github.com/cgaravitoq/pi-claude-code-auth) README for the\nClaude Code caveats.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}