@chinudotdev/provider-openai
v0.1.4
Published
OpenAI-compatible agent-core/v1 provider adapter
Maintainers
Readme
@chinudotdev/provider-openai
OpenAI-compatible agent-core/v1 provider adapter — Chat Completions API, SSE streaming, tools, images, reasoning extensions.
Works with OpenAI, Azure OpenAI, and any OpenAI-compatible endpoint.
Install
npm install @chinudotdev/provider-openaiQuick start
import { createOpenAIProvider } from "@chinudotdev/provider-openai";
const provider = createOpenAIProvider({
apiKey: process.env.OPENAI_API_KEY!,
baseURL: "https://api.openai.com", // optional
chatCompletionsPath: "/v1/chat/completions", // optional override
});
for await (const event of provider.stream(
{
spec: "agent-core/v1",
model: "gpt-4o-mini",
messages: [{ role: "user", content: [{ type: "text", text: "Hello" }] }],
},
new AbortController().signal,
)) {
if (event.type === "text_delta") process.stdout.write(event.text);
if (event.type === "stop") break;
}OpenAI-compatible endpoints
baseURL is the API host or prefix. chatCompletionsPath defaults to /v1/chat/completions. Override it for providers that use a different route:
const provider = createOpenAIProvider({
apiKey: process.env.GLM_API_KEY!,
baseURL: "https://api.z.ai/api/coding/paas/v4",
chatCompletionsPath: "/chat/completions",
});Environment helper
import { createProviderFromEnv } from "@chinudotdev/provider-openai";
// Reads OPENAI_API_KEY, optional OPENAI_BASE_URL, OPENAI_CHAT_COMPLETIONS_PATHWith Agent SDK
import { Agent } from "@chinudotdev/agent";
import { createProviderFromEnv } from "@chinudotdev/provider-openai";
const agent = new Agent({
model: "gpt-4o-mini",
provider: createProviderFromEnv(),
});Examples
After install, a minimal smoke script ships at node_modules/@chinudotdev/provider-openai/examples/01-chat.ts.
Docs
License
MIT
