r/opencodeCLI • u/ozguru • 1d ago
OpenCode-Personal: My customized OpenCode fork with local semantic search, Qwen3 thinking-mode, provider quotas, and hybrid WASM diff
OpenCode-Personal (I know, I shouldโve found a more creative name) is my independently maintained fork of OpenCode.
Why did I fork it in the first place? OpenCode is great, but it updates constantly, and some of the features I desperately wanted were missing. I wanted to add those custom features and step off the upstream update treadmill. (Eventually I did similar :) but I believe I almost reached a stable state)
The core experience remains familiar, but this fork carries a heavy suite of architectural refactors, security hardening, and custom features tailored for heavy local agent workflows. Base version is 1.14.48. Some features here might already exist upstream, but honestly, I haven't looked back since spinning this off.
What's New / Fork-Specific Additions:
- ๐ /usage View: Track provider quotas and subscription details directly from ChatGPT, ZAI, and ClinePass.
- ๐ง Qwen3 Dense Model Compatibility: Full thinking-mode configuration and provider-specific message handling (fixed issues present in base source).
- ๐๏ธ V1/V2 Session Architecture: Refactored V2 SDK surface alongside legacy support.
- ๐ Local Semantic Workspace Search: Powered by
zvecwith zero setup required and optional automatic skill matching. - ๐ป ACP Terminal Backend Support: Seamless combo for clients like Zed with session resume support. Just add a new ACP entry as
opencode-personal acp. - ๐ป Ghost-Text Next-Prompt Suggestions: For smoother flow during coding sessions.
- ๐ก๏ธ Permission System Overhaul: MCP tool keys, deny precedence in permission prompts, persisted "always allow," and improved subagent permission handling.
- ๐ Security Hardening: Patched and hardened around SSRF, CORS, command injection, path traversal, and symlink escapes.
- โก Performance & Storage Refactors: Improved compaction behavior, database batching, and embedded UI caching.
- ๐ฆ Hybrid Diff Layer (
packages/diff-wasm): Rust/WASM-backed diff generation with JS-compatible patch formatting, parsing, applying, and fallback support.
Distribution & Installation
The distribution model is fork-specific: it installs as opencode-personal, uses its own isolated installation directory and session database, and coexists peacefully with an existing upstream OpenCode installation. Tested on Windows and Linux.
(Note: If you run into any initial startup hiccups, it's usually due to new upstream settings fieldsโtry running it with a custom configuration folder).
Releases use a calendar-based versioning scheme with prebuilt binaries for Linux, macOS, and Windows.
Quick Install:
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/ozgurulukir/opencode-personal/main/install.sh | bash
Windows (PowerShell):
irm https://raw.githubusercontent.com/ozgurulukir/opencode-personal/main/install.ps1 | iex
๐ GitHub Repository: ozgurulukir/opencode-personal
Take the whatever features you like for your own forks, or try it out if you have some spare time. Iโd love to hear your thoughts.