OpenCode is the one first-class AI target with no native PM Skills path. Propose shipping a bundled plugin (.opencode/plugins/pm-skills.js) that auto-registers all 68 skills + 42 /slash commands at runtime — one-line install, no manual copying.
The gap
OpenCode can't consume the Claude-style .claude-plugin/marketplace.json:
- No native install — no marketplace, no plugin path.
- Skills need manual copying into OpenCode's skill paths, with no source of truth and drift on every update.
- Zero
/slash commands — the 42 guided workflows (/discover, /write-prd, /red-team-prd, …) don't register at all.
- No incremental story — each new skill/command upstream means redoing setup per user.
Proposal
A repo-bundled plugin (npm manifest .opencode/package.json, depends on gray-matter) that, on init:
- Scans
pm-*/ dirs at repo root (the 9 plugins).
- Injects each
pm-*/skills/ path into config.skills.paths — OpenCode lazily discovers every SKILL.md (no symlinks/config edits; works because Config.get() is a cached singleton).
- Frontmatter-parses
pm-*/commands/*.md and registers each as config.command[name] = { template, ...data }.
- Logs init/scan/load/totals under
opencode-pm-skills so setup is observable.
Skill/command files stay the single source of truth — nothing to re-copy on updates.
Install
Then restart OpenCode.
Result
All 68 skills and 42 commands available natively; one-line install; stays in sync on git pull.
Verification
- Plugin logs
Found 9 plugin directories.
- 9 paths land in
config.skills.paths; 42 commands register in config.command.
/write-prd and the create-prd skill resolve in a fresh session.
Pull request closing this issue
#48
Plugin code Inspired by
https://github.com/obra/superpowers/blob/main/.opencode/plugins/superpowers.js
OpenCode is the one first-class AI target with no native PM Skills path. Propose shipping a bundled plugin (
.opencode/plugins/pm-skills.js) that auto-registers all 68 skills + 42/slashcommands at runtime — one-line install, no manual copying.The gap
OpenCode can't consume the Claude-style
.claude-plugin/marketplace.json:/slashcommands — the 42 guided workflows (/discover,/write-prd,/red-team-prd, …) don't register at all.Proposal
A repo-bundled plugin (npm manifest
.opencode/package.json, depends ongray-matter) that, on init:pm-*/dirs at repo root (the 9 plugins).pm-*/skills/path intoconfig.skills.paths— OpenCode lazily discovers everySKILL.md(no symlinks/config edits; works becauseConfig.get()is a cached singleton).pm-*/commands/*.mdand registers each asconfig.command[name] = { template, ...data }.opencode-pm-skillsso setup is observable.Skill/command files stay the single source of truth — nothing to re-copy on updates.
Install
{ "plugin": ["pm-skills@git+https://github.com/phuryn/pm-skills.git"] }Then restart OpenCode.
Result
All 68 skills and 42 commands available natively; one-line install; stays in sync on
git pull.Verification
Found 9 plugin directories.config.skills.paths; 42 commands register inconfig.command./write-prdand thecreate-prdskill resolve in a fresh session.Pull request closing this issue
#48
Plugin code Inspired by
https://github.com/obra/superpowers/blob/main/.opencode/plugins/superpowers.js