expo-dependency-check
Validate Expo project dependencies after package.json modifications
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Validate Expo project dependencies after package.json modifications
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Use when a single-project deep update command (`/experiments:npm-update-deep-{patch,minor,major,engines}`) needs the shared deep pipeline — scan → group → parallel changelog research (fetch via the `fetch-changelog` executable) → teammate-synthesized dossier with two-layer compliance check → user-gated bumps apply → per-project changeset gate for improvements/migration edits. Single parameterized contract; per-level differences live ONLY in this file's delta table, so a behavioral rule cannot drift between levels. Never runs tests/lint/build; never commits/pushes/opens PRs autonomously.
Use when a single-project npm update command (`/experiments:npm-update-patch`, `/experiments:npm-update-minor`, `/experiments:npm-update-major`, and their deep variants) or the `commander-update-orchestrator` (once per project) needs to perform the mechanical apply of a fully-resolved update set — generic `package.json` bumps via `npm-check-updates`, catalog source edits (`pnpm-workspace.yaml` for pnpm, root `package.json` for Bun), override commands, and one install. Level-agnostic (parameterized by `target`). Also documents the caller-invoked override-resolution procedure (registry load → first-win glob match → `{version}` resolution → GENERIC/OVERRIDE_RUN/OVERRIDE_SKIP partition). Performs writes only; redirects ncu/install/override output to an on-disk log (digest to the conversation, bounded tail on failure only); returns a structured result fragment (with `logPath`) and NEVER prints a consumer summary or abort message. Never commits/pushes/opens PRs autonomously.
Use when a Commander update command (`/experiments:commander-update-{patch,minor,major,engines}` and their deep variants) needs to apply npm dependency or toolchain-engine updates across every project registered in the user-scoped Commander registry. Owns the cross-project pipeline — list+filter projects, parallel scan dispatch, deduplicate updates, version-align (max-wins with per-project fallback; engine-version alignment at `level=engines`), dossier gate rendering (path + bounded digest in deep mode), sequential apply with stop-on-fail, per-project changeset gate with an apply teammate (deep mode), aggregated summary. Read-only against the registry; dependency-level writes go to each project's own manifests via `ncu --upgrade` + one `<pm> install` (output to on-disk logs, digest to the conversation), engines-level writes via `apply-engine-bumps` (runtime surfaces, no ncu). Never commits/pushes/opens PRs autonomously.
Use when a command needs to dispatch a two-phase parallel-subagent research workflow (changelog fetch → codebase research → integrity check → dossier synthesis) over a pre-grouped package set — for example `/experiments:npm-update-deep-patch` (and future deep-* siblings) after invoking `group-packages-for-research`. Inputs `{ groups, level, scanResult }`; produces `<plan-dir>/dossier.md` plus per-group `_meta.json`, `changelogs/`, and `research.md`. Never edits workspace files; bump/apply are the caller's responsibility.
Use when a deep-major update command (`/experiments:npm-update-deep-major`, and the cross-project `commander-update-deep-major` via the orchestrator) needs to split an accepted set of major breaking changes into reviewable, PR-sized buckets before isolation. Given the `## Breaking changes & migration` findings + the major bump set + a dependency-graph read, it builds HARD co-upgrade sets (peer/lockstep families), scores risk per set, applies tunable policy knobs, and returns ordered buckets `{ title, packages, riskTier, rationale, suggestedBranch, suggestedMergeOrder }` plus a count-by-policy summary. Pure — no network, no manifest write, no VCS action.
Scan a JavaScript/TypeScript project for available npm dependency updates filtered by level (patch/minor/major). Use when a command or the user needs a structured list of upgrade candidates before applying them — for example `/experiments:npm-update-patch`, or any flow that asks "what patches are available?" or "which deps have a new minor?". Handles pnpm/npm/yarn/bun/deno, single-repo and workspace, pnpm and Bun `catalog:` entries, and `minimumReleaseAge`. Returns JSON; does NOT edit files or run installs — that's the caller's job. (`engines` is NOT a level here — the runtime/toolchain bump is handled by `detect-toolchain-surfaces`.)
| name | expo-dependency-check |
| description | Validate Expo project dependencies after package.json modifications |
Use this skill when package.json has been modified in an Expo/React Native project.
Is this an Expo project? Check for:
expo in dependencies/devDependencies in package.jsonapp.json, app.config.js, or app.config.ts in project rootIf neither indicator exists, skip this workflow.
If ${user_config.package_manager_override} is non-empty, use it directly as the package-manager source — skip lockfile detection. Accepted override values: npm, pnpm, yarn, bun.
Otherwise, check for lock files (first match wins):
| Lock File | Package Manager | Command Prefix |
|---|---|---|
bun.lockb or bun.lock | bun | bunx |
pnpm-lock.yaml | pnpm | pnpx |
yarn.lock | yarn | yarn dlx (yarn 2+) or npx (yarn 1) |
package-lock.json | npm | npx |
| (none) | npm (default) | npx |
When the override is set, map it to the equivalent prefix:
| Override value | Command Prefix |
|---|---|
npm | npx |
pnpm | pnpx |
yarn | yarn dlx |
bun | bunx |
Branch on ${user_config.default_action}:
ask (default): prompt the user to choose between Check only, Auto-fix, or Skip, then execute the chosen command.check: run <prefix> expo install --check directly, without prompting.fix: run <prefix> expo install --fix directly, without prompting.Action commands:
<prefix> expo install --check — report incompatible versions<prefix> expo install --fix — update to compatible versionsReport results after execution.
npm project:
npx expo install --check
npx expo install --fix
pnpm project:
pnpx expo install --check
pnpx expo install --fix
bun project:
bunx expo install --check
bunx expo install --fix
yarn (classic) project:
npx expo install --check
npx expo install --fix
yarn (berry/2+) project:
yarn dlx expo install --check
yarn dlx expo install --fix