fix(plugins): namespace Copilot materialized content (#2643)

Place Copilot-specific content in com.github.copilot and remove unsupported command handling.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 04c14c3f-d248-4a7f-93ab-93fd8b2b119e
This commit is contained in:
Aaron Powell
2026-08-13 11:24:06 +10:00
committed by GitHub
parent 0a6e37e4e2
commit 55b952d2f9
7 changed files with 78 additions and 55 deletions
+4 -5
View File
@@ -153,11 +153,11 @@ Canvas extensions live in `extensions/<extension-id>/` as reusable source compon
### Adding Plugins
Plugins group related agents, commands, and skills around specific themes or workflows, making it easy for users to install comprehensive toolkits via GitHub Copilot CLI.
Plugins group related agents, hooks, and skills around specific themes or workflows, making it easy for users to install comprehensive toolkits via GitHub Copilot CLI.
1. **Create your plugin**: Run `npm run plugin:create` to scaffold a new plugin
2. **Follow the naming convention**: Use descriptive, lowercase folder names with hyphens (e.g., `python-web-development`)
3. **Define your content**: List agents, commands, hooks, skills, and reusable extensions under `extensions.com.github.awesome-copilot` in `plugin.json`
3. **Define your content**: List agents, hooks, skills, and reusable extensions under `extensions.com.github.awesome-copilot` in `plugin.json`
4. **Test your plugin**: Run `npm run plugin:validate` to verify your plugin structure
#### Creating a plugin
@@ -174,7 +174,7 @@ plugins/my-plugin-id/
└── README.md # Plugin documentation
```
> **Note:** Plugin content is defined declaratively in plugin.json under `extensions.com.github.awesome-copilot`. Source files live in top-level directories and are materialized into plugins by CI. This repository namespace is removed from the served manifest.
> **Note:** Plugin content is defined declaratively in plugin.json under `extensions.com.github.awesome-copilot`. Source files live in top-level directories and are materialized into plugins by CI. Skills are emitted under `skills/`; Copilot-specific agents, hooks, and extensions are emitted under `com.github.copilot/`. This repository namespace is removed from the served manifest.
#### plugin.json example
@@ -191,7 +191,6 @@ plugins/my-plugin-id/
"extensions": {
"com.github.awesome-copilot": {
"agents": ["./agents/my-agent.md"],
"commands": ["./commands/my-command.md"],
"skills": ["./skills/my-skill/"]
}
}
@@ -200,7 +199,7 @@ plugins/my-plugin-id/
#### Plugin Guidelines
- **Declarative content**: Plugin content is specified under `extensions.com.github.awesome-copilot` — source files live in top-level directories and are materialized into plugins by CI
- **Declarative content**: Plugin content is specified under `extensions.com.github.awesome-copilot` — source files live in top-level directories and are materialized into plugins by CI. Skills use the standard `skills/` directory; Copilot-specific content uses `com.github.copilot/`.
- **Valid references**: All paths referenced in plugin.json must point to existing source files in the repository
- **Reusable extensions**: Curated plugins can bundle extensions by adding `./extensions/<name>` paths under `extensions.com.github.awesome-copilot.extensions`; the same extension can be listed by multiple plugins
- **Instructions excluded**: Instructions are standalone resources and are not part of plugins