github / github/copilot-cli

Avoid duplicate skill lookup for slash-invoked skills with disable-model-invocation

Open
#4,637 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Summary

A skill that is explicitly invoked with a slash command can execute and inject its instructions into context, while another lookup path reports Skill not found, creating misleading context noise.

Reproduction

Use a skill with this frontmatter:

---
name: implement
description: "Implement a piece of work based on a spec or set of tickets."
disable-model-invocation: true
---

The local skill is C:\Users\omzig\.copilot\skills\implement\SKILL.md; the relevant setting is line 4: disable-model-invocation: true.

Then run:

/implement #1147

Observed behavior:

  • The /implement workflow is recognized and its instructions are injected into context.
  • A separate skill lookup reports: Skill not found: implement.
  • The command can continue, but the error is misleading and makes it appear that the skill failed to load.

Environment: Copilot CLI 1.0.80 on Windows.

Expected behavior

disable-model-invocation: true should prevent automatic/model-driven invocation. It should not make an explicit slash-command invocation unavailable. When the explicit command path succeeds, the runtime should not perform a second conflicting lookup or emit Skill not found.

Suggested fix

Distinguish explicit slash-command invocation from automatic skill invocation. Resolve the command/skill once, honor disable-model-invocation only for automatic loading, and suppress the registry error when the explicit command path has already loaded the skill successfully.

This is primarily a context-quality issue: the implementation workflow works, but the duplicate/conflicting lookup adds noise and obscures the actual result.

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 with the explicit slash-command invocation path and the separate automatic skill lookup or registry path, using disable-model-invocation and /implement #1147 as search terms. Reproduce the issue on Copilot CLI 1.0.80, then verify that an explicitly invoked skill executes without a duplicate Skill not found message while automatic invocation remains disabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
cli, developer-experience
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.