capacitor-plugin-upgrades

Guides the agent through upgrading a Capacitor plugin to a newer major version. Covers dependency alignment, native platform changes, example app verification, and multi-version jumps. Do not use for app project upgrades or non-Capacitor plugin frameworks.

By cap-go · 611 installs

npx skills add cap-go/capgo-skills --skill capacitor-plugin-upgrades

Source repository · Upstream listing

Capacitor Plugin Upgrade Upgrade a Capacitor plugin to a newer major version. When to Use This Skill User wants to bump a Capacitor plugin package to a newer major version User needs help adapting native code to a new Capacitor major release User wants to verify the plugin still works in its example app after the upgrade Live Project Snapshot Plugin and Capacitor package snapshot: ! node e "const fs=require('fs');if(!fs.existsSync('package.json'))process.exit(0);const pkg=JSON.parse(fs.readFileSync('package.json','utf8'));const out=['package.name='+(pkg.name ''),'package.version='+(pkg.version '')];for(const section of ['peerDependencies','dependencies','devDependencies']){for(const [name,version] of Object.entries(pkg[section] {})){if(name.startsWith('@capacitor/'))out.push(section+'.'+name+'='+version)}}console.log(out.join('\n'))" Example and native project paths: ! find . maxdepth 3 \( path './example app' o path './ios' o path './android' o name 'capacitor.config.json' o name 'capacitor.config.ts' o name 'capacitor.config.js' \) Procedures Step 1: Detect the Current Version Start from the injected snapshot above, then inspect package.json if the Capacitor ranges or package version need confirmation. Ask the user to confirm the exact target major version before proceeding. Step 2: Upgrade Sequentially For each major jump: 1. Update @capacitor/ peer dependencies and native bridge code as needed. 2. Adjust iOS and Android native project settings for the target Capacitor version. 3. Run npm install . 4. Run npx cap sync from the example or test app directory that contains capacitor.config. , or rebuild that app with the repository's documented command. 5. Verify the plugin API still works in the example app or test app. Do not skip intermediate major versions. Step 3: Check Plugin Specific Surface Area Review these plugin areas carefully: TypeScript definitions and exported names Native method signatures and return payloads Android namespace, Gradle settings, and Java compatibility iOS deployment target, Swift syntax, and bridge registration Documentation snippets and README install steps Step 4: Final Verification Check whether npm run verify exists in package.json or the repository scripts. If it exists, run: If it does not exist, run the repository's documented fallback checks instead: npm run build npm test npx cap sync from the example/test app directory the example app or test app build for every shipped platform Run the sync and build commands from the plugin's example/test app directory, not the plugin root. Error Handling If a migration tool exists for the target version, use it first and then review the diff manually. If the example app breaks, fix the plugin API or native wiring before publishing the version bump. If a plugin supports multiple platforms, verify every platform that ships in the package.