Guide for creating effective skills for Apollo Solutions and Field teams. Use this skill when: (1) users want to create a new skill for this repository, (2) users want to update an existing skill, (3) users ask about skill structure or best practices, (4) users need help writing SKILL.md files.
How this skill is triggered — by the user, by Claude, or both
Slash command
/apollo-solutions-skills:skill-creatorThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
This guide helps you create effective skills for the Apollo Solutions and Field teams following the [Agent Skills specification](https://agentskills.io/specification).
This guide helps you create effective skills for the Apollo Solutions and Field teams following the Agent Skills specification.
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.
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
---
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: apollosolutions
version: "1.0.0"
allowed-tools: Read Write Edit Glob Grep
---
| 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. Do not include Bash(curl:*). |
--)Good: apollo-client, graphql-schema, rover
Bad: Apollo-Client, -apollo, apollo--client
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.
The markdown body contains instructions the agent follows. Structure it for clarity:
# 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
## Ground Rules
- ALWAYS do this important thing
- NEVER do this problematic thing
- PREFER this approach over that approach
Structure skills to minimize context usage:
name and description load at startup for all skillsSKILL.md loads when skill activatesreferences/ load only when requiredKeep SKILL.md under 500 lines. Move detailed documentation to 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:
Link to references from SKILL.md:
## Reference Files
- [Setup](references/setup.md) - Installation and configuration
- [Patterns](references/patterns.md) - Common patterns and examples
Follow the Apollo Voice for all skill content:
For Apollo Solutions-specific guidance:
Use semantic versioning ("X.Y.Z") for the version field in metadata:
metadata:
author: apollosolutions
version: "1.0.0"
Start new skills at "1.0.0".
Before publishing a skill, verify:
name matches directory name and follows naming rulesdescription clearly states what the skill does and when to use itSKILL.md is under 500 linesmetadata.author is set to apollosolutionsmetadata.author to apollosolutionsallowed-tools to pre-approve tools the skill needsBash(curl:*) in allowed-tools as it grants unrestricted network access and enables curl | sh remote code execution patternsProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub apollosolutions/skills --plugin apollo-solutions-skills