- TypeScript 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| agents | ||
| commands | ||
| opencode-debate | ||
| plugins | ||
| skills/planning-council | ||
| .gitignore | ||
| opencode.jsonc | ||
| package-lock.json | ||
| package.json | ||
| PAUL-EMAIL.md | ||
| PAUL-GETTING-STARTED.md | ||
| README.md | ||
| tui.json | ||
OpenCode Config
Portable multi-model OpenCode agents, permissions, commands, skills, and plugins. This is a scrubbed snapshot of Cam's working configuration: it contains no credentials, runtime data, or machine-specific project paths.
New to OpenCode? Read Paul: Getting Started with OpenCode before installing this full configuration.
Emailing Paul? Copy the prepared Markdown email draft.
Included
- Opus/Kimi/Sol orchestration presets:
Orchestrator,TagTeam,claude-efficate, and the isolated-worktreeDuel - Fable and Sol reviewers, candidate solvers, and decision-council agents
/council,/tagteam,/debate, and the risk-gated planning council- Pinned council, debate, and TUI plugins
- A credential guard and a local Duel worktree plugin
The normal built-in build agent remains the default. Select another primary agent in
the OpenCode agent picker when you want one of these workflows.
Requirements
- OpenCode 1.18.13 or later
- Node.js 24.15 or later and npm
- An Anthropic API key for the Claude-based agents
- Accounts or credentials for OpenAI and Kimi if you use workflows that call them
The configured model IDs are current as of August 2026 and may need updating when a provider changes its catalogue.
Install
If ~/.config/opencode does not exist:
git clone https://git.viaplex.com/cam/opencode-config.git ~/.config/opencode
npm --prefix ~/.config/opencode ci
If that directory already exists, preserve it first and review the diff before replacing
or merging any files. Never copy auth.json, .env files, tokens, or other runtime data
into this repository.
Run opencode auth login (or /connect in the TUI) and connect each provider you intend
to use. For Anthropic, select Manually enter API Key. Credentials are stored in
~/.local/share/opencode/auth.json and no credential belongs in this repository.
Quit and restart OpenCode after installation or any config change; configuration and agent files are loaded only at startup.
Verify
npm --prefix ~/.config/opencode ci
opencode debug config
opencode auth list
Confirm the expected providers are connected before using a multi-model preset. The
planning council expects Kimi k3, Claude Fable 5, GPT-5.6 Sol, and Claude Opus 5. Debate
sets are defined in opencode-debate/config.yaml.
opencode-debate writes transcripts into docs/debates/ in the active project. Those
transcripts can contain source and prompt content; add that path to each project's
.gitignore when appropriate.
Security Notes
- The repository intentionally excludes OpenCode's runtime
auth.json, Claude Code credentials, provider keys, machine instructions, and local project allowlists. - Add your own credential-store paths as final
denyoraskrules. OpenCode permission maps are last-match-wins, so broad rules must come before narrow protections. - Duel creates detached sibling worktrees and can run repository-defined package/test commands. It is workflow isolation, not an OS sandbox; do not use it on untrusted code.
- Do not add a Claude Pro/Max subscription-auth plugin to this config. OpenCode stopped bundling those in 1.3.0 and its provider documentation states that Anthropic explicitly prohibits them; they also conflict with API-key and proxy-key authentication rather than falling back to it. Use an Anthropic API key.
Updating
Pull changes only when the config working tree is clean, review the diff, run npm ci,
then restart OpenCode. Plugin versions are pinned so updates are explicit and reviewable.