Build agentic applications with GitHub Copilot SDK. Use when embedding AI agents in apps, creating custom tools, implementing streaming responses, managing sessions, connecting to MCP servers, or creating custom agents. Triggers on Copilot SDK, GitHub SDK, agentic app, embed Copilot, programmable agent, MCP server, custom agent.
80
71%
Does it follow best practices?
Impact
97%
5.38xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/copilot-sdk/skills/copilot-sdk/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that clearly defines its scope around the GitHub Copilot SDK, lists concrete capabilities, provides explicit trigger guidance with both a 'Use when' clause and a 'Triggers on' list, and occupies a distinct niche. The description is concise yet comprehensive, using proper third-person voice throughout. Minor potential overlap with general MCP-related skills, but the Copilot SDK context mitigates this.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'embedding AI agents in apps', 'creating custom tools', 'implementing streaming responses', 'managing sessions', 'connecting to MCP servers', 'creating custom agents'. These are concrete, actionable capabilities. | 3 / 3 |
Completeness | Clearly answers both 'what' (build agentic applications with GitHub Copilot SDK) and 'when' (explicit 'Use when...' clause with six specific scenarios, plus an explicit 'Triggers on' list). Both dimensions are thoroughly covered. | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural trigger terms including both formal ('Copilot SDK', 'GitHub SDK') and conversational ('agentic app', 'embed Copilot', 'programmable agent', 'MCP server', 'custom agent'). These are terms users would naturally use when seeking this functionality. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with a clear niche around GitHub Copilot SDK specifically. Terms like 'Copilot SDK', 'GitHub SDK', and 'embed Copilot' are very specific and unlikely to conflict with general coding skills or other AI-related skills. The 'MCP server' trigger could potentially overlap with a general MCP skill, but the context of Copilot SDK makes it sufficiently distinct. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, executable code across four languages, which is its primary strength. However, it is severely bloated by repeating nearly identical patterns four times per feature, creating a massive token footprint that violates conciseness principles. The content desperately needs progressive disclosure - splitting per-language details into separate files and keeping SKILL.md as a lean overview with one canonical example per concept.
Suggestions
Split per-language examples into separate bundle files (e.g., TYPESCRIPT.md, PYTHON.md, GO.md, DOTNET.md) and show only one canonical language in SKILL.md with cross-references to the others.
Remove the 'How Tools Work' section - Claude already understands tool-calling patterns; the code examples are self-explanatory.
Add validation checkpoints after installation (e.g., 'Verify: run the Quick Start example and confirm you see output') and after CLI server setup.
Consolidate the configuration reference tables and event types into a separate REFERENCE.md file to reduce SKILL.md length.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose - repeats nearly identical code patterns across 4 languages for every feature (Quick Start, Streaming, Custom Tools, MCP, Custom Agents, System Message, External CLI). The same conceptual pattern is shown 4 times with minor syntax differences, massively inflating token count. The 'How Tools Work' section explains concepts Claude already knows. Much of this content should be split into per-language reference files. | 1 / 3 |
Actionability | Code examples are complete, executable, and copy-paste ready across all four languages. Installation commands, run commands, and configuration options are all concrete and specific with no pseudocode. | 3 / 3 |
Workflow Clarity | Prerequisites and installation steps are clear, and the progression from Quick Start to Streaming to Custom Tools is logical. However, there are no validation checkpoints (e.g., verifying installation succeeded, testing the connection before building complex apps), and error handling is shown only for TypeScript despite being a multi-language skill. | 2 / 3 |
Progressive Disclosure | This is a monolithic wall of text (~600+ lines) with no bundle files to offload content. The per-language examples for each feature should be in separate reference files (e.g., TYPESCRIPT.md, PYTHON.md), with the SKILL.md providing a concise overview and one canonical language example per feature. The Resources section links to external URLs but no internal bundle structure exists. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (915 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
4e4b34c
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.