Creating Skills
Folder: .github/skills/tsh-creating-skills/
Used by: Copilot Engineer
Provides naming conventions (gerund form), description guidelines, body structure, progressive disclosure patterns, templates, and validation checklists for creating new skills (SKILL.md).
Core Design Principles
- Conciseness — The context window is a shared resource. Only add context the LLM doesn't already have.
- Progressive disclosure — Discovery tier (~100 tokens): name + description. Activation tier (<5000 tokens): full SKILL.md body. Resource tier (on demand): templates, examples.
- Separation of concerns — A skill defines HOW to perform a task. It must NOT define WHO the agent is (agent territory) or WHAT triggers the workflow (prompt territory).
Naming Conventions
- Skill directories use gerund form:
tsh-<gerund-subject>/(e.g.,tsh-code-reviewing/,tsh-creating-prompts/) - The
namefield in SKILL.md frontmatter must match the directory name - The
tsh-prefix identifies artifacts from The Software House's copilot-collections
Skill Folder Structure
tsh-<gerund-subject>/
├── SKILL.md # Main skill file (required)
├── <name>.example.md # Example output (optional)
└── <name>.template.md # Output template (optional)
Validation Checklist
- Directory name uses gerund form with
tsh-prefix namefield in frontmatter matches directory name- Description is concise (1–2 sentences)
- Body stays under 5000 tokens
- No personality or behavioral content (agent territory)
- No project-specific conventions (instructions territory)
Connected Skills
tsh-creating-agents— For creating agents that load this skill.tsh-creating-prompts— For creating prompts that trigger workflows using this skill.