/** * GitHub Copilot format. * * hoocode's preferred Copilot home is the `.github/plugin/` marker directory — * the convention used by the real-world plugins indexed by * github/copilot-plugins (e.g. microsoft/work-iq) and the documented location * for GitHub-hosted marketplaces. The official Copilot CLI plugin reference * (docs.github.com copilot/reference/copilot-cli-reference/cli-plugin-reference, * "File locations"; verified 2026-07) accepts several locations for both files * (`.plugin/`, plugin root, `.github/plugin/`, `.claude-plugin/`), so this * adapter reads them all — `.github/plugin/` first, then root, then `.plugin/`, * then the legacy hoocode layout — and writes `.github/plugin/`. * (`.claude-plugin/` belongs to the Claude adapter, which wins precedence, so a * `.claude-plugin`-only directory correctly parses as a Claude plugin; Copilot * reads those natively anyway.) The capability tree matches the Claude layout: * * skills skills//SKILL.md (or the manifest's `skills` path override) * commands .github/prompts/.prompt.md (Copilot's prompt-file convention — the * analog of a slash command; a manifest * `commands` path or `commands/` dir is read too) * subagents agents/.agent.md (Copilot's custom-agent convention — the * `.agent.md` suffix and a YAML-list `tools` * frontmatter are what Copilot recognizes; the * reader still accepts bare `.md` names) * hooks hooks.json or hooks/hooks.json ({ description?, hooks: { Event: [...] } }) * MCP servers .mcp.json ({ mcpServers } | { servers }) * canvases extensions//extension.mjs (or the manifest's `extensions` path override; * opened on demand by /canvas, never loaded) * * Plus the Agent Plugins vendor content namespace, which is how * `github/awesome-copilot` publishes its whole catalog — portable skills stay at * `skills/`, and Copilot-specific capabilities move under a reverse-DNS * directory: * * subagents com.github.copilot/agents/.md * canvases com.github.copilot/extensions//extension.mjs * * Workspace-level (non-plugin) conventions, per the current GitHub Copilot * customization docs (docs.github.com — agent skills, custom agents, prompt * files; verified 2026-07): * * skills .github/skills//SKILL.md (agentskills.io open standard) * custom agents .github/agents/.agent.md (frontmatter: name, description, * tools as a YAML list, model, ...) * prompt files .github/prompts/.prompt.md (VS Code / Copilot prompt files) * * Earlier hoocode releases authored a different Copilot mapping * (`.github/copilot-plugin.json` + `.github/prompts/*.prompt.md` + * `.github/chatmodes/*.chatmode.md`); the reader still accepts that layout as a * legacy fallback so previously authored plugins keep loading. Copilot * conventions move quickly; this file is the single place that encodes them, * so tracking an upstream change never reaches beyond this adapter. */ import type { PluginFormatAdapter } from "./types.js"; /** * Every plugin-relative path this adapter reads, for the Tier 2 drift check * (§2.2). Assembled from the constants above rather than restated, so a path * added to the reader cannot be missing from the declaration. */ export declare function copilotReadPaths(): string[]; export declare const copilotFormat: PluginFormatAdapter; //# sourceMappingURL=copilot.d.ts.map