update-version
Syncs the vite-plus package version and sha256 hashes within nix configurations.
Install
mkdir -p .claude/skills/update-version-myxogastria0808 && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12117" && unzip -o skill.zip -d .claude/skills/update-version-myxogastria0808 && rm skill.zipInstalls to .claude/skills/update-version-myxogastria0808
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
A skill that fetches the latest published version of vite-plus from the npm registry and updates the version string and all three hash values in `flake.nix`.Key capabilities
- →Fetch the latest version of vite-plus from npm
- →Update the version string in `flake.nix`
- →Recalculate and update `fetchurl` hash in `flake.nix`
- →Recalculate and update `outputHash` in `flake.nix`
- →Recalculate and update `npmDepsHash` in `flake.nix`
- →Verify the Nix build after updates
How it works
The skill fetches the latest vite-plus version from npm, then systematically updates the version string and all three associated hash values in `flake.nix` using `nix store prefetch-file` and `nix build` error messages.
Inputs & outputs
When to use update-version
- →Update vite-plus version
- →Refresh fetchurl hashes in flake.nix
- →Update npm dependencies hash
- →Automate package dependency synchronization
About this skill
Update vite-plus Version and Hashes
Step 1: Fetch the latest version from npm
Run the following to get the latest published version:
curl -s https://registry.npmjs.org/vite-plus/latest | jq -r '.version'
Read the current version from flake.nix. If the current version already matches the latest, report that the package is already up to date and stop.
Step 2: Update the version and URL in flake.nix
Rewrite the following lines in flake.nix with the new version:
version = "X.Y.Z";- The version string inside the
fetchurlurl
Leave hash unchanged for now — it will be updated in the next step.
Step 3: Update the fetchurl hash
Run the following to fetch the correct sha256 hash of the new npm tarball:
nix store prefetch-file --json --hash-type sha256 "https://registry.npmjs.org/vite-plus/-/vite-plus-<NEW_VERSION>.tgz"
Extract the hash field from the JSON output and update hash = "sha256-..."; in flake.nix.
Step 4: Update the outputHash of the prepared derivation
Temporarily replace outputHash in flake.nix with a dummy value:
outputHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
Then run nix build 2>&1. Nix will print a hash mismatch error like:
error: hash mismatch in fixed-output derivation ...
specified: sha256-AAAA...
got: sha256-xxxx...
Replace outputHash with the value shown after got:.
Step 5: Update npmDepsHash
Temporarily replace npmDepsHash in flake.nix with a dummy value:
npmDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
Then run nix build 2>&1 again and extract the correct hash from the got: line in the error output. Update npmDepsHash with that value.
Step 6: Verify the build
Run nix build and confirm it succeeds. Report the old version, the new version, and all updated hash values to the user.
Constraints
nix buildrequires network access and may take a while.- Always use SRI format for hashes:
sha256-<base64>=. - Steps 4 and 5 must be done in order —
outputHashmust be correct beforebuildNpmPackageis reached. - Use
sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=as the dummy hash (44Acharacters followed by=).
When not to use it
- →For updating packages other than vite-plus
- →When `flake.nix` is not used for dependency management
- →When network access for `nix build` is unavailable
Limitations
- →Specific to updating `vite-plus` in `flake.nix`
- →Requires network access for `nix build`
- →Steps 4 and 5 must be done in order
How it compares
This skill automates the complex process of updating a Nix flake's version and multiple content hashes for a specific package, unlike manual updates.
Compared to similar skills
update-version side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| update-version (this skill) | 0 | 3mo | Review | Advanced |
| cloudflare-manager | 25 | 9mo | Review | Intermediate |
| railway-cli-management | 9 | 8mo | Review | Intermediate |
| azure-functions | 10 | 5mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
cloudflare-manager
qdhenry
Comprehensive Cloudflare account management for deploying Workers, KV Storage, R2, Pages, DNS, and Routes. Use when deploying cloudflare services, managing worker containers, configuring KV/R2 storage, or setting up DNS/routing. Requires CLOUDFLARE_API_KEY in .env and Bun runtime with dependencies installed.
railway-cli-management
CaptainCrouton89
Deploy, manage services, view logs, and configure Railway infrastructure. Use when deploying to Railway, managing environment variables, viewing deployment logs, scaling services, or managing volumes.
azure-functions
aj-geddes
Create serverless functions on Azure with triggers, bindings, authentication, and monitoring. Use for event-driven computing without managing infrastructure.
nuxthub-migration
onmax
Use when migrating NuxtHub projects or when user mentions NuxtHub Admin sunset, GitHub Actions deployment removal, self-hosting NuxtHub, or upgrading to v1/nightly. Covers v0.9.X self-hosting (stable) and v1/nightly multi-cloud (experimental, database/blob not ready).
deployment-pipeline-design
wshobson
Design multi-stage CI/CD pipelines with approval gates, security checks, and deployment orchestration. Use when architecting deployment workflows, setting up continuous delivery, or implementing GitOps practices.
terraform-module-library
wshobson
Build reusable Terraform modules for AWS, Azure, and GCP infrastructure following infrastructure-as-code best practices. Use when creating infrastructure modules, standardizing cloud provisioning, or implementing reusable IaC components.