跳至主要内容

为 GitHub Copilot CLI 创建插件

创建插件,以在易于安装的包中共享自定义设置。

简介

插件是扩展 Copilot CLI 功能的包。请参阅 关于 GitHub Copilot CLI 插件的说明

注意

您可以在终端中输入 copilot plugin [SUBCOMMAND] --help 来获取使用插件的帮助。

插件结构

插件由具有特定结构的目录组成。最低要求是在目录根部包含一个 plugin.json 清单文件。它还可以包含代理、技能、钩子以及 MCP 服务器配置的任意组合。

插件结构示例

my-plugin/
├── plugin.json           # Required manifest
├── agents/               # Custom agents (optional)
│   └── helper.agent.md
├── skills/               # Skills (optional)
│   └── deploy/
│       └── SKILL.md
├── hooks.json            # Hook configuration (optional)
└── .mcp.json             # MCP server config (optional)

创建插件

  1. 为您的插件创建一个目录。

  2. 在目录根部添加一个 plugin.json 清单文件。

    示例 plugin.json 文件

    JSON
    {
      "name": "my-dev-tools",
      "description": "React development utilities",
      "version": "1.2.0",
      "author": {
        "name": "Jane Doe",
        "email": "jane@example.com"
      },
      "license": "MIT",
      "keywords": ["react", "frontend"],
      "agents": "agents/",
      "skills": ["skills/", "extra-skills/"],
      "hooks": "hooks.json",
      "mcpServers": ".mcp.json"
    }
    

    有关此文件中可以包含的完整字段集的详细信息,请参阅 GitHub Copilot CLI 插件参考

  3. 通过为代理、技能、钩子和 MCP 服务器配置创建相应的文件和目录,为插件添加一些组件。

    例如

    1. 通过在 agents 子目录中创建 NAME.agent.md 文件来添加代理。

      Markdown
      ---
      name: my-agent
      description: Helps with specific tasks
      tools: ["bash", "edit", "view"]
      ---
      
      You are a specialized assistant that...
      
    2. 通过在插件目录下创建 skills/NAME 子目录来添加技能,其中 NAME 为技能名称。然后在该子目录中创建定义该技能的 SKILL.md 文件。

      例如,要创建一个 “deploy” 技能,请创建 skills/deploy/SKILL.md

      Markdown
      ---
      name: deploy
      description: Deploy the current project to...
      ---
      
      Instructions for the skill...
      
  4. 在本地安装您的插件,以便在开发时进行测试。

    例如,假设 ./my-plugin 是插件目录的路径,输入

    Shell
    copilot plugin install ./my-plugin
    
  5. 通过查看已安装插件列表,验证插件已成功加载

    Shell
    copilot plugin list
    

    或者您可以启动新的交互式会话并输入

    Copilot 提示
    /plugin list
    
  6. 验证您定义的代理、技能、钩子和 MCP 服务器配置是否正确加载。

    例如,在交互式会话中,检查插件中定义的自定义代理是否已加载,输入

    Copilot 提示
    /agent
    

    要检查插件中定义的技能是否已加载,输入

    Copilot 提示
    /skills list
    
  7. 使用插件组件提供的功能,验证每个组件是否按预期工作。

  8. 根据需要迭代插件开发。

    重要提示

    当您安装插件时,其组件会被缓存,CLI 在后续会话中会从缓存读取。要获取对本地插件所做的更改,请重新安装插件。

    Shell
    copilot plugin install ./my-plugin
    
  9. 测试完成后,您可以通过输入以下命令卸载本地插件版本

    Shell
    copilot plugin uninstall NAME
    

    注意

    要卸载插件,请使用插件在 plugin.json 清单文件的 name 字段中指定的名称,而不是插件目录的路径。

分发插件

要分发插件,您可以将其添加到插件市场。请参阅 为 GitHub Copilot CLI 创建插件市场

延伸阅读

© . This site is unofficial and not affiliated with GitHub, Inc.