Agent Skills

vega-multi-tv-migration

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.

Install

npx skills add https://github.com/amazonappdev/devices-agent-skills --skill vega-multi-tv-migration
SKILL.md

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 setup
  • root-tsconfig.json - TypeScript project references
  • yarnrc.yml - Dependency deduplication (CRITICAL)
  • shared-package.json + .md - Shared package config with rules
  • vega-metro.config.js - Vega Metro with monorepo resolution
  • expotv-package.json + .md - Expo TV package config
  • expotv-app.json + .md - Expo TV configuration with plugins
  • expotv-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

  1. Use the decision tree above to determine the starting phase
  2. Load the appropriate reference file for that phase
  3. Follow Quick Start → Deep Dive pattern in each reference
  4. Verify at each phase's checkpoint before moving to the next phase
  5. Use VALIDATION_CHECKLIST.md for comprehensive verification

Attribution

Based on Vega OS multi-platform migration patterns and React Native monorepo best practices.

Related skills

azure-diagnosticsmicrosoft608KDebug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, troubleshoot functions, troubleshoot AKS, VM RDP, Linux SSH, VM black screen, can't connect to VM, reset VM password, NSG or firewall blocking, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, aazure-preparemicrosoft608KPrepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Terraform), and Dockerfiles for the Azure Developer CLI (azd) workflow. USE ONLY when the user explicitly wants to use azd as the deployment tool, or the project already has an azure.yaml file. DO NOT USE FOR: non-azd deployments, Python App Service code-only deploys (use python-appservice-deploy), or cross-cloud migration (use azure-cloud-migrate). WHEN: prepare app for azd, create azure.yaml, set up azazure-aimicrosoft608KUse for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.azure-deploymicrosoft607KExecute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: \"run azd up\", \"run azd deploy\", \"execute deployment\",

Search skills and MCP servers

Fuzzy search across 23,137 skills and servers