El ecosistema de plugins de Figma es amplio. Hay plugins para exportación de tokens, anotación de código, guías de estilo, verificaciones de accesibilidad y generación de código. Cuando alguien dice "herramienta Figma-a-código", casi siempre se refiere a un plugin. figmascope no es un plugin. Aquí está por qué eso importa y cuándo no.

El modelo de plugin

Los plugins de Figma corren dentro de un iframe sandboxed dentro de la app de escritorio o web de Figma. Obtienen acceso a la API de plugins de Figma — una interfaz JavaScript que expone el árbol de nodos del archivo actual, estilos, componentes y variables. El plugin puede leer estos datos, transformarlos y escribir resultados de vuelta al archivo o exportar archivos al sistema local del usuario mediante el diálogo de guardado de Figma.

La API de plugins es rica. Puedes recorrer cada nodo, leer estilos computados, acceder a definiciones de componentes, consultar variables e incluso hacer peticiones de red desde la capa UI del plugin. Para la mayoría de las tareas de "leer datos de diseño y hacer algo con ellos", la API de plugins es suficiente.

Los plugins se distribuyen a través de la tienda de la Comunidad de Figma o como plugins privados de equipo. Los usuarios los instalan mediante la interfaz de Figma. Las actualizaciones llegan a través del hosting de plugins de Figma. La cuenta de desarrollador que publicó el plugin puede enviar actualizaciones; los usuarios las reciben la próxima vez que ejecutan el plugin.

Plugins populares de Figma-a-código: Locofy (cubierto en la comparación con Locofy), Tokens Studio (sincronización de tokens de diseño), Figma to Code (Flutter/SwiftUI/Jetpack Compose de código abierto), y docenas de herramientas más especializadas.

Limitaciones de los plugins

Solo corre dentro de Figma. Para ejecutar un plugin, abres Figma, abres el archivo, abres el plugin, accionas la exportación. El plugin no puede llamarse desde una terminal, un trabajo de CI, un script, ni ningún contexto fuera de la app de Figma. No hay CLI. No hay API que puedas invocar. Todo el contexto de ejecución es la UI de Figma.

Ejecución solo en tiempo de ejecución. Los plugins no corren en segundo plano. Corren cuando un humano los abre y hace clic en el botón. Las exportaciones programadas, los pipelines automatizados y la integración programática no son posibles a través del modelo de plugin.

Guardianes de la tienda de plugins. Publicar un plugin público de Figma requiere revisión y aprobación de Figma. Las actualizaciones requieren revisión nuevamente. Si Figma cambia su política de revisión o decide que un plugin entra en conflicto con sus intereses, el plugin puede ser eliminado o restringido. Los plugins privados de equipo evitan la tienda pero aún corren dentro del sandbox de Figma y dependen de la infraestructura de plugins de Figma.

Restricciones de recursos. El sandbox del plugin tiene límites de memoria y tiempo de ejecución. Los archivos de Figma grandes con jerarquías complejas pueden agotar los tiempos de espera o hacer que el plugin falle. La UI del plugin corre en un iframe con acceso restringido — sin acceso al sistema de archivos local excepto a través del diálogo de exportación de Figma, sin acceso de red arbitrario desde el hilo principal.

Inconsistencias entre plataformas. La app de escritorio y la web de Figma tienen comportamientos ligeramente distintos en la API de plugins en algunos casos extremos. Los plugins que funcionan perfectamente en uno pueden tener peculiaridades en el otro.

Fricción de instalación para distribución en equipo. Cada desarrollador que necesita ejecutar el plugin lo instala por separado. La consistencia de versiones en todo el equipo depende del mecanismo de actualización automática de Figma. Si necesitas una versión específica fijada, eso no es sencillo.

El enfoque externo de figmascope

figmascope no toca el sistema de plugins en absoluto. Corre en una pestaña de navegador estándar — cualquier navegador, sin necesidad de la app de Figma — y llama a la API REST de Figma directamente usando un Personal Access Token que el usuario proporciona. El PAT se mantiene solo en memoria y nunca se envía a ningún servidor.

La API REST de Figma es la misma fuente de datos de la que se alimenta la API de plugins, pero accedida externamente. figmascope descarga el JSON del archivo, procesa el árbol de nodos en el lado del cliente (todo el cómputo ocurre en tu navegador) y produce el bundle de contexto. Las llamadas a la API van directamente desde tu navegador a los servidores de Figma. La infraestructura propia de figmascope no está en el camino de los datos.

Esto tiene varias implicaciones:

Sin instalación. Abre una pestaña, pega tu URL de Figma y tu PAT, haz clic en exportar. No hay nada que instalar, ninguna cuenta que crear, ningún plugin que buscar en la tienda de la Comunidad. Cualquier persona con un navegador puede usarlo — incluyendo desarrolladores que no son usuarios de Figma y no tienen la app instalada.

Scriptable en principio. Dado que figmascope está construido sobre la API REST, las mismas llamadas que hace pueden reproducirse programáticamente. El código base MIT está abierto para inspección. Si quieres construir un script que exporte un bundle desde la línea de comandos sin abrir un navegador, el código fuente de figmascope te muestra exactamente cómo llamar a la API y procesar la respuesta.

Compatible con CI/CD en principio. Un pipeline de exportación headless es alcanzable: llamadas a la API REST de Figma, la misma lógica de procesamiento IR, el mismo formato de bundle. La app de navegador de figmascope no corre en CI directamente (es una herramienta de navegador), pero el enfoque arquitectónico — API REST, procesamiento determinista, salida de archivos planos — es compatible con CI por diseño. Nada del modelo requiere una GUI.

