assess-react-native-mi…
Assesses whether and how an existing mobile product should migrate to React Native. Use when auditing one or more product repositories for migration readiness,…
Validates skills in this repo against agentskills.io spec and Claude Code best practices. Use via /validate-skills command.
$ npx -y skills add callstackincubator/agent-skills --skill validate-skills --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/validate-skillsContext preview
The summary Claude sees to decide when to auto-load this skill.
Validates skills in this repo against agentskills.io spec and Claude Code best practices. Use via /validate-skills command.
name: validate-skills description: Validates skills in this repo against agentskills.io spec and Claude Code best practices. Use via /validate-skills command. license: MIT metadata: author: Callstack tags: validation, linting, skill-authoring
Validate all skills in `skills/` against the agentskills.io spec and Claude Code best practices.
For each skill directory, verify:
| 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 |
| 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.md` → `a.md` → `b.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.
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)
Callstack Agent Skills give AI coding assistants practical React Native knowledge drawn from our work on production apps.
Repo: callstackincubator/agent-skills
Assesses whether and how an existing mobile product should migrate to React Native. Use when auditing one or more product repositories for migration readiness,…
Scaffolds React Native libraries with create-react-native-library for standalone libraries or local native modules and views. Use when creating or working on…
GitHub Actions workflow patterns for React Native iOS simulator and Android emulator cloud builds with downloadable artifacts. Use when setting up CI build…
Provides React Native performance optimization guidelines for FPS, TTI, bundle size, memory leaks, re-renders, and animations. Applies to tasks involving…
Implements an accepted incremental brownfield migration from native iOS or Android to React Native or Expo using @callstack/react-native-brownfield. Use after…
Reviews React Native TV apps for focus/D-pad navigation, 10-foot UI layout, TV playback/DRM integration, low-memory TV performance, and TV accessibility. Use…