Check for a newer version, update, report what changed, then prompt /clear to reload.
Scanned 10/1/2026
npx -y skills add crewforth/crewforth --skill crew-update --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Crew Update?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/crewforth-crew-update)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: crew-update
description: Check for a newer version, update, report what changed, then prompt /clear to reload.
metadata:
kind: command
---
# /crew-update
Bring the Crewforth install up to the latest published version:
1. **Detect install type.** If `.claude/VERSION` exists → a full install (steps below). If Crewforth runs as a
**plugin** (no `.claude/VERSION`), it updates through the plugin system: run
`claude plugin update crewforth@crewforth`, tell the user it applies when they restart Claude Code, and stop here.
2. **Current version:** read `.claude/VERSION`.
3. **Latest version:** `npm view crewforth version` (needs network). If it can't be reached,
say so and stop — don't guess.
4. **Compare.** Already on the latest → report "up to date (vX)" and stop. Otherwise show **old → new**.
5. **Before:** run `bash .claude/eval/update-guard.sh pre` (Bash tool, not PowerShell). It records what is on disk (in `.claude/.state/`, nothing
else) and prints one of three verdicts:
- `clean` → nothing to report, go on.
- `UNCOMMITTED:` with the changed paths in `.claude/` and `CLAUDE.md` → show the user that list and **ask** —
with your question tool — whether to go ahead (the update rewrites Crewforth-owned files under `.claude/`), commit
or stash first, or stop. Continue only on their yes.
- `NOT IN GIT:` (a private install gitignores `.claude/` and `CLAUDE.md`, so edits there cannot be detected) →
pass its two lines to the user and go on; there is nothing to commit.
6. **Update** — this rewrites Crewforth-owned files under `.claude/` (your `./CLAUDE.md` and project skills are
preserved). **Show this plan first, then run:** `npx --yes crewforth@latest update --here --yes`.
Two DIFFERENT `--yes` flags, both required for a non-interactive run: the one **before** the package name is
**npx's own** — it auto-confirms npx's `Ok to proceed?` install prompt, which reads the real TTY and IGNORES piped
input, so without it the command hangs before Crewforth even starts. The `--here --yes` **after** the package go to
the updater (`--here` = apply on the current branch, `--yes` = accept the smart defaults). Together they let it run
to completion instead of blocking on a prompt your shell can't answer.
If you'd rather review each handover decision yourself, tell the user to run `npx crewforth@latest update`
(no flags) in **their own terminal**, where both the npx and the interactive prompts work.
7. **After:** run `bash .claude/eval/update-guard.sh post` (Bash tool, not PowerShell) and show the user its lists — added, changed, moved,
removed.
8. **Verify:** run `/crew-doctor` (or `bash .claude/eval/doctor.sh` — Bash tool, not PowerShell) so a bad/partial update surfaces immediately.
If the updater's or doctor's output contains a line starting with ⭐, pass it to the user verbatim as the LAST
line of your summary — it prints once per Crewforth version, and it is meant for the user, not for you.
9. **Report** old → new + the headline changes. Take them from `.claude/.state/whats-new.md` — the updater writes
there the installed package's own CHANGELOG sections between the old and the new version. Do not fetch release
notes from the network. No file → say no release notes were included.
10. **Reload (manual — a command can't do it itself):** the discipline in the running session is still the OLD one.
Tell the user to run **`/clear`** (or quit and relaunch Claude Code): a new session loads the updated
`.claude/DISCIPLINE.md`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!