Compare commits

..

20 Commits

Author SHA1 Message Date
mdy d7e0e577a5 merge upstream 2026-04-10 06:47:24 +00:00
mdy ff280ee23d merge upstream 2026-04-09 13:33:20 +00:00
mdy 11886c0fe3 merge upstream 2026-04-09 07:28:45 +00:00
mdy c28d49b607 merge upstream 2026-04-03 03:20:06 +00:00
mdy 9c10229397 merge upstream 2026-03-31 03:00:01 +00:00
mdy 5cd5022024 merge upstream 2026-03-30 13:40:43 +00:00
mdy 5985d0f92f merge upstream 2026-03-29 08:40:58 +00:00
mdy d5733ddec4 merge upstream 2026-03-29 07:57:35 +00:00
mdy 2a6a73e94a merge upstream 2026-03-28 06:15:35 +00:00
mdy 3e5d049aaf merge upstream 2026-03-27 11:46:11 +00:00
mdy e3f9b17753 merge upstream 2026-03-20 13:12:25 +00:00
mdy 838e615af6 merge upstream 2026-03-19 07:02:12 +00:00
mdy fa7a9e1fe7 merge upstream 2026-03-18 06:57:30 +00:00
mdy de299e0261 merge upstream 2026-03-16 01:34:09 +00:00
mdy e6cf0e18f2 merge upstream 2026-03-11 02:17:20 +00:00
mdy fe4d4f2c83 merge upstream 2026-03-06 06:36:13 +00:00
mdy 1a25662a90 merge upstream 2026-03-05 02:22:37 +00:00
mdy b297f3b713 merge upstream 2026-03-04 10:15:55 +00:00
mdy bc349dd01c chore: 将主题从 system 修改为 everforest 2026-03-02 13:31:33 +08:00
mdy 6e81723e4f chore: 将 .env 文件添加到 .gitignore 2026-03-02 13:31:21 +08:00
7 changed files with 72 additions and 133 deletions
+10
View File
@@ -0,0 +1,10 @@
# 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
+1 -3
View File
@@ -5,6 +5,4 @@ bun.lock
.DS_Store .DS_Store
Thumbs.db Thumbs.db
.env
oh-my-openagent.json
oh-my-openagent.jsonc
+4 -21
View File
@@ -18,31 +18,14 @@
git clone <repo-url> ~/.config/opencode git clone <repo-url> ~/.config/opencode
``` ```
3. 将以下环境变量配置到系统中 3. 参考 `.env.example` 将以下环境变量配置到系统中
| 变量 | 必填 | 说明 | | 变量 | 必填 | 说明 |
|------|------|------| |------|------|------|
| `AI_GATEWAY_BASE_URL` | 是 | 模型服务端点,例如 `https://ai-gateway.furtherverse.com` | | `AI_GATEWAY_BASE_URL` | 是 | 模型服务端点 |
| `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 路径,否则工具调用可能异常,例如 `%USERPROFILE%\scoop\apps\git\current\bin\bash.exe` | | `OPENCODE_GIT_BASH_PATH` | 否 | Windows 用户需指定 Git Bash 路径,否则工具调用可能异常 |
4. 选择 oh-my-openagent 配置 4. 运行 `opencode`
项目提供了多套 [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`
-64
View File
@@ -1,64 +0,0 @@
{
"$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,26 +1,26 @@
{ {
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json", "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json",
"agents": { "agents": {
"sisyphus": { "model": "anthropic/claude-opus-4-7", "variant": "max" }, "sisyphus": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
"hephaestus": { "model": "openai/gpt-5.5", "variant": "medium" }, "hephaestus": { "model": "openai/gpt-5.4", "variant": "medium" },
"oracle": { "model": "openai/gpt-5.5", "variant": "high" }, "oracle": { "model": "openai/gpt-5.4", "variant": "high" },
"librarian": { "model": "openai/gpt-5.4-mini" }, "librarian": { "model": "ai-gateway/minimax-m2.7" },
"explore": { "model": "openai/gpt-5.4-mini" }, "explore": { "model": "ai-gateway/minimax-m2.7" },
"multimodal-looker": { "model": "openai/gpt-5.5", "variant": "medium" }, "multimodal-looker": { "model": "openai/gpt-5.4", "variant": "medium" },
"prometheus": { "model": "anthropic/claude-opus-4-7", "variant": "max" }, "prometheus": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
"metis": { "model": "anthropic/claude-opus-4-7", "variant": "max" }, "metis": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
"momus": { "model": "openai/gpt-5.5", "variant": "xhigh" }, "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" } "sisyphus-junior": { "model": "anthropic/claude-sonnet-4-6" }
}, },
"categories": { "categories": {
"visual-engineering": { "model": "google/gemini-3.1-pro-preview", "variant": "high" }, "visual-engineering": { "model": "ai-gateway/gemini-3.1-pro-preview", "variant": "high" },
"ultrabrain": { "model": "openai/gpt-5.5", "variant": "xhigh" }, "ultrabrain": { "model": "openai/gpt-5.4", "variant": "xhigh" },
"deep": { "model": "openai/gpt-5.5", "variant": "medium" }, "deep": { "model": "openai/gpt-5.4", "variant": "medium" },
"artistry": { "model": "google/gemini-3.1-pro-preview", "variant": "high" }, "artistry": { "model": "ai-gateway/gemini-3.1-pro-preview", "variant": "high" },
"quick": { "model": "openai/gpt-5.4-mini" }, "quick": { "model": "openai/gpt-5.4-mini" },
"unspecified-low": { "model": "anthropic/claude-sonnet-4-6" }, "unspecified-low": { "model": "anthropic/claude-sonnet-4-6" },
"unspecified-high": { "model": "anthropic/claude-opus-4-7", "variant": "max" }, "unspecified-high": { "model": "anthropic/claude-opus-4-6", "variant": "max" },
"writing": { "model": "ai-gateway/kimi-k2p5-turbo" } "writing": { "model": "ai-gateway/kimi-k2p5-turbo" }
}, },
"experimental": { "experimental": {
+42 -30
View File
@@ -12,8 +12,8 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}" "apiKey": "{env:AI_GATEWAY_API_KEY}"
}, },
"models": { "models": {
"claude-opus-4-7": { "claude-opus-4-6": {
"name": "Claude Opus 4.7", "name": "Claude Opus 4.6",
"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,11 +39,11 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}" "apiKey": "{env:AI_GATEWAY_API_KEY}"
}, },
"models": { "models": {
"gpt-5.5": { "gpt-5.4": {
"name": "GPT-5.5", "name": "GPT-5.4",
"reasoning": true, "reasoning": true,
"modalities": { "input": ["text", "image", "pdf"], "output": ["text"] }, "modalities": { "input": ["text", "image", "pdf"], "output": ["text"] },
"limit": { "context": 1050000, "input": 920000, "output": 130000 } "limit": { "context": 1050000, "input": 922000, "output": 128000 }
}, },
"gpt-5.4-mini": { "gpt-5.4-mini": {
"name": "GPT-5.4 mini", "name": "GPT-5.4 mini",
@@ -53,27 +53,27 @@
} }
} }
}, },
"google": { // "google": {
"npm": "@ai-sdk/google", // "npm": "@ai-sdk/google",
"options": { // "options": {
"baseURL": "{env:AI_GATEWAY_BASE_URL}/v1beta", // "baseURL": "{env:AI_GATEWAY_BASE_URL}/v1beta",
"apiKey": "{env:AI_GATEWAY_API_KEY}" // "apiKey": "{env:AI_GATEWAY_API_KEY}"
}, // },
"models": { // "models": {
"gemini-3.1-pro-preview": { // "gemini-3.1-pro-preview": {
"name": "Gemini 3.1 Pro", // "name": "Gemini 3.1 Pro",
"reasoning": true, // "reasoning": true,
"modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] }, // "modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] },
"limit": { "context": 1048576, "output": 65536 } // "limit": { "context": 1048576, "output": 65536 }
}, // },
"gemini-3-flash-preview": { // "gemini-3-flash-preview": {
"name": "Gemini 3 Flash", // "name": "Gemini 3 Flash",
"reasoning": true, // "reasoning": true,
"modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] }, // "modalities": { "input": ["text", "image", "video", "audio", "pdf"], "output": ["text"] },
"limit": { "context": 1048576, "output": 65536 } // "limit": { "context": 1048576, "output": 65536 }
} // }
} // }
}, // },
"ai-gateway": { "ai-gateway": {
"name": "AI Gateway", "name": "AI Gateway",
"npm": "@ai-sdk/openai-compatible", "npm": "@ai-sdk/openai-compatible",
@@ -82,17 +82,23 @@
"apiKey": "{env:AI_GATEWAY_API_KEY}" "apiKey": "{env:AI_GATEWAY_API_KEY}"
}, },
"models": { "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": { "glm-5.1": {
"name": "GLM-5.1", "name": "GLM-5.1",
"reasoning": true, "reasoning": true,
"modalities": { "input": ["text"], "output": ["text"] }, "modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 204800, "output": 131072 } "limit": { "context": 204800, "output": 131072 }
}, },
"kimi-k2.6": { "glm-5": {
"name": "Kimi K2.6", "name": "GLM-5",
"reasoning": true, "reasoning": true,
"modalities": { "input": ["text", "image", "video"], "output": ["text"] }, "modalities": { "input": ["text"], "output": ["text"] },
"limit": { "context": 262144, "output": 65536 } "limit": { "context": 204800, "output": 131072 }
}, },
"kimi-k2p5-turbo": { "kimi-k2p5-turbo": {
"name": "Kimi K2.5 Turbo", "name": "Kimi K2.5 Turbo",
@@ -100,6 +106,12 @@
"modalities": { "input": ["text", "image"], "output": ["text"] }, "modalities": { "input": ["text", "image"], "output": ["text"] },
"limit": { "context": 256000, "output": 256000 } "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": { "minimax-m2.7": {
"name": "MiniMax M2.7", "name": "MiniMax M2.7",
"reasoning": true, "reasoning": true,
+1 -1
View File
@@ -1,4 +1,4 @@
{ {
"$schema": "https://opencode.ai/tui.json", "$schema": "https://opencode.ai/tui.json",
"theme": "catppuccin" "theme": "everforest"
} }