Create, audit, repair, and improve GitHub Copilot Agent Skills for VS Code, GitHub Copilot CLI, and GitHub Copilot cloud agent. Use when a user asks to create a skill, generate a SKILL.md, convert a workflow into a reusable skill, audit an existing skill, fix skill loading issues, optimize a skill description, validate frontmatter, or add references/scripts/assets to a skill package.
Scanned 9/4/2026
Install to Claude Code
npx -y skills add paulasilvatech/awesome-harness-primitives --skill skill-creator --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Skill Creator?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/paulasilvatech-skill-creator-3048f0d5)More formats (shields.io, HTML) on the badges page.
---
name: skill-creator
description: "Create, audit, repair, and improve GitHub Copilot Agent Skills for VS Code, GitHub Copilot CLI, and GitHub Copilot cloud agent. Use when a user asks to create a skill, generate a SKILL.md, convert a workflow into a reusable skill, audit an existing skill, fix skill loading issues, optimize a skill description, validate frontmatter, or add references/scripts/assets to a skill package."
argument-hint: "skill name or folder, and what the skill should do"
---
# Skill Creator
Use this skill to create and improve portable Agent Skills that load correctly in GitHub Copilot, VS Code, GitHub Copilot CLI, and other skills-compatible agents. The output is a skill folder with a valid `SKILL.md`, optional bundled resources, and a validation pass before delivery.
## When to use
Use this skill when the user wants to:
- Create a new skill.
- Turn a conversation or repeated workflow into a reusable skill.
- Audit, repair, or modernize an existing skill folder.
- Diagnose why a skill does not appear or does not trigger.
- Optimize a skill description for better automatic loading.
- Add references, scripts, assets, test prompts, or review artifacts to a skill.
## Required skill format
Every skill folder follows this shape:
```text
skill-name/
SKILL.md
references/ optional, on-demand Markdown references
scripts/ optional, runnable helpers
assets/ optional, templates or static resources
```
The directory name must match the `name` field in `SKILL.md`. The `name` uses lowercase letters, numbers, and hyphens only. Avoid slashes, colons, dots, namespaces, spaces, and uppercase letters because invalid names can prevent discovery.
`SKILL.md` starts with YAML frontmatter on line 1:
```markdown
---
name: skill-name
description: What the skill does and when to use it, with concrete trigger phrases.
---
# Skill instructions
```
Required frontmatter keys:
- `name`: must match the folder.
- `description`: must explain both what the skill does and when to use it. Keep it at or below 1024 characters.
Supported optional keys in this repository:
- `argument-hint`
- `license`
- `user-invocable`
- `disable-model-invocation`
- `allowed-tools`
- `metadata`
- `tags`
Do not use unsupported top-level keys such as `context`, `compatibility`, `authors`, `category`, or `version`. Put annotations such as compatibility, author, and version under `metadata` when needed.
## Workflow
### 1. Clarify intent
Capture the smallest useful version of the skill before writing files. Ask or infer:
- What capability should the skill provide?
- What user requests should trigger it?
- What should the skill produce?
- Does it need references, scripts, assets, or all three?
- Does it need objective tests, human review, or both?
- Is it a project skill under `.github/skills/` or a personal skill under `~/.copilot/skills/`?
If the user asks to convert an existing conversation into a skill, extract the workflow, mistakes, corrections, commands, output formats, and validation steps from that conversation before asking new questions.
### 2. Choose the package shape
Keep `SKILL.md` focused on the core workflow and progressive disclosure. Move long domain knowledge into `references/`. Put repeatable deterministic work into `scripts/`. Put templates or examples into `assets/`.
Good split:
- `SKILL.md`: overview, when to use, workflow, output requirements, validation.
- `references/*.md`: detailed rules, examples, schemas, style guides.
- `scripts/*`: validators, renderers, converters, reproducible helpers.
- `assets/*`: templates, sample input, HTML review pages, icons, fixtures.
Every file referenced from `SKILL.md` must exist.
### 3. Write or update `SKILL.md`
Use clear imperative instructions. Explain why key steps matter instead of relying on rigid all-caps rules. Include:
- What the skill helps accomplish.
- When it should be used.
- Step-by-step workflow.
- Inputs and outputs.
- Validation commands.
- Pointers to bundled references, scripts, and assets.
Write the `description` for discovery. Include trigger phrases and near-synonyms a real user would type. Do not hide trigger guidance only in the body because the description is the primary discovery surface.
### 4. Add tests or review artifacts
For skills with objective output, write 3 to 5 realistic test prompts and expected checks. Store them in `evals/evals.json` if the user wants an evaluation loop. For subjective skills, provide a human review checklist instead of forcing weak quantitative assertions.
Use [references/schemas.md](references/schemas.md) for optional eval JSON shapes.
For trigger-description review, use [assets/eval_review.html](assets/eval_review.html) to review should-trigger and should-not-trigger prompts with the user.
### 5. Validate before delivery
Run the bundled validator on the skill folder:
```bash
python3 .github/skills/skill-creator/scripts/validate_skill.py .github/skills/<skill-name>
```
Also run repository gates when working in this repository:
```bash
python3 harness/github-copilot/scripts/validate_primitives.py --strict
python3 harness/github-copilot/scripts/generate_catalog.py --check
```
Fix every error before claiming the skill is ready.
### 6. Improve an existing skill
When updating a skill:
- Preserve the folder name and `name` field unless the user explicitly asks to rename it.
- Read the current skill before editing.
- Work with existing references, scripts, and assets instead of replacing the package blindly.
- Keep unrelated changes out.
- Validate the updated skill folder.
## Validation checklist
Before delivery, confirm:
- `SKILL.md` starts with frontmatter on line 1.
- `name` exists and matches the folder.
- `description` exists, is specific, and is at most 1024 characters.
- No unsupported frontmatter keys are present.
- No sandbox paths or hard platform leaks are present.
- No broken local file references exist.
- Every bundled script compiles or has a documented runtime requirement.
- Documentation is in English.
- User-facing copy writes "GitHub Copilot" in full.
## Bundled resources
- [references/schemas.md](references/schemas.md): optional JSON schemas for evals, grading, benchmark summaries, trigger eval sets, and feedback.
- [assets/eval_review.html](assets/eval_review.html): self-contained browser UI for reviewing trigger eval queries.
- [eval-viewer/generate_review.py](eval-viewer/generate_review.py): standard-library review viewer for comparing generated outputs and collecting feedback.
- [scripts/validate_skill.py](scripts/validate_skill.py): deterministic validator for Agent Skill package structure and repository conventions.
## Notes for portability
Prefer portable Agent Skills concepts over one-agent-only mechanics. This skill targets GitHub Copilot in VS Code, GitHub Copilot CLI, and GitHub Copilot cloud agent. If a requested workflow depends on a tool that is not available in the current environment, document the dependency and provide a graceful fallback.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!