Ionic Appflow Migration
Guides the agent through migrating an existing Ionic or Capacitor project away from Ionic Appflow. Use when detecting Appflow live updates, cloud builds, or store deployment flows and replacing them with Capgo live updates plus the repository's CI/CD and store publishing setup. Do not use for Ionic Enterprise SDK plugin migration or for setting up a fresh Capacitor project from scratch.
- Skill ID
- cap-go/capgo-skills/ionic-appflow-migration
- Publisher
- cap-go
- Repository
- capgo-skills
- Installs
- 0
- Files
- 2
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
cap-go/capgo-skills/ionic-appflow-migrationInstalls these files- SKILL.md
- metadata.json
What this skill tells the agent
Ionic Appflow Migration
Migrate an existing Ionic or Capacitor project away from Ionic Appflow.
When to Use This Skill
- User is moving off Ionic Appflow
- The project uses Appflow Live Updates, cloud builds, or store deployment
- The repository still references
ionic appflow,@capacitor/live-updates, orcordova-plugin-ionic
Live Project Snapshot
Detected Appflow-related packages and scripts: !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=[];for(const section of ['dependencies','devDependencies']){for(const [name,version] of Object.entries(pkg[section]||{})){if(name==='@capacitor/live-updates'||name==='cordova-plugin-ionic'||name.includes('appflow'))out.push(section+'.'+name+'='+version)}}for(const [name,cmd] of Object.entries(pkg.scripts||{})){if(/appflow|ionic cloud|ionic package|live-updates/i.test(cmd))out.push('scripts.'+name+'='+cmd)}console.log(out.join('\n'))"
Possible Appflow config and workflow paths: !find . -maxdepth 4 \( -name '.io-config.json' -o -name 'ionic.config.json' -o -name 'capacitor.config.json' -o -name 'capacitor.config.ts' -o -name 'capacitor.config.js' -o -path './.github/workflows' \)
Migration Strategy
Split the Appflow migration by feature instead of treating it as a single package swap.
- Live Updates ->
capgo-live-updates - Native cloud builds ->
capacitor-ci-cd - Store publishing ->
capacitor-app-store
Use this skill to detect what Appflow is doing today, then hand off each feature area to the right skill.
Procedures
Step 1: Detect Appflow Usage
Start from the injected snapshot above, then search more broadly if the migration surface is still unclear.
Search the repository for:
ionic appflow@capacitor/live-updatescordova-plugin-ionicdashboard.ionicframework.comappflow.ionic.io
Record whether the project currently uses:
- live updates
- cloud/native builds
- app store deployment automation
Step 2: Migrate Live Updates
If Appflow live updates are in use:
- Remove
@capacitor/live-updatesorcordova-plugin-ionic. - Install and configure Capgo using the
capgo-live-updatesskill. - Map Appflow channels and rollout behavior onto Capgo channels.
- Verify that
notifyAppReady()or the equivalent Capgo startup flow is wired correctly.
Do not delete Appflow configuration until the Capgo update path is validated.
Step 3: Replace Cloud Build Automation
If Appflow was building the app in the cloud:
- Inspect the existing CI/CD workflow for
ionic appflow build. - Replace it with repository-owned automation using the
capacitor-ci-cdskill. - Preserve signing inputs, environment variables, and platform-specific build arguments.
Treat Appflow build settings as migration input, not as a runtime dependency.
Step 4: Replace Store Publishing
If Appflow handled TestFlight or Google Play publishing:
- Inspect the current deployment flow.
- Move that workflow to the repository's publishing pipeline using the
capacitor-app-storeskill. - Keep bundle identifiers, track selection, and credential handling unchanged unless the user wants a new release process.
Step 5: Clean Up
After each migrated feature is verified:
- remove Appflow packages and scripts
- remove obsolete Appflow configuration
- remove stale CI secrets that are no longer needed
Error Handling
- For live update migrations, validate rollback behavior before deleting the old Appflow setup.
- For build migrations, preserve the existing signing path first and only simplify later.
- For publishing migrations, move one destination at a time so App Store and Play failures stay isolated.
More from cap-go
Use this skill in a project
Open any RiverX project, search the Skills panel for cap-go/capgo-skills/ionic-appflow-migration, and install it in one click.
