anomalyco / anomalyco/opencode

[FEATURE]: Portable wrapper scripts for running OpenCode without global installation

Open
#15,789 5 comments 11 reactions 1 assignee View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
Avg merge
7h 2m
Merged PRs (30d)
384

Description

Feature hasn't been suggested before.
  • I have verified this feature I'm about to request 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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.