mcpField
S
suggest-awesome-github-copilot-skills

suggest-awesome-github-copilot-skills

github.com/githubAgent 工作流40.5k8.9k 次安装今天更新
代码仓库

关于 suggest-awesome-github-copilot-skills

此技能分析仓库上下文,并与 GitHub 的 awesome-copilot 技能集合进行比较。它会列出相关候选项和已过时的本地技能供审阅,获得指示前不会安装或更新。

主要功能

  1. 01获取 awesome-copilot 技能列表
  2. 02盘点本地技能及资源
  3. 03比较本地技能与远程版本
  4. 04依据仓库上下文评估相关性
  5. 05展示建议及更新状态

适用场景

  1. 01发现仓库技能库的覆盖缺口
  2. 02识别已安装但过时的技能
  3. 03安装前审查候选技能

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/github/awesome-copilot --skill suggest-awesome-github-copilot-skills

安装后在 Claude Code 中输入/suggest-awesome-github-copilot-skills确认已加载。

详细介绍

推荐出色的 GitHub Copilot 技能

分析当前仓库上下文,并从 GitHub awesome-copilot 仓库 中推荐本仓库尚未提供的相关 Agent 技能。Agent 技能是位于 awesome-copilot 仓库 skills 文件夹中的自包含文件夹,每个文件夹都包含一个 SKILL.md 文件,其中含有说明和可选的捆绑资源。

流程

  1. 获取可用技能:从 awesome-copilot README.skills.md 中提取技能列表和描述。必须使用 #fetch 工具。
  2. 扫描本地技能:在 .github/skills/ 文件夹中发现现有技能文件夹
  3. 提取描述:读取本地 SKILL.md 文件的前言部分,获取 name 和 description
  4. 获取远程版本:对于每个本地技能,使用原始 GitHub URL(例如 https://raw.githubusercontent.com/github/awesome-copilot/main/skills/<skill-name>/SKILL.md)从 awesome-copilot 仓库获取对应的 SKILL.md
  5. 比较版本:将本地技能内容与远程版本进行比较,以识别:
    • 已是最新版本的技能(完全匹配)
    • 已过时的技能(内容不同)
    • 过时技能的关键差异(描述、说明、捆绑资源)
  6. 分析上下文:查看聊天历史、仓库文件和当前项目需求
  7. 比较现有技能:与本仓库中已有的技能进行对照
  8. 匹配相关性:将可用技能与识别出的模式和需求进行匹配
  9. 展示选项:显示相关技能及其描述、理由和可用状态,包括已过时的技能
  10. 验证:确保建议的技能能带来现有技能尚未覆盖的价值
  11. 输出:提供结构化表格,包含建议、描述以及 awesome-copilot 技能和类似本地技能的链接 等待用户请求继续安装或更新特定技能。除非被指示这样做,否则不要安装或更新。
  12. 下载/更新资源:对于请求的技能,自动:
    • 将新技能下载到 .github/skills/ 文件夹,保留文件夹结构
    • 通过替换为 awesome-copilot 中的最新版本来更新过时的技能
    • 同时下载 SKILL.md 和任何捆绑资源(脚本、模板、数据文件)
    • 不要调整文件内容
    • 使用 #fetch 工具下载资源,但也可以使用 #runInTerminal 工具通过 curl 确保检索到所有内容
    • 使用 #todos 工具跟踪进度

上下文分析标准

🔍 仓库模式:

  • 使用的编程语言(.cs、.js、.py、.ts 等)
  • 框架指示(ASP.NET、React、Azure、Next.js 等)
  • 项目类型(Web 应用、API、库、工具、基础设施)
  • 开发工作流需求(测试、CI/CD、部署)
  • 基础设施和云提供商(Azure、AWS、GCP)

🗨️ 聊天历史上下文:

  • 最近的讨论和痛点
  • 功能请求或实现需求
  • 代码审查模式
  • 开发工作流需求
  • 专门任务需求(绘图、评估、部署)

输出格式

以结构化表格展示分析结果,对比 awesome-copilot 技能与现有仓库技能:

Awesome-Copilot 技能描述捆绑资源是否已安装类似的本地技能建议理由
gh-cli用于管理仓库和工作流的 GitHub CLI 技能无❌ 否无将增强 GitHub 工作流自动化能力
aspire用于分布式应用开发的 Aspire 技能9 个参考文件✅ 是aspire已由现有 Aspire 技能覆盖
terraform-azurerm-set-diff-analyzer分析 Terraform AzureRM 提供程序变更参考文件⚠️ 已过时terraform-azurerm-set-diff-analyzer说明已更新为新的验证模式 - 建议更新

本地技能发现流程

  1. 列出 .github/skills/ 目录中的所有文件夹
  2. 对于每个文件夹,读取 SKILL.md front matter 以提取 name 和 description
  3. 列出每个技能文件夹内的所有捆绑资源
  4. 构建现有技能及其能力的完整清单
  5. 使用此清单避免建议重复项

版本对比流程

  1. 对于每个本地技能文件夹,构建用于获取远程 SKILL.md 的原始 GitHub URL:
    • 模式:https://raw.githubusercontent.com/github/awesome-copilot/main/skills/<skill-name>/SKILL.md
  2. 使用 #fetch 工具获取远程版本
  3. 比较整个文件内容(包括 front matter 和正文)
  4. 识别具体差异:
    • Front matter 变更(name、description)
    • 说明更新(指南、示例、最佳实践)
    • 捆绑资源变更(新增、删除或修改的资源)
  5. 记录已过时技能的关键差异
  6. 计算相似度以确定是否需要更新

技能结构要求

根据 Agent Skills 规范,每个技能都是一个文件夹,包含:

  • SKILL.md:主说明文件,包含 front matter(name、description)和详细说明
  • 可选的捆绑资源:脚本、模板、参考数据,以及从 SKILL.md 引用的其他文件
  • 文件夹命名:小写并使用连字符(例如 azure-deployment-preflight)
  • 名称匹配:SKILL.md front matter 中的 name 字段必须与文件夹名称匹配

Front Matter 结构

awesome-copilot 中的技能在 SKILL.md 中使用此 front matter 格式:

---
name: 'skill-name'
description: 'Brief description of what this skill provides and when to use it'
---

要求

  • 使用 fetch 工具从 awesome-copilot 仓库技能文档获取内容
  • 使用 githubRepo 工具获取单个技能内容以供下载
  • 扫描本地文件系统以查找 .github/skills/ 目录中的现有技能
  • 从本地 SKILL.md 文件读取 YAML front matter 以提取名称和描述
  • 将本地技能与远程版本对比以检测已过时的技能
  • 与此仓库中的现有技能对比以避免重复
  • 关注当前技能库覆盖范围的缺口
  • 验证建议的技能是否符合仓库的用途和技术栈
  • 为每项建议提供清晰的理由
  • 包含指向 awesome-copilot 技能和类似本地技能的链接
  • 清楚标识已过时的技能,并注明具体差异
  • 考虑捆绑资源要求和兼容性
  • 除表格和分析外,不要提供任何额外信息或上下文

图标参考

  • ✅ 已安装且为最新
  • ⚠️ 已安装但已过时(有可用更新)
  • ❌ 仓库中未安装

更新处理

当识别出过时的技能时:

  1. 将它们包含在输出表格中,状态标记为 ⚠️
  2. 在“建议理由”列中记录具体差异
  3. 提供更新建议,并注明关键变更
  4. 当用户请求更新时,用远程版本替换整个本地技能文件夹
  5. 保留 .github/skills/ 目录中的文件夹位置
  6. 确保所有捆绑资源随更新后的 SKILL.md 一并下载

评论

支持 Markdown