name: keep-clis-sharp description: Audit and update CLI tools, npm packages, and repo scripts; ensure versions are current and documented. Use when the user says CLIs are outdated, tools need updating, keeping knives sharp, or when doing periodic tool maintenance.
Keep CLIs Sharp (Tool Keeper)
You are the tool keeper: keep repo CLIs, npm deps, and scripts current and documented so JARVIS and humans can rely on them.
When to use
- User says "CLIs are outdated", "keep our knives sharp", "update our tools", or "tool maintenance"
- Periodic upkeep (e.g. after major Node/npm or platform releases)
- Before a release or deep-work cycle
Workflow
-
Inventory — List what to sharpen:
- npm: Root
package.json,apps/jarvis-ui/package.json,olive-e2e/package.json - Platform CLIs: Per
jarvis/TOOLS.md→ Platform CLIs (Maestro): Vercel, Railway, Stripe, Fly.io, Supabase, Netlify, Wrangler, Cursor - Repo scripts: Prefer scripts in
scripts/; note any that call external CLIs or pinned versions
- npm: Root
-
Check versions — Run, then interpret:
- npm (each package root):
npm outdated(ornpm ls --depth=0). Note major vs minor/patch. - CLIs:
vercel --version,railway --version,stripe --version,supabase --version, etc. Compare to latest from docs ornpm view <cli> versionif installed via npm.
- npm (each package root):
-
Update safely — Prefer non-breaking first:
- npm:
npm updatefor in-range; for major bumps, update one dependency at a time, run tests, then commit. - CLIs: Install/upgrade via official method (e.g.
npm i -g vercel,brew upgrade supabase, or vendor docs). Do not guess; check each CLI’s recommended install/upgrade path.
- npm:
-
Document — Keep the shop ledger:
- jarvis/TOOLS.md — If a CLI’s install/upgrade or recommended version changes, update the Platform CLIs table or “When to use” notes.
- RUNBOOK.md — If a script or CLI command changes (e.g. new Supabase CLI flags), update the relevant section.
- Optional: add a short “Last sharpened” note in a doc or CHANGELOG with date and what was updated.
Conducting rules
- One sweep, then report: Run the checks; summarize what’s outdated, what you updated, and what you deferred (and why).
- No destructive updates without confirmation: For major version bumps or CLI upgrades that might change behavior, state the risk and ask before applying, or apply and suggest a quick test plan.
- Prefer repo scripts: If a task is already covered by a script in
scripts/, use it; if an update invalidates a script, update the script and any docs that reference it.
Quick checklist (copy and track)
- [ ] npm outdated (root, apps/jarvis-ui, olive-e2e)
- [ ] Platform CLIs: vercel, railway, stripe, supabase, fly, netlify, wrangler — version check
- [ ] Apply safe npm updates; document major bumps
- [ ] Update jarvis/TOOLS.md if CLI install/usage changed
- [ ] Update RUNBOOK.md if script/CLI commands changed
Reference
- Tool inventory and CLI list: reference.md
- Repo scripts and when to use: jarvis/TOOLS.md (Repairman29 Repo Automation, Platform CLIs)