{"id":"453b9f59-1c57-4e24-aafc-28da74fc3e4f","slug":"skillsland-opencode-plugin-cc","kind":"skill","name":"opencode-plugin-cc","summary":"OpenCode plugin for Claude Code","owner":"skillsland","repoUrl":"https://github.com/skillsland/opencode-plugin-cc","license":"MIT","licenseTier":"permissive","trust":"community","stars":1,"match":null,"fewStars":true,"format":"skill","createdAt":"2026-04-13T14:02:38.000Z","addedAt":"2026-10-22T02:42:02.127Z","logoUrl":"https://avatars.githubusercontent.com/u/258744737?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["developer-tools"],"tags":["claude-code","claude-code-plugin","opencode"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-23T09:45:05.427Z","sample":false,"url":"https://conduits.dev/tools/skillsland-opencode-plugin-cc","language":"TypeScript","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# opencode-plugin-cc\n\n[![CI](https://github.com/skillsland/opencode-plugin-cc/actions/workflows/ci.yml/badge.svg)](https://github.com/skillsland/opencode-plugin-cc/actions/workflows/ci.yml)\n[![npm](https://img.shields.io/npm/v/opencode-plugin-cc.svg)](https://www.npmjs.com/package/opencode-plugin-cc)\n![license](https://img.shields.io/npm/l/opencode-plugin-cc)\n\nUse OpenCode from inside Claude Code for code reviews or delegated tasks.\n\nThis plugin mirrors the workflow shape of `codex-plugin-cc`, but delegates to the local `opencode` CLI.\n\n## What You Get\n\n- `/opencode:review` for a read-only OpenCode review\n- `/opencode:adversarial-review` for a steerable challenge review\n- `/opencode:rescue`, `/opencode:status`, `/opencode:result`, and `/opencode:cancel` to delegate work and manage background jobs\n- `/opencode:setup` to check local OpenCode readiness and toggle the optional stop-time review gate\n\n## Requirements\n\n- Node.js 22.18 or newer\n- OpenCode CLI installed and authenticated\n\n## Install\n\nAdd the marketplace in Claude Code:\n\n```text\n/plugin marketplace add skillsland/opencode-plugin-cc\n```\n\nInstall the plugin:\n\n```text\n/plugin install opencode@skillsland-opencode\n```\n\nThe marketplace entry installs the published `opencode-plugin-cc` npm package, so the package must be published before this command can install a working plugin.\n\nReload plugins:\n\n```text\n/reload-plugins\n```\n\nThen run:\n\n```text\n/opencode:setup\n```\n\n`/opencode:setup` will tell you whether Node.js, OpenCode, and OpenCode authentication are ready.\n\nPlugin runs use OpenCode's built-in `build` agent in `--pure` mode by default so external OpenCode plugins cannot change the agent type or break basic commands. Pass `--agent <name>` on a command when you want another primary OpenCode agent. Set `OPENCODE_COMPANION_PURE=0` before launching Claude Code if you explicitly want OpenCode plugin loading for companion runs.\n\nIf you need to install OpenCode, use:\n\n```sh\ncurl -fsSL https://opencode.ai/install | bash\n```\n\nIf OpenCode is installed but not logged in yet, run:\n\n```text\n!opencode providers login\n```\n\nAfter install, you should see:\n\n- the slash commands listed below\n- the `opencode:opencode-rescue` subagent in `/agents`\n\nOne simple first run is:\n\n```text\n/opencode:review --background\n/opencode:status\n/opencode:result\n```\n\n## Usage\n\n### `/opencode:review`\n\nRuns a read-only OpenCode review on your current git state.\n\nExamples:\n\n```text\n/opencode:review\n/opencode:review --base main\n/opencode:review --background\n```\n\n### `/opencode:adversarial-review`\n\nRuns a review that challenges the implementation approach and design assumptions.\n\nExamples:\n\n```text\n/opencode:adversarial-review\n/opencode:adversarial-review --base main challenge the retry and rollback design\n/opencode:adversarial-review --background look for race conditions\n```\n\n### `/opencode:rescue`\n\nDelegates an investigation or fix request to OpenCode.\n\nExamples:\n\n```text\n/opencode:rescue investigate why tests are failing\n/opencode:rescue --write fix the failing test with the smallest safe patch\n/opencode:rescue --model anthropic/claude-sonnet-4-5 --variant high inspect this regression\n/opencode:rescue --background --write implement the missing edge case\n```\n\nNotes:\n\n- The plugin never adds `--dangerously-skip-permissions` unless you explicitly ask for it.\n- Follow-up rescue requests can resume the latest tracked OpenCode task when an OpenCode session ID is available.\n\n### Job Management\n\n```text\n/opencode:status\n/opencode:status <job-id>\n/opencode:result\n/opencode:result <job-id>\n/opencode:cancel\n/opencode:cancel <job-id>\n```\n\n### Review Gate\n\n```text\n/opencode:setup --enable-review-gate\n/opencode:setup --disable-review-gate\n```\n\nWhen enabled, the plugin uses a Claude Code `Stop` hook to run a compact OpenCode review of the previous Claude turn. If OpenCode returns `BLOCK: ...`, the stop is blocked so Claude can address the issue first.\n\n## Development\n\nRequirements:\n\n- Node.js 22.18 or newer\n- pnpm 10.33 or newer\n\nInstall dependencies:\n\n```sh\npnpm install\n```\n\nRun the full local quality gate:\n\n```sh\npnpm run check\n```\n\nUseful scripts:\n\n- `pnpm run build` - bundle TypeScript into `dist/` with tsdown\n- `pnpm run typecheck` - run TypeScript without emitting files\n- `pnpm run lint` - run ESLint with type-aware TypeScript rules\n- `pnpm run test` - run Vitest once\n- `pnpm run format` - format the repo with Prettier\n- `pnpm run changeset` - create a Changesets release note\n- `pnpm run commit` - write a Conventional Commit with Commitizen\n\n## License\n\n[MIT](LICENSE)\n"}