skills: skill tool fails to load user skills from ~/.config/opencode/skills

未关闭
#62,859 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
55/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
typescript
领域
tooling

调研方向

Start by tracing the skill tool's lookup path for user skills under ~/.config/opencode/skills, then compare it with the path used for built-in skills. Reproduce with the provided antislop-ui/SKILL.md example and inspect relevant tests for skill loading. Done when valid global user skills load in the skill tool and a regression test covers the failure.

由索引模型根据 Issue 内容生成。

描述

triaging

Summary

The skill tool fails with Unable to load skill <id> for user skills in the global skills folder, while the same SKILL.md files are readable with the Read tool. Built-in skills (for example report) load correctly in the same session, so the failure appears limited to user skills.

Environment

  • opencode version: 2.2.5
  • OS: Windows_NT 10.0.26200 (win32 x64)
  • Terminal: TERM=xterm-256color
  • Shell: C:\Program Files\Git\usr\bin\bash.exe
  • Install/channel: latest
  • Active plugins: ccgs-hooks, changelog-generator, drift-detector, job-search-bridge (from ~/.config/opencode/opencode.json). None of them intercepts the skill tool.

Reproduction

  1. Have a skill folder at C:\Users\Marco\.config\opencode\skills\antislop-ui\SKILL.md with a valid frontmatter (name: antislop-ui, description, allowed-tools).
  2. Start a session and call the skill tool with id: antislop-ui.
  3. Observe the error Unable to load skill antislop-ui (tool.execution).
  4. Call the Read tool on the same file: it reads correctly.
  5. Call the skill tool with the built-in report: it loads.
  6. Repeat step 2 with grilling, a skill stored in another folder with the same frontmatter shape: same error.
  7. Restart the application: same error. A worker started with orca orchestration worker-start (a separate opencode session): same error.

Expected Behavior

The skill tool loads user skills from the global skills folder, as it does for built-in skills.

Actual Behavior

Unable to load skill <id> for every user skill tested (antislop, antislop-ui, antislop-layoutmobile, grilling, prototype), including after restart and in a worker session. The log/opencode.log file shows no error line for these loads, so the cause is not recorded there.

Additional Context

  • Frequency: consistent, in every session tested.
  • Workaround: read the SKILL.md file directly with the Read tool, which works.
  • Not yet tested: whether the failure depends on the folder name, the frontmatter fields, or the disable-model-invocation flag. The skills tested have different values for those fields.
主要语言
TypeScript
星标
225k
派生
30.4k
平均合并
4 小时 16 分钟
30 天内合并 PR
528

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

anomalyco/opencode 的其他 Issue

查看 anomalyco/opencode 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。