词元之母TOK.MOM - 平台充值汇率 1:1 即 1 人民币充值到账 1 美元,支持一个 Key 调用近 600+ 海内外模型,限时特价模型低至 1 折,欢迎上岸!
通过 opencode.json 配置文件,控制 OpenCode 的核心行为。

| 优先级 | 位置 | 说明 |
|---|---|---|
| 1(最低) | 远程 .well-known/opencode | 远程组织默认配置(通过 Auth 机制获取) |
| 2 | ~/.config/opencode/opencode.json | 全局用户配置 |
| 3 | OPENCODE_CONFIG 环境变量 | 自定义配置文件路径 |
| 4 | ./opencode.json | 项目根目录配置 |
| 5 | ./.opencode/opencode.json | 项目 .opencode 目录配置 |
| 6 | OPENCODE_CONFIG_CONTENT 环境变量 | 内联配置内容(JSON 字符串) |
| 7(最高) | 受管配置目录 | 企业部署,管理员控制 |
配置文件是合并的,不是覆盖。后面的配置会覆盖前面冲突的键,但非冲突的设置都会保留。
| 平台 | 路径 |
|---|---|
| macOS | /Library/Application Support/opencode |
| Windows | %ProgramData%\opencode |
| Linux | /etc/opencode |
~/.config/opencode/
├── opencode.json # 全局配置
├── AGENTS.md # 全局规则
├── agent/ # 全局 Agent
├── command/ # 全局命令
└── plugin/ # 全局插件
项目目录/
├── opencode.json # 项目配置(优先级 4)
├── AGENTS.md # 项目规则
└── .opencode/
├── opencode.json # 项目配置(优先级 5,推荐)
├── agent/ # 项目 Agent
├── command/ # 项目命令
└── plugin/ # 项目插件{
"$schema": "https://opencode.ai/config.json",
// 这是注释,JSONC 格式支持
"model": "anthropic/claude-opus-4-5-thinking"
}配置文件名可以是 opencode.json或opencode.jsonc。
{
"$schema": "https://opencode.ai/config.json",
"model": "anthropic/claude-opus-4-5-thinking",
"small_model": "anthropic/claude-haiku-4-5"
}| 字段 | 说明 |
|---|---|
model | 主模型(格式:provider/model) |
small_model | 小模型,用于简单任务(如生成标题) |
small_model配置一个更便宜的模型用于轻量任务。如果不设置,OpenCode 会尝试使用 Provider 提供的便宜模型,否则回退到主模型。
{
"default_agent": "build"
}"build" - 默认,所有工具可用"plan" - 只读模式,编辑需确认{
"$schema": "https://opencode.ai/config.json",
"provider": {
"anthropic": {
"options": {
"apiKey": "{env:ANTHROPIC_API_KEY}",
"baseURL": "https://api.anthropic.com",
"timeout": 600000,
"setCacheKey": true
}
}
}
}注意:配置键是 provider(单数),不是providers。
| 字段 | 类型 | 说明 |
|---|---|---|
apiKey | string | API 密钥 |
baseURL | string | 自定义 API 地址(代理场景常用) |
timeout | number | false | 请求超时(毫秒),默认 300000,设为 false 禁用 |
setCacheKey | boolean | 启用提示缓存键(默认 false) |
{
"provider": {
"amazon-bedrock": {
"options": {
"region": "us-east-1",
"profile": "my-aws-profile",
"endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
}
}
}
}| 字段 | 说明 |
|---|---|
region | AWS 区域(默认从 AWS_REGION 环境变量或 us-east-1) |
profile | AWS 配置文件名(来自 ~/.aws/credentials) |
endpoint | 自定义端点 URL(用于 VPC 端点) |
{
"disabled_providers": ["openai", "gemini"],
"enabled_providers": ["anthropic"]
}| 字段 | 说明 |
|---|---|
disabled_providers | 禁用的 Provider 列表,即使有 API Key 也不加载 |
enabled_providers | 只启用这些 Provider,其他全部忽略 |
disabled_providers优先级高于enabled_providers。如果同时出现在两个列表中,会被禁用。
{
"username": "张三"
}{
"theme": "tokyonight"
}注意:配置键是 theme,不是tui.theme。
{
"autoupdate": true
}| 值 | 说明 |
|---|---|
true | 启动时自动下载更新(默认) |
false | 禁用自动更新 |
"notify" | 只通知新版本,不自动更新 |
{env:变量名} 引用环境变量:{
"model": "{env:OPENCODE_MODEL}",
"provider": {
"anthropic": {
"options": {
"apiKey": "{env:ANTHROPIC_API_KEY}"
}
}
}
}如果环境变量不存在,会被替换为空字符串。
{file:路径} 引用文件内容:{
"provider": {
"openai": {
"options": {
"apiKey": "{file:~/.secrets/openai-key}"
}
}
}
}/ 开头的绝对路径~ 开头的 home 目录路径{
"$schema": "https://opencode.ai/config.json",
// 模型
"model": "anthropic/claude-opus-4-5-thinking",
"small_model": "anthropic/claude-haiku-4-5",
"default_agent": "build",
// Provider
"provider": {
"anthropic": {
"options": {
"apiKey": "{env:ANTHROPIC_API_KEY}",
"timeout": 600000
}
}
},
// Provider 控制
"disabled_providers": ["gemini"],
// 用户
"username": "开发者",
// 主题
"theme": "catppuccin",
// 自动更新
"autoupdate": true
}| 现象 | 原因 | 解决 |
|---|---|---|
| 配置不生效 | 优先级问题 | 项目级配置优先于全局配置 |
| 变量替换失败 | 环境变量不存在 | 确认环境变量已设置 |
| JSON 解析错误 | 格式错误 | 使用 JSONC 格式或检查语法 |
用了 providers | 键名错误 | 应为 provider(单数) |
| Provider 不加载 | 在 disabled 列表中 | 检查 disabled_providers |
下一课我们将学习配置进阶,包括界面配置、行为配置、以及各类功能配置的详解。