forked from agents/opencode
Compare commits
29 Commits
5985d0f92f
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| b410705fd7 | |||
| 564c1934a6 | |||
| 4516384f0e | |||
| ff94c77eb1 | |||
| 3facc31494 | |||
| b9af5f6389 | |||
| 6c821b65c5 | |||
| 561a3961c1 | |||
| 0c812192ec | |||
| 92c25d63ca | |||
| d1a4744d31 | |||
| 3b623a3db8 | |||
| 071e61ff3d | |||
| e2ba6e9bd0 | |||
| 536a5f6e05 | |||
| a288a50fb2 | |||
| 725477f0cd | |||
| 5bc20fee60 | |||
| e5120f2690 | |||
| 4b784e0ac1 | |||
| 7cc5251acc | |||
| 9284359b93 | |||
| 2a1f59b993 | |||
| 42a1057494 | |||
| 1502791097 | |||
| 092acf0659 | |||
| cf5f6470ab | |||
| 500caf5575 | |||
| 9531af8acb |
@@ -1,10 +0,0 @@
|
|||||||
# Provider
|
|
||||||
AI_GATEWAY_BASE_URL=https://ai-gateway.furtherverse.com
|
|
||||||
AI_GATEWAY_API_KEY=
|
|
||||||
|
|
||||||
# MCP
|
|
||||||
EXA_API_KEY=
|
|
||||||
CONTEXT7_API_KEY=
|
|
||||||
|
|
||||||
# Windows
|
|
||||||
OPENCODE_GIT_BASH_PATH=%USERPROFILE%\scoop\apps\git\current\bin\bash.exe
|
|
||||||
+4
-1
@@ -1,7 +1,10 @@
|
|||||||
node_modules
|
node_modules
|
||||||
package.json
|
package.json
|
||||||
|
package-lock.json
|
||||||
bun.lock
|
bun.lock
|
||||||
|
|
||||||
.DS_Store
|
.DS_Store
|
||||||
Thumbs.db
|
Thumbs.db
|
||||||
.env
|
|
||||||
|
oh-my-openagent.json
|
||||||
|
oh-my-openagent.jsonc
|
||||||
|
|||||||
@@ -18,14 +18,31 @@
|
|||||||
git clone <repo-url> ~/.config/opencode
|
git clone <repo-url> ~/.config/opencode
|
||||||
```
|
```
|
||||||
|
|
||||||
3. 参考 `.env.example` 将以下环境变量配置到系统中
|
3. 将以下环境变量配置到系统中
|
||||||
|
|
||||||
| 变量 | 必填 | 说明 |
|
| 变量 | 必填 | 说明 |
|
||||||
|------|------|------|
|
|------|------|------|
|
||||||
| `AI_GATEWAY_BASE_URL` | 是 | 模型服务端点 |
|
| `AI_GATEWAY_BASE_URL` | 是 | 模型服务端点,例如 `https://ai-gateway.furtherverse.com` |
|
||||||
| `AI_GATEWAY_API_KEY` | 是 | 模型服务密钥 |
|
| `AI_GATEWAY_API_KEY` | 是 | 模型服务密钥 |
|
||||||
| `EXA_API_KEY` | 否 | [Exa](https://exa.ai) 搜索,提供联网能力,不配则使用默认额度 |
|
| `EXA_API_KEY` | 否 | [Exa](https://exa.ai) 搜索,提供联网能力,不配则使用默认额度 |
|
||||||
| `CONTEXT7_API_KEY` | 否 | [Context7](https://context7.com) 文档查询,提供库文档检索,不配则使用默认额度 |
|
| `CONTEXT7_API_KEY` | 否 | [Context7](https://context7.com) 文档查询,提供库文档检索,不配则使用默认额度 |
|
||||||
| `OPENCODE_GIT_BASH_PATH` | 否 | Windows 用户需指定 Git Bash 路径,否则工具调用可能异常 |
|
| `OPENCODE_GIT_BASH_PATH` | 否 | Windows 用户需指定 Git Bash 路径,否则工具调用可能异常,例如 `%USERPROFILE%\scoop\apps\git\current\bin\bash.exe` |
|
||||||
|
|
||||||
4. 运行 `opencode`
|
4. 选择 oh-my-openagent 配置
|
||||||
|
|
||||||
|
项目提供了多套 [oh-my-openagent](https://github.com/code-yeongyu/oh-my-openagent) 预设配置,通过符号链接切换:
|
||||||
|
|
||||||
|
| 文件 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `oh-my-openagent.claude.jsonc` | 主力 agent 使用 Claude 系列模型 |
|
||||||
|
| `oh-my-openagent.gpt.jsonc` | 主力 agent 使用 GPT 系列模型 |
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 使用 Claude 配置(默认)
|
||||||
|
ln -sf oh-my-openagent.claude.jsonc oh-my-openagent.jsonc
|
||||||
|
|
||||||
|
# 使用 GPT 配置
|
||||||
|
ln -sf oh-my-openagent.gpt.jsonc oh-my-openagent.jsonc
|
||||||
|
```
|
||||||
|
|
||||||
|
5. 运行 `opencode`
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json",
|
||||||
|
"agents": {
|
||||||
|
"sisyphus": { "model": "anthropic/claude-opus-4-7", "variant": "max" },
|
||||||
|
"hephaestus": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"oracle": { "model": "openai/gpt-5.5", "variant": "high" },
|
||||||
|
"librarian": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"explore": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"multimodal-looker": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"prometheus": { "model": "anthropic/claude-opus-4-7", "variant": "max" },
|
||||||
|
"metis": { "model": "anthropic/claude-opus-4-7", "variant": "max" },
|
||||||
|
"momus": { "model": "openai/gpt-5.5", "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.5", "variant": "xhigh" },
|
||||||
|
"deep": { "model": "openai/gpt-5.5", "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-7", "variant": "max" },
|
||||||
|
"writing": { "model": "ai-gateway/kimi-k2p5-turbo" }
|
||||||
|
},
|
||||||
|
"experimental": {
|
||||||
|
"disable_omo_env": true,
|
||||||
|
"dynamic_context_pruning": {
|
||||||
|
"enabled": true,
|
||||||
|
"notification": "detailed",
|
||||||
|
"turn_protection": {
|
||||||
|
"enabled": true,
|
||||||
|
"turns": 3
|
||||||
|
},
|
||||||
|
"protected_tools": [
|
||||||
|
"task",
|
||||||
|
"todowrite",
|
||||||
|
"todoread",
|
||||||
|
"lsp_rename",
|
||||||
|
"session_read",
|
||||||
|
"session_write",
|
||||||
|
"session_search"
|
||||||
|
],
|
||||||
|
"strategies": {
|
||||||
|
"deduplication": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"supersede_writes": {
|
||||||
|
"enabled": true,
|
||||||
|
"aggressive": false
|
||||||
|
},
|
||||||
|
"purge_errors": {
|
||||||
|
"enabled": true,
|
||||||
|
"turns": 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"git_master": {
|
||||||
|
"commit_footer": false,
|
||||||
|
"include_co_authored_by": false,
|
||||||
|
"git_env_prefix": "GIT_MASTER=1"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json",
|
||||||
|
"agents": {
|
||||||
|
"sisyphus": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"hephaestus": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"oracle": { "model": "openai/gpt-5.5", "variant": "high" },
|
||||||
|
"librarian": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"explore": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"multimodal-looker": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"prometheus": { "model": "openai/gpt-5.5", "variant": "high" },
|
||||||
|
"metis": { "model": "openai/gpt-5.5", "variant": "high" },
|
||||||
|
"momus": { "model": "openai/gpt-5.5", "variant": "xhigh" },
|
||||||
|
"atlas": { "model": "ai-gateway/kimi-k2p5-turbo" },
|
||||||
|
"sisyphus-junior": { "model": "ai-gateway/kimi-k2p5-turbo" }
|
||||||
|
},
|
||||||
|
"categories": {
|
||||||
|
"visual-engineering": { "model": "google/gemini-3.1-pro-preview", "variant": "high" },
|
||||||
|
"ultrabrain": { "model": "openai/gpt-5.5", "variant": "xhigh" },
|
||||||
|
"deep": { "model": "openai/gpt-5.5", "variant": "medium" },
|
||||||
|
"artistry": { "model": "google/gemini-3.1-pro-preview", "variant": "high" },
|
||||||
|
"quick": { "model": "openai/gpt-5.4-mini" },
|
||||||
|
"unspecified-low": { "model": "ai-gateway/kimi-k2p5-turbo" },
|
||||||
|
"unspecified-high": { "model": "openai/gpt-5.5", "variant": "high" },
|
||||||
|
"writing": { "model": "ai-gateway/kimi-k2p5-turbo" }
|
||||||
|
},
|
||||||
|
"experimental": {
|
||||||
|
"disable_omo_env": true,
|
||||||
|
"dynamic_context_pruning": {
|
||||||
|
"enabled": true,
|
||||||
|
"notification": "detailed",
|
||||||
|
"turn_protection": {
|
||||||
|
"enabled": true,
|
||||||
|
"turns": 3
|
||||||
|
},
|
||||||
|
"protected_tools": [
|
||||||
|
"task",
|
||||||
|
"todowrite",
|
||||||
|
"todoread",
|
||||||
|
"lsp_rename",
|
||||||
|
"session_read",
|
||||||
|
"session_write",
|
||||||
|
"session_search"
|
||||||
|
],
|
||||||
|
"strategies": {
|
||||||
|
"deduplication": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"supersede_writes": {
|
||||||
|
"enabled": true,
|
||||||
|
"aggressive": false
|
||||||
|
},
|
||||||
|
"purge_errors": {
|
||||||
|
"enabled": true,
|
||||||
|
"turns": 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"git_master": {
|
||||||
|
"commit_footer": false,
|
||||||
|
"include_co_authored_by": false,
|
||||||
|
"git_env_prefix": "GIT_MASTER=1"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
"$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": "max" },
|
|
||||||
"hephaestus": { "model": "openai/gpt-5.4", "variant": "medium" },
|
|
||||||
"oracle": { "model": "openai/gpt-5.4", "variant": "high" },
|
|
||||||
"librarian": { "model": "ai-gateway/minimax-m2.7" },
|
|
||||||
"explore": { "model": "ai-gateway/minimax-m2.7" },
|
|
||||||
"multimodal-looker": { "model": "openai/gpt-5.4", "variant": "medium" },
|
|
||||||
"prometheus": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
|
|
||||||
"metis": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
|
|
||||||
"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": "max" },
|
|
||||||
"writing": { "model": "ai-gateway/kimi-k2.5" }
|
|
||||||
},
|
|
||||||
"experimental": {
|
|
||||||
"dynamic_context_pruning": {
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"git_master": {
|
|
||||||
"commit_footer": false,
|
|
||||||
"include_co_authored_by": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+15
-27
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://opencode.ai/config.json",
|
"$schema": "https://opencode.ai/config.json",
|
||||||
"plugin": ["oh-my-opencode@latest"],
|
"plugin": ["oh-my-openagent@latest"],
|
||||||
"autoupdate": false,
|
"autoupdate": false,
|
||||||
"model": "anthropic/claude-opus-4-6",
|
"model": "anthropic/claude-opus-4-6",
|
||||||
"small_model": "openai/gpt-5.4-mini",
|
"small_model": "openai/gpt-5.4-mini",
|
||||||
@@ -12,8 +12,8 @@
|
|||||||
"apiKey": "{env:AI_GATEWAY_API_KEY}"
|
"apiKey": "{env:AI_GATEWAY_API_KEY}"
|
||||||
},
|
},
|
||||||
"models": {
|
"models": {
|
||||||
"claude-opus-4-6": {
|
"claude-opus-4-7": {
|
||||||
"name": "Claude Opus 4.6",
|
"name": "Claude Opus 4.7",
|
||||||
"reasoning": true,
|
"reasoning": true,
|
||||||
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
||||||
"limit": { "context": 1000000, "output": 128000 }
|
"limit": { "context": 1000000, "output": 128000 }
|
||||||
@@ -39,17 +39,11 @@
|
|||||||
"apiKey": "{env:AI_GATEWAY_API_KEY}"
|
"apiKey": "{env:AI_GATEWAY_API_KEY}"
|
||||||
},
|
},
|
||||||
"models": {
|
"models": {
|
||||||
"gpt-5.4": {
|
"gpt-5.5": {
|
||||||
"name": "GPT-5.4",
|
"name": "GPT-5.5",
|
||||||
"reasoning": true,
|
"reasoning": true,
|
||||||
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
|
||||||
"limit": { "context": 1050000, "input": 922000, "output": 128000 }
|
"limit": { "context": 1050000, "input": 920000, "output": 130000 }
|
||||||
},
|
|
||||||
"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": {
|
"gpt-5.4-mini": {
|
||||||
"name": "GPT-5.4 mini",
|
"name": "GPT-5.4 mini",
|
||||||
@@ -94,29 +88,23 @@
|
|||||||
"modalities": { "input": ["text"], "output": ["text"] },
|
"modalities": { "input": ["text"], "output": ["text"] },
|
||||||
"limit": { "context": 204800, "output": 131072 }
|
"limit": { "context": 204800, "output": 131072 }
|
||||||
},
|
},
|
||||||
"glm-5": {
|
"kimi-k2.6": {
|
||||||
"name": "GLM-5",
|
"name": "Kimi K2.6",
|
||||||
"reasoning": true,
|
|
||||||
"modalities": { "input": ["text"], "output": ["text"] },
|
|
||||||
"limit": { "context": 204800, "output": 131072 }
|
|
||||||
},
|
|
||||||
"kimi-k2.5": {
|
|
||||||
"name": "Kimi K2.5",
|
|
||||||
"reasoning": true,
|
"reasoning": true,
|
||||||
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
|
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
|
||||||
"limit": { "context": 262144, "output": 262144 }
|
"limit": { "context": 262144, "output": 65536 }
|
||||||
|
},
|
||||||
|
"kimi-k2p5-turbo": {
|
||||||
|
"name": "Kimi K2.5 Turbo",
|
||||||
|
"reasoning": true,
|
||||||
|
"modalities": { "input": ["text", "image"], "output": ["text"] },
|
||||||
|
"limit": { "context": 256000, "output": 256000 }
|
||||||
},
|
},
|
||||||
"minimax-m2.7": {
|
"minimax-m2.7": {
|
||||||
"name": "MiniMax M2.7",
|
"name": "MiniMax M2.7",
|
||||||
"reasoning": true,
|
"reasoning": true,
|
||||||
"modalities": { "input": ["text"], "output": ["text"] },
|
"modalities": { "input": ["text"], "output": ["text"] },
|
||||||
"limit": { "context": 204800, "output": 131072 }
|
"limit": { "context": 204800, "output": 131072 }
|
||||||
},
|
|
||||||
"minimax-m2.5": {
|
|
||||||
"name": "MiniMax M2.5",
|
|
||||||
"reasoning": true,
|
|
||||||
"modalities": { "input": ["text"], "output": ["text"] },
|
|
||||||
"limit": { "context": 204800, "output": 131072 }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user