Skip to content

GitHub Copilot Skills

The Forge repository includes 9 consolidated Agent Skills for GitHub Copilot that provide domain-specific guidance and automation for platform development tasks.

What are Agent Skills?

Agent Skills are self-contained folders containing specialized instructions and workflows that GitHub Copilot can use to provide expert assistance for specific tasks. Each skill follows the Agent Skills standard and includes:

  • YAML frontmatter defining the skill name and description
  • Detailed instructions and workflows
  • Code examples and best practices
  • References subfolder for detailed topic documentation
  • Troubleshooting guidance

Available Skills

Note: Skills are located in the repository at .github/skills/. Links below are repository paths, not documentation paths.

πŸ”¨ Core Platform

Skill Description
forge-standards Version compatibility, project structure, emoji conventions
utils Skill creation, Foundry sync, todo tracking

πŸ”€ Git & GitHub

Skill Description
git-workflows Branches, cherry-pick, commit analysis, conventional commits
github-workflows PR creation, issue linking, code review

πŸš€ Release & Documentation

Skill Description
release-management Version bumps, release notes, announcements
documentation DiΓ‘taxis framework, formatting, validation

πŸ› οΈ Development

Skill Description
dotnet-development Templates, NuGet packages
terraform-development Module creation, testing
local-development Environment setup, error resolution

How Skills Work

Progressive Disclosure

Skills use a progressive disclosure pattern:

  1. Description field - Primary trigger for skill discovery (WHEN to use it)
  2. SKILL.md body - Workflow overview and quick reference
  3. references/ folder - Detailed documentation loaded on demand

This minimizes context overhead while providing deep expertise when needed.

Automatic Discovery

GitHub Copilot automatically discovers and loads skills from the .github/skills/ directory. Skills are invoked based on:

  1. Task context - Asking for specific tasks (e.g., "Create a PR") triggers relevant skills
  2. Domain keywords - Mentioning "documentation", "release", or "Forge development" activates corresponding skills
  3. File context - Working in specific files may trigger related skills

Manual Invocation

You can explicitly request a skill's help:

@copilot Use the documentation skill to validate this file
@copilot Use the git-workflows skill to help me create a feature branch

Skill Structure

Each skill follows the Agent Skills standard:

skill-name/
β”œβ”€β”€ SKILL.md              # Required: YAML frontmatter + markdown instructions
└── references/           # Optional: Detailed docs loaded on demand
    β”œβ”€β”€ topic-a.md
    └── topic-b.md

SKILL.md Format

---
name: skill-name
description: >
  What this skill does AND when to use it.
  Include specific triggers and scenarios.
---

# Skill Title

## Workflow

1. Step 1 β†’ See references/topic-a.md
2. Step 2 β†’ See references/topic-b.md

## Quick Reference

[Essential tables/info that applies across all topics]

Key rules:

  • description is the PRIMARY triggerβ€”include all "when to use" info there
  • Keep SKILL.md body under 500 lines
  • Use references/ for detailed documentation

Creating New Skills

To add a new skill:

  1. Create a folder with a lowercase, hyphen-separated name
  2. Add SKILL.md with frontmatter (name, description)
  3. Put trigger info in description, not the body
  4. Keep under 500 lines; split to references/ if needed
  5. Test with GitHub Copilot

πŸ“– See .github/skills/utils/references/skill-creation.md in the repository for detailed guidance.

Naming Conventions

Pattern Example Use Case
{domain}-{specialty} terraform-development, git-workflows Domain-specific skills
{action}-{object} release-management Task-oriented skills

Best Practices

For Skill Creators

Do:

  • βœ… Focus on specific, actionable tasks
  • βœ… Include real code examples
  • βœ… Use progressive disclosure (SKILL.md β†’ references/)
  • βœ… Keep content current with platform versions
  • βœ… Make descriptions specific with clear triggers

Don't:

  • ❌ Create overly broad or vague skills
  • ❌ Duplicate content across skills
  • ❌ Exceed 500 lines in SKILL.md
  • ❌ Put "when to use" in body instead of description

For Skill Users

Do:

  • βœ… Be specific about what you need help with
  • βœ… Provide context about your current task
  • βœ… Ask for clarification if instructions are unclear

Don't:

  • ❌ Expect skills to handle tasks outside their scope
  • ❌ Ignore prerequisites or warnings

Repository paths: Skills are in .github/skills/ and the skills README is at .github/skills/README.md.

Migration History

The Forge repository consolidated 25 fragmented skills into 9 focused skills using progressive disclosure:

Consolidated Skill Original Skills Merged
documentation documentation-diataxis, documentation-formatting, documentation-validation
git-workflows git-branch-management, git-cherry-pick, git-commit-analysis, conventional-commits
github-workflows github-pr-create, github-issue-linking, code-review-standards
release-management release-notes-generation, release-announcements, version-management
forge-standards forge-emoji-standards, forge-tech-stack, forge-version-compatibility
terraform-development terraform-module-creation, terraform-testing
dotnet-development dotnet-template-creation, nuget-package-creation
local-development local-development-setup, error-resolution
utils skill-creation, foundry-examples-sync, todo-tracking

Benefits: 64% reduction in skills to scan, consolidated triggers, better context coherence.


For questions or suggestions about skills, contact the Platform Engineering team.