Skip to content

feat: switch to opencode, installed from pinned release tarball with … - #1

Merged
cbarreholm merged 1 commit into
mainfrom
opencode-pivot
Aug 5, 2026
Merged

feat: switch to opencode, installed from pinned release tarball with …#1
cbarreholm merged 1 commit into
mainfrom
opencode-pivot

Conversation

@cbarreholm

Copy link
Copy Markdown

…sha256 verify

Replace the claude.ai curl|bash installer with a pinned opencode release tarball (v1.18.13) from anomalyco/opencode, verified at build time against sha256 checksums committed in devops/build-image.sh. The binary installs to /usr/local/bin, root-owned, so the container user cannot replace it.

Autoupdate is disabled via OPENCODE_DISABLE_AUTOUPDATE=true baked into the image, plus "autoupdate": false in opencode.json (baked in, and written to the host config by the wrapper if none exists).

  • rename bin/claude to bin/opencode; mount opencode's XDG dirs (~/.config/opencode, ~/.local/share/opencode, ~/.local/state/opencode)
  • rename container user claude -> opencode; add git for snapshots
  • add tests for the autoupdate env var, baked config, and root-owned binary
  • fix CI passing -repo-name instead of --repo-name (was silently ignored); skip registry push on pull requests

…sha256 verify

Replace the claude.ai curl|bash installer with a pinned opencode
release tarball (v1.18.13) from anomalyco/opencode, verified at build
time against sha256 checksums committed in devops/build-image.sh. The
binary installs to /usr/local/bin, root-owned, so the container user
cannot replace it.

Autoupdate is disabled via OPENCODE_DISABLE_AUTOUPDATE=true baked into
the image, plus "autoupdate": false in opencode.json (baked in, and
written to the host config by the wrapper if none exists).

- rename bin/claude to bin/opencode; mount opencode's XDG dirs
  (~/.config/opencode, ~/.local/share/opencode, ~/.local/state/opencode)
- rename container user claude -> opencode; add git for snapshots
- add tests for the autoupdate env var, baked config, and root-owned
  binary
- fix CI passing -repo-name instead of --repo-name (was silently
  ignored); skip registry push on pull requests
@cbarreholm
cbarreholm merged commit 10142f8 into main Aug 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant