Compare commits

..

14 Commits

7 changed files with 133 additions and 71 deletions
-10
View File
@@ -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
+3
View File
@@ -5,3 +5,6 @@ bun.lock
.DS_Store
Thumbs.db
oh-my-openagent.json
oh-my-openagent.jsonc
+21 -4
View File
@@ -18,14 +18,31 @@
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` | 是 | 模型服务密钥 |
| `EXA_API_KEY` | 否 | [Exa](https://exa.ai) 搜索,提供联网能力,不配则使用默认额度 |
| `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`
@@ -1,26 +1,26 @@
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/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" },
"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": "ai-gateway/gemini-3.1-pro-preview", "variant": "high" },
"ultrabrain": { "model": "openai/gpt-5.4", "variant": "xhigh" },
"deep": { "model": "openai/gpt-5.4", "variant": "medium" },
"artistry": { "model": "ai-gateway/gemini-3.1-pro-preview", "variant": "high" },
"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-6", "variant": "max" },
"unspecified-high": { "model": "anthropic/claude-opus-4-7", "variant": "max" },
"writing": { "model": "ai-gateway/kimi-k2p5-turbo" }
},
"experimental": {
+64
View File
@@ -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"
}
}
+30 -42
View File
@@ -12,8 +12,8 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}"
},
"models": {
"claude-opus-4-6": {
"name": "Claude Opus 4.6",
"claude-opus-4-7": {
"name": "Claude Opus 4.7",
"reasoning": true,
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 1000000, "output": 128000 }
@@ -39,11 +39,11 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}"
},
"models": {
"gpt-5.4": {
"name": "GPT-5.4",
"gpt-5.5": {
"name": "GPT-5.5",
"reasoning": true,
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 1050000, "input": 922000, "output": 128000 }
"limit": { "context": 1050000, "input": 920000, "output": 130000 }
},
"gpt-5.4-mini": {
"name": "GPT-5.4 mini",
@@ -53,27 +53,27 @@
}
}
},
// "google": {
// "npm": "@ai-sdk/google",
// "options": {
// "baseURL": "{env:AI_GATEWAY_BASE_URL}/v1beta",
// "apiKey": "{env:AI_GATEWAY_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 }
// }
// }
// },
"google": {
"npm": "@ai-sdk/google",
"options": {
"baseURL": "{env:AI_GATEWAY_BASE_URL}/v1beta",
"apiKey": "{env:AI_GATEWAY_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 }
}
}
},
"ai-gateway": {
"name": "AI Gateway",
"npm": "@ai-sdk/openai-compatible",
@@ -82,23 +82,17 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}"
},
"models": {
"gemini-3.1-pro-preview": {
"name": "Gemini 3.1 Pro",
"reasoning": true,
"modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 128000, "output": 128000 } // github copilot only has a 128k context size
},
"glm-5.1": {
"name": "GLM-5.1",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 }
},
"glm-5": {
"name": "GLM-5",
"kimi-k2.6": {
"name": "Kimi K2.6",
"reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 }
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
"limit": { "context": 262144, "output": 65536 }
},
"kimi-k2p5-turbo": {
"name": "Kimi K2.5 Turbo",
@@ -106,12 +100,6 @@
"modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 256000, "output": 256000 }
},
"kimi-k2.5": {
"name": "Kimi K2.5",
"reasoning": true,
"modalities": { "input": ["text", "image", "video"], "output": ["text"] },
"limit": { "context": 262144, "output": 262144 }
},
"minimax-m2.7": {
"name": "MiniMax M2.7",
"reasoning": true,
+1 -1
View File
@@ -1,4 +1,4 @@
{
"$schema": "https://opencode.ai/tui.json",
"theme": "system"
"theme": "catppuccin"
}