Files
awesome-copilot/.github/copilot-instructions.md
Aaron Powell 7a003fc75a Deprecate Collections in favour of Plugins
Replace Collections with Plugins as first-class citizens in the repo.
With the Copilot CLI v0.409 release making plugins an on-by-default
marketplace, collections are redundant overhead.

## What changed

### Plugin Infrastructure
- Created eng/validate-plugins.mjs (replaces validate-collections.mjs)
- Created eng/create-plugin.mjs (replaces create-collection.mjs)
- Enhanced all 42 plugin.json files with tags, featured, display, and
  items metadata from their corresponding collection.yml files

### Build & Website
- Updated eng/update-readme.mjs to generate plugin docs
- Updated eng/generate-website-data.mjs to emit plugins.json with full
  items array for modal rendering
- Renamed website collections page to plugins (/plugins/)
- Fixed plugin modal to use <div> instead of <pre> for proper styling
- Updated README.md featured section from Collections to Plugins

### Documentation & CI
- Updated CONTRIBUTING.md, AGENTS.md, copilot-instructions.md, PR template
- Updated CI workflows to validate plugins instead of collections
- Replaced docs/README.collections.md with docs/README.plugins.md

### Cleanup
- Removed eng/validate-collections.mjs, eng/create-collection.mjs,
  eng/collection-to-plugin.mjs
- Removed entire collections/ directory (41 .collection.yml + .md files)
- Removed parseCollectionYaml from yaml-parser.mjs
- Removed COLLECTIONS_DIR from constants.mjs

Closes #711
2026-02-13 15:38:37 +11:00

3.2 KiB

The following instructions are only to be applied when performing a code review.

README updates

  • The new file should be added to the docs/README.<type>.md.

Prompt file guide

Only apply to files that end in .prompt.md

  • The prompt has markdown front matter.
  • The prompt has a agent field specified of either agent, ask, or Plan.
  • The prompt has a description field.
  • The description field is not empty.
  • The file name is lower case, with words separated by hyphens.
  • Encourage the use of tools, but it's not required.
  • Strongly encourage the use of model to specify the model that the prompt is optimised for.
  • Strongly encourage the use of name to set the name for the prompt.

Instruction file guide

Only apply to files that end in .instructions.md

  • The instruction has markdown front matter.
  • The instruction has a description field.
  • The description field is not empty.
  • The file name is lower case, with words separated by hyphens.
  • The instruction has an applyTo field that specifies the file or files to which the instructions apply. If they wish to specify multiple file paths they should formatted like '**.js, **.ts'.

Agent file guide

Only apply to files that end in .agent.md

  • The agent has markdown front matter.
  • The agent has a description field.
  • The description field is not empty.
  • The file name is lower case, with words separated by hyphens.
  • Encourage the use of tools, but it's not required.
  • Strongly encourage the use of model to specify the model that the agent is optimised for.
  • Strongly encourage the use of name to set the name for the agent.

Agent Skills guide

Only apply to folders in the skills/ directory

  • The skill folder contains a SKILL.md file.
  • The SKILL.md has markdown front matter.
  • The SKILL.md has a name field.
  • The name field value is lowercase with words separated by hyphens.
  • The name field matches the folder name.
  • The SKILL.md has a description field.
  • The description field is not empty, at least 10 characters, and maximum 1024 characters.
  • The description field value is wrapped in single quotes.
  • The folder name is lower case, with words separated by hyphens.
  • Any bundled assets (scripts, templates, data files) are referenced in the SKILL.md instructions.
  • Bundled assets are reasonably sized (under 5MB per file).

Plugin guide

Only apply to directories in the plugins/ directory

  • The plugin directory contains a .github/plugin/plugin.json file.
  • The plugin directory contains a README.md file.
  • The plugin.json has a name field matching the directory name.
  • The plugin.json has a description field.
  • The description field is not empty.
  • The directory name is lower case, with words separated by hyphens.
  • If tags is present, it is an array of lowercase hyphenated strings.
  • If items is present, each item has path and kind fields.
  • The kind field value is one of: prompt, agent, instruction, skill, or hook.
  • The plugin does not reference non-existent files.