feat: add 9 plugins, sync to new provider format, add 6 new MCP packages
This commit is contained in:
@@ -66,10 +66,11 @@ echo 'export BRAVE_API_KEY=BSA...' >> ~/.bashrc
|
||||
|
||||
## What's Synced
|
||||
|
||||
- **9 Plugins** - oh-my-openagent, opencode-mem, opencode-pty, dynamic context pruning, RAG, command-inject, notify, agent-identity, tokenscope
|
||||
- **32 Skills** - Coding standards, frontend/backend patterns, security review, etc.
|
||||
- **3 Agents** - explorer, reviewer, docs-researcher
|
||||
- **11 MCP Servers** - codegraph, brave-search, playwright, github, etc.
|
||||
- **Model Config** - Kimi K2.6 + 7 other models via OpenAI-compatible API
|
||||
- **14 MCP Servers** - codegraph, brave-search, playwright, github, context7, exa, etc.
|
||||
- **Model Config** - Kimi K2.6 + 14 other models via `@ai-sdk/openai-compatible`
|
||||
|
||||
## Updating
|
||||
|
||||
|
||||
+6
-9
@@ -200,8 +200,12 @@ GLOBAL_PACKAGES=(
|
||||
"@playwright/mcp"
|
||||
"@upstash/context7-mcp"
|
||||
"mcp-remote"
|
||||
"jina-mcp-tools"
|
||||
"git-mcp-server"
|
||||
"chrome-devtools-mcp"
|
||||
)
|
||||
|
||||
# Install npm global deps (git-mcp-server replaces Python mcp-server-git)
|
||||
for pkg in "${GLOBAL_PACKAGES[@]}"; do
|
||||
echo -e "${DARKGRAY} Installing $pkg...${NC}" -n
|
||||
if npm install -g "$pkg" 2>/dev/null; then
|
||||
@@ -211,23 +215,16 @@ for pkg in "${GLOBAL_PACKAGES[@]}"; do
|
||||
fi
|
||||
done
|
||||
|
||||
# Install Python git MCP
|
||||
echo -e "${DARKGRAY} Installing Python git MCP...${NC}" -n
|
||||
if python3 -m pip install mcp-server-git 2>/dev/null || python -m pip install mcp-server-git 2>/dev/null; then
|
||||
echo -e "${GREEN} OK${NC}"
|
||||
else
|
||||
echo -e "${YELLOW} SKIP${NC}"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo -e "${CYAN}========================================${NC}"
|
||||
echo -e "${GREEN} Installation Complete! ${NC}"
|
||||
echo -e "${CYAN}========================================${NC}"
|
||||
echo ""
|
||||
echo -e "${WHITE}Next steps:${NC}"
|
||||
echo -e " 1. Restart opencode to load new config"
|
||||
echo -e " 1. Restart opencode to load new config (plugins auto-install on startup)"
|
||||
echo -e " 2. Run 'opencode' in your project directory"
|
||||
echo -e " 3. Initialize CodeGraph: codegraph init"
|
||||
echo -e " 4. For smart-tree MCP: install from https://github.com/anomalyco/smart-tree"
|
||||
echo ""
|
||||
echo -e "${DARKGRAY}Config location: $CONFIG_DIR${NC}"
|
||||
echo ""
|
||||
|
||||
+134
-77
@@ -1,22 +1,17 @@
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"model": "openai-compatible/kimi-k2.6",
|
||||
"small_model": "openai-compatible/miaoda-model-flash",
|
||||
"disabled_providers": [],
|
||||
"model": "ai/kimi-k2.6",
|
||||
"small_model": "ai/miaoda-model-flash",
|
||||
"provider": {
|
||||
"openai-compatible": {
|
||||
"api": "openai",
|
||||
"name": "OpenAI Compatible",
|
||||
"ai": {
|
||||
"npm": "@ai-sdk/openai-compatible",
|
||||
"options": {
|
||||
"baseURL": "https://ai.fs.nomsg.cn/v1",
|
||||
"apiKey": "${OPENCODE_API_KEY}",
|
||||
"baseURL": "https://ai.fs.nomsg.cn/v1"
|
||||
"setCacheKey": true
|
||||
},
|
||||
"models": {
|
||||
"kimi-k2.6": {
|
||||
"id": "kimi-k2.6",
|
||||
"name": "Kimi K2.6",
|
||||
"tool_call": true,
|
||||
"reasoning": true
|
||||
},
|
||||
"doubao-seed-2.0-pro": {
|
||||
"id": "doubao-seed-2.0-pro",
|
||||
"name": "Doubao Seed 2.0 Pro",
|
||||
@@ -27,15 +22,16 @@
|
||||
"name": "GLM 5.1",
|
||||
"tool_call": true
|
||||
},
|
||||
"qwen-3.6-plus": {
|
||||
"id": "qwen-3.6-plus",
|
||||
"name": "Qwen 3.6 Plus",
|
||||
"grok-4.3": {
|
||||
"id": "grok-4.3",
|
||||
"name": "Grok 4.3",
|
||||
"tool_call": true
|
||||
},
|
||||
"minimax-m3": {
|
||||
"id": "minimax-m3",
|
||||
"name": "MiniMax M3",
|
||||
"tool_call": true
|
||||
"kimi-k2.6": {
|
||||
"id": "kimi-k2.6",
|
||||
"name": "Kimi K2.6",
|
||||
"tool_call": true,
|
||||
"reasoning": true
|
||||
},
|
||||
"miaoda-auto-multimodal": {
|
||||
"id": "miaoda-auto-multimodal",
|
||||
@@ -51,34 +47,107 @@
|
||||
"id": "miaoda-model-flash",
|
||||
"name": "Miaoda Model Flash",
|
||||
"tool_call": true
|
||||
},
|
||||
"mimo-v2.5": {
|
||||
"id": "mimo-v2.5",
|
||||
"name": "Mimo V2.5",
|
||||
"tool_call": true
|
||||
},
|
||||
"mimo-v2.5-pro": {
|
||||
"id": "mimo-v2.5-pro",
|
||||
"name": "Mimo V2.5 Pro",
|
||||
"tool_call": true
|
||||
},
|
||||
"minimax-m3": {
|
||||
"id": "minimax-m3",
|
||||
"name": "MiniMax M3",
|
||||
"tool_call": true
|
||||
},
|
||||
"qwen-3.6-plus": {
|
||||
"id": "qwen-3.6-plus",
|
||||
"name": "Qwen 3.6 Plus",
|
||||
"tool_call": true
|
||||
},
|
||||
"step-3.5-flash": {
|
||||
"id": "step-3.5-flash",
|
||||
"name": "Step 3.5 Flash",
|
||||
"tool_call": true
|
||||
},
|
||||
"step-3.5-flash-2603": {
|
||||
"id": "step-3.5-flash-2603",
|
||||
"name": "Step 3.5 Flash 2603",
|
||||
"tool_call": true
|
||||
},
|
||||
"step-3.7-flash": {
|
||||
"id": "step-3.7-flash",
|
||||
"name": "Step 3.7 Flash",
|
||||
"tool_call": true
|
||||
},
|
||||
"step-router-v1": {
|
||||
"id": "step-router-v1",
|
||||
"name": "Step Router V1",
|
||||
"tool_call": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"skills": {
|
||||
"paths": ["~/.config/opencode/skills"]
|
||||
},
|
||||
"agent": {
|
||||
"explorer": {
|
||||
"description": "Read-only codebase explorer for gathering evidence before changes are proposed.",
|
||||
"mode": "subagent",
|
||||
"model": "openai-compatible/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
},
|
||||
"reviewer": {
|
||||
"description": "PR reviewer focused on correctness, security, and missing tests.",
|
||||
"mode": "subagent",
|
||||
"model": "openai-compatible/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
},
|
||||
"docs-researcher": {
|
||||
"description": "Documentation specialist that verifies APIs, framework behavior, and release notes.",
|
||||
"mode": "subagent",
|
||||
"model": "openai-compatible/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
}
|
||||
},
|
||||
"plugin": [
|
||||
"oh-my-openagent",
|
||||
"opencode-mem",
|
||||
"opencode-pty",
|
||||
"@tarquinen/opencode-dcp",
|
||||
"opencode-rag-plugin",
|
||||
"opencode-command-inject",
|
||||
"opencode-notify",
|
||||
"@gotgenes/opencode-agent-identity",
|
||||
"@ramtinj95/opencode-tokenscope"
|
||||
],
|
||||
"mcp": {
|
||||
"git": {
|
||||
"type": "local",
|
||||
"command": ["git-mcp-server"],
|
||||
"enabled": true
|
||||
},
|
||||
"filesystem": {
|
||||
"type": "local",
|
||||
"command": ["mcp-server-filesystem", "${PROJECTS_PATH}"],
|
||||
"enabled": true
|
||||
},
|
||||
"jina": {
|
||||
"type": "local",
|
||||
"command": ["jina-mcp-tools"],
|
||||
"enabled": true
|
||||
},
|
||||
"codegraph": {
|
||||
"type": "local",
|
||||
"command": ["codegraph", "serve", "--mcp"],
|
||||
"enabled": true
|
||||
},
|
||||
"smart-tree": {
|
||||
"type": "local",
|
||||
"command": ["/home/chaos/.local/bin/st", "--mcp"],
|
||||
"enabled": true
|
||||
},
|
||||
"dbhub": {
|
||||
"type": "local",
|
||||
"command": ["dbhub", "--transport", "stdio", "--demo"],
|
||||
"enabled": false
|
||||
},
|
||||
"memory": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-memory"],
|
||||
"enabled": true
|
||||
},
|
||||
"playwright": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@playwright/mcp@latest"],
|
||||
"enabled": true
|
||||
},
|
||||
"chrome-devtools": {
|
||||
"type": "local",
|
||||
"command": ["chrome-devtools-mcp"],
|
||||
"enabled": true
|
||||
},
|
||||
"github": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-github"],
|
||||
@@ -94,46 +163,11 @@
|
||||
"command": ["npx", "-y", "mcp-remote", "https://mcp.exa.ai/mcp"],
|
||||
"enabled": true
|
||||
},
|
||||
"memory": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-memory"],
|
||||
"enabled": true
|
||||
},
|
||||
"playwright": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@playwright/mcp@latest", "--extension"],
|
||||
"enabled": true
|
||||
},
|
||||
"sequential-thinking": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-sequential-thinking"],
|
||||
"enabled": true
|
||||
},
|
||||
"codegraph": {
|
||||
"type": "local",
|
||||
"command": ["codegraph", "serve", "--mcp"],
|
||||
"enabled": true
|
||||
},
|
||||
"git": {
|
||||
"type": "local",
|
||||
"command": ["python", "-m", "mcp_server_git"],
|
||||
"enabled": true
|
||||
},
|
||||
"filesystem": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-filesystem", "${PROJECTS_PATH}"],
|
||||
"enabled": true
|
||||
},
|
||||
"fetch": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-fetch"],
|
||||
"enabled": false
|
||||
},
|
||||
"time": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-time"],
|
||||
"enabled": false
|
||||
},
|
||||
"brave-search": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@brave/brave-search-mcp-server"],
|
||||
@@ -142,5 +176,28 @@
|
||||
"BRAVE_API_KEY": "${BRAVE_API_KEY}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"skills": {
|
||||
"paths": ["~/.config/opencode/skills"]
|
||||
},
|
||||
"agent": {
|
||||
"explorer": {
|
||||
"description": "Read-only codebase explorer for gathering evidence before changes are proposed.",
|
||||
"mode": "subagent",
|
||||
"model": "ai/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
},
|
||||
"reviewer": {
|
||||
"description": "PR reviewer focused on correctness, security, and missing tests.",
|
||||
"mode": "subagent",
|
||||
"model": "ai/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
},
|
||||
"docs-researcher": {
|
||||
"description": "Documentation specialist that verifies APIs, framework behavior, and release notes.",
|
||||
"mode": "subagent",
|
||||
"model": "ai/kimi-k2.6",
|
||||
"permission": { "edit": "deny", "bash": "ask" }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user