upgrade

Run idempotent forward migrations to match the canonical plugin.json version.

Updated Apr 24, 2026
One-click install
npx skills add https://github.com/Cain-Ish/claude-code-plugin --skill upgrade-cain-ish
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: upgrade
Source: https://github.com/Cain-Ish/claude-code-plugin/tree/main/skills/upgrade
Command: npx skills add https://github.com/Cain-Ish/claude-code-plugin --skill upgrade-cain-ish

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill eliminates the confusion and breakage risk of mismatched plugin versions by safely detecting drift and applying only the missing forward migrations, so your local second-brain setup stays consistent after updates.

Core Features & Use Cases

  • Version-aware migration runner: Compares the canonical plugin version in plugin.json against the installed-version marker and runs only migrations whose target versions fall in the missing range.
  • Safe upgrade with validation gates: Includes idempotent health checks (for example, verifying vector-deps import capability) and skips work when already satisfied.
  • Forward-only, minimal-impact changes: Applies additive migrations and guards optional features (such as enabling the knowledge graph) so upgrades remain safe and reversible where applicable.

Quick Start

Run the upgrade skill to migrate your local installation to the currently declared plugin version and update the installed-version marker.

Frequently Asked Questions about upgrade

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

FAQPage Schema
How do I safely migrate local state after a plugin upgrade?

To safely migrate local state after a plugin upgrade, run a forward-only migration runner that compares the installed version against the canonical plugin.json version and applies only the missing idempotent migrations.

How does idempotent version migration work for local state?

Idempotent version migration works by reading the current and installed versions, deciding which migration targets fall in the missing range, and executing explicit checks before updating the installed-version marker so the process can be repeated safely without duplicate work.

When do I need to run forward migrations for my plugin?

You need to run forward migrations for your plugin after pulling a new release to ensure the installed state matches the canonical version, applying additive feature migrations and cache refresh validation to prevent mismatched versions.

What is the best way to handle version mismatches in a local second-brain setup?

The best way to handle version mismatches in a local second-brain setup is to apply safe, idempotent forward migrations that guard optional features and include validation gates like verifying vector-deps import capability before updating the installed-version marker.

Can I safely enable optional features like the knowledge graph during a plugin upgrade?

Yes, you can safely enable optional features like the knowledge graph during a plugin upgrade because the migration process applies forward-only, minimal-impact additive changes and guards optional features so upgrades remain safe and reversible.

Does an idempotent migration runner skip work if the plugin state is already satisfied?

Yes, an idempotent migration runner skips work if the plugin state is already satisfied by including idempotent health checks that verify capabilities like vector-deps imports and skip redundant migrations when already up to date.