github / github/copilot-cli

Personal skills in ~/.copilot/skills/ are never discovered, despite being documented as a source

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

还没有人认领这个 Issue。

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

描述

Describe the bug

Summary

copilot skill --help documents ~/.copilot/skills/ as a "Personal" skill
source, but skills placed there are never discovered. copilot skill list
returns only builtin skills. Project and custom sources work correctly in the
same version, so this appears specific to the personal source.

Affected version

| Copilot CLI | 1.0.81-5 |

Steps to reproduce the behavior

Reproduction

  1. Create a minimal personal skill:
mkdir ~/.copilot/skills/zz-repro-demo

~/.copilot/skills/zz-repro-demo/SKILL.md:

---
name: zz-repro-demo
description: "Minimal skill used to reproduce personal skill discovery."
---

# Repro demo

Say hello.
  1. From a directory containing no project skills, run:
copilot skill list --json

Result:

[
  { "name": "customize-cloud-agent", "source": "builtin" },
  { "name": "github-pr-media",       "source": "builtin" }
]

The personal skill is absent. Plain copilot skill list prints only a
Builtin skills: section, with no Personal skills: heading.

Expected behavior

Expected behavior

Per copilot skill --help:

Skills are discovered from several sources:
  Project   .github/skills/, .agents/skills/, or .claude/skills/
  Personal  ~/.copilot/skills/ or ~/.agents/skills/
  Plugin    Installed plugins that bundle skills
  Custom    Directories added with `copilot skill add <directory>`

A valid skill in ~/.copilot/skills/<name>/SKILL.md should appear in
copilot skill list with source personal.

Actual behavior

It does not appear at all.

Additional context

What this is not

  • Not invalid frontmatter. The repro skill above is newly created and
    minimal. Four other valid personal skills on this machine are equally absent.
  • Not a symlink/junction resolution issue. The repro directory is a real
    directory. A separate real-directory skill is also invisible, alongside
    junctioned ones. All are equally absent.
  • Not general discovery breakage. From a repo containing
    .github/skills/, those skills list correctly with source project.
  • Not a missing scope flag. copilot skill list --help offers only
    --json; there is no flag to include other sources.
  • Not user configuration. Nothing in ~/.copilot/settings.json or
    config.json references skills or disables a source.

The custom source works, which narrows it

Registering the same directory explicitly does work:

copilot skill add /path/to/zz-repro-demo
copilot skill list --json
[
  { "name": "zz-repro-demo",         "source": "custom"  },
  { "name": "customize-cloud-agent", "source": "builtin" },
  { "name": "github-pr-media",       "source": "builtin" }
]

Identical skill content, discovered under custom but not under personal.
This suggests the loader itself is fine and the personal source is either not
enumerated or is filtered out.

Impact

The documented way to install a skill for use across all projects does not
work. The only working alternatives are to place skills inside each project's
.github/skills/, or register each directory individually with
copilot skill add. For anyone maintaining reusable skills across several
repositories, this forces per-project copies, which then drift.

Environment

Copilot CLI 1.0.81-5
Install method WinGet (GitHub.Copilot)
OS Windows 11 Enterprise, 10.0.26200.0
Architecture ARM64
Shell PowerShell 7.6.5 (Core)

Possibly related, lower priority

copilot skill remove <name> fails for a skill registered via
copilot skill add <directory>, even though copilot skill list displays it
by name and the help text says remove <name-or-directory>:

Error: No custom, personal, or project skill found matching "zz-repro-demo".

Happy to split this into its own issue if preferred.

贡献指南

打开贡献指南

从这里开始

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

调研方向

首先使用 ~/.copilot/skills/zz-repro-demo/SKILL.md 重现问题,然后将 copilot skill list --json 与通过 copilot skill add 注册的同一目录进行比较。阅读 copilot skill --help 所描述的行为;当有效的个人 skill 在列表中以来源 personal 出现且不需要自定义注册时,即表示完成。

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

评估

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

把新 issue 发到你的邮箱

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