skill-creator
npx skills add https://github.com/apollographql/skills --skill skill-creator
Agent 安装分布
Skill 文档
Skill Creator Guide
This guide helps you create effective skills for Apollo GraphQL and GraphQL development following the Agent Skills specification.
What is a Skill?
A skill is a directory containing instructions that extend an AI agent’s capabilities with specialized knowledge, workflows, or tool integrations. Skills activate automatically when agents detect relevant tasks.
Directory Structure
A skill requires at minimum a SKILL.md file:
skill-name/
âââ SKILL.md # Required - main instructions
âââ references/ # Optional - detailed documentation
âââ topic-a.md
âââ topic-b.md
SKILL.md Format
Frontmatter (Required)
---
name: skill-name
description: >
A clear description of what this skill does and when to use it.
Include trigger conditions: (1) first condition, (2) second condition.
license: MIT
compatibility: Works with Claude Code and similar AI coding assistants.
metadata:
author: your-org
version: "1.0.0"
allowed-tools: Read Write Edit Glob Grep
---
Frontmatter Fields
| Field | Required | Description |
|---|---|---|
name |
Yes | Lowercase, hyphens only. Must match directory name. Max 64 chars. |
description |
Yes | What the skill does and when to use it. Max 1024 chars. |
license |
No | License name (e.g., MIT, Apache-2.0). |
compatibility |
No | Environment requirements. Max 500 chars. |
metadata |
No | Key-value pairs for author, version, etc. |
allowed-tools |
No | Space-delimited list of pre-approved tools. |
Name Rules
- Use lowercase letters, numbers, and hyphens only
- Do not start or end with a hyphen
- Do not use consecutive hyphens (
--) - Must match the parent directory name
Good: apollo-client, graphql-schema, rover
Bad: Apollo-Client, -apollo, apollo--client
Description Best Practices
Write descriptions that help agents identify when to activate the skill:
# Good - specific triggers and use cases
description: >
Guide for designing GraphQL schemas following industry best practices. Use this skill when:
(1) designing a new GraphQL schema or API,
(2) reviewing existing schema for improvements,
(3) deciding on type structures or nullability,
(4) implementing pagination or error patterns.
# Bad - vague and unhelpful
description: Helps with GraphQL stuff.
Body Content
The markdown body contains instructions the agent follows. Structure it for clarity:
Recommended Sections
- Overview – Brief explanation of the skill’s purpose
- Process – Step-by-step workflow (use checkboxes for multi-step processes)
- Quick Reference – Common patterns and syntax
- Reference Files – Links to detailed documentation
- Key Rules – Important guidelines organized by topic
- Ground Rules – Critical do’s and don’ts
Example Structure
# Skill Title
Brief overview of what this skill helps with.
## Process
Follow this process when working on [task]:
- [ ] Step 1: Research and understand requirements
- [ ] Step 2: Implement the solution
- [ ] Step 3: Validate the result
## Quick Reference
### Common Pattern
\`\`\`graphql
type Example {
id: ID!
name: String
}
\`\`\`
## Reference Files
- [Topic A](references/topic-a.md) - Detailed guide for topic A
- [Topic B](references/topic-b.md) - Detailed guide for topic B
## Key Rules
### Category One
- Rule about this category
- Another rule
### Category Two
- Rule about this category
## Ground Rules
- ALWAYS do this important thing
- NEVER do this problematic thing
- PREFER this approach over that approach
Progressive Disclosure
Structure skills to minimize context usage:
- Metadata (~100 tokens):
nameanddescriptionload at startup for all skills - Instructions (< 5000 tokens): Full
SKILL.mdloads when skill activates - References (as needed): Files in
references/load only when required
Keep SKILL.md under 500 lines. Move detailed documentation to reference files.
Reference Files
Use references/ for detailed documentation:
references/
âââ setup.md # Installation and configuration
âââ patterns.md # Common patterns and examples
âââ troubleshooting.md # Error solutions
âââ api.md # API reference
Reference files should be:
- Focused on a single topic
- Self-contained (readable without other files)
- Under 300 lines each
Link to references from SKILL.md:
## Reference Files
- [Setup](references/setup.md) - Installation and configuration
- [Patterns](references/patterns.md) - Common patterns and examples
Writing Style
Follow the Apollo Voice for all skill content:
Tone
- Approachable and helpful
- Opinionated and authoritative (prescribe the “happy path”)
- Direct and action-oriented
Language
- Use American English
- Keep language simple; avoid idioms
- Use present tense and active voice
- Use imperative verbs for instructions
Formatting
- Use sentence casing for headings
- Use code font for symbols, commands, file paths, and URLs
- Use bold for UI elements users click
- Use hyphens (-) for unordered lists
Avoid
- “Simply”, “just”, “easy” (can be condescending)
- Vague phrases like “click here”
- Semicolons (use periods instead)
- “We” unless clearly referring to Apollo
Reference Files
For Apollo GraphQL-specific guidance:
- Apollo Skills – Patterns and examples for Apollo GraphQL skills
Versioning
Use semantic versioning ("X.Y.Z") for the version field in metadata:
metadata:
author: apollographql
version: "1.0.0"
- Major (X): Breaking changes that alter how the skill behaves or activates (e.g., renamed triggers, removed sections, changed ground rules)
- Minor (Y): New content or capabilities that are backward-compatible (e.g., added reference files, new sections, expanded examples)
- Patch (Z): Small fixes that don’t change behavior (e.g., typo corrections, wording tweaks, formatting fixes)
Start new skills at "1.0.0".
Checklist for New Skills
Before publishing a skill, verify:
-
namematches directory name and follows naming rules -
descriptionclearly states what the skill does and when to use it -
SKILL.mdis under 500 lines - Reference files are focused and under 300 lines each
- Instructions are clear and actionable
- Code examples are correct and tested
- Ground rules use ALWAYS/NEVER/PREFER format
- Content follows Apollo Voice guidelines
Ground Rules
- ALWAYS include trigger conditions in the description (use numbered list)
- ALWAYS use checkboxes for multi-step processes
- ALWAYS link to reference files for detailed documentation
- NEVER exceed 500 lines in SKILL.md
- NEVER use vague descriptions that don’t help agents identify when to activate
- PREFER specific examples over abstract explanations
- PREFER opinionated guidance over listing multiple options
- USE
allowed-toolsto pre-approve tools the skill needs