github / github/copilot-cli

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

Open
#4,451 0 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area:agents
Dominant language
Shell
Stars
11.2k
Forks
1.9k
Avg merge
14h 16m
Merged PRs (30d)
6

Description

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.

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.

Research direction

Start at the interactive /skill resolver and the model-facing skill() registry path, using the agents/openai.yaml policy and the behavior described in related issue #4438 as context. Trace how an explicit invocation is passed after resolution, then verify that allow_implicit_invocation: false still excludes skills from automatic selection without causing a second lookup; reproduce with /implement 5514365 to confirm the workflow starts.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.