Complete guide for using Werkstatt with OpenCode.ai.
Add werkstatt to the plugin array in your opencode.json (global or project-level):
{
"plugin": ["werkstatt@git+https://github.com/Bollwerkio/werkstatt.git"]
}Restart OpenCode. The plugin auto-installs via Bun and registers all skills automatically.
Verify by asking: "Tell me about your werkstatt"
If you previously installed werkstatt using git clone and symlinks, remove the old setup:
# Remove old symlinks
rm -f ~/.config/opencode/plugins/werkstatt.js
rm -rf ~/.config/opencode/skills/werkstatt
# Optionally remove the cloned repo
rm -rf ~/.config/opencode/werkstatt
# Remove skills.paths from opencode.json if you added one for werkstattThen follow the installation steps above.
Use OpenCode's native skill tool to list all available skills:
use skill tool to list skills
use skill tool to load werkstatt/brainstorming
Create your own skills in ~/.config/opencode/skills/:
mkdir -p ~/.config/opencode/skills/my-skillCreate ~/.config/opencode/skills/my-skill/SKILL.md:
---
name: my-skill
description: Use when [condition] - [what it does]
---
# My Skill
[Your skill content here]Create project-specific skills in .opencode/skills/ within your project.
Skill Priority: Project skills > Personal skills > Werkstatt skills
Werkstatt updates automatically when you restart OpenCode. The plugin is re-installed from the git repository on each launch.
To pin a specific version, use a branch or tag:
{
"plugin": ["werkstatt@git+https://github.com/Bollwerkio/werkstatt.git#v0.1.0"]
}The plugin does two things:
- Injects bootstrap context via the
experimental.chat.messages.transformhook, adding werkstatt awareness to every conversation. - Registers the skills directory via the
confighook, so OpenCode discovers all Werkstatt skills without symlinks or manual config.
Skills written for Claude Code are automatically adapted for OpenCode:
TodoWrite→todowriteTaskwith subagents → OpenCode's@mentionsystemSkilltool → OpenCode's nativeskilltool- File operations → Native OpenCode tools
- Check OpenCode logs:
opencode run --print-logs "hello" 2>&1 | grep -i werkstatt - Verify the plugin line in your
opencode.jsonis correct - Make sure you're running a recent version of OpenCode
- Use OpenCode's
skilltool to list available skills - Check that the plugin is loading (see above)
- Each skill needs a
SKILL.mdfile with valid YAML frontmatter
- Check OpenCode version supports
experimental.chat.system.transformhook - Restart OpenCode after config changes
- Report issues: https://github.com/Bollwerkio/werkstatt/issues
- Main documentation: https://github.com/Bollwerkio/werkstatt
- OpenCode docs: https://opencode.ai/docs/