Requires OpenCode — Desktop, Terminal and the CLI all read the same config.
105 skills · 13 agents · 19 commands · 6 plugins — everything ready at launch
git clone https://github.com/tealaxdevelopers/Modded-OpenCode.git
cd Modded-OpenCode
setup.batgit clone https://github.com/tealaxdevelopers/Modded-OpenCode.git
cd Modded-OpenCode
chmod +x setup.sh scripts/*.sh
./setup.shProvider setup is included in the wizard. OpenCode must be installed separately: https://opencode.ai
| Plugin | What it does |
|---|---|
| agents-opencode | Compaction context injection, version env var |
| auto-continue | Auto-resume idle/disconnected sessions (on by default) |
| openai-system-merge | Fixes multi-system-message error for strict OpenAI-compatible providers |
| update-checker | Checks GitHub for new releases on startup |
| notify | Cross-platform desktop notifications on task completion |
| session-title | Auto-generates session titles from the first user message |
Auto-continue config (<project>/.opencode/auto-continue.json):
| Server | Description | Status |
|---|---|---|
| fetch | Fetch content from URLs | ✅ Active |
| memory | Persistent memory (knowledge graph) | ✅ Active |
| sequential-thinking | Step-by-step reasoning | ✅ Active |
| time | Date/time queries | ✅ Active |
| github | GitHub API integration | 🔑 Active if key provided |
| brave-search | Web search | 🔑 Active if key provided |
| filesystem | Filesystem access | ⛔ Off by default |
| Skill | What it does |
|---|---|
| multi-language | Idiomatic Python/Kotlin/Java/Node.js code generation |
| java-spring | Spring Boot + constructor injection + validation |
| pythonic-quality | Pythonic idioms, SOLID, Liskov-safe subtypes |
| senior-fullstack | React/Next/Node/GraphQL/PostgreSQL fullstack |
| rust | Ownership/borrowing, Result/Option, safe abstractions |
| Skill | What it does |
|---|---|
| ponytail | Token-waste prevention decision ladder (YAGNI/stdlib/oneliner/MVP) |
| claude-code-review | Security, performance, correctness review |
| claude-debug | Systematic hypothesis-driven debugging |
| claude-simplify | Refactor for clarity and reduced complexity |
| code-change-impact | Blast-radius analysis for code changes |
| Skill | What it does |
|---|---|
| legal-advisor | Legal research, regulation analysis, license audits |
| cto-advisor | Tech debt analyzer, team scaling, tech evaluation |
| blogger | Tech/finance/leadership blog posts, podcast ideation, YouTube scripts |
| deep-research | Multi-source web research with citation tracking |
| Skill | What it does |
|---|---|
| claude-commit | Conventional git commit with atomic staging |
| claude-batch | Process multiple files with same operation |
| claude-loop | Repeat task with exit conditions |
| xlsx / pdf / docx | Excel, PDF, Word document processing |
+95 more skills in source/skills/
| Agent | Role | Mode |
|---|---|---|
| @codebase | Multi-language dev with profile detection | primary |
| @orchestrator | Strategic planning & workflow coordination | primary |
| @planner | Read-only analysis & implementation planning | primary |
| @review | Code review for security, performance, best practices | subagent |
| @docs | Documentation creation & maintenance | subagent |
| @ivan | Senior code implementor | subagent |
| @jester | High-temperature oracle for unconventional thinking | subagent |
| @oscar | Senior code reviewer | subagent |
| @scout | Research & planning | subagent |
| @blogger | Content creation (blog, podcast, YouTube) | primary |
| @brutal-critic | Content quality review with framework scoring | subagent |
| @em-advisor | Engineering management guidance | primary |
| @legal-advisor | License auditing, compliance, regulatory guidance | primary |
No bundled provider ships with setup. Config installs with provider: {} — empty.
Two ways to connect:
Asks for Base URL + model name + API key.
opencode auth login| Provider | Default URL | Port |
|---|---|---|
| Ollama | http://127.0.0.1:11434/v1 |
11434 |
| LM Studio | http://127.0.0.1:1234/v1 |
1234 |
| vLLM | http://127.0.0.1:8000/v1 |
8000 |
| llama.cpp | http://127.0.0.1:8080/v1 |
8080 |
Custom providers (vLLM, Ollama, llama.cpp, LM Studio, Hetzner, OVHcloud, Scaleway, etc.) work out of the box. The openai-system-merge plugin fixes the common 400 BadRequestError: System message must be at the beginning error by merging multiple system messages into one.
Both wizards ask the same questions and produce the complete config:
| Step | Question | If left empty |
|---|---|---|
| 1️⃣ Language | tr / us / ru |
— |
| 2️⃣ Username | Your Windows username | auto-detected |
| 3️⃣ Addressing | How should the agent call you? | default |
| 4️⃣ GitHub API key(s) | For GitHub MCP | skipped, MCP disabled |
| 5️⃣ Brave API key | For web search | skipped, search disabled |
Lightweight helper that syncs local model catalogs — does not create rules, agents, skills, or config. Use after adding a new local model server.
The language you pick sets the agent's conversation language in rules.md.
🔑 Key safety: Never written to shell RC files. On macOS/Linux, stored in
.env.local(mode0600). On Windows, stored as user environment variables viasetx(persists in registry until manually removed).
| OS | Storage method |
|---|---|
| Windows | User environment variables via setx (e.g. GITHUB_API_KEY, BRAVE_API_KEY) |
| macOS | ~/Library/Application Support/opencode/local-setup/.env.local |
| Linux | ~/.config/opencode/local-setup/.env.local |
Note on
.envaccess: Agents have broad read permissions ("read": "allow"inopencode.jsonc) so they can read.envfiles when you ask them to work with your configuration. There is no automatic blocking of sensitive files — this is by design. If you need stricter controls, configure"read": "ask"and add deny rules for specific patterns in youropencode.jsonc.
Agent persona layer loaded through OpenCode's instruction system. Sets identity, voice, and working style. Language + addressing configured at setup time.
When you choose local persona (default), the built-in DEFAULT_PERSONA from build-config.mjs is used as Article 2 of rules.md. This persona works offline with no external dependencies. You can read and edit it directly — it's a plain Markdown prompt baked into the setup script.
# Add your own skill
mkdir source/skills/my-skill/
printf -- "---\nname: my-skill\ndescription: Does things\n---\n# Skill content" > source/skills/my-skill/SKILL.md
# Then re-run setup.batValidation:
npm run validate- opencode-ai/opencode — core platform
- awesome-opencode/awesome-opencode — curated plugins, themes, agents
MIT — use, modify, distribute, fork.
{ "enabled": true, "cooldown_ms": 8000, "max_consecutive": 8, "continue_on_error": false }