-
Notifications
You must be signed in to change notification settings - Fork 895
Description
Bug Description
Global skills organised with a domain/category subfolder are silently ignored by OpenWork.
OpenWork expects skills at:
~/.config/opencode/skills/<skill-name>/SKILL.md
But the OpenCode CLI convention (and many community setups) uses a domain-grouped layout:
~/.config/opencode/skills/<domain>/<skill-name>/SKILL.md
Steps to Reproduce
- Organise global skills in domain subfolders:
~/.config/opencode/skills/ ├── automation/ │ └── my-skill/SKILL.md └── web-development/ └── my-other-skill/SKILL.md - Open any workspace in OpenWork
- Check the Skills panel
Expected: Both skills appear in the list
Actual: Skills panel is empty — skills are not discovered
Root Cause
Both gather_skills() in packages/desktop/src-tauri/src/commands/skills.rs and listSkillsInDir() in packages/server/src/skills.ts only scan one level deep (<root>/<name>/SKILL.md) and skip directories that don't directly contain SKILL.md.
Fix
When a top-level entry inside a skill root does not contain SKILL.md, treat it as a domain/category folder and scan its subdirectories for <name>/SKILL.md.
This is fully backwards-compatible — the flat layout still works as before.