pi-mono-upgrade

Automate pi-mono upgrades in NixOS and nix-darwin dotfiles configurations.

Updated May 26, 2024
One-click install
npx skills add https://github.com/dnswd/nixos --skill pi-mono-upgrade
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pi-mono-upgrade
Source: https://github.com/dnswd/nixos/tree/main/config/devel/pi-mono/skills/pi-mono-upgrade
Command: npx skills add https://github.com/dnswd/nixos --skill pi-mono-upgrade

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill automates the complex process of upgrading the pi-mono coding agent within a Nix-based dotfiles environment, ensuring all components are synchronized and functional.

Core Features & Use Cases

  • Flake Input Updates: Automatically updates the pi-mono flake input to the latest version.
  • Dependency Synchronization: Manages updates for package.json devDependencies and regenerates lockfiles for extensions.
  • Nix Hash Management: Intelligently handles Nix hash updates for package and extension dependencies, even using an "invalid hash trick" to capture correct hashes during the build process.
  • Verification and Application: Includes steps to verify the build and apply the updates to NixOS or nix-darwin systems.
  • Use Case: A developer using pi-mono needs to upgrade to the latest version to access new features. This Skill guides them through updating the flake, synchronizing extension dependencies, and ensuring the Nix build succeeds, all with clear error-handling guidance.

Quick Start

Run the pi-mono upgrade skill to update the pi-mono agent and its dependencies.

Frequently Asked Questions about pi-mono-upgrade

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I upgrade a coding agent in a NixOS flake configuration?

To upgrade a coding agent in a NixOS flake, you update the flake input, synchronize extension dependencies, and resolve Nix hash mismatches. This process automates those steps to ensure the build succeeds and the system applies the new version.

Why does the Nix build fail with a hash mismatch after updating a flake input?

A Nix build fails with a hash mismatch because the updated dependencies have new cryptographic hashes. This process resolves it by using an invalid hash trick to capture the correct hashes during the build and updates them accordingly.

How do I synchronize npm dependencies when updating extensions in nix-darwin?

To synchronize npm dependencies in nix-darwin, you update the package.json devDependencies and regenerate the lockfiles. This ensures the extension builds match the newly upgraded agent version.

What is the best way to verify a NixOS dotfiles upgrade before applying it?

The best way to verify a NixOS dotfiles upgrade is to run a Nix build to check for errors. If the build succeeds, you can safely apply the updates to your NixOS or nix-darwin system.

Can I use this upgrade process for pnpm lockfiles in NixOS?

Yes, the upgrade process supports pnpm lockfiles. It manages the synchronization of pnpm package dependencies in extensions and regenerates the lockfiles to ensure Nix builds succeed.