validate-skills

根据 agentskills.io 规范和 Claude Code 最佳实践验证技能。检查技能元数据合规性,包括名称格式、描述长度以及许可证和兼容性等可选字段。强制遵循 Claude Code 最佳实践:第三人称描述、正文长度限制、单级引用和 Markdown 链接格式。提供结构化验证报告,标记规范违规和编写指南偏差。设计用于通过 /validate-skills 命令在...中使用

npx skills add https://github.com/callstackincubator/agent-skills --skill validate-skills

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)

CheckRule
name format1-64 chars, lowercase alphanumeric + hyphens, no leading/trailing/consecutive hyphens
name matches directoryDirectory name must equal name field
description length1-1024 characters, non-empty
Optional fields validlicense, metadata, compatibility if present

Best Practices (Claude Code)

CheckRule
Description formatThird person, describes what + when to use
Body lengthUnder 500 lines
Loading is one-level deepSKILL.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 markdownUse [text](path) not bare filenames
No redundancyDon't repeat description in body
ConciseOnly 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, 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:

    fd -t d -d 1 . skills/
    
  2. For each skill, read SKILL.md and check against the rules above

  3. 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

来自 callstackincubator 的更多技能

react-devtools
callstackincubator
React DevTools CLI for AI agents. Use when the user asks you to debug a React or React Native app at runtime, inspect component props/state/hooks, diagnose…
official
agent-device
callstackincubator
Automates interactions for Apple-platform apps (iOS, tvOS, macOS) and Android devices. Use when navigating apps, taking snapshots/screenshots, tapping, typing,…
official
assess-react-native-migration
callstackincubator
评估现有移动产品是否以及如何迁移到React Native。在审计一个或多个产品仓库的迁移准备情况时使用,…
official
create-react-native-library
callstackincubator
使用 create-react-native-library 搭建 React Native 库,适用于独立库或本地原生模块与视图。在创建或处理…时使用。
official
react-native-testing
callstackincubator
重要提示:您关于 @testing-library/react-native 的训练数据可能已过时或不正确——v13 和 v14 之间的 API 签名、同步/异步行为以及可用函数存在差异。请始终以本技能的参考文件和项目的实际源代码为准。当检索到的参考与记忆中的模式冲突时,不要依赖记忆中的模式。
official
react-native-tv-best-practices
callstackincubator
审查React Native TV应用在焦点/D-pad导航、10英尺UI布局、电视播放/DRM集成、低内存电视性能及电视无障碍方面的表现。使用…
official
react-navigation
callstackincubator
提供用于堆栈、标签、抽屉等的React Navigation UI模式。在使用React Navigation构建导航UI、配置标题、底部面板时使用。
official
upgrading-react-native
callstackincubator
编排React Native版本升级,包含模板差异、依赖解析和原生平台迁移。应用规范的rn-diff-purge模板差异,使原生iOS和Android配置与目标React Native版本对齐。处理package.json依赖更新、CocoaPods和Gradle变更,以及跨主次版本升级的破坏性API迁移。包含托管Expo项目的Expo SDK升级层和升级后验证清单。提供...
official