Does opencode actually support finding skills at `.claude/skills`?
Question
I was looking for where in the code the search in .claude/skills is being enabled, but the only reference I found to the claude directory is this commented out test which makes me think opencode isn't actually looking in .claude/skills folders?
What I'm actually interested is in being able to configure the directory where opencode looks. (e.g. making it .agent/skill rather than .opencode/skill), but that doesn't seem to be possible at the moment?
This issue might be a duplicate of existing issues. Please check:
- #6177: Skill discovery doesn't match Claude Code's skills/ directory structure - directly addresses the .claude/skills question
- #6171: Inconsistency in docs for where to install skills - covers the configuration/directory inconsistency
- #6013: [FEATURE]: Add Skill Configuration to Config Type - related to configurable skill paths
Feel free to ignore if these don't address your specific case.
This is partially addressed by PR #6539 which adds skills.path config for custom directories.
The PR adds custom paths alongside defaults (additive). If you need to disable/replace default paths entirely, that would be a separate feature request.
It does read claude skills, for the project and global yep
If u wanna add custom dirs, I recommend using: OPENCODE_CONFIG_DIR
We could update it to support comma separated values or something but rn thats the cleanest solution I think, cc @anntnzrb
We could update it to support comma separated values or something but rn thats the cleanest solution I think, cc @anntnzrb
#6539 - see usage examples
Yeah I was saying instead of adding new configs fields we can just improve the already supported env var that handles this stuff already
Hey @rekram1-node, following up on your suggestion to enhance OPENCODE_CONFIG_DIR with comma-separated values.
Here's what I'm proposing:
Usage
# Single path (backwards compatible)
export OPENCODE_CONFIG_DIR="~/my-config"
# Multiple paths with tilde expansion
export OPENCODE_CONFIG_DIR="~/my-config,/shared/team-config"
Expected Directory Structure
Each path should follow the standard .opencode/ structure:
OPENCODE_CONFIG_DIR="~/my-config,/shared/team-config"
│
┌───────────┴───────────┐
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ ~/my-config/ │ │ /shared/team- │
│ ├── agent/ │ │ config/ │
│ ├── command/ │ │ ├── agent/ │
│ ├── skill/ │ │ ├── command/ │
│ └── plugin/ │ │ ├── skill/ │
└──────────────────┘ │ └── plugin/ │
└──────────────────┘
Plural forms also work (agents/, commands/, skills/, plugins/).
Questions
- Does this match what you had in mind?
- Should the paths be loaded in order (left-to-right, later overrides earlier)?
- Any concerns with using comma as separator vs
path.delimiter(:on Unix,;on Windows)?
Let me know if this aligns with your vision before I proceed with the implementation.
Yes that works