Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,19 @@ ANTHROPIC_API_KEY=your-key
ANTHROPIC_BASE_URL=https://your-gateway.example.com/anthropic
```

The `openai` provider likewise supports an alternative, OpenAI-compatible
endpoint (for example a self-hosted or proxied gateway) via `OPENAI_BASE_URL`,
set alongside `OPENAI_API_KEY`. This is useful for OpenAI-compatible gateways
that expose the Responses API, since the `openai` provider routes tool calls
through the Responses API (`/v1/responses`) rather than chat completions:

```bash
OPENWIKI_PROVIDER=openai
OPENAI_API_KEY=your-key
OPENAI_BASE_URL=https://your-gateway.example.com/v1
OPENWIKI_MODEL_ID=your-model-name
```

### OpenAI-compatible endpoints

The `openai-compatible` provider targets any OpenAI-compatible chat-completions
Expand Down
2 changes: 2 additions & 0 deletions src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ export const FIREWORKS_API_KEY_ENV_KEY = "FIREWORKS_API_KEY";
export const NEBIUS_API_KEY_ENV_KEY = "NEBIUS_API_KEY";
export const NVIDIA_API_KEY_ENV_KEY = "NVIDIA_API_KEY";
export const OPENAI_API_KEY_ENV_KEY = "OPENAI_API_KEY";
export const OPENAI_BASE_URL_ENV_KEY = "OPENAI_BASE_URL";
export const OPENAI_COMPATIBLE_API_KEY_ENV_KEY = "OPENAI_COMPATIBLE_API_KEY";
export const OPENAI_COMPATIBLE_BASE_URL_ENV_KEY = "OPENAI_COMPATIBLE_BASE_URL";
export const OPENAI_CHATGPT_ACCESS_TOKEN_ENV_KEY =
Expand Down Expand Up @@ -237,6 +238,7 @@ export const PROVIDER_CONFIGS: Record<OpenWikiProvider, ProviderConfig> = {
},
openai: {
apiKeyEnvKey: OPENAI_API_KEY_ENV_KEY,
baseUrlEnvKey: OPENAI_BASE_URL_ENV_KEY,
label: "OpenAI",
modelOptions: OPENAI_MODEL_OPTIONS,
},
Expand Down
3 changes: 3 additions & 0 deletions src/env.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import {
normalizeProvider,
NVIDIA_API_KEY_ENV_KEY,
OPENAI_API_KEY_ENV_KEY,
OPENAI_BASE_URL_ENV_KEY,
OPENAI_CHATGPT_ACCESS_TOKEN_ENV_KEY,
OPENAI_CHATGPT_ACCOUNT_ID_ENV_KEY,
OPENAI_CHATGPT_EMAIL_ENV_KEY,
Expand Down Expand Up @@ -83,6 +84,7 @@ export const MANAGED_ENV_KEYS = [
NEBIUS_API_KEY_ENV_KEY,
NVIDIA_API_KEY_ENV_KEY,
OPENAI_API_KEY_ENV_KEY,
OPENAI_BASE_URL_ENV_KEY,
OPENAI_CHATGPT_ACCESS_TOKEN_ENV_KEY,
OPENAI_CHATGPT_REFRESH_TOKEN_ENV_KEY,
OPENAI_CHATGPT_EXPIRES_AT_ENV_KEY,
Expand Down Expand Up @@ -280,6 +282,7 @@ function isNonSecretDiagnosticKey(key: string): boolean {
key === OPENWIKI_PROVIDER_ENV_KEY ||
key === OPENWIKI_PROVIDER_RETRY_ATTEMPTS_ENV_KEY ||
key === ANTHROPIC_BASE_URL_ENV_KEY ||
key === OPENAI_BASE_URL_ENV_KEY ||
key === OPENAI_COMPATIBLE_BASE_URL_ENV_KEY ||
key === BEDROCK_AWS_REGION_ENV_KEY ||
key === GOOGLE_CLOUD_PROJECT_ENV_KEY ||
Expand Down