jburlison/metaprompts/validate-agent-files
Claude Code and agent skill by jburlison/metaprompts
- community
Checking that the SKILL.md file is still in the repository.
Validates AI coding assistant customization files (agents, skills, prompts, instructions) for correct format and structure. Works with GitHub Copilot, Claude Code, Codex, OpenCode, and other providers. Use when checking if agent files are properly configured, troubleshooting agent issues, or before committing new customization files.
Install
npx vskill@latest install jburlison/metaprompts/validate-agent-filesSKILL.md
Validate Agent Files
Validates that agent, skill, prompt, and instruction files follow the correct format and structure.
Provider Folder Reference
This skill works across multiple AI coding assistant providers:
| Provider | Base Folder | |
|---|---|---|
| GitHub Copilot | .github/ | |
| Claude Code | .claude/ | |
| Codex | .codex/ | |
| OpenCode | .config/opencode/ |
Throughout this document, `<provider>/` represents your chosen provider's base folder.
When to Use
- Before committing new agents, skills, prompts, or instructions
- When an agent isn't behaving as expected
- To audit existing customization files for issues
- After modifying any
.githubcustomization files
Validation Process
Step 1: Identify File Type
Determine the type based on location and extension:
<provider>/agents/*.md→ Agent file (user-invokable)<provider>/agents/*.subagent.agent.md→ Sub-agent file (workflow component)<provider>/skills/*/SKILL.md→ Skill file<provider>/prompts/*.prompt.md→ Prompt file<provider>/instructions/*.instructions.md→ Instruction file
Step 2: Apply Type-Specific Validation
Agent File Validation (<provider>/agents/*.md)
Required Structure:
Supported Frontmatter Attributes:
name(required) - Agent identifierdescription(required) - When/how to use, with examplesuser-invokable(optional) - Set tofalsefor sub-agents (default:true)tools- List of allowed toolsmodel- Specific model to usehandoffs- Other agents this can delegate to
Checks:
- ✓ YAML frontmatter present with
---delimiters - ✓
namefield exists and is non-empty - ✓
descriptionfield exists (recommend 50+ characters with examples) - ✓ Body content exists after frontmatter
- ✓ If
toolsspecified, they are valid tool names - ✓ If filename contains
.subagent.agent.md, verifyuser-invokable: falseis set
Naming Convention Checks:
- User-facing agents:
<name>.agent.mdor<name>.md - Sub-agents:
<name>.subagent.agent.mdwithuser-invokable: false
Common Issues:
- Missing
---delimiters - Empty or minimal description
- No usage examples in description
- Body content missing or too brief
- Sub-agent missing
user-invokable: false - Sub-agent not using
.subagent.agent.mdnaming convention
Skill File Validation (<provider>/skills/*/SKILL.md)
Required Structure:
Supported Frontmatter Attributes:
name(required) - Must match parent directory name, lowercase with hyphensdescription(required) - Max 1024 chars, describes function and triggerslicense(optional) - License informationcompatibility(optional) - Environment requirementsmetadata(optional) - Key-value pairs for additional infoallowed-tools(optional) - Space-delimited pre-approved tools
Checks:
- ✓ File is named
SKILL.mdinside a directory - ✓
namematches parent directory name exactly - ✓
nameis lowercase, alphanumeric with hyphens only - ✓
namedoesn't start/end with hyphen or have consecutive hyphens - ✓
descriptionis 1-1024 characters - ✓ Body content provides clear instructions
Common Issues:
namedoesn't match directory name- Uppercase characters in name
- Description too vague (should include trigger keywords)
- Missing instructions in body
Prompt File Validation (<provider>/prompts/*.prompt.md)
Required Structure:
Supported Frontmatter Attributes:
mode(optional) - One of:agent(default),ask,edit,generatetools(optional) - Available tools for this promptdescription(optional but recommended) - What the prompt accomplishes
Checks:
- ✓ File has
.prompt.mdextension - ✓ If
modepresent, it's a valid value - ✓ Variables use
{{variableName}}syntax - ✓ Body content exists (the prompt itself)
Common Issues:
- Wrong extension (
.mdinstead of.prompt.md) - Invalid
modevalue - Undefined variables in template
Instruction File Validation (<provider>/instructions/*.instructions.md)
Required Structure:
Supported Frontmatter Attributes:
applyTo(required) - Glob pattern(s) for when instructions apply
Checks:
- ✓ File has
.instructions.mdextension - ✓
applyTofield exists - ✓
applyTocontains valid glob pattern(s) - ✓ Body content provides meaningful guidance
Common Issues:
- Wrong extension
- Missing
applyTofield - Invalid glob syntax
- Empty or minimal instructions
Output Format
Batch Validation
When validating all files, provide summary:
Security
- Security scanPassed, 98 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.github/skills/validate-agent-files/SKILL.md
Popularity
- Repository stars
- 66
- Repository forks
- 6
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 12 Apr 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/jburlison/metaprompts/validate-agent-files)