forked from agents/opencode
Compare commits
49 Commits
f8a349f478
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 1ab05fac87 | |||
| b5717759ba | |||
| cc38835300 | |||
| f3a9562301 | |||
| 6450117296 | |||
| 1440291655 | |||
| ec0aff2728 | |||
| 61374e11a9 | |||
| 94c7118b71 | |||
| 752b56ab33 | |||
| 6477587931 | |||
| 2c645726fe | |||
| 3eb10e1f92 | |||
| 0b7cb68250 | |||
| b228445039 | |||
| a6f01430ce | |||
| a1f5173300 | |||
| cdc3dd049b | |||
| c89fef8381 | |||
| 74af1b6c76 | |||
| 7e41c54a0c | |||
| edb4d1504f | |||
| 9c5bfe4c86 | |||
| e441ac80b2 | |||
| fc042a48c5 | |||
| c893707c94 | |||
| 0c95def9f1 | |||
| fc15e5d63f | |||
| 5d8b068604 | |||
| e9fb5713b1 | |||
| 200c3fe5f8 | |||
| e7aeec46f2 | |||
| ff6d5f89be | |||
| f886e6b440 | |||
| 2d6c198df8 | |||
| 571f658c0c | |||
| a9a279f068 | |||
| 6d78aef5a4 | |||
| 888a0eb2b4 | |||
| b9653d78a6 | |||
| 6d8635c1ac | |||
| abea1e52c0 | |||
| 6f832d3d8c | |||
| 51e11f7582 | |||
| 4eadc3b3e9 | |||
| aa4a96626c | |||
| a0c1d889d8 | |||
| 0b77e65186 | |||
| 1be7ac925d |
@@ -7,4 +7,4 @@ EXA_API_KEY=
|
|||||||
CONTEXT7_API_KEY=
|
CONTEXT7_API_KEY=
|
||||||
|
|
||||||
# Windows
|
# Windows
|
||||||
OPENCODE_GIT_BASH_PATH=%USERPROFILE%\scoop\shims\bash.exe
|
OPENCODE_GIT_BASH_PATH=%USERPROFILE%\scoop\apps\git\current\bin\bash.exe
|
||||||
|
|||||||
5
AGENTS.md
Normal file
5
AGENTS.md
Normal 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
31
README.md
Normal 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`
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
|
|
||||||
"agents": {
|
|
||||||
"sisyphus": { "model": "openai/gpt-5.3-codex", "variant": "high" },
|
|
||||||
"hephaestus": { "model": "openai/gpt-5.3-codex", "variant": "high" },
|
|
||||||
"oracle": { "model": "openai/gpt-5.2", "variant": "high" },
|
|
||||||
"librarian": { "model": "openai/gpt-5.2", "variant": "medium" },
|
|
||||||
"explore": { "model": "openai/gpt-5.1-codex-mini" },
|
|
||||||
"multimodal-looker": { "model": "openai/gpt-5.3-codex", "variant": "medium" },
|
|
||||||
"prometheus": { "model": "openai/gpt-5.2", "variant": "high" },
|
|
||||||
"metis": { "model": "openai/gpt-5.2", "variant": "high" },
|
|
||||||
"momus": { "model": "openai/gpt-5.2", "variant": "high" },
|
|
||||||
"atlas": { "model": "openai/gpt-5.2", "variant": "medium" }
|
|
||||||
},
|
|
||||||
"categories": {
|
|
||||||
"visual-engineering": { "model": "openai/gpt-5.3-codex", "variant": "high" },
|
|
||||||
"ultrabrain": { "model": "openai/gpt-5.3-codex", "variant": "xhigh" },
|
|
||||||
"deep": { "model": "openai/gpt-5.3-codex", "variant": "high" },
|
|
||||||
"artistry": { "model": "openai/gpt-5.3-codex", "variant": "medium" },
|
|
||||||
"quick": { "model": "openai/gpt-5.1-codex-mini" },
|
|
||||||
"unspecified-low": { "model": "openai/gpt-5.2", "variant": "medium" },
|
|
||||||
"unspecified-high": { "model": "openai/gpt-5.3-codex", "variant": "high" },
|
|
||||||
"writing": { "model": "openai/gpt-5.2", "variant": "medium" }
|
|
||||||
},
|
|
||||||
"git_master": {
|
|
||||||
"commit_footer": false,
|
|
||||||
"include_co_authored_by": false
|
|
||||||
},
|
|
||||||
"experimental": {
|
|
||||||
"dynamic_context_pruning": {
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
35
oh-my-opencode.jsonc
Normal file
35
oh-my-opencode.jsonc
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
|
||||||
|
"agents": {
|
||||||
|
"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": "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" },
|
||||||
|
"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.4", "variant": "xhigh" },
|
||||||
|
"deep": { "model": "openai/gpt-5.3-codex", "variant": "medium" },
|
||||||
|
"artistry": { "model": "google/gemini-3.1-pro-preview", "variant": "high" },
|
||||||
|
"quick": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"unspecified-low": { "model": "anthropic/claude-sonnet-4-6" },
|
||||||
|
"unspecified-high": { "model": "anthropic/claude-opus-4-6", "variant": "high" },
|
||||||
|
"writing": { "model": "google/gemini-3-flash-preview" }
|
||||||
|
},
|
||||||
|
"experimental": {
|
||||||
|
"dynamic_context_pruning": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"git_master": {
|
||||||
|
"commit_footer": false,
|
||||||
|
"include_co_authored_by": false
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://opencode.ai/config.json",
|
|
||||||
"autoupdate": false,
|
|
||||||
"model": "openai/gpt-5.3-codex",
|
|
||||||
"small_model": "openai/gpt-5.1-codex-mini",
|
|
||||||
"experimental": {
|
|
||||||
"disable_paste_summary": true
|
|
||||||
},
|
|
||||||
"plugin": ["oh-my-opencode@latest"],
|
|
||||||
"disabled_providers": ["opencode"],
|
|
||||||
"provider": {
|
|
||||||
"openai": {
|
|
||||||
"npm": "@ai-sdk/openai",
|
|
||||||
"options": {
|
|
||||||
"baseURL": "{env:LITELLM_BASE_URL}/v1",
|
|
||||||
"apiKey": "{env:LITELLM_API_KEY}"
|
|
||||||
},
|
|
||||||
"models": {
|
|
||||||
"gpt-5.2": {
|
|
||||||
"name": "GPT-5.2",
|
|
||||||
"reasoning": true,
|
|
||||||
"modalities": { "input": ["text", "image"], "output": ["text"] },
|
|
||||||
"limit": { "context": 400000, "input": 272000, "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.1-codex-mini": {
|
|
||||||
"name": "GPT-5.1-Codex-Mini",
|
|
||||||
"reasoning": true,
|
|
||||||
"modalities": { "input": ["text", "image"], "output": ["text"] },
|
|
||||||
"limit": { "context": 400000, "input": 272000, "output": 128000 }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
121
opencode.jsonc
Normal file
121
opencode.jsonc
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
{
|
||||||
|
"$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",
|
||||||
|
"provider": {
|
||||||
|
"anthropic": {
|
||||||
|
"npm": "@ai-sdk/anthropic",
|
||||||
|
"options": {
|
||||||
|
"baseURL": "{env:LITELLM_BASE_URL}/v1",
|
||||||
|
"apiKey": "{env:LITELLM_API_KEY}"
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"claude-opus-4-6": {
|
||||||
|
"name": "Claude Opus 4.6",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
||||||
|
"limit": { "context": 1000000, "output": 128000 }
|
||||||
|
},
|
||||||
|
"claude-sonnet-4-6": {
|
||||||
|
"name": "Claude Sonnet 4.6",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
||||||
|
"limit": { "context": 200000, "output": 64000 }
|
||||||
|
},
|
||||||
|
"claude-haiku-4-5": {
|
||||||
|
"name": "Claude Haiku 4.5",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
||||||
|
"limit": { "context": 200000, "output": 64000 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"openai": {
|
||||||
|
"npm": "@ai-sdk/openai",
|
||||||
|
"options": {
|
||||||
|
"baseURL": "{env:LITELLM_BASE_URL}/v1",
|
||||||
|
"apiKey": "{env:LITELLM_API_KEY}"
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"gpt-5.4": {
|
||||||
|
"name": "GPT-5.4",
|
||||||
|
"reasoning": true,
|
||||||
|
"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 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"google": {
|
||||||
|
"npm": "@ai-sdk/google",
|
||||||
|
"options": {
|
||||||
|
"baseURL": "{env:LITELLM_BASE_URL}/v1beta",
|
||||||
|
"apiKey": "{env:LITELLM_API_KEY}"
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"gemini-3.1-pro-preview": {
|
||||||
|
"name": "Gemini 3.1 Pro",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] },
|
||||||
|
"limit": { "context": 1048576, "output": 65536 }
|
||||||
|
},
|
||||||
|
"gemini-3-flash-preview": {
|
||||||
|
"name": "Gemini 3 Flash",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] },
|
||||||
|
"limit": { "context": 1048576, "output": 65536 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"litellm": {
|
||||||
|
"name": "LiteLLM",
|
||||||
|
"npm": "@ai-sdk/openai-compatible",
|
||||||
|
"options": {
|
||||||
|
"baseURL": "{env:LITELLM_BASE_URL}/v1",
|
||||||
|
"apiKey": "{env:LITELLM_API_KEY}"
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"grok-code-fast-1": {
|
||||||
|
"name": "Grok Code Fast 1",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text"], "output": ["text"] },
|
||||||
|
"limit": { "context": 256000, "output": 10000 }
|
||||||
|
},
|
||||||
|
"glm-5": {
|
||||||
|
"name": "GLM-5",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text"], "output": ["text"] },
|
||||||
|
"limit": { "context": 204800, "output": 131072 }
|
||||||
|
},
|
||||||
|
"kimi-k2.5": {
|
||||||
|
"name": "Kimi K2.5",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
|
||||||
|
"limit": { "context": 262144, "output": 262144 }
|
||||||
|
},
|
||||||
|
"minimax-m2.5": {
|
||||||
|
"name": "MiniMax M2.5",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text"], "output": ["text"] },
|
||||||
|
"limit": { "context": 204800, "output": 131072 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"experimental": {
|
||||||
|
"disable_paste_summary": true
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user