mirror of
https://github.com/coder/coder.git
synced 2026-11-02 13:33:30 +08:00
## Summary AI Governance is now included with Premium licenses instead of being sold as a separate per-user add-on. This updates `docs/` to describe the new packaging, removes "Add-On" from AI Governance references, and refreshes the editions architecture diagram. ## Changes - **`docs/ai-coder/ai-governance.md`**: title is now "AI Governance"; rewrote the licensing statements (previously "a separate, per-user license... not included with a Premium subscription and must be purchased separately") to state it is included with Premium. The usage-pool section now attributes the shared Agent Workspace Build pool to Premium deployments. - **Repeated admonition (28 files under `ai-coder/agent-firewall/` and `ai-coder/ai-gateway/`)**: replaced "requires the AI Governance Add-On / as of Coder v2.32, deployments without the add-on..." with "is part of AI Governance, which is included with a Premium license." The v2.32 add-on gate no longer applies; the gate is now Premium vs. Community. - **`docs/ai-coder/index.md`, `security.md`, `tasks.md`, `usage-data-reporting.md`, `admin/licensing/index.md`, `install/releases/esr-2.29-2.34-upgrade.md`, `ai-gateway/ai-gateway-proxy/setup.md`, `ai-gateway/clients/claude-code.md`**: reworded add-on references to Premium inclusion. - **`docs/manifest.json`**: nav title "AI Governance Add-On" → "AI Governance", updated two descriptions, and swapped the 25 `"state": ["ai governance add-on"]` badges to `["premium"]` so the sidebar badge reads "Premium" instead of "AI Governance Add-On". - **`docs/images/single-region-architecture.png`**: refreshed the diagram in the **Community and Premium editions** tab on [Architecture](https://coder.com/docs/admin/infrastructure/architecture). Also deleted the unreferenced `single-region-architecture.svg` copy. ## Follow-ups outside this PR - The `"ai governance add-on"` doc-state badge is defined in `coder/coder.com` (`src/utils/docs/state.ts`). After this merges, no manifest entry uses that key, so it becomes dead config and can be removed there. - `enterprise/coderd/license/license.go:564-572` still warns admins that "The AI Governance add-on is required to use AI Gateway." That backend string will contradict these docs once shipped. ## Verification - `pnpm run lint-docs`: 0 errors across 504 files - `make lint/emdash`: clean - Vale on the changed Markdown files: 0 errors; remaining warnings are pre-existing gerund headings on untouched lines - `docs/manifest.json` validated as JSON - Confirmed the deleted SVG had no references anywhere in the repo --- PR generated with Coder Agents on behalf of @mattvollmer.
90 lines
2.2 KiB
Markdown
90 lines
2.2 KiB
Markdown
# OpenCode
|
|
|
|
> [!NOTE]
|
|
> AI Gateway is part of [AI Governance](../../ai-governance.md), which is
|
|
> included with a Premium license.
|
|
|
|
OpenCode supports both OpenAI and Anthropic models and can be configured to use AI Gateway by setting custom base URLs for each provider.
|
|
|
|
## Centralized API Key
|
|
|
|
You can configure OpenCode to connect to AI Gateway by setting the following configuration options in your OpenCode configuration file (e.g., `~/.config/opencode/opencode.json`):
|
|
|
|
```json
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"provider": {
|
|
"anthropic": {
|
|
"options": {
|
|
"baseURL": "https://coder.example.com/api/v2/ai-gateway/anthropic/v1"
|
|
}
|
|
},
|
|
"openai": {
|
|
"options": {
|
|
"baseURL": "https://coder.example.com/api/v2/ai-gateway/openai/v1"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
To authenticate with AI Gateway, get your **[Coder API token](../../../admin/users/sessions-tokens.md#generate-a-long-lived-api-token-on-behalf-of-yourself)** and replace `<your-coder-api-token>` in `~/.local/share/opencode/auth.json`
|
|
|
|
```json
|
|
{
|
|
"anthropic": {
|
|
"type": "api",
|
|
"key": "<your-coder-api-token>"
|
|
},
|
|
"openai": {
|
|
"type": "api",
|
|
"key": "<your-coder-api-token>"
|
|
}
|
|
}
|
|
```
|
|
|
|
## BYOK (Personal API Key)
|
|
|
|
Set the following in `~/.config/opencode/opencode.json`, including the `X-Coder-AI-Governance-Token` header with your Coder API token:
|
|
|
|
```json
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"provider": {
|
|
"anthropic": {
|
|
"options": {
|
|
"baseURL": "https://coder.example.com/api/v2/ai-gateway/anthropic/v1",
|
|
"headers": {
|
|
"X-Coder-AI-Governance-Token": "<your-coder-api-token>"
|
|
}
|
|
}
|
|
},
|
|
"openai": {
|
|
"options": {
|
|
"baseURL": "https://coder.example.com/api/v2/ai-gateway/openai/v1",
|
|
"headers": {
|
|
"X-Coder-AI-Governance-Token": "<your-coder-api-token>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
Set your personal API keys in `~/.local/share/opencode/auth.json`:
|
|
|
|
```json
|
|
{
|
|
"anthropic": {
|
|
"type": "api",
|
|
"key": "<your-anthropic-api-key>"
|
|
},
|
|
"openai": {
|
|
"type": "api",
|
|
"key": "<your-openai-api-key>"
|
|
}
|
|
}
|
|
```
|
|
|
|
**References:** [OpenCode Documentation](https://opencode.ai/docs/providers/#config)
|