Description
As a Windows user, I need OpenCode to correctly discover and invoke skills from ~/.claude/skills when ~/.claude is a junction, so that slash autocomplete (/) and skill invocation are both reliable.
Real Problems Observed
- A visible
/skills page does not prove the fix. The real failure point is slash autocomplete after typing /.
- Duplicate skill names exist in real setups (for example,
skill-creator appears in both user and system scopes).
- Previous name-based dedupe collapsed duplicate-name skills into a single candidate, which hid valid skills.
- In-process simulations (
tmpdir + OPENCODE_TEST_HOME + Skill.all()) can pass while real user validation still fails.
How to Reproduce
- On Windows, set
~/.claude as a junction to a target path (for example, D:\\Tony\\ubuntu_settings\\.claude).
- Ensure duplicate-name skills exist across scopes (for example, both
~/.claude/skills/skill-creator/SKILL.md and ~/.claude/skills/.system/skill-creator/SKILL.md).
- Launch OpenCode TUI and type
/skill-creator.
- Observe slash autocomplete behavior and candidate list.
Expected Behavior
- Slash autocomplete (
/) shows all invokable skill candidates, including duplicate names.
- Duplicate-name skills are distinguishable by scope (
system, user, project).
- Skill labels in autocomplete do not append
:skill.
- Real foreground TUI validation passes on a real junction-based
~/.claude/skills setup.
Hard Requirements
Environment
- Windows 10/11
~/.claude is a junction
- OpenCode CLI/TUI on Bun runtime
Acceptance Criteria
Description
As a Windows user, I need OpenCode to correctly discover and invoke skills from
~/.claude/skillswhen~/.claudeis a junction, so that slash autocomplete (/) and skill invocation are both reliable.Real Problems Observed
/skillspage does not prove the fix. The real failure point is slash autocomplete after typing/.skill-creatorappears in both user and system scopes).tmpdir + OPENCODE_TEST_HOME + Skill.all()) can pass while real user validation still fails.How to Reproduce
~/.claudeas a junction to a target path (for example,D:\\Tony\\ubuntu_settings\\.claude).~/.claude/skills/skill-creator/SKILL.mdand~/.claude/skills/.system/skill-creator/SKILL.md)./skill-creator.Expected Behavior
/) shows all invokable skill candidates, including duplicate names.system,user,project).:skill.~/.claude/skillssetup.Hard Requirements
/skillspage alone):skill~/.claude/skills+/input + candidate visibility)Environment
~/.claudeis a junctionAcceptance Criteria
/skill-creatorshows duplicate candidates with scope disambiguation