Sin dependencia de la tienda de plugins. figmascope está alojado en un dominio, con código abierto en GitHub. No depende de la infraestructura de plugins de Figma ni del proceso de revisión. Figma no puede eliminarlo de una tienda. Si el dominio cae, puedes ejecutarlo localmente desde el repositorio — es completamente HTML/JS estático.

Sin necesidad de la app de Figma. Un desarrollador puede exportar contexto para un archivo de Figma que nunca ha abierto en la app de Figma, usando solo una URL de Figma compartida y un PAT. Esto importa para los flujos de trabajo donde los ingenieros no usan Figma directamente pero necesitan la especificación de diseño.

Qué hacen mejor los plugins

Seamos justos. Los plugins tienen ventajas reales que el enfoque externo de API no replica.

Anotación en el lienzo. Los plugins pueden escribir de vuelta al archivo de Figma — añadir anotaciones, establecer propiedades de componentes, marcar frames como listos, publicar comentarios. figmascope es de solo lectura. Si necesitas una herramienta que haga trabajo del lado del diseño dentro de Figma, necesitas un plugin.

Contexto del lienzo en vivo. Un plugin sabe qué está seleccionado. Puede responder a cambios de selección, observar actualizaciones de nodos y reaccionar al trabajo de diseño en progreso. figmascope toma una instantánea. No tiene acceso al lienzo en vivo.

Distribución en equipo vía org de Figma. Si todo tu equipo está en un plan de org de Figma, enviar un plugin privado al equipo es simple. Todos lo tienen en su instancia de Figma. Para la distribución entre equipos dentro de una organización, el modelo de plugin está bien soportado.

Interacción más rica en la UI de Figma. Un plugin puede renderizar UI personalizada dentro de un panel, responder a la interacción del usuario y proporcionar retroalimentación inmediata dentro del flujo de trabajo existente del diseñador. La interfaz de figmascope es una pestaña de navegador separada — un cambio de contexto.

Comparación

Dimensión Plugins de Figma (en general) figmascope
Corre dentro de Figma Sí — iframe sandboxed No — pestaña de navegador externa
Requiere app/cuenta de Figma Solo un PAT (funciona con cuenta gratuita de Figma)
Requiere instalación Sí — instalación de Figma Community o de equipo No — abrir en el navegador
Scriptable / automatizable No — ejecución solo mediante GUI Sí en principio — basado en API REST
Compatible con CI/CD No La arquitectura es compatible con CI
Escribe de vuelta a Figma Sí — puede crear/actualizar nodos No — solo lectura
Anotación en el lienzo No
Contexto de selección del lienzo en vivo No — solo instantánea
Restringido por revisión de la tienda de plugins Sí (plugins públicos) No
Privacidad de datos Depende del plugin — puede enviar datos a servidores del proveedor Todo el procesamiento en tu navegador; el PAT nunca abandona tu máquina
Formato de salida Varía — JSON, archivos de código, anotaciones, portapapeles Bundle estructurado: CONTEXT.md, tokens.json, screens/*.json, *.png
IR optimizado para agentes Raramente — la mayoría de plugins apuntan al consumo humano Sí — stack/overlay/absolute/leaf con componentId y stringRef
Salida controlable por versión Depende del plugin Sí — el bundle es JSON + Markdown con diff
Código abierto Algunos plugins sí; muchos no Sí — MIT

El ángulo de la privacidad de datos

Cuando un plugin de Figma hace peticiones de red, tus datos de diseño pueden salir de tu navegador e ir a los servidores del proveedor del plugin. Estás confiando en la política de privacidad e infraestructura del plugin. Para muchos equipos, esto es aceptable. Para algunos — equipos empresariales con diseños cubiertos por NDA, agencias que trabajan con archivos de clientes sensibles — es una preocupación relevante.

El enfoque externo de figmascope es diferente. Todo el procesamiento ocurre en tu pestaña de navegador. Las llamadas a la API REST van desde tu navegador a los servidores de Figma (las mismas llamadas que hace tu navegador cuando usas Figma normalmente). Los propios servidores de figmascope no están en el camino. Tus datos de diseño no van a ningún lugar excepto a la API de Figma. El PAT está en memoria y se borra cuando cierras la pestaña.

Esta es una ventaja estructural del enfoque de navegador externo sobre los plugins que dependen de un proveedor de backend.

Cuándo elegir cuál

Usa un plugin de Figma cuando: necesitas anotar o escribir de vuelta al archivo, quieres interacción en el lienzo como parte de un flujo de trabajo de diseñador, tu equipo está completamente en Figma y la distribución mediante el mecanismo de plugins es conveniente, o el plugin que necesitas tiene una UI específica dentro de Figma que el enfoque de API REST no puede replicar.

Usa figmascope cuando: necesitas un bundle de contexto portátil y controlado por versión para la generación de código con agentes de IA, quieres no tener instalación ni dependencia de tienda, te preocupa la privacidad de datos y no quieres que los datos de diseño se envíen a un proveedor de plugin de terceros, quieres que la salida viva en tu repositorio git junto a tu código, o quieres que el proceso de exportación sea explicable y reproducible.

Para la mayoría de los flujos de trabajo de producción de codegen UI con agentes de IA, el modelo de plugin añade fricción que no puede recuperar. El plugin corre en Figma. El agente corre en tu editor. Llevar la especificación de diseño de uno al otro a través de un plugin requiere copiar y pegar manualmente o un plugin que escriba en disco — y entonces tienes un archivo opaco de un pipeline opaco. La salida de figmascope es inspeccionable, estructurada y explícitamente diseñada para ese handoff de agente.