| title | intent stale |
|---|---|
| id | intent-stale |
intent stale reports whether shipped skills may need review.
npx @tanstack/intent@latest stale [--json]--json: print JSON array of staleness reports
- Checks the current package by default, or all skill-bearing packages in the current workspace when run from a monorepo root
- When
diris provided, scopes the check to the targeted package or skills directory - Computes one staleness report per package
- Prints text output by default or JSON with
--json - If no packages are found, prints
No intent-enabled packages found.
--json outputs an array of reports:
[
{
"library": "string",
"currentVersion": "string | null",
"skillVersion": "string | null",
"versionDrift": "major | minor | patch | null",
"skills": [
{
"name": "string",
"reasons": ["string"],
"needsReview": true
}
]
}
]Report fields:
library: package namecurrentVersion: latest version from npm registry (ornullif unavailable)skillVersion:library_versionfrom skills (ornull)versionDrift:major | minor | patch | nullskills: array of per-skill checks
Skill fields:
namereasons: one or more staleness reasonsneedsReview: boolean (truewhen reasons exist)
Reason generation:
version drift (<skillVersion> → <currentVersion>)new source (<path>)when a declared source has no stored sync SHA
- Report header format:
<library> (<skillVersion> → <currentVersion>) [<versionDrift> drift] - When no skill reasons exist:
All skills up-to-date - Otherwise: one warning line per stale skill (
⚠ <name>: <reason1>, <reason2>, ...)
- Package scan failure: prints a scanner error
- Registry fetch failures do not crash command;
currentVersionmay benull
- Source staleness checking is conservative: it flags missing source SHAs in sync-state, not remote content differences.