anomalyco / anomalyco/opencode
Feature: exclude/deny skills from the skill selector (not just from the model's context)
@kommander is already working on this.
Since Aug 8, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Summary
There's currently no way to keep specific skills out of the interactive skill selector
(/skills picker). permission.skill: { "gsd-*": "deny" } correctly removes denied skills from
the model's <available_skills> context, but those same skills still appear in the human-facing
selector. I'd like a config option to exclude skills from discovery/the picker as well.
Motivation
I use OpenCode alongside Claude Code on the same machine. Claude Code has ~70 plugin skills
installed under ~/.claude/skills/, which OpenCode also scans (Claude-compat discovery). In
OpenCode those skills are irrelevant, so:
- They clutter the
/skillsselector with dozens of entries I'll never use in OpenCode. - I can't remove them from
~/.claude/skills/because Claude Code needs them there.
permission.skill deny handles the context/token side nicely, but not the picker side.
Current behavior
permission.skill: { "*": "allow", "gsd-*": "deny" }→ denied skills are excluded from the
model's available-skills list (good, expected). ✅- The
/skillsselector still lists every discovered skill, including the denied ones. ❌ - The only
skills.*config isskills.paths, which adds discovery locations — there's no
corresponding exclude/ignore/disable option.
Proposed solutions (any one would work)
- Have the selector honor
permission.skilldeny — the simplest: if a skill is denied for the
active agent, omit it from the picker too. (One mental model for "hide this skill," both surfaces.) - A
skills.exclude/skills.ignoreglob list — complement toskills.paths:"skills": { "exclude": ["gsd-*", "adhd"] // by name, or path glob } - A discovery-path opt-out — e.g. a way to disable the
~/.claude/skillsClaude-compat scan
specifically (parallelsOPENCODE_DISABLE_CLAUDE_CODE_PROMPTfor the global CLAUDE.md), or to
set the scanned skill roots explicitly.
Environment
- OpenCode 1.18.14 (Homebrew, macOS arm64)
- Skills discovered from
~/.claude/skills(Claude Code plugins) in addition to project/OpenCode paths.
Workaround (for others hitting this)
The selector has a search box — typing a prefix (e.g. the skill family you want) filters it, so the
noise is avoidable in day-to-day use even though it can't be permanently hidden.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.