vega-multi-tv-migration
amazonappdev/devices-agent-skills
Migrate Fire TV apps to multi-platform React Native monorepos supporting Android TV, Apple TV, and Vega OS.
What is vega-multi-tv-migration?
This skill guides migration of Vega OS (Amazon Fire TV) applications to multi-platform React Native monorepos with 70-85% code reuse across Android TV, Apple TV, and other platforms. Use it when converting single-platform TV apps to support multiple platforms or building new multi-platform TV applications from scratch.
- Analyze existing Vega/Fire TV codebases to identify shared vs. platform-specific code
- Scaffold multi-platform monorepo structure using Yarn workspaces and TypeScript project references
- Configure VMRP (Vega Module Resolution Preset) for cross-platform import mapping
- Implement Android TV and Apple TV platform support alongside Vega OS
- Integrate native modules and platform-specific dependencies
- Troubleshoot Metro resolution, dependency duplication, and build configuration issues
How to install vega-multi-tv-migration
npx skills add https://github.com/amazonappdev/devices-agent-skills --skill vega-multi-tv-migration- Existing Vega OS (Fire TV) application or starting a new TV project
- Node.js and Yarn package manager
- React Native development environment configured
- Basic understanding of monorepo patterns and Yarn workspaces
How to use vega-multi-tv-migration
- 1.Use the decision tree to determine your starting phase: Analysis (Phase 1), Implementation (Phase 2), or Platform Support (Phase 3)
- 2.Load the appropriate reference file (PHASE1_ANALYSIS.md, PHASE2_IMPLEMENTATION.md, or PHASE3_PLATFORM_SUPPORT.md) for your phase
- 3.Follow the Quick Start and Deep Dive sections in the reference file
- 4.Use provided templates in assets/templates/ to scaffold configuration files
- 5.Verify progress at each phase checkpoint before advancing to the next phase
- 6.Run the VALIDATION_CHECKLIST.md to confirm all requirements are met
Use cases
- Migrating an existing Fire TV app to also support Android TV and Apple TV platforms
- Building a new TV application that targets multiple platforms from the start
- Converting a single-platform Vega app to a monorepo structure for code sharing
- Adding Android TV support to an existing Vega/Fire TV application
- Resolving Metro bundler and dependency conflicts in multi-platform TV projects
- TV app developers migrating from single-platform to multi-platform
- React Native developers building for Amazon Fire TV, Android TV, or Apple TV
- Teams managing shared code across multiple TV platforms
- Mobile/TV engineers setting up monorepo structures for TV applications
vega-multi-tv-migration FAQ
Start with Phase 1 if you have an existing Vega app and need to analyze its codebase for migration. Skip Phase 1 and start with Phase 2 if you're building a new multi-platform TV app from scratch or already have a migration analysis document.
VMRP (Vega Module Resolution Preset) is a Babel configuration that maps standard React Native imports to Vega-specific equivalents, enabling code reuse across platforms. It's critical for the monorepo to resolve imports correctly across shared and platform-specific packages.
This skill targets 70-85% code reuse across Android TV, Apple TV, and Vega OS by separating business logic and UI components (shared) from platform-specific code like navigation, video players, and DRM.
Refer to PHASE2_IMPLEMENTATION.md for Metro configuration and the .yarnrc.yml template for dependency deduplication. These are common issues when setting up monorepos and have documented solutions in the implementation phase.
Yes. Skip Phase 1 (Analysis) and begin with Phase 2 (Implementation) to scaffold your monorepo structure. Phase 3 (Platform Support) covers adding Android TV and Apple TV support once your Vega monorepo is working.
Full instructions (SKILL.md)
Source of truth, from amazonappdev/devices-agent-skills.
name: vega-multi-tv-migration description: Migrate Vega OS (Amazon Fire TV) applications to multi-platform React Native monorepo supporting Android TV, Apple TV, and other platforms. Covers analysis, implementation, and native module integration. Use when migrating TV apps to support multiple platforms or building new multi-platform TV applications.
Vega Multi-Platform Migration
Overview
Migrate Vega OS (Fire TV) apps to multi-platform React Native monorepo with 70-85% code reuse across Android TV, Apple TV, and Vega OS.
When to Apply
Use this skill when user mentions:
- Migrating Vega/Fire TV app to other platforms
- Building multi-platform TV application
- Converting single-platform TV app to monorepo
- Adding Android TV or Apple TV support
- Sharing code between TV platforms
- Setting up Yarn workspaces for TV apps
Phase Priority Guide
| Priority | Phase | Impact | When to Use |
|---|---|---|---|
| 1 | Analysis | CRITICAL | Starting migration, no existing analysis |
| 2 | Implementation | CRITICAL | Have analysis, need monorepo structure |
| 3 | Platform Support | HIGH | Have working Vega monorepo, adding platforms |
| 4 | Configuration | MEDIUM | Troubleshooting build/resolution issues |
Quick Decision Tree
User has existing Vega app?
├─ YES → Do they have migration analysis?
│ ├─ NO → Start Phase 1 (Analysis)
│ └─ YES → Is monorepo set up?
│ ├─ NO → Start Phase 2 (Implementation)
│ └─ YES → Start Phase 3 (Platform Support)
└─ NO → Starting from scratch?
└─ YES → Skip Phase 1, start Phase 2 with new project
Quick Reference
Critical: Project Structure
# Verify monorepo structure exists
ls -la packages/shared packages/vega packages/expotv
# Check Yarn workspaces configured
grep -A5 "workspaces:" package.json
Critical: Dependency Classification
Common patterns for analysis:
- Shared: Business logic, UI components, utilities, state management
- Platform-specific: Navigation, video players, DRM, native modules
- VMRP-compatible: Standard RN libraries that map to Vega equivalents
High: VMRP Configuration
Quick check if VMRP is working:
# Should see @vega-tv/react-native-module-resolver-preset
grep "vmrp" packages/vega/babel.config.js
References
Phase 1: Analysis (analysis-*)
| File | Impact | Description |
|---|---|---|
| PHASE1_ANALYSIS.md | CRITICAL | Codebase analysis, dependency classification, migration planning |
Use when: Starting migration, no existing analysis document
Phase 2: Implementation (impl-*)
| File | Impact | Description |
|---|---|---|
| PHASE2_IMPLEMENTATION.md | CRITICAL | Monorepo scaffolding, code migration, VMRP setup with template references |
Use when: Have analysis, ready to build monorepo structure
Phase 3: Platform Support (platform-*)
| File | Impact | Description |
|---|---|---|
| PHASE3_PLATFORM_SUPPORT.md | HIGH | Android TV and Apple TV implementation |
Use when: Have working Vega monorepo, adding new platforms
Templates
All configuration templates in assets/templates/ with companion .md docs:
root-package.json- Yarn workspaces setuproot-tsconfig.json- TypeScript project referencesyarnrc.yml- Dependency deduplication (CRITICAL)shared-package.json+.md- Shared package config with rulesvega-metro.config.js- Vega Metro with monorepo resolutionexpotv-package.json+.md- Expo TV package configexpotv-app.json+.md- Expo TV configuration with pluginsexpotv-metro.config.js- Expo Metro with TV extensions
Problem → Skill Mapping
| Problem | Start With |
|---|---|
| Need to analyze existing Vega app | PHASE1_ANALYSIS.md |
| Have analysis, need monorepo setup | PHASE2_IMPLEMENTATION.md → templates |
| Monorepo exists, adding Android TV | PHASE3_PLATFORM_SUPPORT.md |
| Metro resolution errors | PHASE2_IMPLEMENTATION.md → Metro config |
| Duplicate React versions | PHASE2_IMPLEMENTATION.md → .yarnrc.yml |
| VMRP not mapping imports | PHASE2_IMPLEMENTATION.md → VMRP section |
| TypeScript path errors | PHASE2_IMPLEMENTATION.md → TypeScript config |
| Native module integration | PHASE3_PLATFORM_SUPPORT.md → Native Modules |
| Build configuration issues | PHASE2_IMPLEMENTATION.md → Configuration Files |
| Starting from scratch | PHASE2_IMPLEMENTATION.md (skip Phase 1) |
Workflow
- Use the decision tree above to determine the starting phase
- Load the appropriate reference file for that phase
- Follow Quick Start → Deep Dive pattern in each reference
- Verify at each phase's checkpoint before moving to the next phase
- Use VALIDATION_CHECKLIST.md for comprehensive verification
Attribution
Based on Vega OS multi-platform migration patterns and React Native monorepo best practices.
Related skills
More from amazonappdev/devices-agent-skills and the wider catalog.

agy-delegate
Delegate coding tasks to Google Antigravity CLI and review the diff before landing it.

aider-delegate
Delegate coding tasks to Aider as a background implementer, then review and land the diff yourself.

claude-delegate
Delegate coding tasks to a separate Claude Code session, review diffs, and land changes yourself.

cline-delegate
Delegate coding tasks to Cline CLI as a background implementer, then review and land the diff.

codex-delegate
Delegate coding tasks to OpenAI Codex CLI, review the diff, and land it yourself.

commandcode-delegate
Delegate coding tasks to Command Code CLI as a background implementer, then review and land the diff.