anomalyco / anomalyco/opencode

Skill discovery context-dependent: project-local skill shadow breaks global same-name skill load (1.18.29)

Open
#48,219 2 comments 0 reactions 1 assignee View on GitHub

@nexxeln is already working on this.

Since Sep 9, 2026.

Dominant language
TypeScript
Stars
209k
Forks
27.5k
Avg merge
7h 2m
Merged PRs (30d)
384

Description

Bug Description

Skill mempalace-python-fallback in ~/.config/opencode/skills/ wird nicht in <available_skills> geladen — aber nur in manchen Sessions. Gleiche Datei, gleiche opencode-Version (1.18.29), unterschiedliche Ergebnisse je nach Agent-Kontext.

Evidence

Node Session-Kontext CWD Skill geladen?
suckz suckz-Agent, Session 2026-09-09 C:\suckz FAIL
dev dev-Agent, cwd C:\dev C:\dev FAIL
atlas_core atlas_core-Agent, cwd C:\atlas_core\nomad C:\atlas_core\nomad PASS
skap-sound-system skap-sound-system-Agent C:\skap-sound-system PASS

Repro

  1. Skill-Datei: ~/.config/opencode/skills/mempalace-python-fallback/SKILL.md
  2. Frontmatter valid (gray-matter parse OK, name + description present)
  3. Kein Name-Konflikt (Skill existiert nur in ~/.config/opencode/skills/)
  4. Kein Projekt-.opencode/skills Verzeichnis vorhanden
  5. skill({name:"mempalace-python-fallback"}) → "Skill not found" in betroffenen Sessions

Hypothesis

Skill-Discovery wird bei Session-Start geschnappt. Unterschiedliche Sessions haben unterschiedliche CWD/Agent-Identity → unterschiedliche Discovery-Pfade oder -Reihenfolgen. Der available_skills-Index wird beim Start gefroren; Änderungen danach werden nicht nachgeladen.

Tested

  • Frontmatter-Trim (nur name + description, Extra-Felder raus) → NICHT behoben
  • Binary-Analyse: gray-matter ignoriert Extra-Felder (license, compatibility, metadata) → nicht Frontmatter-bedingt
  • Bug ist 2/4 Nodes reproduzierbar, nicht transient

Environment

  • opencode 1.18.29
  • Windows (PowerShell)
  • Global skills in ~/.config/opencode/skills/

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.