You are a senior software architect and GitHub Copilot CLI plugin specialist. You have deep expertise in the GitHub Copilot CLI plugin system (plugin.json manifests, *.agent.md agent profiles, SKILL.md skill files, hooks.json hook configurations, and .mcp.json MCP server configs), and you are fluent at translating multi-copilot AI development specifications into this specific plugin format.
Analyse the LIDR-academy/ai-specs seed repository (https://github.com/LIDR-academy/ai-specs) and produce a detailed, step-by-step implementation plan that translates its development rules, standards, agent configurations, command-based workflows, and prompt templates into a valid, installable GitHub Copilot CLI plugin.
This repository provides a portable, multi-copilot development framework. Its structure is:
.
├── ai-specs/
│ ├── specs/
│ │ ├── base-standards.mdc # Core dev rules (single source of truth)
│ │ ├── backend-standards.mdc
│ │ ├── frontend-standards.mdc
│ │ ├── documentation-standards.mdc
│ │ ├── api-spec.yml # OpenAPI spec (reference example)
│ │ ├── data-model.md # Database/domain models (reference example)
│ │ ├── development_guide.md # Setup, workflows (reference example)
│ │ └── prompts.md # Reusable prompt templates
│ └── changes/
│ ├── SCRUM-10-Position-Update.md # Enriched user story example
│ └── SCRUM-10_backend.md # Implementation plan example
├── AGENTS.md # Generic agent config
├── CLAUDE.md # Claude-specific config
├── codex.md # Codex-specific config
└── GEMINI.md # Gemini-specific config
Key concepts to translate:
-
Development standards (
base-standards.mdc,backend-standards.mdc,frontend-standards.mdc,documentation-standards.mdc) — These define core principles (TDD, small incremental tasks, 90%+ test coverage, type safety, English-only, clear naming). They should become the plugin's foundational instructions. -
Command-based workflow — The seed defines three sequential commands:
/enrich-us <TICKET-ID>— Enriches a user story with acceptance criteria, edge cases, technical considerations, testing scenarios./plan-backend-ticket <TICKET-ID>and/plan-frontend-ticket <TICKET-ID>— Generates step-by-step implementation plans saved toai-specs/changes/./develop-backend @<PLAN-FILE>and/develop-frontend @<PLAN-FILE>— Implements the plan with TDD, proper testing, documentation updates.
-
Prompt templates (
prompts.md) — Reusable prompt patterns used by the commands. -
Reference examples (
api-spec.yml,data-model.md,development_guide.md, enriched user story and implementation plan inchanges/) — Serve as context and templates. -
Multi-copilot agent configs (
AGENTS.md,CLAUDE.md,codex.md,GEMINI.md) — Each referencesbase-standards.mdcas single source of truth.
The plugin must follow the official structure documented at https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/plugins-creating:
plugin-name/
├── plugin.json # Required manifest
├── agents/ # Custom agents (*.agent.md files)
│ └── <name>.agent.md
├── skills/ # Skills (subdirectories with SKILL.md)
│ └── <skill-name>/
│ └── SKILL.md
├── hooks.json # Hook configuration (optional)
└── .mcp.json # MCP server config (optional)
plugin.json manifest fields: name, description, version, author, license, keywords, agents (path to agents dir), skills (array of paths to skills dirs), hooks (path to hooks.json), mcpServers (path to .mcp.json).
Agent profiles (.agent.md): Markdown with YAML frontmatter containing name, description, tools (array, optional — defaults to all tools), and a Markdown body with the agent's system prompt/instructions.
Skills (SKILL.md): Markdown with YAML frontmatter containing name (lowercase, hyphenated, must match parent directory name), description (10–1024 chars, describes when Copilot should use it), optional license. Markdown body contains instructions, examples, guidelines. Skills can include bundled scripts, references, and assets in subdirectories. Skills are invoked with /skill-name in the CLI.
Hooks (hooks.json): JSON with version: 1 and hook types like preToolUse, postToolUse, sessionStart, sessionEnd, etc. Each hook entry has type, bash/powershell commands, optional cwd, env, timeoutSec.
I have an empty repository ready to receive this plugin's code. The plan should assume a clean repo and provide the full file tree and content strategy for each file.
-
Read every file in the seed repository (
ai-specs/specs/*.mdc,ai-specs/specs/*.yml,ai-specs/specs/*.md,ai-specs/changes/*.md,AGENTS.md,CLAUDE.md,codex.md,GEMINI.md, andREADME.md) before producing the plan. -
Map seed concepts → plugin components:
- Development standards (
.mdcfiles) → Embed as foundational instructions inside agent prompts and skill instructions. Standards content should be preserved faithfully — do not summarize or dilute the rules. - Command workflows (
/enrich-us,/plan-backend-ticket,/plan-frontend-ticket,/develop-backend,/develop-frontend) → Each becomes a skill (subdirectory withSKILL.md). The skill description must clearly state the trigger phrases/patterns. The skill body must contain the full workflow instructions, referencing the standards. - Agent configs (
AGENTS.md,CLAUDE.md,codex.md) → Merge into one or more custom agents (.agent.md). The primary agent should be a general-purpose development agent that enforces the standards. Consider whether specialised agents (e.g., backend-dev, frontend-dev, code-reviewer) add value. - Prompt templates (
prompts.md) → Incorporate into relevant skill instructions as reference examples. - Reference examples (
api-spec.yml,data-model.md, enriched US, implementation plan) → Bundle as reference files inside relevant skill directories (e.g.,skills/enrich-us/references/,skills/plan-backend-ticket/references/).
- Development standards (
-
Do not invent new functionality — Only translate what exists in the seed. If a concept has no natural mapping, note it in the plan and suggest how the user could extend it later.
-
Ensure the plugin is installable and testable — The plan must include:
- Exact
plugin.jsoncontent. - The full directory tree with every file listed.
- For each file, a description of its purpose and the source material it derives from.
- Instructions for local testing (
copilot plugin install ./path,copilot plugin list, verification steps).
- Exact
-
Preserve the single-source-of-truth principle — Standards content should live in one place within the plugin (e.g., a shared
references/directory or embedded once in the primary agent) and be referenced from skills, not duplicated across multiple files.
Produce the implementation plan as a structured Markdown document with these sections:
- Plugin Overview — Name, description, version, target audience, and high-level goal.
- Directory Tree — Full tree of every file and directory in the plugin, with inline annotations.
- Component Mapping Table — A table mapping each seed file/concept to its plugin counterpart, with rationale.
- File-by-File Specification — For every file in the directory tree:
- File path
- Purpose
- Source material (which seed files it derives from)
- Content strategy (what goes in it, key sections, how it references other plugin files)
- Any open questions or decisions for the user
- Implementation Order — Numbered sequence of steps to create the files, with dependencies noted (e.g., "create the shared references before the skills that reference them").
- Testing & Validation Checklist — Steps to install, verify, and smoke-test the plugin locally using
copilot plugin install,/skills list,/agent, etc. - Future Extensions — Brief notes on how the plugin could evolve (e.g., adding hooks, MCP servers, marketplace distribution).
Use code blocks for all file content, directory trees, and commands. Do not produce the actual file contents yet — only the plan. The implementation will happen in a subsequent step.