{ "$schema": "https://opencode.ai/config.json", "model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS", "small_model": "llama.cpp/gemma-4-E4B-it-UD-Q8_K_XL", "instructions": ["CLAUDE.md", "AGENTS.md"], "share": "disabled", "autoupdate": "notify", "disabled_providers": [ "gemini", "anthropic", "groq", "openrouter", "opencode" ], "permission": { "edit": "deny", "webfetch": "ask", "websearch": "ask", "external_directory": "ask", "read": { "*": "allow", "**/.env*": "deny", "**/*.env": "deny", "**/*.pem": "deny", "**/*.key": "deny", "**/*.p12": "deny", "**/*.pfx": "deny", "**/*.keystore": "deny", "**/id_rsa*": "deny", "**/.ssh/**": "deny", "**/.aws/**": "deny", "**/.npmrc": "deny", "**/.netrc": "deny" }, "bash": { "*": "ask", "ls *": "allow", "cat *": "allow", "grep *": "allow", "rg *": "allow", "find *": "allow", "fd *": "allow", "which *": "allow", "file *": "allow", "stat *": "allow", "wc *": "allow", "tree *": "allow", "diff *": "allow", "sort *": "allow", "uniq *": "allow", "echo *": "ask", "pwd": "allow", "date": "allow", "whoami": "allow", "jq *": "allow", "tsc *": "allow", "mkdir *": "ask", "touch *": "ask", "git *": "ask", "git status": "allow", "git status *": "allow", "git diff": "allow", "git diff *": "allow", "git log": "allow", "git log *": "allow", "git show *": "allow", "git branch": "allow", "git remote -v": "allow", "npm *": "ask", "pnpm *": "ask", "npx *": "ask", "npm list": "allow", "npm help": "allow", "npm version": "allow", "pnpm list": "allow", "pnpm help": "allow", "npx --version": "allow", "curl *": "ask", "wget *": "ask", "rm *": "deny", "rmdir *": "deny", "dd *": "deny", "mkfs*": "deny", "shred *": "deny", "chmod -R *": "deny", "sudo *": "deny", "doas *": "deny", "npm install*": "deny", "npm i": "deny", "npm i *": "deny", "npm ci*": "deny", "pnpm install*": "deny", "pnpm i": "deny", "pnpm i *": "deny", "pnpm add*": "deny", "yarn add*": "deny", "yarn install*": "deny", "pip install*": "deny", "pip3 install*": "deny", "pipx install*": "deny", "cargo install*": "deny", "go install*": "deny", "gem install*": "deny", "brew install*": "deny", "pacman *": "deny", "yay *": "deny", "apt *": "deny", "apt-get *": "deny", "dnf *": "deny", "cat .env*": "deny", "cat *.env": "deny", "cat *.pem": "deny", "cat *.key": "deny", "cat *id_rsa*": "deny", "cat *secret*": "deny", "cat *credential*": "deny", "cat ~/.ssh/*": "deny", "cat ~/.aws/*": "deny", "grep .env*": "deny", "grep * .env*": "deny" } }, "provider": { "lwcpp": { "npm": "@ai-sdk/openai-compatible", "name": "llamacpp (lw local)", "options": { "baseURL": "http://127.0.0.1:11343/v1" }, "models": { "gemma-4-E2B-it-UD-Q4_K_XL": { "name": "Gemma 4 E2B · 4k — fastest on lw (~6 t/s)", "limit": { "context": 4096, "output": 1024 } }, "Granite-4.0-H-Tiny": { "name": "Granite 4.0 H Tiny · 8k — speed AND brains (~4.8 t/s)", "limit": { "context": 8192, "output": 2048 } }, "Qwen3-1.7B": { "name": "Qwen3 1.7B · 8k — thinking, snappy (~4.8 t/s)", "limit": { "context": 8192, "output": 2048 } }, "Qwen3-4B-Instruct-2507": { "name": "Qwen3 4B 2507 · 4k — daily driver (~3.9 t/s)", "limit": { "context": 4096, "output": 1024 } }, "Qwen2.5-Coder-3B-Instruct": { "name": "Qwen2.5 Coder 3B · 8k — small coder (~3.3 t/s)", "limit": { "context": 8192, "output": 2048 } }, "Qwen3-30B-A3B-Instruct-2507-UD-IQ3_XXS": { "name": "Qwen3 30B A3B · 4k — quality when you can wait (~2.7 t/s)", "limit": { "context": 4096, "output": 1024 } }, "Jan-v3-4b": { "name": "Jan v3 4B · 4k — agentic tune (~2.6 t/s)", "limit": { "context": 4096, "output": 1024 } }, "gemma-4-E4B-it-UD-Q4_K_XL": { "name": "Gemma 4 E4B · 4k — quality; vision once mmproj added (~2.5 t/s)", "limit": { "context": 4096, "output": 1024 } } } }, "duskadiy": { "npm": "@ai-sdk/openai-compatible", "name": "DuskaDIY", "options": { "baseURL": "https://llm.duskadiy.com/api/v1" }, "models": { "Qwen3-Coder-30B-Instruct-UD-Q3_K_XL": { "name": "Qwen3 Coder 30B · 32k — main agent coder (remote)", "limit": { "context": 32768, "output": 4096 } }, "Qwen3-Coder-Next-UD-IQ3_XXS": { "name": "Qwen3 Coder Next 80B · 128k — long sessions (remote)", "limit": { "context": 131072, "output": 16384 } }, "Qwen3.6-35B-A3B-MTP-UD-IQ3_XXS": { "name": "Qwen3.6 35B · 24k · vision — daily driver (remote)", "attachment": true, "limit": { "context": 24576, "output": 8192 } }, "Qwen3.6-35B-A3B-Thinking": { "name": "Qwen3.6 35B Thinking · 24k · vision — hard problems (remote)", "attachment": true, "limit": { "context": 24576, "output": 8192 } }, "Qwen3.5-9B-UD-Q6_K_XL": { "name": "Qwen3.5 9B · 32k · vision — quick tasks (remote)", "attachment": true, "limit": { "context": 32768, "output": 8192 } }, "gemma-4-26B-A4B-it-UD-IQ4_XS": { "name": "Gemma 4 26B · 24k · vision — quality generalist (remote)", "attachment": true, "limit": { "context": 24576, "output": 4096 } }, "gemma-4-E4B-it-UD-Q8_K_XL": { "name": "Gemma 4 E4B · 64k · vision — fast generalist, long docs (remote)", "attachment": true, "limit": { "context": 65536, "output": 16384 } }, "GLM-4.7-Flash-UD-Q4_K_XL": { "name": "GLM-4.7 Flash · 24k — quality coder (remote)", "limit": { "context": 24576, "output": 8192 } }, "gpt-oss-20b": { "name": "gpt-oss 20B · 64k — fast reasoning + tools (remote)", "limit": { "context": 65536, "output": 8192 } }, "gpt-oss-20b-low": { "name": "gpt-oss 20B low · 64k — snappy answers (remote)", "limit": { "context": 65536, "output": 8192 } } } }, "llama.cpp": { "npm": "@ai-sdk/openai-compatible", "name": "llamacpp", "options": { "baseURL": "http://192.168.0.204:11343/v1" }, "models": { "Qwen3-Coder-Next-UD-IQ3_XXS": { "name": "Qwen3 Coder Next 80B · 128k — long sessions", "limit": { "context": 131072, "output": 16384 } }, "Qwen3-Coder-30B-Instruct-UD-Q3_K_XL": { "name": "Qwen3 Coder 30B · 32k — main agent coder", "limit": { "context": 32768, "output": 4096 } }, "Qwen3.6-35B-A3B-MTP-UD-IQ3_XXS": { "name": "Qwen3.6 35B · 24k · vision — daily driver", "attachment": true, "limit": { "context": 24576, "output": 8192 } }, "Qwen3.6-35B-A3B-Thinking": { "name": "Qwen3.6 35B Thinking · 24k · vision — hard problems", "attachment": true, "limit": { "context": 24576, "output": 8192 } }, "Qwen3.5-9B-UD-Q6_K_XL": { "name": "Qwen3.5 9B · 32k · vision — quick tasks", "attachment": true, "limit": { "context": 32768, "output": 8192 } }, "gemma-4-26B-A4B-it-UD-IQ4_XS": { "name": "Gemma 4 26B · 24k · vision — quality generalist", "attachment": true, "limit": { "context": 24576, "output": 4096 } }, "gemma-4-E4B-it-UD-Q8_K_XL": { "name": "Gemma 4 E4B · 64k · vision — fast generalist, long docs", "attachment": true, "limit": { "context": 65536, "output": 16384 } }, "GLM-4.7-Flash-UD-Q4_K_XL": { "name": "GLM-4.7 Flash · 24k — quality coder", "limit": { "context": 24576, "output": 8192 } }, "gpt-oss-20b": { "name": "gpt-oss 20B · 64k — fast reasoning + tools", "limit": { "context": 65536, "output": 8192 } }, "gpt-oss-20b-low": { "name": "gpt-oss 20B low · 64k — snappy answers", "limit": { "context": 65536, "output": 8192 } } } } }, "agent": { "plan": { "mode": "primary", "model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS", "permission": { "edit": "deny" } }, "build": { "mode": "primary", "model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS", "permission": { "edit": { "*": "allow", "**/.env*": "deny", "**/*.env": "deny", "**/*.pem": "deny", "**/*.key": "deny", "**/id_rsa*": "deny", "**/.ssh/**": "deny", "**/.aws/**": "deny", "**/.git/**": "deny", "**/.npmrc": "deny", "**/.netrc": "deny" } } }, "code-reviewer": { "description": "Reviews code for best practices and potential issues", "prompt": "You are a code reviewer. Focus on security, performance, and maintainability.", "mode": "subagent", "model": "llama.cpp/GLM-4.7-Flash-UD-Q4_K_XL", "permission": { "edit": "deny" } }, "test-runner": { "description": "Runs and interprets test suites", "prompt": "You are a test runner. Focus on identifying failing tests and providing clear reproduction steps.", "mode": "subagent", "model": "llama.cpp/GLM-4.7-Flash-UD-Q4_K_XL", "permission": { "edit": "deny" } }, "doc-writer": { "description": "Maintains project documentation and docstrings", "prompt": "You are a technical writer. Focus on clarity, accuracy, and keeping documentation in sync with code changes.", "mode": "subagent", "model": "llama.cpp/gemma-4-26B-A4B-it-UD-IQ4_XS", "permission": { "edit": { "*": "deny", "**/*.md": "allow", "**/*.mdx": "allow", "**/*.markdown": "allow", "**/*.txt": "allow", "**/*.rst": "allow" } } }, "security-auditor": { "description": "Scans for security vulnerabilities and hardcoded secrets", "prompt": "You are a security auditor. Focus on OWASP principles, secret detection, and dependency vulnerabilities.", "mode": "subagent", "model": "llama.cpp/GLM-4.7-Flash-UD-Q4_K_XL", "permission": { "edit": "deny" } } } }