Skip to content
kdcokennyPublic

About

OpenCode extension manager with portable, isolated profiles. Your setup, anywhere.

Topics

Resources

Contributing

Security policy

Stars

978 stars

Watchers

4 watching

Forks

Repository files navigation

OCX

Your OpenCode config, anywhere.

Portable profiles and editable components for OpenCode.

CI OpenCode V2 License

Get started · Profiles · Registries · CLI reference


  • 📁 Switch profiles. Keep separate setups for work, personal projects, and code review.
  • 📦 Own your files. Install agents, skills, and commands from registries, then edit them directly.
  • 🔎 Review your changes. Preview updates, verify file hashes, and protect local edits.

Note

OpenCode V2 preview. This branch is OCX 3, for OpenCode 2.0.3 or newer within V2. Using OpenCode V1? Keep [email protected] and follow the legacy guide.

Quick start

Set up the development preview

From a checkout of this branch, with Bun and OpenCode V2 installed:

bun install --frozen-lockfile
bun run --cwd packages/cli build
alias ocx="bun \"$PWD/packages/cli/dist/index.js\""

The alias uses this checkout's CLI for the current shell. See preview setup for OpenCode installation and binary selection.

Create a profile, make it your default, and launch OpenCode:

ocx profile add work
ocx profile use work
ocx oc

Need a different setup for the next session?

ocx profile add personal --clone work
ocx oc -p personal

Each profile is an ordinary folder under ~/.config/ocx/profiles/ (or $XDG_CONFIG_HOME/ocx/profiles/). Edit its OpenCode config, instructions, agents, and skills directly. OpenCode loads them when you launch.

Profile setup and project discovery →

Files you can make your own

Registry components are copied into a profile or your project's .opencode/ directory. They stay editable, with an ownership record for updates and removal.

For a registry configured as team, installing its review component looks like this:

ocx init --project
ocx add team/review --project
ocx update --all --project --dry-run
ocx verify --project

Use --profile work to manage files in a profile instead.

Add a registry · Publish your own

Moving from V1?

Preview an import into a new profile:

ocx migrate \
  --from ~/.config/opencode/profiles/work \
  --profile work

The importer shows what will change before you apply it. Your originals stay untouched. The migration guide covers project filters, plugins, and other differences; plugin retirement notes cover native alternatives and the frozen V1 releases.

Development

Requires Bun. Build and check the workspace:

bun install --frozen-lockfile
bun run build
bun run check
bun run --cwd packages/cli test

Run the built CLI with bun packages/cli/dist/index.js. For native OpenCode conformance and manual testing details, see the validation record.


MIT · An independent project, not affiliated with the OpenCode team.

About

OpenCode extension manager with portable, isolated profiles. Your setup, anywhere.

Topics

Resources

Contributing

Security policy

Stars

978 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages