Skip to content

[FEATURE]: Add skills.exclude config to disable specific skill directories #26424

@ahmadaidin

Description

@ahmadaidin

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

Problem

OpenCode scans 6 standard skill directories (global + project-level):

  • ~/.config/opencode/skills//SKILL.md
  • ~/.claude/skills//SKILL.md
  • ~/.agents/skills//SKILL.md
  • .opencode/skills//SKILL.md
  • .claude/skills//SKILL.md
  • .agents/skills//SKILL.md

Users may want to exclude specific directories (e.g., ~/.agents/skills/) while keeping others (e.g., ~/.claude/skills/). Currently there is no selective exclusion mechanism — either all global directories are scanned, or none via OPENCODE_DISABLE_GLOBAL_CONFIG.

Proposed Solution

Add a skills.exclude config option in opencode.json:

{
  skills: {
    exclude: [~/.agents/skills]
  }
}

Behavior:

  • Accepts an array of directory paths (supports ~ expansion)
  • Paths are checked against skill directory roots
  • Matching directories are skipped during discovery
  • Other directories remain unaffected

Why This Matters

  • Users with large skill collections in ~/.agents/skills/ may want to limit noise in the available skills list
  • GSD framework users have internal skills that should not appear in agent selection
  • permission.skill: deny blocks programmatic spawning (via task tool), which is too restrictive

Related

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions