forked from agents/opencode
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b410705fd7 | |||
| 564c1934a6 | |||
| 4516384f0e | |||
| ff94c77eb1 | |||
| 3facc31494 | |||
| b9af5f6389 | |||
| 6c821b65c5 | |||
| 561a3961c1 | |||
| 0c812192ec | |||
| 92c25d63ca | |||
| d1a4744d31 |
@@ -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
|
||||
@@ -18,15 +18,15 @@
|
||||
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. 选择 oh-my-openagent 配置
|
||||
|
||||
@@ -46,17 +46,3 @@
|
||||
```
|
||||
|
||||
5. 运行 `opencode`
|
||||
|
||||
## 设计参考(DESIGN.md)
|
||||
|
||||
这个仓库也收录了来自 `VoltAgent/awesome-design-md` 的设计参考接入说明。
|
||||
|
||||
- 它们**不是** OpenCode skill,也不会被 `jr` 全局自动加载。
|
||||
- 正确用法是:在具体项目根目录生成 `DESIGN.md`,再让 AI 在 UI 工作时参考它。
|
||||
|
||||
目前纳管了两套常用设计来源:
|
||||
|
||||
- `opencode.ai`
|
||||
- `voltagent`
|
||||
|
||||
详细说明见 [`docs/design-md.md`](docs/design-md.md)。
|
||||
|
||||
@@ -1,79 +0,0 @@
|
||||
# DESIGN.md 设计参考接入说明
|
||||
|
||||
本文件用于给 `jr` 配置仓库存放 UI 设计参考来源。
|
||||
|
||||
## 结论
|
||||
|
||||
`https://github.com/VoltAgent/awesome-design-md.git` 不是 OpenCode/opencode-jr 的原生 skill 或 plugin 仓库。
|
||||
|
||||
- 它不是 `AGENTS.md`
|
||||
- 它不是 `oh-my-openagent` 配置
|
||||
- 它不是可直接全局加载的 skill 集合
|
||||
- 它本质上是一个 `DESIGN.md` 设计灵感索引
|
||||
|
||||
因此,这里的集成方式是:
|
||||
|
||||
1. 在 `jr` 配置仓库中记录可用设计来源
|
||||
2. 在具体项目里按需生成 `DESIGN.md`
|
||||
3. 让 AI 在做 UI / UX / 视觉工作时参考该文件
|
||||
|
||||
## 推荐设计来源
|
||||
|
||||
### 1. OpenCode 风格
|
||||
|
||||
- 页面:`https://getdesign.md/opencode.ai/design-md`
|
||||
- 用途:AI coding 平台、开发者工具、终端风格暗色 UI
|
||||
- 官方推荐命令:
|
||||
|
||||
```bash
|
||||
npx getdesign@latest add opencode.ai
|
||||
```
|
||||
|
||||
页面摘要:
|
||||
|
||||
> Design System inspired by OpenCode
|
||||
>
|
||||
> AI coding platform. Developer-centric dark theme.
|
||||
|
||||
### 2. VoltAgent 风格
|
||||
|
||||
- 页面:`https://getdesign.md/voltagent/design-md`
|
||||
- 用途:AI agent framework、终端感暗色界面、黑绿配色
|
||||
- 官方推荐命令:
|
||||
|
||||
```bash
|
||||
npx getdesign@latest add voltagent
|
||||
```
|
||||
|
||||
页面摘要:
|
||||
|
||||
> Design System inspired by VoltAgent
|
||||
>
|
||||
> AI agent framework. Void-black canvas, emerald accent, terminal-native.
|
||||
|
||||
## 使用方式
|
||||
|
||||
在你要开发的项目根目录运行:
|
||||
|
||||
```bash
|
||||
# OpenCode 风格
|
||||
npx getdesign@latest add opencode.ai
|
||||
|
||||
# 或 VoltAgent 风格
|
||||
npx getdesign@latest add voltagent
|
||||
```
|
||||
|
||||
生成 `DESIGN.md` 后,再在 AI 对话中明确说明:
|
||||
|
||||
- “请按当前项目里的 `DESIGN.md` 做 UI”
|
||||
- “请参考 `DESIGN.md` 的视觉语言实现这个页面”
|
||||
|
||||
## 为什么不直接把它配成 jr skill
|
||||
|
||||
因为当前证据表明:
|
||||
|
||||
- 远端仓库主要是索引/跳转结构
|
||||
- 不包含可直接接入的 `skills/`、`plugins/`、`AGENTS.md` 或 `oh-my-openagent` 配置
|
||||
- `DESIGN.md` 的设计目标是**项目级输入**,不是 `jr` 的全局能力注入
|
||||
|
||||
所以最稳妥的做法不是伪装成 skill,而是把它记录为 `jr` 的设计参考来源。
|
||||
@@ -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": {
|
||||
|
||||
+15
-15
@@ -1,26 +1,26 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json",
|
||||
"agents": {
|
||||
"sisyphus": { "model": "openai/gpt-5.4", "variant": "medium" },
|
||||
"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": "openai/gpt-5.4", "variant": "high" },
|
||||
"metis": { "model": "openai/gpt-5.4", "variant": "high" },
|
||||
"momus": { "model": "openai/gpt-5.4", "variant": "xhigh" },
|
||||
"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": "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": "gpt-5.3-codex", "variant": "medium" },
|
||||
"unspecified-high": { "model": "openai/gpt-5.4", "variant": "high" },
|
||||
"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": {
|
||||
|
||||
+30
-42
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user