callstackincubator/agent-skills · Official

validate-skills

Validates skills in this repo against agentskills.io spec and Claude Code best practices. Use via /validate-skills command.

All-time #2370 Trending #3373 Hot #5335 First seen Jan 29, 2026
8-week activity · all time api

Installation

$ npx skills add callstackincubator/agent-skills --skill validate-skills

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from callstackincubator/agent-skills · top by installs.

npx skills add callstackincubator/agent-skills

Browse all from callstackincubator/agent-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1.6K
License LICENSE
Default branch main
Open issues 5
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

LicenseMIT
Declared agents claude-code
More metadata
author
Callstack
tags
validation, linting, skill-authoring

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,665 B
  • docs SUMMARY.md 143 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 6,200 installs

SKILL.md

Validate Skills

Validate all skills in skills/ against the agentskills.io spec and Claude Code best practices.

Validation Checklist

For each skill directory, verify:

Spec Compliance (agentskills.io)

Check Rule
name format 1-64 chars, lowercase alphanumeric + hyphens, no leading/trailing/consecutive hyphens
name matches directory Directory name must equal name field
description length 1-1024 characters, non-empty
Optional fields valid license, metadata, compatibility if present

Best Practices (Claude Code)

Check Rule
Description format Third person, describes what + when to use
Body length Under 500 lines
Loading is one-level deep SKILL.md is the only progressive-disclosure entry point: every reference file must be reachable from SKILL.md. References may cross-link each other for navigation (see note below).
Links are markdown Use [text](path) not bare filenames
No redundancy Don't repeat description in body
Concise Only add context Claude doesn't already have

One-level-deep vs. cross-linking. The one-level-deep rule targets progressive-disclosure loading chains — a reference that can only be discovered by loading another reference first (SKILL.mda.mdb.md, where b.md is not linked from SKILL.md). That is a defect: it hides content from the loader.

It does not forbid navigational cross-links. Per [AGENTS.md](../../../AGENTS.md), reference files end with a "Related Skills" footer linking sibling references, and this is required. A cross-link is fine as long as both endpoints are also reachable directly from SKILL.md. Only flag a reference that is reachable exclusively through another reference.

How to Run

  1. Find all skill directories:

``bash fd -t d -d 1 . skills/ ``

  1. For each skill, read SKILL.md and check against the rules above
  1. Report issues in this format:

``` ## Validation Results

### skills/example-skill - [PASS] name format valid - [FAIL] name "example" doesn't match directory "example-skill" - [PASS] description length OK (156 chars) ```

References