Activation Contract
Create a skill when:
- A pattern is used repeatedly and AI needs guidance
- Project-specific conventions differ from generic best practices
- Complex workflows need step-by-step instructions
- Decision trees help AI choose the right approach
Do not create a skill when the pattern is trivial, one-off, or better served by normal documentation.
Hard Rules
- When working in this repo, first follow
docs/skill-style-guide.md as the normative source before creating or updating skills.
- For installed global skills, use
references/skill-style-guide.md as the bundled local copy of that guide when docs/skill-style-guide.md is unavailable.
- If neither guide is available, use the compact inline rules below.
- A skill is a runtime instruction contract for an LLM, not human documentation.
- Do not add a
Keywords section; preserve essential trigger words in description.
- References must point to local files.
- Keep the skill body concise: target 180–450 tokens, recommended max 700, hard max 1000.
Decision Gates
| Need |
Action |
| Code templates, schemas, fixtures, generated examples |
Put them in assets/ |
| Conceptual detail, edge cases, existing docs |
Put local links in references/ |
Long explanation in SKILL.md |
Move it to a supporting file |
| Multiple meaningful paths |
Add a compact decision table |
Execution Steps
- Check whether
docs/skill-style-guide.md exists; if it does, apply it before the bundled local copy or inline fallback rules.
- If the repo guide is unavailable, read
references/skill-style-guide.md and apply it before the inline fallback rules.
- Confirm the skill does not already exist and the pattern is reusable.
- Create or update
skills/{skill-name}/SKILL.md using this required structure:
skills/{skill-name}/
├── SKILL.md # Required - main skill file
├── assets/ # Optional - templates, schemas, examples
│ ├── template.py
│ └── schema.json
└── references/ # Optional - links to local docs
└── docs.md # Points to docs/developer-guide/*.mdx
- Use this frontmatter shape:
---
name: {skill-name}
description: "Trigger: {essential trigger words users or agents will say}. {What this skill does}."
license: Apache-2.0
metadata:
author: "{your-github-username}"
version: "1.0"
---
- Write sections in this order: Activation Contract, Hard Rules, Decision Gates, Execution Steps, Output Contract, References.
- Register the skill in
AGENTS.md when it is a project skill.
Inline Fallback Rules
description MUST be one physical line, quoted, YAML-safe, and include essential trigger words first.
description SHOULD be <=160 chars and MUST be <=250 chars.
- Frontmatter MUST include
name, description, license, metadata.author, and metadata.version.
- Use imperative instructions, not tutorials or background prose.
- Put supporting material in
assets/ or references/, not the main skill body.
Good:
description: "Trigger: Jira task, ticket, issue, task creation. Create Jira tasks in the team format."
Bad:
description: >
Create Jira tasks in the team format.
Trigger: Jira task, ticket, issue, or task creation.
Keywords: jira, task
Output Contract
Return:
- Files created or modified.
- Whether the repo style guide or inline fallback rules were used.
- Any AGENTS.md registration change.
- Any supporting files added under
assets/ or references/.
References
docs/skill-style-guide.md — normative LLM-first skill style guide for this repo.
references/skill-style-guide.md — bundled local copy for installed global skills when the repo doc is unavailable.
1---2name: skill-creator-323description: Trigger: new skills, agent instructions, documenting AI usage patterns. Create LLM-first skills with valid frontmatter.4license: Apache-2.05---67## Activation Contract89Create a skill when:10- A pattern is used repeatedly and AI needs guidance11- Project-specific conventions differ from generic best practices12- Complex workflows need step-by-step instructions13- Decision trees help AI choose the right approach1415Do not create a skill when the pattern is trivial, one-off, or better served by normal documentation.1617## Hard Rules1819- When working in this repo, first follow `docs/skill-style-guide.md` as the normative source before creating or updating skills.20- For installed global skills, use `references/skill-style-guide.md` as the bundled local copy of that guide when `docs/skill-style-guide.md` is unavailable.21- If neither guide is available, use the compact inline rules below.22- A skill is a runtime instruction contract for an LLM, not human documentation.23- Do not add a `Keywords` section; preserve essential trigger words in `description`.24- References must point to local files.25- Keep the skill body concise: target 180–450 tokens, recommended max 700, hard max 1000.2627## Decision Gates2829| Need | Action |30|------|--------|31| Code templates, schemas, fixtures, generated examples | Put them in `assets/` |32| Conceptual detail, edge cases, existing docs | Put local links in `references/` |33| Long explanation in `SKILL.md` | Move it to a supporting file |34| Multiple meaningful paths | Add a compact decision table |3536## Execution Steps37381. Check whether `docs/skill-style-guide.md` exists; if it does, apply it before the bundled local copy or inline fallback rules.392. If the repo guide is unavailable, read `references/skill-style-guide.md` and apply it before the inline fallback rules.403. Confirm the skill does not already exist and the pattern is reusable.414. Create or update `skills/{skill-name}/SKILL.md` using this required structure:4243```44skills/{skill-name}/45├── SKILL.md # Required - main skill file46├── assets/ # Optional - templates, schemas, examples47│ ├── template.py48│ └── schema.json49└── references/ # Optional - links to local docs50 └── docs.md # Points to docs/developer-guide/*.mdx51```525. Use this frontmatter shape:5354```markdown55---56name: {skill-name}57description: "Trigger: {essential trigger words users or agents will say}. {What this skill does}."58license: Apache-2.059metadata:60 author: "{your-github-username}"61 version: "1.0"62---63```646. Write sections in this order: Activation Contract, Hard Rules, Decision Gates, Execution Steps, Output Contract, References.657. Register the skill in `AGENTS.md` when it is a project skill.6667## Inline Fallback Rules6869- `description` MUST be one physical line, quoted, YAML-safe, and include essential trigger words first.70- `description` SHOULD be <=160 chars and MUST be <=250 chars.71- Frontmatter MUST include `name`, `description`, `license`, `metadata.author`, and `metadata.version`.72- Use imperative instructions, not tutorials or background prose.73- Put supporting material in `assets/` or `references/`, not the main skill body.7475Good:7677```yaml78description: "Trigger: Jira task, ticket, issue, task creation. Create Jira tasks in the team format."79```8081Bad:8283```yaml84description: >85 Create Jira tasks in the team format.86 Trigger: Jira task, ticket, issue, or task creation.87Keywords: jira, task88```8990## Output Contract9192Return:93- Files created or modified.94- Whether the repo style guide or inline fallback rules were used.95- Any AGENTS.md registration change.96- Any supporting files added under `assets/` or `references/`.9798## References99100- `docs/skill-style-guide.md` — normative LLM-first skill style guide for this repo.101- `references/skill-style-guide.md` — bundled local copy for installed global skills when the repo doc is unavailable.