Feature hasn't been suggested before.
Describe the enhancement you want to request
It would be useful to have official portable wrapper scripts that let users run OpenCode without requiring a global install, modifying PATH, or writing any files to the home directory.
Currently, to use OpenCode you need to install it globally. This isn't always desirable — for example when evaluating the tool on a shared machine, running it in a locked-down corporate environment, keeping
project tooling self-contained, or using it in CI/ephemeral environments where you don't want to pollute the system.
A portable wrapper would:
- Download the correct OpenCode binary for the current platform and architecture automatically
- Keep everything (binary, config, data, cache, state) in a single
.opencode_portable/ directory next to the script
- Isolate all state via XDG environment variables so nothing touches
~/.config, ~/.local, etc.
- Support version pinning via an environment variable or
.opencode-version file
- Provide flags for forced update, version check, and help
- Auto-detect platform details: macOS ARM64/x64 (including Rosetta), Linux glibc/musl, AVX2/baseline, and Windows x64
Ideally this would include:
- A Bash script (
opencode-portable.sh) for macOS and Linux
- A PowerShell script (
opencode-portable.ps1) for Windows
- A guide explaining prerequisites, download instructions, usage, version pinning, plugin/skill installation, and troubleshooting
Feature hasn't been suggested before.
Describe the enhancement you want to request
It would be useful to have official portable wrapper scripts that let users run OpenCode without requiring a global install, modifying PATH, or writing any files to the home directory.
Currently, to use OpenCode you need to install it globally. This isn't always desirable — for example when evaluating the tool on a shared machine, running it in a locked-down corporate environment, keeping
project tooling self-contained, or using it in CI/ephemeral environments where you don't want to pollute the system.
A portable wrapper would:
.opencode_portable/directory next to the script~/.config,~/.local, etc..opencode-versionfileIdeally this would include:
opencode-portable.sh) for macOS and Linuxopencode-portable.ps1) for Windows