skills/figma/SKILL.md
# 🎨 Skill: Figma Dev Mode Integration ## 📋 Metadata | Atributo | Valor | |----------|-------| | **ID** | `figma-dev-mode` | | **Nivel** | 🟡 Intermedio | | **Versión** | 1.0.0 | | **Keywords** | `figma`, `design`, `assets`, `components`, `dev-mode`, `design-system` | | **Referencia** | [Figma MCP Server Guide](https://github.com/figma/mcp-server-guide/) | ## 🔑 Keywords para Invocación Usa cualquiera de estos keywords en tus prompts para invocar este skill: - `figma` - `design` - `assets`
npx skillsauth add altrupets/monorepo skills/figmaInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Atributo | Valor |
|----------|-------|
| ID | figma-dev-mode |
| Nivel | 🟡 Intermedio |
| Versión | 1.0.0 |
| Keywords | figma, design, assets, components, dev-mode, design-system |
| Referencia | Figma MCP Server Guide |
Usa cualquiera de estos keywords en tus prompts para invocar este skill:
figmadesignassetscomponentsdev-modedesign-system@skill:figmaExtrae los assets del diseño de Figma
Implementa este componente según el diseño de Figma
@skill:figma - Obtén los estilos y colores desde el archivo de diseño
El Figma MCP Server permite a los agentes de IA acceder directamente a archivos de diseño de Figma, extraer assets, componentes, estilos y tokens de diseño. Esto facilita la conversión de diseños a código manteniendo fidelidad absoluta con el diseño original.
El Figma MCP Server ya está configurado en el archivo mcp.json del proyecto.
⚠️ Importante: Debes configurar tu token de Figma como variable de entorno:
# Linux/Mac - Agrega a ~/.bashrc o ~/.zshrc
export FIGMA_TOKEN="tu-token-personal-de-figma"
# Windows - PowerShell
$env:FIGMA_TOKEN="tu-token-aqui"
# Windows - Permanente
[Environment]::SetEnvironmentVariable("FIGMA_TOKEN", "tu-token", "User")
Configuración por IDE:
El proyecto usa un único archivo mcp.json en la raíz. Para configurar tu IDE específico:
👉 Ver ../../docs/MCP_SETUP.md para instrucciones detalladas de:
Reinicia tu cliente MCP y verifica que el servidor está activo:
El servidor puede servir imágenes y SVGs directamente desde Figma:
Prompt: "Extrae todos los iconos del archivo de Figma"
El agente obtendrá los assets con URLs localhost que puedes usar directamente.
Extrae información de componentes y sus propiedades:
Prompt: "Dame la estructura del componente Button del design system"
Obtén colores, tipografías, espaciados y otros tokens:
Prompt: "Extrae todos los colores y crea un archivo de tema"
Obtén medidas, espaciados, y especificaciones técnicas:
Prompt: "Dame las especificaciones del componente Card"
❌ Incorrecto:
// NO uses placeholders si Figma proporciona el asset
Icon(Icons.placeholder)
✅ Correcto:
// USA el asset directamente desde Figma
Image.network('http://localhost:8080/asset/icon-home.svg')
Regla de oro: Prioriza la fidelidad exacta al diseño de Figma.
Prompt guidelines:
- "Implementa EXACTAMENTE como está en Figma"
- "Usa los valores exactos del diseño, sin aproximaciones"
- "Mantén todos los espaciados y medidas del diseño original"
Si tienes un design system en tu codebase:
Prompt: "Usa los componentes de /lib/design_system cuando sea posible.
Si el componente no existe, créalo basándote en el diseño de Figma."
Evita valores hardcodeados:
❌ Incorrecto:
Container(
color: Color(0xFF2196F3), // Valor hardcodeado
padding: EdgeInsets.all(16),
)
✅ Correcto:
Container(
color: AppColors.primary, // Token desde Figma
padding: AppSpacing.medium, // Token desde Figma
)
Para archivos grandes de Figma:
Esto previene timeouts y errores por contexto muy grande.
Crea reglas personalizadas para tu equipo:
---
description: Figma MCP server rules
globs:
alwaysApply: true
---
## Reglas de Figma MCP Server
- El servidor Figma MCP proporciona un endpoint de assets que puede servir imágenes y SVGs
- IMPORTANTE: Si el servidor MCP de Figma retorna una fuente localhost para una imagen o SVG, usa esa fuente directamente
- IMPORTANTE: NO importes/agregues nuevos paquetes de iconos, todos los assets deben venir del payload de Figma
- IMPORTANTE: NO uses o crees placeholders si se proporciona una fuente localhost
## Reglas de Calidad
- IMPORTANTE: Siempre usa componentes de `/lib/design_system` cuando sea posible
- Prioriza la fidelidad a Figma para coincidir exactamente con los diseños
- Evita valores hardcodeados, usa tokens de diseño de Figma donde estén disponibles
- Sigue los requisitos WCAG para accesibilidad
- Agrega documentación a los componentes
- Coloca componentes UI en `/lib/design_system`; evita estilos inline a menos que sea realmente necesario
Crea un archivo .env (no lo commits):
# Figma Configuration
FIGMA_TOKEN=tu-token-personal-de-figma
FIGMA_FILE_ID=id-del-archivo-de-figma
Prompt: "Del archivo de Figma [URL], extrae todos los iconos y guárdalos en assets/icons/"
Prompt: "Extrae los colores del design system de Figma y crea un AppTheme en lib/config/theme/"
Prompt: "Implementa el componente ProductCard exactamente como está en Figma, usando el design system existente donde sea posible"
Prompt: "Implementa la pantalla Home según el diseño de Figma. Divide en componentes reutilizables."
Prompt: "Extrae los colores, tipografías y espaciados del design system de Figma"
Resultado esperado:
// lib/config/theme/app_colors.dart
class AppColors {
// Extraído desde Figma
static const primary = Color(0xFF2196F3);
static const secondary = Color(0xFFFFC107);
static const background = Color(0xFFF5F5F5);
// ...
}
// lib/config/theme/app_spacing.dart
class AppSpacing {
static const small = 8.0;
static const medium = 16.0;
static const large = 24.0;
}
Prompt: "Implementa el componente Button del design system de Figma con todas sus variantes"
Resultado esperado:
// lib/design_system/button.dart
class AppButton extends StatelessWidget {
final String label;
final VoidCallback? onPressed;
final ButtonVariant variant;
const AppButton({
Key? key,
required this.label,
this.onPressed,
this.variant = ButtonVariant.primary,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return ElevatedButton(
onPressed: onPressed,
style: _getStyle(),
child: Text(label),
);
}
ButtonStyle _getStyle() {
switch (variant) {
case ButtonVariant.primary:
return ElevatedButton.styleFrom(
backgroundColor: AppColors.primary,
padding: const EdgeInsets.symmetric(
horizontal: AppSpacing.large,
vertical: AppSpacing.medium,
),
);
case ButtonVariant.secondary:
return ElevatedButton.styleFrom(
backgroundColor: AppColors.secondary,
);
}
}
}
Solución:
Solución:
Solución:
Este skill se combina bien con:
flutter/mvvm - Implementa componentes con patrón MVVMflutter/clean-architecture - Crea componentes siguiendo Clean Architectureflutter/project-setup - Configura tema y design system inicialcicd - Automatiza la extracción de assets en el pipelinePrompt: "Usando figma, extrae el componente ProductCard e impleméntalo con mvvm para la app de e-commerce"
Última actualización: Diciembre 2025 Versión: 1.0.0
development
# 🔧 Skill: Native Integration (Swift/Kotlin) ## 📋 Metadata | Atributo | Valor | |----------|-------| | **ID** | `flutter-native-integration` | | **Nivel** | 🔴 Avanzado | | **Versión** | 1.0.0 | | **Keywords** | `native-integration`, `swift`, `kotlin`, `uikit`, `android-sdk`, `native-ui` | | **Referencia** | [Flutter Platform Integration](https://docs.flutter.dev/platform-integration) | ## 🔑 Keywords para Invocación Usa cualquiera de estos keywords en tus prompts para invocar este skill:
testing
# 🎨 Skill: MVVM Pattern ## 📋 Metadata | Atributo | Valor | |----------|-------| | **ID** | `flutter-mvvm-pattern` | | **Nivel** | 🟡 Intermedio | | **Versión** | 1.0.0 | | **Keywords** | `mvvm`, `model-view-viewmodel`, `provider`, `changenotifier` | ## 🔑 Keywords para Invocación Usa cualquiera de estos keywords en tus prompts para invocar este skill: - `mvvm` - `model-view-viewmodel` - `provider` - `changenotifier` - `@skill:mvvm` ### Ejemplos de Prompts ``` Crea una app de lista de ta
development
# 🎨 Skill: Arquitectura Modular ## 📋 Metadata | Atributo | Valor | |----------|-------| | **ID** | `flutter-modular-architecture` | | **Nivel** | 🔴 Avanzado | | **Versión** | 1.0.0 | | **Keywords** | `modular`, `modular-architecture`, `module`, `multi-module` | | **Referencia** | [Flutter Modular Package](https://pub.dev/packages/flutter_modular) | ## 🔑 Keywords para Invocación Usa cualquiera de estos keywords en tus prompts para invocar este skill: - `modular` - `modular-architecture`
tools
# 📱 Skill: Mobile Testing y Debugging con Flutter MCP ## 📋 Metadata | Atributo | Valor | |----------|-------| | **ID** | `flutter-mobile-testing` | | **Nivel** | 🔴 Avanzado | | **Versión** | 1.2.0 | | **Keywords** | `mobile-testing`, `integration-test`, `flutter-mcp`, `dart-mcp`, `debugging`, `logic-analysis`, `widget-inspection`, `device-testing` | | **Referencia** | [Dart and Flutter MCP server](https://docs.flutter.dev/ai/mcp-server) \| [Mobile MCP](https://github.com/mobile-next/mobile-