1
0
forked from agents/opencode

Compare commits

...

15 Commits

4 changed files with 60 additions and 62 deletions

5
AGENTS.md Normal file
View File

@@ -0,0 +1,5 @@
# AGENTS.md
- Always reply in Simplified Chinese by default.
- Use English only if the user explicitly asks for it.
- Keep code, commands, file paths, logs, and identifiers unchanged.

31
README.md Normal file
View File

@@ -0,0 +1,31 @@
# opencode-config
个人 [OpenCode](https://opencode.ai) 配置文件。
## 使用
1. 安装 OpenCode
```bash
npm i -g opencode-ai
# 或
bun add -g opencode-ai
```
2. 克隆配置到 `~/.config/opencode`
```bash
git clone <repo-url> ~/.config/opencode
```
3. 参考 `.env.example` 将以下环境变量配置到系统中
| 变量 | 必填 | 说明 |
|------|------|------|
| `LITELLM_BASE_URL` | 是 | 模型服务端点 |
| `LITELLM_API_KEY` | 是 | 模型服务密钥 |
| `EXA_API_KEY` | 否 | [Exa](https://exa.ai) 搜索,提供联网能力,不配则使用默认额度 |
| `CONTEXT7_API_KEY` | 否 | [Context7](https://context7.com) 文档查询,提供库文档检索,不配则使用默认额度 |
| `OPENCODE_GIT_BASH_PATH` | 否 | Windows 用户需指定 Git Bash 路径,否则工具调用可能异常 |
4. 运行 `opencode`

View File

@@ -4,31 +4,32 @@
"sisyphus": { "model": "anthropic/claude-opus-4-6", "variant": "high" },
"hephaestus": { "model": "openai/gpt-5.3-codex", "variant": "medium" },
"oracle": { "model": "openai/gpt-5.4", "variant": "high" },
"librarian": { "model": "google/gemini-3-flash-preview" },
"librarian": { "model": "litellm/minimax-m2.5" },
"explore": { "model": "litellm/grok-code-fast-1" },
"multimodal-looker": { "model": "openai/gpt-5.4", "variant": "medium" },
"prometheus": { "model": "anthropic/claude-opus-4-6", "variant": "high" },
"metis": { "model": "anthropic/claude-opus-4-6", "variant": "high" },
"momus": { "model": "openai/gpt-5.4", "variant": "xhigh" },
"atlas": { "model": "anthropic/claude-sonnet-4-6" }
"atlas": { "model": "anthropic/claude-sonnet-4-6" },
"sisyphus-junior": { "model": "anthropic/claude-sonnet-4-6" }
},
"categories": {
"visual-engineering": { "model": "google/gemini-3.1-pro-preview", "variant": "high" },
"ultrabrain": { "model": "openai/gpt-5.3-codex", "variant": "xhigh" },
"ultrabrain": { "model": "openai/gpt-5.4", "variant": "xhigh" },
"deep": { "model": "openai/gpt-5.3-codex", "variant": "medium" },
"artistry": { "model": "google/gemini-3.1-pro-preview", "variant": "high" },
"quick": { "model": "anthropic/claude-haiku-4-5" },
"quick": { "model": "openai/gpt-5.4-mini" },
"unspecified-low": { "model": "anthropic/claude-sonnet-4-6" },
"unspecified-high": { "model": "openai/gpt-5.4", "variant": "high" },
"unspecified-high": { "model": "anthropic/claude-opus-4-6", "variant": "high" },
"writing": { "model": "google/gemini-3-flash-preview" }
},
"git_master": {
"commit_footer": false,
"include_co_authored_by": false
},
"experimental": {
"dynamic_context_pruning": {
"enabled": true
}
},
"git_master": {
"commit_footer": false,
"include_co_authored_by": false
}
}

View File

@@ -1,12 +1,9 @@
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["oh-my-opencode@latest"],
"autoupdate": false,
"model": "anthropic/claude-opus-4-6",
"small_model": "anthropic/claude-haiku-4-5",
"plugin": ["oh-my-opencode@latest"],
"experimental": {
"disable_paste_summary": true
},
"provider": {
"anthropic": {
"npm": "@ai-sdk/anthropic",
@@ -19,7 +16,7 @@
"name": "Claude Opus 4.6",
"reasoning": true,
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 200000, "output": 128000 }
"limit": { "context": 1000000, "output": 128000 }
},
"claude-sonnet-4-6": {
"name": "Claude Sonnet 4.6",
@@ -45,20 +42,20 @@
"gpt-5.4": {
"name": "GPT-5.4",
"reasoning": true,
"modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 1050000, "input": 272000, "output": 128000 }
},
"gpt-5.2": {
"name": "GPT-5.2",
"reasoning": true,
"modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 400000, "input": 272000, "output": 128000 }
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 1050000, "input": 922000, "output": 128000 }
},
"gpt-5.3-codex": {
"name": "GPT-5.3-Codex",
"reasoning": true,
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 400000, "input": 272000, "output": 128000 }
},
"gpt-5.4-mini": {
"name": "GPT-5.4 mini",
"reasoning": true,
"modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 400000, "input": 272000, "output": 128000 }
}
}
},
@@ -91,70 +88,34 @@
"apiKey": "{env:LITELLM_API_KEY}"
},
"models": {
// Grok
"grok-code-fast-1": {
"name": "Grok Code Fast 1",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 256000, "output": 10000 }
},
// GLM
"glm-5": {
"name": "GLM-5",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 }
},
"glm-4.7": {
"name": "GLM-4.7",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 }
},
// Kimi
"kimi-k2.5": {
"name": "Kimi K2.5",
"reasoning": true,
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
"limit": { "context": 262144, "output": 262144 }
},
// MiniMax
"minimax-m2.5": {
"name": "MiniMax-M2.5",
"name": "MiniMax M2.5",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 }
}
}
}
},
// Qwen
"qwen3.5-plus": {
"name": "Qwen3.5 Plus",
"reasoning": true,
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
"limit": { "context": 1000000, "output": 65536 }
},
"qwen3-max": {
"name": "Qwen3 Max",
"reasoning": false,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 262144, "output": 65536 }
},
"qwen3-coder-next": {
"name": "Qwen3 Coder Next",
"reasoning": false,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 262144, "output": 65536 }
},
"qwen3-coder-plus": {
"name": "Qwen3 Coder Plus",
"reasoning": false,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 1000000, "output": 65536 }
}
}
}
"experimental": {
"disable_paste_summary": true
}
}