Personal skills in ~/.copilot/skills/ are never discovered, despite being documented as a source
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Shell
- Star
- 11.2k
- Fork
- 1.9k
- Merge trung bình
- 14 giờ 16 phút
- Pull request đã merge (30 ngày)
- 6
Mô tả
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
- 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.
- 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 sourceproject. - Not a missing scope flag.
copilot skill list --helpoffers only
--json; there is no flag to include other sources. - Not user configuration. Nothing in
~/.copilot/settings.jsonor
config.jsonreferences 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.
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện vấn đề với ~/.copilot/skills/zz-repro-demo/SKILL.md, sau đó so sánh copilot skill list --json với cùng thư mục được đăng ký thông qua copilot skill add. Đọc hành vi được mô tả bởi copilot skill --help; được xem là hoàn tất khi một skill cá nhân hợp lệ xuất hiện trong danh sách với nguồn personal mà không cần đăng ký tùy chỉnh.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- powershell, shell
- Lĩnh vực
- cli
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Sôi nổi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 68/100