github / github/copilot-cli

Explicit slash skill is redundantly reloaded through model registry and fails with “Skill not found”

未关闭
#4,451 0 条评论 5 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

area:agents
主要语言
Shell
星标
11.2k
派生
1.9k
平均合并
14 小时 16 分钟
30 天内合并 PR
6

描述

Describe the bug

An explicitly invoked interactive slash skill is successfully resolved and expanded into the conversation, but the assistant then attempts to load the same skill through the model-facing skill() tool. For skills excluded from model invocation, that redundant call fails with Skill not found, and the requested workflow does not start.

This differs from #4438: the interactive /skill resolver succeeds and provides the skill context. The failure happens afterward because the assistant routes the already-resolved explicit invocation back through the model-only registry.

Affected version

GitHub Copilot CLI 1.0.79

Steps to reproduce the behavior
  1. Create a personal skill at %USERPROFILE%\.agents\skills\implement.

  2. Configure agents\openai.yaml:

    interface:
      display_name: "Implement"
      short_description: "Build work from a spec or tickets"
    policy:
      allow_implicit_invocation: false
    
  3. Start an interactive Copilot CLI session using GPT-5.6 Sol.

  4. Invoke the skill directly:

    /implement 5514365
    
  5. The CLI successfully injects an explicit invocation message and <skill-context name="implement"> containing the skill's base directory and instructions.

  6. Instead of following that supplied context, the assistant calls the model-facing tool:

    skill: "implement"
    
  7. The tool returns:

    Skill not found: implement
    

The same session shows that skills with allow_implicit_invocation: false are absent from the model-facing registry, while skills without that policy are present. Skills under %USERPROFILE%\.copilot\skills without this policy are also present.

Expected behavior

Once an interactive slash command has resolved a skill and supplied its <skill-context>, the assistant should execute those instructions directly. It should not call the model-facing skill() tool again.

allow_implicit_invocation: false should prevent automatic model selection without breaking a direct /skill invocation that the CLI has already resolved.

Additional context
  • OS: Microsoft Windows 10.0.26200, x64
  • PowerShell: 7.6.4
  • Model: GPT-5.6 Sol
  • Related registry/filtering issue: #4438

Debug logs available on request.

贡献指南

打开贡献指南

从这里开始

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

调研方向

从交互式 /skill resolver 和面向模型的 skill() registry 路径开始,以 agents/openai.yaml policy 以及相关 issue #4438 中描述的行为作为上下文。跟踪显式 invocation 在解析后如何传递,然后验证 allow_implicit_invocation: false 仍会将 skills 排除在自动选择之外,且不会导致第二次查找;使用 /implement 5514365 复现,以确认 workflow 启动。

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

评估

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

把新 issue 发到你的邮箱

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