validate-skill

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Validate Skill

验证Skill

Purpose

用途

This skill validates skill directories against the AgentSkills specification. Use it to ensure your skills have proper frontmatter, required fields, and follow naming conventions.
Use when:
  • Creating new skills in any agent's skills directory (
    .claude/skills/
    ,
    .cursor/skills/
    , etc.)
  • Reviewing PRs that modify skills
  • Validating skill structure before publishing
本Skill用于根据AgentSkills规范验证技能目录。使用它可以确保你的Skill具备正确的前置元数据、必填字段,并遵循命名规范。
适用场景:
  • 在任意Agent的技能目录(
    .claude/skills/
    .cursor/skills/
    等)中创建新Skill时
  • 审查修改Skill的PR时
  • 发布前验证Skill结构时

Scripts

脚本

validate-skill.ts

validate-skill.ts

Validate one or more skill directories.
bash
bunx @plaited/development-skills validate-skill [paths...]
Arguments:
  • paths
    : Paths to validate (defaults to current agent's skills directory)
Options:
  • --json
    : Output results as JSON
Examples:
bash
undefined
验证一个或多个技能目录。
bash
bunx @plaited/development-skills validate-skill [paths...]
参数:
  • paths
    :待验证的路径(默认值为当前Agent的技能目录)
选项:
  • --json
    :以JSON格式输出结果
示例:
bash
undefined

Validate skills in current directory's .claude/skills/

验证当前目录下.claude/skills/中的Skill

bunx @plaited/development-skills validate-skill .claude/skills
bunx @plaited/development-skills validate-skill .claude/skills

Validate Cursor skills

验证Cursor技能

bunx @plaited/development-skills validate-skill .cursor/skills
bunx @plaited/development-skills validate-skill .cursor/skills

Validate a specific skill

验证特定Skill

bunx @plaited/development-skills validate-skill .claude/skills/typescript-lsp
bunx @plaited/development-skills validate-skill .claude/skills/typescript-lsp

Validate multiple paths with JSON output

验证多个路径并以JSON格式输出

bunx @plaited/development-skills validate-skill .claude/skills .cursor/skills --json
undefined
bunx @plaited/development-skills validate-skill .claude/skills .cursor/skills --json
undefined

Validation Rules

验证规则

Required Fields

必填字段

  • name
    : Skill name (lowercase, alphanumeric with hyphens)
  • description
    : Brief description of the skill
  • name
    :Skill名称(小写字母,允许字母数字和连字符)
  • description
    :Skill的简短描述

Naming Conventions

命名规范

  • Name must be lowercase
  • Only alphanumeric characters and hyphens allowed
  • Cannot start or end with hyphen
  • Cannot contain consecutive hyphens
  • Maximum 64 characters
  • Directory name must match skill name
  • 名称必须为小写
  • 仅允许字母数字字符和连字符
  • 不能以连字符开头或结尾
  • 不能包含连续的连字符
  • 最大长度为64个字符
  • 目录名称必须与Skill名称匹配

Optional Fields

可选字段

  • license
    : License identifier
  • compatibility
    : Runtime requirements
  • allowed-tools
    : Comma-separated list of allowed tools
  • metadata
    : Key-value pairs for additional metadata
  • license
    :许可证标识符
  • compatibility
    :运行时要求
  • allowed-tools
    :允许使用的工具列表(逗号分隔)
  • metadata
    :用于附加元数据的键值对

Output Format

输出格式

Human-Readable (default)

人类可读格式(默认)

✓ .claude/skills/typescript-lsp
✓ .cursor/skills/my-skill
✗ .claude/skills/invalid-skill
  ERROR: Missing required field in frontmatter: 'description'

2/3 skills valid
✓ .claude/skills/typescript-lsp
✓ .cursor/skills/my-skill
✗ .claude/skills/invalid-skill
  ERROR: Missing required field in frontmatter: 'description'

2/3 skills valid

JSON (--json)

JSON格式(--json)

json
[
  {
    "valid": true,
    "path": ".cursor/skills/my-skill",
    "errors": [],
    "warnings": [],
    "properties": {
      "name": "my-skill",
      "description": "..."
    }
  }
]
json
[
  {
    "valid": true,
    "path": ".cursor/skills/my-skill",
    "errors": [],
    "warnings": [],
    "properties": {
      "name": "my-skill",
      "description": "..."
    }
  }
]

Related Skills

相关Skill

  • typescript-lsp - Example of a well-structured skill with scripts
  • code-documentation - TSDoc standards for TypeScript/JavaScript code
  • typescript-lsp - 结构规范的Skill示例,包含脚本
  • code-documentation - TypeScript/JavaScript代码的TSDoc标准