sanity-check
Skill1 starsChanged 7 months agoMITView on GitHub
Checks whether an npm package, library, or code pattern is current, maintained, and recommended. Use this skill whenever the user mentions a specific npm package, library, framework, or pattern (e.g. "should I use X", "is X still good", "using X for Y", "/sanity-check X"). Also auto-trigger when the user pastes code that imports or requires a library you're unfamiliar with, or when discussing tech stack choices. Also triggers on "/sanity-check --scan" or "scan my dependencies" to audit an entire package.json. Don't wait to be asked — if a package or pattern comes up and its currency is relevant, run this check proactively.
11 other projects use a version of this.
Adopted by
Most recently taken up by
- Markssuave/Markssuave-Agent-skillstheir own version, first seen Nov 8, 2026
- rivet-dev/rivetkittheir own version, first seen Oct 9, 2026
- rivet-dev/agentostheir own version, first seen Oct 8, 2026
- chmouel/lazyworktreetheir own version, first seen Oct 8, 2026
- rivet-dev/agent-ostheir own version, first seen Oct 8, 2026
- jonhill90/skillstheir own version, first seen Sep 30, 2026
Used with
Projects with it also use launch-graphics, publish-registry and 2 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
rivet-devSkilllaunch-graphics
Generate agentOS marketing/launch graphics (launch & social heroes, code-snippet cards) from the committed generators in docs-internal/graphics. Use when asked to make, update, or render an agentOS launch image, social image, "agentOS Apps" graphic, or technical code-snippet image.
Also in 3 projects that use this
rivet-devSkillpublish-registry
Publish @agentos-software/* registry packages from AgentOS. Use whenever the user asks to publish or release registry software/agent packages.
Also in 3 projects that use this
MicrosoftSkillrelease
Use ONLY when the user explicitly asks to cut/publish a Huabu desktop release or tag a version. Performs an outward action — bumps the version in apps/desktop/package.json, commits + annotated-tags vX.Y.Z, and pushes the branch + tag. That tag push auto-builds the macOS/Windows installers and publishes a GitHub Release. Provides `status`, `bump`, `tag-push`, and a one-command `run` (bump → tag-push).
Also in 3 projects that use this
- +1 more from rivet-dev
Other versions11 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 11
- rivet-dev/agent-os★ 4.9ksame name
- rivet-dev/agentos★ 4.9ksame name
- rivet-dev/rivetkit★ 4.9ksame name
- chmouel/lazyworktree★ 315same name
- c-kick/hnl-agent-skills★ 56same name
- flurdy/agent-skills★ 9same name
- jonhill90/skills★ 8same name
- david-vrba/claude-power-skills★ 4same name
- baobab-tech/researcher-harness★ 1same name
- Markssuave/Markssuave-Agent-skills★ 1same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository3 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- ship-checkSkill
- stack-checkSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 2 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 31
Use web_search and web_fetch.
- Very specific: line 150
Expo-specific packages: check https://docs.expo.dev — npm data alone isn't enough for SDK version gating
- Distinctive: line 151
Native modules in RN: check New Architecture compatibility list
- Distinctive: line 152
Unknown package: if npm 404s, say so and search — might be a typo or GitHub-only
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
/sanity-check
Two modes:
- Single package —
/sanity-check <package>— live check on one package - Full scan —
/sanity-check --scan— audit entire package.json for vibe/agentic compatibility
Mode 1: Single package check
Trigger conditions
- Explicit: user types
/sanity-check <package> - Auto: user mentions a package/library/pattern where its health matters
- Auto: user pastes code with unfamiliar imports
- Auto: user asks "should I use X for Y" or "is X still good"
Data sources (in order)
- npm registry —
https://registry.npmjs.org/<package-name>(latest version, publish date, deprecated field) - GitHub repo — releases/tags page and README for maintenance signals
- Bundlephobia —
https://bundlephobia.com/package/<n>if bundle size is relevant - Training knowledge — known dead/deprecated patterns, ecosystem shifts
- Startup/builder community vibe — X/Twitter, Reddit (r/reactjs, r/expo, r/javascript, r/startups), Hacker News. Search
"<package> site:reddit.com OR site:news.ycombinator.com"and"<package> 2026 opinion".
Use web_search and web_fetch. Search pattern: "<package> deprecated OR alternative OR 2026".
Single package output format
## Sanity check: <package-name>
**Verdict: ✅ Current** | **⚠️ Caution** | **❌ Dead/Avoid**
One-line reason.
---
### Details
- **Latest version**: x.x.x (released N months ago)
- **npm weekly downloads**: ~Xm
- **Actively maintained**: Yes / No / Unclear (last commit: ...)
- **Deprecated flag**: None / "Use X instead"
- **Known issues**: [any breaking changes, migration notes]
### Ecosystem signal
[1-2 sentences on community sentiment, trends, alternatives if relevant]
### Vibe check 🌡️
**Builder/startup community opinion**: [Bullish / Neutral / Bearish / Divided]
[2-3 sentences: what are devs/founders saying on X, Reddit, HN? Hot takes, trends, is it the "cool" pick or "boring enterprise" pick?]
### Recommendation
[Concrete: keep using it / migrate to X / fine for Y but not Z]Mode 2: Full dependency scan (/sanity-check --scan)
Audits every package in the nearest package.json through the lens of vibe coding / agentic engineering compatibility — i.e. how well each package works when Claude (or another LLM) is writing the code.
What "vibe/agentic compatible" means
A package is LLM-friendly if:
- Well-typed — bundled TypeScript types mean Claude can infer correct API shape
- Actively maintained — recent publishes mean Claude's training data is less likely stale
- Well-documented — rich README/docs give LLMs better context to generate correct usage
- Stable API — not multiple majors ahead of what's installed (Claude may generate newer API syntax)
- Not deprecated — obvious
How to run
Find the nearest package.json in the current project, then run:
python {SKILL_DIR}/scripts/scan_deps.py path/to/package.jsonThe script fetches live npm registry data for every dep and returns structured JSON. Parse the JSON and generate a terminal summary.
Scan output format
Print a terminal summary — one line per package, grouped by risk level:
🔍 Dependency scan: <project-name> (<N> packages)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
❌ HIGH RISK (fix these)
moment v2.29 → stale 36mo, deprecated, no types
node-sass v4.x → deprecated, use sass
⚠️ CAUTION
axios v1.x → 2 major versions behind latest
redux v4.x → active but often overkill for vibe coding
✅ VIBE-FRIENDLY
zod v3.x → typed, active, LLM-friendly API
react-query v5.x → current, excellent docs
...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 Summary: X healthy · Y caution · Z high risk
🤖 Agentic compatibility score: N/10
Top recommendations:
1. [most impactful fix]
2. [second fix]
3. [third fix]Scoring rubric (per package)
| Signal | Weight |
| Deprecated flag | ❌ immediate high risk |
| No TypeScript types (bundled or @types) | ⚠️ caution |
| Last publish > 12 months | ⚠️ caution |
| Last publish > 24 months | ❌ high risk |
| Major version 2+ behind latest | ⚠️ caution |
| Sparse README (<500 chars) | ⚠️ caution |
| Active + typed + rich docs | ✅ vibe-friendly |
Dead patterns reference (verify if old)
| Pattern | Status | Replacement |
moment | ❌ Dead (self-deprecated) | date-fns, dayjs, Temporal API |
enzyme | ❌ Dead (React 17+ broken) | @testing-library/react |
request (npm) | ❌ Dead (deprecated 2020) | axios, ky, fetch |
node-sass | ❌ Dead | sass (Dart Sass) |
tslint | ❌ Dead | eslint + typescript-eslint |
react-scripts (CRA) | ⚠️ Zombie | vite, Next.js |
redux alone | ⚠️ Often overkill | zustand, jotai, RTK if needed |
styled-components v5 | ⚠️ Check v6 compat | v6 or tailwind |
expo-av | ⚠️ Splitting | expo-audio, expo-video |
@react-navigation/native v5 | ⚠️ Old | v6/v7 |
Edge cases
- Monorepo packages (
@tanstack/react-query): check root package on npm - Expo-specific packages: check
https://docs.expo.dev— npm data alone isn't enough for SDK version gating - Native modules in RN: check New Architecture compatibility list
- Unknown package: if npm 404s, say so and search — might be a typo or GitHub-only
- Multiple packages:
/sanity-check axios zod react-query→ stacked verdict blocks - Patterns not packages: skip npm steps, go straight to web_search + training knowledge
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

