groove-admin-update
Original:🇺🇸 English
Translated
Pull latest groove skills and apply pending migrations to local groove state.
19installs
Sourceandreadellacorte/groove
Added on
NPX Install
npx skill4agent add andreadellacorte/groove groove-admin-updateTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →<!-- groove:managed — do not edit; changes will be overwritten by groove update -->
groove-admin-update
Outcome
All pending migrations are applied to the user's local groove state in version order. reflects the current installed groove version.
.groove/index.mdAcceptance Criteria
- in
groove-version:matches.groove/index.mdinversion:after updateskills/groove/SKILL.md - Each pending migration was applied in order
- updated after each successful migration (partial progress is recoverable)
groove-version: - If already up to date, reports clearly and exits
- Source-of-truth check: "up to date" is only reported when the installed skill version equals the latest GitHub release; if the add step left an older version on disk (e.g. cached or default branch), the user is warned and told how to fix it
Steps
- Run — pulls latest groove skill files and refreshes the lock entry (more reliable than
npx skills add andreadellacorte/groove --yeswhich requires a pre-populated folder hash). Note: the CLI may install a cached or default-branch copy rather than the latest release tag; step 4 verifies against GitHub.npx skills update- After this step, re-read this SKILL.md () from disk before continuing — the skill refresh may have updated the update command itself, and the remainder of these steps must reflect the latest version
skills/groove-admin-update/SKILL.md
- After this step, re-read this SKILL.md (
- Read from
groove-version:— if key absent, assume.groove/index.mdand write it0.1.0 - Read installed version from in
version:skills/groove/SKILL.md - Verify against latest release: Fetch (tag_name, strip leading
https://api.github.com/repos/andreadellacorte/groove/releases/latest). If the request succeeds, compare installed with latest using semver. If installed is less than latest: do not report "up to date" even if local and installed match; instead report: "Installed skill is v<installed> but latest release is v<latest>. The add step may have used a cached or default-branch copy. Run:vthen runnpx skills add andreadellacorte/groove@v<latest> --yesagain." and exit. If the API call fails (network, rate limit), continue without this check./groove-admin-update - If local and installed versions match: report "groove is up to date (v<version>)" and exit
- Read — parse the migration table
skills/groove/migrations/index.md - Filter rows where > local version AND
To<= installed version, in table order — theTofield is informational only and does not gate executionFrom - If no migrations found but versions differ: update in
groove-version:directly to the installed version and report "no state migrations needed — version bumped to v<version>".groove/index.md - For each pending migration:
a. Report "Applying <from> → <to>: <description>"
b. Read and execute the migration file
c. Update in
groove-version:to the.groove/index.mdversion d. Report "✓ <from> → <to> applied"To - Report summary: N migrations applied, now at v<version>
Constraints
- Source of truth for "latest" is GitHub releases — can leave an older version on disk (cached clone, default branch). Comparing only
npx skills addwith installed.groove/index.mdcan falsely report "up to date". Step 4 must verify installed vsSKILL.mdand warn when they differ.releases/latest - Never skip a migration — apply every matching migration in table order even if does not match local version exactly
From - Update after each individual migration, not only at the end
groove-version: - If a migration fails: stop, report the failure and current version, do not continue
- Do not modify skill files — handles that; this command only migrates local state
npx skills update - Local state includes: config keys, memory directory structure, AGENTS.md sections
.groove/index.md - Each migration file is idempotent — if re-run after partial failure, it should be safe