Ir al contenido
LUNES, OCTUBRE 26, 2026NOTICIAS TECNOLÓGICAS INDEPENDIENTES, Reseñas y guías prácticas
ACERCA DE
ÚLTIMAS NOTICIAS /

Todos los harness de programación con IA comparados (octubre de 2026): OpenCode v2, Hermes Agent, Claude Code, Codex y 24 más

LEE LA GUÍA
DESARROLLO DE SOFTWARE Y APLICACIONESGM / 803

Cómo crear una aplicación desde cero con IA en 2026: Figma, OpenCode v2, MiniMax M3.1 y la historia de Stash

Cómo crear una aplicación desde cero con IA: Figma, OpenCode v2, MiniMax M3.1 y la App Store, con dos pantallas de iPhone de Stash
Cómo crear una aplicación desde cero con IA: un flujo de trabajo que va desde el briefing hasta Figma, el servidor MCP de Figma, OpenCode v2 con MiniMax M3.1, y luego Git, la compilación, TestFlight y la App Store
Todo lo que se cuenta en este artículo ocurrió en cuatro meses y medio, y siete de estas nueve fechas corresponden a las últimas cinco semanas.

En todas las casas hay un cajón que se traga las cosas. Las llaves, el cargador de repuesto, el pasaporte que necesitas dos veces al año. Metes algo ahí “para guardarlo a buen recaudo” y, tres meses después, te encuentras de rodillas vaciando todo el armario en el suelo. Esta es una guía completa sobre Cómo crear una aplicación desde cero con la IA en 2026, contado a través de la aplicación que creé para arreglar ese cajón.

Stash es mi solución para ese cajón. Es una aplicación sencilla y tranquila para iPhone y iPad: haces una foto del lugar donde has dejado algo, le pones un nombre y le asignas una habitación, y cuando lo vuelves a necesitar, lo buscas. Esa es la idea. Se lanzó en la App Store el 23 de septiembre de 2026. Es gratuita y no tiene anuncios.

No tengo formación en programación. Todo lo que desarrollo, lo hago con agentes de IA, y durante el último año las herramientas para hacerlo han pasado de ser una “bonita demostración” a “algo que realmente se puede lanzar al mercado”. Por eso, esta guía es ante todo práctica: recorre todos los pasos, desde una carpeta vacía hasta una entrada activa en la App Store, utilizando Stash como ejemplo práctico a lo largo de todo el proceso.

Este es el conjunto de herramientas que le recomendaría a cualquiera que empezara hoy mismo. Figma para el diseño. OpenCode v2 como agente codificador. MiniMax M3.1 como el modelo que se encarga de “pensar” (en sentido estricto, M3.1-Flash-Preview, que se lanzó el 27 de septiembre, y más adelante explicaré por qué esa distinción es importante). Después, todo lo que nunca aparece en los tutoriales de YouTube: el backend, la política de privacidad, App Store Connect, las capturas de pantalla, la revisión, la página de destino, las páginas legales y cuánto cuesta todo ello.

Todo lo que aquí se recoge se ha contrastado con la documentación oficial, las notas de la versión y la propia App Store en 5 de octubre de 2026. Parte de esta información quedará obsoleta en cuestión de semanas. El nuevo modelo de MiniMax es un avance, OpenCode lanza actualizaciones casi a diario y Figma aún está decidiendo qué agentes de programación podrán conectarse a su servidor MCP. He señalado las partes más volátiles a medida que avanzaba.

Aviso: Stash es mi aplicación, publicada por mi empresa, Graham Miranda UG. Es gratuita, sin anuncios ni compras dentro de la aplicación. Este artículo no contiene enlaces de afiliados. Ni MiniMax, ni el equipo de OpenCode en Anomaly, ni Figma, ni Apple, ni Google, ni Expo lo han patrocinado, revisado ni aprobado.


TL;DR — La versión de 60 segundos

  • En 2026 podrás crear una aplicación real desde cero con IA, pero “desde cero” ahora significa tomar decisiones, no escribir. El agente se encarga de escribir el código. Tú te encargas del pliego de condiciones, el diseño, el modelo de datos, la política de privacidad, las pruebas y los trámites para la App Store.
  • La pila: Figma (pantallas y variables de diseño) → OpenCode v2 (agente de código abierto, licencia MIT) → MiniMax M3.1-Flash-Preview (contexto de 1 millón de tokens, lee texto, imágenes y vídeo, cinco niveles de dificultad) → una compilación con Expo o Xcode → TestFlight → la App Store. Firebase si necesitas cuentas y sincronización.
  • “MiniMax M3.1” se refiere hoy en día a M3.1-Flash-Preview. Se lanzó el 27 de septiembre de 2026 y solo está disponible a través de la suscripción al Plan M de MiniMax ($22, $55 o $132 al mes, con 50% de descuento el primer mes en la facturación mensual hasta el 14 de octubre) y la aplicación MiniMax Code. Todavía no hay precio por token, ni ponderaciones abiertas, ni índice de referencia publicado. No se puede dejar de pensar, y el esfuerzo se establece por defecto al máximo.
  • Funciona en OpenCode v2 sin necesidad de un archivo de configuración: /connect → “Plan de tokens de MiniMax (minimax.io)” → pega tu clave de suscripción → /models → MiniMax-M3.1-Vista previa en Flash.
  • El inconveniente de Figma del que nadie habla: El servidor MCP remoto de Figma aún no admite OpenCode. Durante la fase beta, solo se permite el acceso a través de la lista de permitidos. Utiliza el de Figma escritorio Servidor MCP en 127.0.0.1:3845 o bien (para ello se necesita la aplicación de escritorio de Figma y una suscripción de pago de tipo «Dev» o «Full», a partir de $12 al mes), o bien entregar al agente los fotogramas exportados, que M3.1 puede leer.
  • El envío es un proyecto en sí mismo: $99 al año para el Programa de Desarrolladores de Apple (99 € en Alemania), compilaciones realizadas con Xcode 26 o una versión posterior, una política de privacidad, etiquetas de privacidad que se ajusten a la realidad, la posibilidad de eliminar la cuenta desde la propia aplicación si se ofrecen cuentas, y los datos del comerciante de la UE. Apple afirma que el 90% de las solicitudes se revisan en un plazo de 24 horas.
  • Stash en cifras: Disponible desde el 23 de septiembre de 2026; versión 1.0.1 con un nuevo diseño desde el 2 de octubre; gratuita; compatible con iOS y iPadOS 16.4 o posterior; ocupa unos 64 MB; sin seguimiento; y cuenta con un modo de invitado que mantiene todos los datos en el dispositivo.
  • Cuánto cuesta: Acerca de $363 para el primer año En la configuración básica (suscripción a Apple más el plan M Go), unos $500 con una licencia de Figma Dev. Los costes de backend empiezan en cero gracias a las cuotas gratuitas de Firebase.
  • La regla más importante: “Hecho” es una afirmación, no un hecho. Prueba la aplicación en un móvil de verdad, en modo avión, en modo oscuro y con VoiceOver activado. Entonces ya te lo creerás.

Resumen de The Stack

CapaHerramientaSu función en este flujo de trabajoCoste (octubre de 2026)
DiseñoFigmaPantallas, componentes, variables de color y tipografía, prototipo interactivoPlan Starter gratuito; una licencia de desarrollador a partir de $12 al mes permite acceder al servidor MCP de escritorio
Puente entre el diseño y el códigoServidor MCP de Figma (ordenador de sobremesa)Proporciona al agente marcos, variables y capturas de pantallaIncluido con el asiento
Agente de codificaciónOpenCode v2Crea planes, edita archivos, ejecuta comandos y realiza pruebas; en la terminal, en una aplicación de escritorio o dentro de Xcode 27Gratuito, licencia del MIT
ModeloMiniMax M3.1: vista previa de FlashEl cerebro encargado de la planificación y la programación; lee capturas de pantalla y grabaciones de pantallaPlan M desde $22 al mes
Marco de trabajo de la aplicaciónExpo SDK 56 (iPhone + Android) o SwiftUI con Xcode 27 (solo para Apple)La propia aplicaciónGratis; el plan gratuito de Expo incluye 15 compilaciones en la nube para iOS y 15 para Android al mes
BackendFirebase (Auth, Firestore, Storage, Functions, Messaging)Cuentas, sincronización, almacenamiento de fotos, notificacionesCuotas gratuitas; el almacenamiento y las funciones requieren el plan Blaze de pago por uso
DistribuciónApp Store Connect + TestFlightPruebas beta, revisión, lanzamiento$99/año: Programa para desarrolladores de Apple
InicioUna página de inicio estática y las páginas de aviso legalExplicar, hacer una demostración, cumplirSean cuales sean tus gastos de alojamiento

Los precios son los de catálogo a fecha de 5 de octubre de 2026, sin IVA. Las condiciones de suscripción cambian con frecuencia, así que compruébalas antes de comprar.


Índice


Parte 1 — Conoce Stash: la aplicación en torno a la cual gira esta guía

Antes de las herramientas, el ejemplo. Una guía para crear aplicaciones solo es tan buena como la propia aplicación que permite crear, así que aquí tienes exactamente qué es Stash, basándome en su propia ficha de la App Store y en su política de privacidad, más que en mi propio entusiasmo.

El anuncio comienza con una frase que resume el puesto: “No vuelvas a poner la casa patas arriba buscando algo”.” A continuación, describe el producto al completo en tres frases: “Stash es la forma más rápida de recordar dónde has dejado las cosas. Haz una foto, elige la habitación y guárdala. Eso es todo lo que hace la aplicación”.”

Esa última frase resume el objetivo del diseño. Todo lo que hay en la aplicación sirve para agilizar el proceso de guardar o para agilizar la búsqueda. Cualquier elemento que no cumpla ninguna de estas dos funciones no tiene cabida aquí.

Qué hace Stash

CaracterísticaPara qué sirvePor qué es importante
Foto del lugarDebes fotografiar el cajón, el estante o la caja, no el objetoLos lugares se recuerdan visualmente; una foto del lugar es el recuerdo.
Nombre, sala, lugar exacto, nota“Llaves de casa · Pasillo · Cajón de arriba · En el plato de cerámica de la izquierda”Cuatro campos cortos son mejores que un ensayo de texto libre que nunca podrás buscar bien
Notas de voz, transcritasToma nota rápidamente; Stash la convierte en texto en el que se puede buscarMás rápido que escribir con el teclado cuando tienes las manos ocupadas
Buscar enPor nombre del artículo, habitación, nota o las palabras que hayas introducido, con un filtro para los artículos que tengan fotosLo mejor de la aplicación es que está ahí justo cuando necesitas algo
HabitacionesExplora tu casa habitación por habitaciónPara cuando no recuerdes el nombre, sino solo más o menos dónde
“Ya lo he encontrado”Un toque cuando lo hayas recuperadoCierra el círculo
RecordatoriosLos artículos de temporada vuelven a aparecer cuando los necesitasLos neumáticos de invierno, las luces de Navidad, el material de acampada
WidgetsWidgets de la pantalla de inicio y de la pantalla de bloqueoDos toques desde “Debería recordar esto” hasta «Guardado»
Sin conexión y, a continuación, sincronizarFunciona sin señal; se sincroniza entre el iPhone y el iPad si tienes una cuentaEn los sótanos y los garajes la cobertura es pésima
AspectoClaro, oscuro o seguir el sistemaA las 23:00 h también parece que todo está tranquilo
Exportar y eliminarExporta tus archivos guardados; elimina tu cuenta desde «Configuración»Tus datos siguen siendo tuyos, y Apple exige el segundo

Cómo se ve

La dirección visual es deliberadamente sobria: un fondo blanco roto cálido, un verde bosque intenso, un único toque de color coral, titulares con tipografía serif y una tipografía sans-serif sencilla para el resto. Las capturas de pantalla de la App Store cuentan la historia en seis titulares: Todo tiene su sitio. Encuéntralo. En cuestión de segundos. Guarda ese lugar. Tu hogar. Habitación por habitación. Recuerda los pequeños detalles. Nítido. Con cualquier luz.

Mostrar imagen Stash en el iPhone: guarda el lugar, encuéntralo en segundos, explora habitación por habitación. Con luz o en la oscuridad, la misma tranquilidad.

Cuatro capturas de pantalla de Stash para iPhone: la pantalla de inicio con las llaves de casa guardadas recientemente, los resultados de búsqueda de llaves, la pantalla «Añadir» y la cuadrícula de habitaciones en modo oscuro
Stash en el iPhone: guarda el lugar, encuéntralo en segundos, explora habitación por habitación. Con luz o en la oscuridad, la misma tranquilidad.

Cómo gestiona tus datos

Esto es más importante que cualquier otra característica, así que citaré la política de privacidad en lugar de parafrasearla:

  • Modo invitado: “Si no creas una cuenta, tus habitaciones, objetos, fotos y notas de voz permanecerán en tu dispositivo y no se subirán a la nube”.”
  • Con una cuenta: La sincronización y la copia de seguridad se realizan en Google Firebase (Autenticación, Cloud Firestore, Cloud Storage, Cloud Functions y Cloud Messaging), con reglas de seguridad que mantienen aislados los datos de cada usuario.
  • Ningún modelo de negocio que se base en ti: “No mostramos anuncios, no realizamos campañas publicitarias ni seguimiento analítico, no creamos perfiles de usuario ni vendemos tus datos”.”
  • Notas de voz: Para convertir una grabación en texto en el que se puedan realizar búsquedas, se puede utilizar el servicio de reconocimiento de voz integrado en el teléfono (el de Apple, en iOS).
  • Supresión: Elimina tu cuenta en «Configuración» o a través de un formulario web; las copias se eliminarán de las copias de seguridad en un plazo de 30 días.

Si has leído mi artículo sobre Por qué el software «local-first» está volviendo a ganar popularidad, ya te darás cuenta de cuál es la filosofía. La aplicación debería funcionar perfectamente sin la nube. La nube es una comodidad que tú decides si quieres usar o no.

Cuadro informativo

Nombre en la App StoreStash — Encuéntralo rápido
SubtítuloEncuentra cualquier cosa que hayas guardado
Primera publicación23 de septiembre de 2026 (versión 1.0)
Versión actual1.0.1, publicada el 2 de octubre de 2026: “Nuevo diseño y corrección de errores”.”
PrecioGratis, sin compras dentro de la aplicación
Requisitos:iOS o iPadOS 16.4 o posterior; también funciona en los Mac con Apple Silicon y en Apple Vision Pro como aplicación para iPad
TamañoUnos 64 MB
CategoríaProductividad (también incluida en la sección «Utilidades»)
Clasificación por edades4+
DesarrolladorGraham Miranda UG (de responsabilidad limitada), Blankenburg (Harz), Alemania
Página webstash.grahammiranda.network, en diez idiomas, con un demostración en el navegador
DescargarDescarga Stash en la App Store

Lo que (todavía) no está en la aplicación

La página web cuenta con una sección llamada Exploraciones de diseño con tres ideas: marcar el punto exacto en una foto, Traslado rápido cuando cambia la ubicación de un artículo, y cajas y etiquetas para que puedas ver qué hay dentro de una caja sin tener que abrirla. La página web deja claro que “Estas ideas forman parte del concepto interactivo, no son funciones incluidas en la versión disponible en la App Store”.”

Me gusta esa distinción, y se la recomendaría a cualquiera que esté creando su primera aplicación. Experimenta libremente en un prototipo. Lanza solo lo que funcione. La página de tu aplicación en la App Store nunca debe prometer lo que el archivo binario no pueda hacer. Los revisores de Apple lo comprueban, y también lo hacen los usuarios que te dan una estrella.

Por qué es una buena opción para una primera aplicación

Si estás leyendo esto porque quieres crear tu propia aplicación, copia el diseño de Stash, aunque no te importe haber perdido las llaves:

  • Un bucle principal. Guarda y, a continuación, busca. Todo lo demás está al servicio de ese ciclo.
  • Datos que se generan en el dispositivo. No hace falta ningún servidor desde el primer día, así que puedes lanzar el producto antes incluso de haber creado el backend.
  • Unas cuantas funciones reales de la plataforma. La cámara, el micrófono, las notificaciones y los widgets son la cantidad justa de funciones “nativas” para aprender sin agobiarte.
  • Una nube opcional. Las cuentas y la sincronización pueden incorporarse en la versión dos sin necesidad de reescribir la versión uno.
  • Sin feed, sin chat, sin pagos. Cada uno de ellos es un proyecto independiente con sus propios modos de fallo.

Un agente de IA puede crear casi cualquier cosa que se le describa. Lo difícil es describir algo lo suficientemente pequeño como para poder terminarlo.


Parte 2 — El stack de 2026 para desarrollar una aplicación desde cero con IA

Tres herramientas, tres trabajos distintos:

  1. Figma determina el aspecto de la aplicación.
  2. OpenCode decide cómo se lleva a cabo el trabajo: qué archivos leer, qué comandos ejecutar y qué preguntarte antes de hacer nada que suponga un riesgo.
  3. MiniMax M3.1 se encarga de pensar En OpenCode: planificar, escribir código, revisar capturas de pantalla y arreglar lo que no funciona.

Mantener esas tareas separadas es la decisión arquitectónica más importante de toda esta guía, y no tiene nada que ver con el código. Cuando el mes que viene salga un modelo mejor (y saldrá), solo tendrás que cambiar una línea en un archivo de configuración. Cuando salga una herramienta de diseño mejor, a tu agente no le importará. Nada está entrelazado.

Por qué OpenCode v2 es el agente

OpenCode es un agente de programación de IA de código abierto bajo la licencia MIT. Solo tienes que indicarle la carpeta del proyecto, describir lo que quieres y él trabaja igual que lo haría un desarrollador: lee el código, elabora un plan, edita archivos, ejecuta comandos, lee los errores, los corrige y sigue adelante.

La versión 2.0.0, una reconstrucción completa desde cero, se publicó el 11 de septiembre de 2026, y el equipo ya había lanzado la versión 2.0.22 el 2 de octubre. Traté este tema en profundidad en mi Análisis en profundidad de OpenCode v2, así que aquí solo te cuento lo que importa para crear una aplicación:

  • Es independiente del modelo. Más de 75 proveedores a través de Models.dev, además de modelos locales. MiniMax viene integrado.
  • Un servidor de fondo compartido. Tanto la interfaz de terminal como la aplicación de escritorio, la interfaz de usuario del navegador y las extensiones del IDE ven las mismas sesiones.
  • Permisos que funcionan como un cortafuegos. Una lista ordenada de reglas de “permitir», «preguntar» y «denegar», en la que prevalece la última coincidencia, por lo que «nunca se ejecuta git push” y “nunca enviar a la App Store” ocupan una línea cada una.
  • Deshacer cada paso. Instantáneas antes y después de cada paso del modelo, con /undo y /redo.
  • Subagentes que puedes ver y detener, y habilidades que se cargan desde .opencode, .claude y .agentes carpetas.
  • Funciona en Xcode 27. El nuevo Xcode de Apple admite cualquier agente que utilice el Protocolo de Cliente-Agente, y opencode acp hace precisamente eso (configuración en la parte 4).

La página de inicio cuenta ahora con 208 000 estrellas en GitHub, 950 colaboradores y 16 millones de desarrolladores mensuales. Dos advertencias importantes extraídas de la documentación de la v2: la función de compartir sesión aún no se ha reincorporado en la v2 y los complementos de la v1 no se cargan.

Por qué el MiniMax M3.1 es el modelo ideal

La tercera parte entra en profundidad, pero, en resumen, se trata de tres propiedades que resultan especialmente adecuadas para la creación de aplicaciones:

  • Una ventana de contexto de 1 000 000 de tokens. Una pequeña aplicación, sus notas de diseño, su archivo AGENTS.md y la documentación pertinente caben perfectamente en una sola sesión de trabajo, y aún sobra tiempo.
  • Lee imágenes y vídeos, no solo texto. Puedes adjuntar un marco de Figma, una captura de pantalla del simulador o una grabación de la pantalla en la que se vea el error.
  • Cinco niveles de esfuerzo, de bajo a max, de modo que el trabajo de planificación se realiza con profundidad y el trabajo mecánico se lleva a cabo con rapidez.

La contrapartida es que se trata de una versión preliminar sin pruebas de rendimiento publicadas ni precios por token, disponible únicamente a través de la suscripción de MiniMax. Volveré sobre este tema más adelante, porque no es una salvedad menor.

Por qué Figma es la herramienta de diseño

Figma sigue siendo la herramienta por excelencia para el diseño de aplicaciones. El plan Starter gratuito es suficiente para diseñar una primera aplicación. Su variables se convertirán en tus tokens de diseño: los colores, los espacios y los tamaños de letra que garantizan la coherencia en todas las pantallas. Y su Servidor MCP permite que un agente de codificación lea directamente un fotograma seleccionado, lo que es lo más parecido hasta ahora a que “hacer que se vea así” funcione de verdad.

En Config 2026 (del 23 al 25 de junio en San Francisco), Figma también abrió su Figma Agent a todos los planes de pago en versión beta abierta, añadió una línea de tiempo de movimiento y presentó un avance de las “capas de código”, que tratan el código como un objeto de primera clase en el lienzo. No necesitas nada de eso para crear tu primera aplicación. Pero es útil saber hacia dónde se dirigen las cosas.

Y las “cosas”

Las partes que nadie incluye en la miniatura:

¿Qué?OpcionesTratado en
Marco de trabajo de la aplicaciónExpo (React Native) para iPhone y Android; SwiftUI con Xcode 27 solo para Apple; FlutterParte 7
BackendFirebase es la opción predeterminada más sencilla para la gestión de cuentas, la sincronización y el almacenamiento de archivosParte 7
Control de versionesGit, siempre. GitHub o una plataforma similar como copia de seguridadPartes 4 y 7
Compilaciones y firmasXcode en un Mac, o las compilaciones en la nube de EAS de Expo sin necesidad de unoPartes 7 y 8
Pruebas y lanzamientoTestFlight y App Store ConnectParte 8
InicioUna página de destino, una demostración, páginas legales, optimización para la App StoreParte 9

Mostrar imagen Todo el proceso en una sola página. Empiezas a la izquierda (el resumen), pasas por el centro (revisando cada diferencia) y terminas a la derecha (pulsando “Enviar para revisión”).

Qué significa hoy en día “desde cero”

Esta es la incómoda realidad de desarrollar una aplicación con IA en 2026: el agente se encarga de la parte que antes resultaba difícil y te deja a ti la parte que siempre ha sido difícil.

TienesEl agente es propietario de
Para qué sirve la aplicación y qué es lo que no haceConvertir eso en archivos, componentes y funciones
Las pantallas y el sistema de diseñoAplicarlas, pantalla a pantalla
El modelo de datos: qué se almacena, dónde y durante cuánto tiempoEscribir el código de almacenamiento, sincronización y migración
La política de privacidad, las páginas legales y las respuestas de la App StoreRevisar el código para que tus respuestas sean correctas
Pruebas en dispositivos reales, con personas realesEscribir y ejecutar pruebas automatizadas
Pulsar “Enviar”No pulsar nunca “Enviar”

Si esa tabla te pone un poco nervioso, mejor. Ese nerviosismo es lo que distingue a una aplicación que llega al mercado de una carpeta llena de código que funciona a medias.


Parte 3 — MiniMax M3.1: una explicación sincera

Si buscas “MiniMax M3.1” ahora mismo, encontrarás artículos que hablan con total seguridad de un modelo que, estrictamente hablando, aún no ha salido al mercado. A continuación te contamos lo que existe realmente, lo que ya puedes utilizar hoy mismo y lo que nadie sabe todavía.

Lo que existe, en orden

  • 1 de junio de 2026: MiniMax M3. Un modelo de peso abierto y multimodal de forma nativa con una ventana de contexto de 1 millón de tokens, un diseño de «mezcla de expertos» con unos 428 000 millones de parámetros en total y unos 23 000 millones activos por token, y el sistema de atención dispersa propio de MiniMax. Lo comparé con GLM-5.3-Flash para OpenCode en agosto, en GLM-5.3-Flash frente a MiniMax M3.
  • Julio: “M3.1” se convierte en un nombre. Los informes de la Conferencia Mundial sobre Inteligencia Artificial celebrada en Shanghái describían un modelo M3.1 con un contexto de un millón de tokens y capacidades multimodales más potentes. No se facilitó ningún modelo, ID de modelo ni precio.
  • 23 de septiembre: una modelo misteriosa. Un modelo anónimo denominado “Space Bunny Alpha” apareció en OpenRouter y en OpenCode como vista previa gratuita, con un contexto de 1 millón y un razonamiento ajustable. El análisis independiente de la huella digital del tokenizador apuntaba hacia MiniMax. MiniMax no ha confirmado nada, y la coincidencia del tokenizador es un indicio de que se trata de una familia de modelos, pero no una prueba.
  • 27 de septiembre: Avance de MiniMax M3.1-Flash. El primer modelo de la marca M3.1 al que cualquiera puede acceder, lanzado en la propia aplicación de programación de MiniMax, «MiniMax Code», y a través de su suscripción de programación. MiniMax lo describe como un modelo para “Desarrollo diario, rápido, fiable y preparado para el trabajo real, desde correcciones rápidas de errores hasta funciones completas”.”
  • 30 de septiembre: el Plan M. MiniMax Code 3.1.0 ha llegado con una nueva suscripción llamada «M Plan», que sustituye al «Token Plan» para los nuevos clientes, manteniendo los mismos precios.

La versión completa del M3.1 del verano aún no se ha lanzado. Cuando la gente habla del “M3.1” en octubre de 2026, se refiere al M3.1-Flash-Preview, y yo haré lo mismo en el resto de este artículo.

Mostrar imagen Todo lo que se cuenta en este artículo ocurrió en cuatro meses y medio, y siete de estas nueve fechas corresponden a las últimas cinco semanas.

MiniMax M3 frente a M3.1: vista previa de Flash

MiniMax M3MiniMax M3.1: vista previa de Flash
Publicado1 de junio de 202627 de septiembre de 2026
EstadoDisponible de forma generalizadaVista previa
ID del modeloMiniMax-M3MiniMax-M3.1-Vista previa en Flash
Ventana de contexto1 millón de tokens1 000 000 de tokens
EntradaTexto, imagen, vídeoTexto, imagen, vídeo
ReflexiónSe puede encender o apagarSiempre encendido. Cinco niveles de intensidad: bajo, medio, alto, xalto, max (por defecto max)
Peso libreSí, bajo la licencia MiniMax Community.Sin pesos, sin ficha técnica
Precio de pago por uso$0,30 por cada millón de tokens de entrada, $1,20 de salida, $0,06 en caché; el doble por encima de 512 K de entradaNo publicado. Solo para suscriptores
Dónde se puede utilizarMiniMax API, OpenRouter, OpenCode Go, Ollama Cloud y muchos otros proveedores de alojamientoSolo para suscriptores del Plan M y con código MiniMax
Pruebas de rendimiento publicadasSí, de MiniMax y de tableros independientesNinguno
Arquitectura~428 mil millones en total, ~23 mil millones activos, MoE dispersoNo se ha revelado
En OpenCode v2Integrado, a través de varios proveedoresIntegrado a través de “MiniMax Token Plan (minimax.io)”

Captura de pantalla de la documentación de MiniMax y de Models.dev del 5 de octubre de 2026. Las vistas previas pueden cambiar sin previo aviso; compruébalas antes de basarte en ninguna de las filas.

Hay algo que merece la pena analizar: los documentos indican que el pensamiento no se puede desactivar. Enviar thinking.type: "desactivado" o un esfuerzo de ninguno, y la API devuelve un error 400 que indica, en pocas palabras, que el modelo “requiere un pensamiento adaptable”.” Lo que sí puedes controlar es la intensidad con la que piensa.

Cómo conseguirlo: el Plan M

La documentación de MiniMax es muy clara en cuanto al acceso: “Por el momento, MiniMax-M3.1-Flash-Preview solo está disponible a través del Plan M y del código MiniMax”.”

Nivel del Plan MPrecioQué incluye
Go$22 al mesM3.1-Flash-Preview, además de los modelos de imagen y audio de MiniMax
Explora$55 al mesTodo lo que ofrece Go, además del modelo de vídeo H3
Construir$132 al mesTodo lo que ofrece Explore, con el mayor límite de uso

Algunos detalles que son más importantes que los precios que aparecen en los titulares:

  • Oferta de lanzamiento: 50% de descuento en tu primer mes con facturación mensual, hasta el 14 de octubre de 2026. Queda excluida la facturación anual. Tras el primer mes, se renovará al precio completo, a menos que desactives la renovación automática.
  • Semana gratuita: Todos los suscriptores tuvieron acceso ilimitado a M3.1-Flash-Preview del 1 al 7 de octubre (hora de China). Si estás leyendo esto después del día 7, ya se ha acabado.
  • Es una clave de suscripción, no una clave de API. La documentación de MiniMax deja claro que las claves de suscripción y las claves de API de pago por uso no son intercambiables. Deberás pegar la clave de suscripción en OpenCode.
  • Cuotas, no medición. El uso está limitado a periodos móviles de cinco horas y semanales, y la cuota no utilizada no se acumula. Para los niveles equivalentes del Plan Token, las propias recomendaciones de MiniMax eran, aproximadamente, de tres a cuatro, de cuatro a cinco y de seis a siete agentes trabajando a la vez.
  • Suscriptores actuales del Plan Token mantener su plan. Los nuevos clientes contratan el Plan M.
  • Herramientas compatibles En la página del Plan M de MiniMax figuran Claude Code, Codex, Cursor, OpenCode, Hermes Agent y OpenClaw.

Código MiniMax En sí mismo es un agente de escritorio para macOS y Windows, con un modo de programación y un modo “trabajo” para investigación y documentos, además de una versión de línea de comandos. Es una forma estupenda de probar el modelo. Yo utilizo OpenCode porque no me ata a ningún fabricante de modelos en concreto, que es precisamente el objetivo de la segunda parte.

Por qué es ideal para el desarrollo de aplicaciones

  • La ventana de contexto cambia tu forma de trabajar. Una pequeña aplicación móvil tiene unas pocas miles de líneas de código, quizá unas pocas decenas de miles. Con un millón de tokens, el agente puede almacenar todo el código fuente, tu archivo AGENTS.md, el modelo de datos y una parte de la documentación de la plataforma a la vez. Menos momentos de “se me ha olvidado lo que habíamos decidido”. (La propia guía OpenCode de MiniMax limita el tamaño de la ventana a 512K en su configuración de ejemplo, que yo recomendaría copiar. Cuanto más cortos sean los contextos, más rápidas serán las respuestas.)
  • Muéstralo, no lo describas. Como admite imágenes y vídeos, puedes añadir un fotograma exportado de Figma, una captura de pantalla del simulador de iOS o una grabación de pantalla del error en la que el teclado tape el botón «Guardar». Solo esto último ya te ahorra muchísimo tiempo a la hora de escribir.
  • El esfuerzo es un regulador, no un interruptor. max para planificar una función o resolver un error de sincronización. bajo fido medio para renombrar elementos, escribir pruebas y traducir cadenas de texto. En la parte 4 se explica cómo configurarlo para cada agente.
  • El coste es fijo. Para un desarrollador que trabaja en solitario, una factura mensual predecible es mejor que estar pendiente del contador de tokens durante una larga sesión de depuración.

Una de las primeras pruebas independientes registró aproximadamente entre 90 y 110 tokens por segundo el primer día. Se trata de una sola medición, no de una prueba de rendimiento, pero hace honor al nombre “Flash”.

Lo que todavía nadie sabe

Esta es la parte que la mayoría de los reportajes sobre el M3.1 omiten:

  • No hay puntos de referencia. Ni de MiniMax, ni de los foros independientes, porque un modelo al que solo se puede acceder mediante la suscripción a una empresa resulta difícil de probar de forma independiente. Tú eres el punto de referencia. Asigna una tarea real de tu propio proyecto, asigna la misma tarea a un modelo en el que ya confíes y compara los resultados.
  • No hay un precio por token. Eso está bien dentro de una suscripción. El problema surge si quieres ejecutar el modelo en CI o en un producto, donde necesitas saber cuánto cuesta un millón de tokens.
  • Es un avance. Puede cambiar de comportamiento, cambiar de nombre o ser sustituido por el M3.1 completo sin previo aviso. Guarda el ID del modelo en un único archivo de configuración, de modo que cambiarlo solo requiera modificar una línea.
  • La mente nunca deja de funcionar. Incluso las solicitudes más triviales suponen una cierta carga de procesamiento. Reduce el esfuerzo que requieren las tareas pequeñas.
  • Solo está disponible en MiniMax. En el momento de redactar este artículo, no está disponible en OpenRouter, Ollama Cloud ni OpenCode Go. Tus indicaciones y tu código se envían a los servidores de MiniMax, por lo que, si trabajas para clientes sujetos a normas estrictas en materia de datos, lee primero las condiciones de MiniMax o lleva a cabo ese proyecto en modelos locales.

No descargues “MiniMax M3.1”

A las pocas horas del lanzamiento, aparecieron repositorios de GitHub que no tenían nada que ver con MiniMax, en los que se prometía una “descarga oficial gratuita” de M3.1-Flash en formato ZIP para Windows, lista para “descomprimir y ejecutar”. No hay archivos de peso M3.1 que descargar, y el código de MiniMax procede de la propia página web de MiniMax. Considera cualquier “descarga de M3.1” como malware hasta que se demuestre lo contrario.

Cuándo utilizar el MiniMax M3 en su lugar

Utilice M3 Si necesitas alguna de las funciones que la versión de prueba no ofrece: tarificación de pago por uso, pesos abiertos que puedas alojar tú mismo o acceso a través de OpenCode Go, Ollama Cloud u OpenRouter. También es la opción más segura para cualquier tarea automatizada, ya que su precio y su comportamiento están documentados. Si quieres tener una visión más amplia de las alternativas, mi MiniMax M3 vs Kimi K2.7 Code vs Nemotron 3 Ultra La comparación abarca todo el ámbito.


Parte 4 — Configuración de OpenCode v2 con MiniMax M3.1, paso a paso

Esta es la configuración que le recomendaría a un amigo. Tarda unos quince minutos, la mayor parte de los cuales se dedican a esperar a que se completen las descargas.

Paso 0 — Lo que necesitas antes de nada

  • Un Mac con Apple Silicon, si quieres compilar y ejecutar aplicaciones para iPhone de forma local. Xcode 27 (lanzado el 14 de septiembre de 2026) ya no es compatible con los Mac con procesadores Intel y requiere macOS Tahoe 26.4 o una versión posterior. Si optas por la opción de Expo de la parte 7, podrás compilar aplicaciones para iOS en la nube desde Windows o Linux, pero seguirás necesitando un iPhone real para probarlas.
  • Git. Las instantáneas, las ramas y tu propia cordura dependen de ello.
  • Node.js (LTS) si vas a utilizar Expo.
  • Una suscripción al Plan M de MiniMax (Parte 3).
  • Una terminal moderna. El Terminal de macOS está bien; Ghostty, WezTerm y Kitty son mejores.

Paso 1 — Instalar OpenCode v2

bash

curl -fsSL https://opencode.ai/v2/install | bash

opencode --version # debería mostrar 2.0.x
opencode service status     #: el servidor compartido en segundo plano debería estar en funcionamiento

¿También quieres la aplicación de escritorio? Descárgala desde opencode.ai/download, o en un Mac, ejecuta brew install --cask opencode-desktop. La aplicación de terminal y la de escritorio comparten un mismo servidor, por lo que una sesión que inicies en una de ellas aparecerá en la otra.

Algo a tener en cuenta: la propia guía OpenCode de MiniMax sigue mostrando la URL del instalador de la versión 1 (opencode.ai/install). Utiliza el /v2/install el anterior.

Paso 2: Consigue tu clave de suscripción al Plan M

Suscríbete en la plataforma de MiniMax y crea un clave de suscripción en la consola. No es una clave de API de pago por uso: se trata de productos diferentes, y solo la clave de suscripción te da acceso a M3.1-Flash-Preview.

Trata la clave como si fuera una contraseña. Nunca la pegues en un chat, en una captura de pantalla ni en un repositorio de Git.

Paso 3 — Conectar MiniMax en OpenCode

bash

cd ~/code/my-app
opencode

A continuación, dentro de OpenCode:

  1. Tipo /connect y busca Plan de tokens de MiniMax (minimax.io). El proveedor ha conservado su antiguo nombre; admite llaves del Plan M.
  2. Pega tu clave de suscripción.
  3. Tipo /models y elegir MiniMax-M3.1-Vista previa en Flash.

Eso es todo. El catálogo de modelos de OpenCode (Models.dev) ya incluye el modelo con su contexto de 1 000 000 de tokens, entradas de imagen y vídeo, y los cinco niveles de esfuerzo, por lo que no necesitas un archivo de configuración para empezar. Si no aparece en /models, actualiza primero OpenCode; la configuración del paso 4 también lo añade manualmente.

Dos alternativas: Inicio de sesión en OpenCode Auth hace lo mismo desde la terminal y el asistente de configuración de MiniMax (npx -y mmx-cli@latest agent setup) instala y configura OpenCode por ti, con M3 como opción predeterminada. Después, cambia a M3.1 con /models. Las cuentas de la plataforma de MiniMax en China utilizan la versión “(minimax.cn)” del proveedor.

Paso 4 — Añadir una configuración de proyecto

Los valores predeterminados funcionan, pero un proyecto de aplicación merece un archivo de configuración que haga tres cosas: asigne a cada agente el nivel de esfuerzo adecuado, establezca permisos que impidan al agente realizar acciones irreversibles y conecte tus servidores MCP. Guárdalo como opencode.jsonc En el directorio raíz de tu proyecto:

jsonc

{
  "$schema": "https://opencode.ai/config.json",

  // Modelo predeterminado para nuevas sesiones
  "model": "minimax-coding-plan/MiniMax-M3.1-Flash-Preview",

  "providers": {
    "minimax-coding-plan": {
 "models": {
 "MiniMax-M3.1-Flash-Preview": {
 // El propio ejemplo OpenCode de MiniMax limita la ventana a 512K
          "limit": { "context": 524288 },

 // El razonamiento está siempre activo y el valor por defecto es "max".
 // Estas variantes envían el campo output_config.effort documentado por MiniMax.
          "variantes": [
 { "id": "rápido", "cuerpo": { "output_config": { "effort": "bajo" } } },
            { "id": "steady", "body": { "output_config": { "effort": "medium" } } },
            { "id": "careful", "body": { "output_config": { "effort": "high" } } }
 ]
 }
 }
    }
  },

  "agentes": {
    // La planificación se realiza con el máximo esfuerzo por defecto: un mal plan sale más caro a la larga
    "plan":    { "model": "minimax-coding-plan/MiniMax-M3.1-Flash-Preview" },
    // Construcción: exhaustiva, pero más rápida que la máxima
    "build":   { "model": "minimax-coding-plan/MiniMax-M3.1-Flash-Preview#careful" },
    // Búsqueda de solo lectura en el código fuente: la velocidad es más importante que la profundidad
    "explore": { "model": "minimax-coding-plan/MiniMax-M3.1-Flash-Preview#quick" }
  },

  "permisos": [
    { "acción": "shell", "recurso": "*", "efecto": "preguntar"   },
    { "action": "shell", "resource": "git status *", "effect": "allow" },
    { "action": "shell", "resource": "git diff *", "effect": "allow" },
    { "acción": "shell", "recurso": "git log *", "efecto": "permitir" },
    { "acción": "shell", "recurso": "npm test *", "efecto": "permitir" },
    { "action": "shell", "resource": "npx tsc *", "effect": "allow" },
    { "action": "shell", "resource": "npx expo lint *",    "effect": "allow" },
    { "acción": "shell", "recurso": "git push *", "efecto": "denegar"  },
    { "acción": "shell", "recurso": "eas submit *", "efecto": "denegar"  },
    { "action": "shell", "resource": "firebase deploy *",  "effect": "deny"  }
  ],

  "mcp": {
    "servers": {
 // Servidor MCP de escritorio de Figma (Parte 6). Local, por lo que no requiere OAuth.
      "figma-desktop": {
 "type": "remote",
 "url": "http://127.0.0.1:3845/mcp",
 "oauth": false
 },
      // Servidor MCP oficial de Firebase. Pide permiso antes de realizar cambios en tu proyecto.
      "firebase": {
 "type": "local",
 "command": ["npx", "-y", "firebase-tools@latest", "mcp"]
 }
    }
  }
}

Unas cuantas notas para que sepas lo que estás pegando:

  • Las reglas de permisos se leen de arriba abajo, y prevalece la última coincidencia. Cada comando de shell pide permiso primero; los comandos inofensivos de Git y de prueba se ejecutan libremente, mientras que hay tres cosas que se deniegan de plano: subir código, enviarlo a la App Store e implementar tu backend. Esas cosas las haces tú mismo, a propósito.
  • Sustituye los comandos permitidos por los de tu cadena de herramientas. Si estás desarrollando de forma nativa con Xcode en lugar de con Expo, sustituye el npx líneas con tus comandos de prueba y de lint.
  • Si una variante no parece tener ningún efecto, correr /models para confirmar los nombres de las variantes y comprobar la solicitud en los registros de OpenCode. MiniMax utiliza max cuando no se envía ninguna solicitud, por lo que, en el peor de los casos, la respuesta será más lenta, pero no fallará.
  • Los ejemplos antiguos al estilo v1 siguen funcionando. La guía de MiniMax utiliza la versión 1 proveedor clave; OpenCode v2 lee los ajustes compatibles con la v1 sin sobrescribir el archivo.

Paso 5: Crea un archivo AGENTS.md antes de escribir ni una sola línea de código

OpenCode dice: AGENTS.md al comienzo de cada sesión. Es el hábito más eficaz con creces en el desarrollo asistido por IA, y mi Guía de programación de Vibe se integra en todo el sistema. En el caso de una aplicación, debe contener tanto las reglas del producto como los comandos de compilación. A continuación se muestra el esquema de uno para una aplicación como Stash:

Markdown

# Notas para los programadores (ejemplo de una aplicación al estilo Stash)

## En qué consiste esta aplicación
Stash recuerda dónde están las cosas. Foto del lugar + nombre + habitación = se encuentra en segundos.
Si un cambio no agiliza el guardado o la búsqueda, no tiene cabida aquí.

## Aspectos innegociables
- Prioridad al modo sin conexión. Todas las funciones funcionan sin red. La sincronización es un extra.
- El modo invitado nunca sube nada.
- Sin análisis, anuncios ni SDK de seguimiento. Pregunta antes de añadir CUALQUIER dependencia.
- Sin secretos en el paquete de la aplicación. Las tareas que requieren privilegios se realizan en Cloud Functions.
- Accesibilidad: Dynamic Type, etiquetas de VoiceOver, objetivos táctiles de 44 x 44 pt.
- Modo claro y oscuro para cada pantalla.

## Diseño
- Los tokens se encuentran en src/theme/tokens.ts. Nunca codifiques de forma fija un color o un tamaño de fuente.
- Al implementar un marco de Figma: get_design_context, luego get_variable_defs,
  y después get_screenshot para comparar tu resultado.

## Comandos
- Instalación: npm install
- Ejecución: npx expo start
- Pruebas: npm test
- Tipos: npx tsc --noEmit
- Lint: npx expo lint

## Definición de «hecho»
- Las pruebas, los tipos y el lint pasan
- Funciona en modo avión
- Funciona en modo claro y oscuro, con el tamaño de texto máximo
- No hay nuevas advertencias en la consola

Paso 6 (opcional): ejecuta OpenCode dentro de Xcode y configúralo para que utilice las herramientas de Xcode

Xcode ahora incorpora de serie la programación basada en agentes y admite agentes externos de dos formas diferentes. Vale la pena conocer ambas si desarrollas en entorno nativo.

OpenCode como agente dentro de Xcode (ACP). Xcode puede alojar cualquier agente que utilice el Protocolo de Cliente de Agente, y OpenCode lo hace a través de opencode acp.

  1. Inicia sesión primero desde el terminal: Inicio de sesión en OpenCode Auth.
  2. Correr ¿qué opencode? y copia la ruta absoluta. Xcode no desarrolla ~ o consulta la variable PATH de tu shell.
  3. En Xcode, selecciona Xcode → Ajustes → Inteligencia, y luego, en la sección «Agentes», haz clic en Añadir un agente.
  4. Pega la ruta como comando y añade acp como argumento.
  5. Inicia una nueva conversación en la barra lateral «Inteligencia» de Xcode y selecciona «OpenCode».

No es posible cambiar de modelo desde la interfaz de Xcode, así que configura tu modelo predeterminado en opencode.jsonc Primero.

Las herramientas de Xcode integradas en OpenCode (MCP). La otra opción suele ser más útil: OpenCode permanece en tu terminal, pero puede compilar tu proyecto, ejecutar pruebas y generar vistas previas de SwiftUI a través de Xcode.

  1. En Xcode → Ajustes → Inteligencia, en «Model Context Protocol», activa Permitir que los agentes externos utilicen las herramientas de Xcode.
  2. Añade el puente de Xcode a OpenCode: opencode mcp add xcode -- xcrun mcpbridge
  3. Abre tu proyecto en Xcode antes de enviar la solicitud. El puente se comunica con el Xcode que está en ejecución, y Xcode te avisa cuando se conecta un agente externo.

¿Qué nivel de esfuerzo requiere cada trabajo?

TareaAgenteEsfuerzo
Planificación de una funcionalidad, el modelo de datos o la lógica de sincronizaciónplanmax (por defecto)
Implementar una pantalla a partir de un marco de Figmaconstruiralto
Solucionar un error con una forma clara de reproducirloconstruiralto; max si se trata de un error de sincronización o de una condición de carrera
Escribir pruebas, cambiar nombres, pequeñas refactorizacionesconstruirmedio
Buscar en el código fuente, leer la documentaciónexplorarbajo
Copiar cambios y traducciones de cadenasconstruirbajo fido medio

Un mayor esfuerzo implica más fichas de reflexión y más tiempo de espera, según las propias palabras de MiniMax. La mayor parte del tiempo en un bucle de agente se dedica a esperar, así que adapta el esfuerzo al riesgo.


Parte 5 — Cómo diseñar tu aplicación en Figma aunque no seas diseñador

No hace falta ser diseñador para crear una buena primera aplicación. Solo hay que tomar unas pocas decisiones, una vez, y anotarlas en un lugar donde el agente pueda leerlas.

Empieza por las palabras, no por los rectángulos

Antes de abrir Figma, escribe tres cosas en un archivo de texto sin formato:

  1. La promesa, en una sola frase. Para Stash: La forma más rápida de recordar dónde has dejado las cosas.
  2. Tres historias de usuario. “He guardado mi pasaporte en el cajón del escritorio y quiero encontrarlo en marzo”. “Estoy en el garaje, no tengo cobertura y quiero anotar dónde he dejado el taladro”. “Quiero que las luces de Navidad me recuerden que existen en noviembre”.”
  3. La lista de pantallas. Stash incluye cuatro pestañas («Inicio», «Buscar», «Salas» y «Configuración»), además de una pantalla para añadir elementos y una vista de detalles de los mismos. Seis pantallas. Eso es toda una aplicación.

A continuación, entrega ese archivo al plan agente y pídele que discuta contigo: “Lee este resumen. Enumera los flujos de usuario, los casos extremos en los que no he pensado y las pantallas que me faltan. Después, dime qué debería eliminar”.” Este es precisamente el tipo de trabajo tedioso y minucioso para el que sirve “max effort”: preguntas del tipo «¿qué pasa si el usuario deniega el acceso a la cámara?». Dedicarle diez minutos puede ahorrarte tener que rediseñar todo.

Configura las variables antes de dibujar nada

Figma variables Son valores predefinidos: colores, espaciado, radios de las esquinas y tamaños. Configúralos primero, con un modo claro y otro oscuro para los colores, y tu aplicación tendrá un aspecto coherente por defecto.

Con un agente de IA, cobran el doble de importancia. Cuando el agente implementa una pantalla, el servidor MCP de Figma puede proporcionarle las variables exactas utilizadas en ese fotograma (el get_variable_defs (herramienta), por lo que escribe colores.verde en lugar de intentar adivinar un código hexadecimal a partir de una captura de pantalla.

Esta es la paleta de colores del concepto de diseño público de Stash:

TokenValorSe utiliza paraContraste sobre papel
Papel#F6F4EEAntecedentes de la aplicación—
Superficie#FFFCF7Cartas y campos—
Tinta#172E2ATexto principal13.1 : 1
Verde#23594CBotones, estados seleccionados, marca7.3 : 1
Verde suave#E1EBE4Lo más destacado de «Quiet»—
Coral#D46F4FPunto de acento, una palabra en un titular3.1 : 1
Coral suave#F8E8DEReflejos cálidos—
Silenciado#6E7D76Texto secundario3.9 : 1
Línea#DEDFD7Separadores y bordes—

Los titulares utilizan una tipografía con serifas; el resto utiliza la tipografía sans-serif del sistema. Ese es todo el sistema tipográfico.

La columna de contraste es la parte que hay que copiar. El negro y el verde superan con holgura la relación de 4,5:1 que exigen las WCAG para el texto normal. El coral, con una relación de aproximadamente 3:1, solo cumple los requisitos para el texto grande, por lo que debe utilizarse en palabras destacadas de los titulares y en pequeños puntos de acento, que es precisamente donde lo utiliza Stash. El gris apagado se sitúa en 3,9:1, por lo que debe utilizarse en leyendas más grandes en lugar de en letra pequeña. Compruébalo en Figma antes de que el agente copie un token en cincuenta sitios.

Mostrar imagen Nueve colores, dos tipos de letra, unos cuantos componentes. Un sistema de diseño no tiene por qué ser extenso para resultar útil; lo importante es que esté documentado.

Crea cinco componentes, no cincuenta

Para crear una primera aplicación, necesitas más o menos cinco componentes reutilizables: un botón (primario y tranquilo), un campo de texto, un tarjeta, un fila o casilla de la lista (la ficha de la habitación de Stash) y la barra de pestañas. Crea estos elementos como componentes de Figma con variantes para sus diferentes estados: predeterminado, pulsado, desactivado y error.

Apple publica recursos oficiales de diseño de iOS para Figma. Úsalos como referencia para elementos del sistema, como ventanas, alertas y el teclado, en lugar de volver a dibujarlos. De todos modos, tu agente utilizará los componentes reales del sistema.

Diseña las pantallas que el agente olvidará

Los agentes de IA se desenvuelven muy bien en el «camino ideal», pero son terriblemente ineficaces en todo lo que lo rodea. Diseña estos agentes a propósito:

  • Estados vacíos. La primera apertura: una habitación vacía (la cuadrícula de habitaciones de Stash muestra “Aún no hay objetos”), una búsqueda sin resultados.
  • Texto enorme. Ajusta tu móvil al tamaño máximo de «Dynamic Type» y fíjate en tus diseños. Los nombres largos de los elementos se ajustan a la línea. Los botones se hacen más grandes.
  • Modo oscuro, en todas las pantallas, no solo en las más bonitas.
  • No hay foto. ¿Cómo es la ficha de un objeto sin ella?
  • Permiso denegado. El usuario ha rechazado la cámara. ¿Y ahora qué?
  • Sin conexión. ¿Cómo se ve el mensaje “Guardado, se sincronizará más tarde”?

Deja que la IA te ayude dentro de Figma, pero mantén el control sobre la fuente de información

La IA de Figma ha madurado rápidamente este año. La Agente de Figma Entró en fase beta abierta para todos los planes de pago en Config 2026, y es gratuito durante la beta para las suscripciones Full. Permite generar y remezclar diseños dentro de tu archivo. Figma Make convierte las indicaciones en prototipos en los que se puede hacer clic. Tejido Ahora, las herramientas permiten realizar tareas relacionadas con las imágenes, como cambiar el fondo, sin salir del archivo de diseño.

Son excelentes para explorar. Crea diez variaciones de una pantalla de inicio, toma la única idea buena y, a continuación, reconstrúyela con tus propios componentes y variables. Si las capas generadas se convierten en tu fuente de referencia, tu sistema de diseño se desvía y el agente de programación hereda esa desviación.

Stash hace algo que recomendaría a cualquiera: sus ideas experimentales se recogen en un concepto interactivo independiente y claramente identificado en la página web, no en la aplicación. Así puedes explorar en público sin prometer funciones que aún no existen.

Crea un prototipo y, a continuación, observa cómo lo utilizan tres personas

Conecta las pantallas para crear un prototipo interactivo, entrega tu móvil a tres personas y pídeles a cada una que guarde algo y lo vuelva a encontrar. No les des ninguna explicación. Observa en qué momentos dudan. Tres personas detectarán la mayoría de los problemas importantes, y arreglar un marco en Figma lleva unos minutos, mientras que hacerlo después de que el agente lo haya creado requiere una sesión completa.


Parte 6 — Cómo conectar Figma con OpenCode: el problema del MCP

Esta es la parte del flujo de trabajo que, cuando funciona, parece sacada del futuro: seleccionas un fotograma en Figma, le pides al agente que lo cree y este lee el diseño real, las variables reales y los componentes reales, en lugar de tener que entrecerrar los ojos para ver una captura de pantalla.

Además, es la parte en la que la mayoría de las guías se saltan un detalle que te hará perder toda una tarde.

Lo que el servidor MCP de Figma ofrece a un agente

El MCP (Model Context Protocol) es el método estándar que utilizan los agentes de IA para utilizar herramientas externas. El servidor MCP de Figma pone a disposición un conjunto de herramientas; estas son las que resultan importantes para desarrollar una aplicación:

HerramientaQué devuelve
get_design_contextEl contexto de diseño de la capa o el marco seleccionado. Figma lo denomina «punto de partida predeterminado».
get_variable_defsLas variables y los estilos utilizados en la selección: tus colores, el espaciado y el tipo de letra
get_screenshotUna imagen de la selección, para que el agente pueda comparar su resultado
get_metadataUn esquema XML simplificado de la estructura de capas
get_code_connect_mapCorrespondencias entre los componentes de Figma y los componentes de tu código real
crear_reglas_del_sistema_de_diseñoUn script que genera un archivo de reglas en el que se describe tu sistema de diseño para el agente

También hay escriba a herramientas (use_figma para crear y editar contenido nativo de Figma, generar_diseño_en_Figma (como convertir una interfaz de usuario web en funcionamiento en capas de Figma, entre otras cosas), pero casi todas ellas solo están disponibles en el servidor remoto. No te olvides de esto.

Servidor remoto frente a servidor de escritorio

Figma ejecuta dos versiones del servidor:

  • El servidor remoto en https://mcp.figma.com/mcp. Figma lo recomienda; no necesita la aplicación de escritorio, funciona en todas las licencias y planes, y cuenta con el conjunto completo de herramientas, incluida la posibilidad de escribir en el lienzo.
  • El servidor de escritorio en http://127.0.0.1:3845/mcp, que se ejecuta dentro de la aplicación de escritorio de Figma. Requiere un Licencia «Dev» o «Full» en un plan de pago, y es principalmente de solo lectura.

El problema: OpenCode aún no está permitido en el servidor remoto

El servidor remoto solo admite clientes autorizados durante su fase beta. La lista de Figma incluye, entre otros, Claude Code, Codex, Cursor, VS Code, Gemini CLI, Kiro, Warp y Xcode. OpenCode no aparece en la lista. Intenta conectarte y el proceso de registro falla con un error HTTP 403.

No se trata de un error por parte de OpenCode. En mayo, un miembro del equipo de Figma explicó en el foro de Figma que el ámbito de conexión es “acceso restringido de forma intencionada a los clientes con soporte técnico mientras estamos en fase beta”, y redirigió a los usuarios al servidor de escritorio, que “elude por completo el problema de OAuth y la lista de permitidos”.” El equipo de OpenCode tiene abierta una solicitud de incorporación de cambios para añadir un cliente registrado de Figma, que, en el momento de redactar este artículo, sigue a la espera de la aprobación de Figma.

Encontrarás publicaciones que te sugieren que utilices el ID de cliente OAuth de otra aplicación para eludir la lista de aplicaciones autorizadas. No lo hagas. Utiliza el servidor de escritorio y espera a que haya soporte oficial.

Mostrar imagen Hay tres vías para pasar de Figma a OpenCode. Solo una de ellas es un callejón sin salida, y es precisamente la que Figma recomienda a todo el mundo.

Configuración del servidor de escritorio con OpenCode

  1. Instala el Aplicación de escritorio de Figma e inicia sesión con una cuenta que tenga una licencia «Dev» o «Full» en un plan de pago. En el plan «Professional», una licencia «Dev» cuesta $12 al mes y una licencia «Full», $16.
  2. Abre tu archivo de diseño y cambia a Modo de desarrollo con Shift + D.
  3. En el panel «Inspeccionar», busca el Servidor MCP sección y haz clic en Habilitar el servidor MCP de escritorio.
  4. Añádelo a OpenCode. Puedes utilizar el figma-escritorio bloque de la configuración de la Parte 4, o bien ejecuta:

bash

   opencode mcp add figma-desktop --url http://127.0.0.1:3845/mcp

Si OpenCode intenta iniciar un proceso de inicio de sesión mediante OAuth, configura "oauth": false en el servidor, en opencode.jsonc. El servidor de escritorio es local y no necesita ninguno. 5. Comprueba que esté conectado con Lista de MCP de OpenCode.

Mantén abierta la aplicación de escritorio de Figma mientras trabajas. Si Figma está cerrada, las herramientas de Figma del agente simplemente desaparecen.

Ten en cuenta los límites de frecuencia

En el plan Professional, las licencias Dev y Full ofrecen hasta 200 llamadas al día a la herramienta MCP y 10 por minuto. Las licencias «Organization» tienen un límite de 15 llamadas por minuto; las de «Enterprise», de 600 al día y 20 por minuto. Las licencias «View» y «Collab» tienen un límite de unas pocas llamadas al mes. Doscientas pueden parecer muchas hasta que un agente impaciente llama get_screenshot después de cada pequeña modificación, así que indícale, en AGENTS.md, que compare con la captura de pantalla una vez por pantalla en lugar de una vez por cambio.

El patrón de indicaciones que funciona

Selecciona un marco en Figma y, a continuación, en OpenCode:

Implementa el marco de Figma seleccionado como la pantalla «Añadir elemento». Primero, llama a `get_design_context` y a `get_variable_defs`. Utiliza únicamente tokens de `src/theme/tokens.ts`; si falta algún valor, añade un token en lugar de codificarlo de forma estática. Reutiliza nuestros componentes Button, TextField y Card ya existentes. Cuando hayas terminado, llama a get_screenshot y enumera todas las diferencias visibles entre el marco y lo que has creado. A continuación, corrígelas.

Hay dos hábitos que hacen que esto sea mucho más fiable:

  • Correr crear_reglas_del_sistema_de_diseño una vez al inicio del proyecto y guarda el resultado como una sección de tu archivo AGENTS.md o como una habilidad en .opencode/habilidades/. A partir de ese momento, cada sesión conoce tus reglas de diseño sin que se le indiquen.
  • Un fotograma por solicitud. “Compilar toda la aplicación a partir de este archivo” da como resultado una aplicación completa en la que todo está un poco mal. Si se va creando pantalla por pantalla, las pantallas salen bien.

¿No hay plazas de pago? La ruta gratuita

Puedes hacer todo esto sin MCP. M3.1 lee imágenes, así que exporta cada fotograma como un PNG a 2x, adjúntalo a tu prompt y pega los valores de color y espaciado en un fichas archivo del repositorio. Se pierden los datos exactos de las capas y las consultas de variables, por lo que habrá que hacer más ajustes en cuanto al espaciado. Para una primera aplicación con seis pantallas, es totalmente viable y no cuesta nada.


Parte 7 — Cómo crear una aplicación desde cero, paso a paso

Esta es la parte de “empezar desde cero”. Siete fases, en el orden en que yo las llevaría a cabo, con las indicaciones y los escollos.

Fase 0 — Elige tu marco de trabajo

En 2026 tendrás tres opciones sensatas, y la más adecuada dependerá del entorno en el que deba ejecutarse tu aplicación.

SwiftUI + Xcode 27Expo SDK 56 (React Native)Flutter
Funciona coniPhone, iPad, Mac, Apple Watch, Vision ProiPhone, iPad, Android, webiPhone, iPad, Android, web, ordenador
IdiomaSwift 6.4TypeScriptDardo
¿Necesitas un Mac?SíSin necesidad de desarrollar ni enviar: el servicio EAS de Expo crea aplicaciones para iOS en la nubeSí, para las compilaciones de iOS, a menos que utilices CI en la nube
WidgetsWidgetKit nativoVersión estable para iOS desde el SDK 56Mediante plugins y código nativo de WidgetKit
Facilidad de uso para los agentesMuy bien, sobre todo con las propias herramientas MCP de Xcode; el compilador de Swift detecta muchos errores.Muy bien: tipos de TypeScript, recargas rápidas y una gran cantidad de código de ejemplo público.Bien
Lo mejor paraAplicaciones exclusivas de Apple que quieren todas las funciones nativasUn único código fuente para iPhone y Android, desarrollado por una sola personaUna interfaz de usuario con el mismo aspecto en todas las plataformas

Mi regla general:

  • Solo usas productos de Apple y quieres los últimos juguetes de la plataforma (Los marcos de IA integrados en el dispositivo de Apple, Live Activities, integración profunda en el sistema): SwiftUI, con OpenCode ejecutándose dentro de Xcode o utilizando las herramientas de Xcode (Parte 4).
  • iPhone y Android desde una misma base de código, y tú eres una sola persona: Expo SDK 56 se lanzó el 21 de mayo de 2026 con React Native 0.85, elevó su requisito mínimo a iOS 16.4, preparó para su uso en producción las capas de interfaz de usuario SwiftUI y Jetpack Compose, y pasó los widgets de iOS a la versión estable. Su servicio EAS compila y envía aplicaciones para iOS desde Windows o Linux, y el plan gratuito incluye 15 compilaciones para iOS y 15 para Android al mes.
  • Flutter si tú o tu equipo ya lo sabéis.

La ficha de Stash en la App Store indica que requiere iOS 16.4, y su política de privacidad ya incluye una versión para Android, por lo que está claro que está pensada para ir más allá del iPhone.

Fase 1: Estructura, compromiso, resumen

Crea el proyecto vacío y asegúrate de que funcione antes de que el agente lo modifique.

Exposición:

bash

npx create-expo-app@latest my-app
cd my-app
npx expo start # Ábrela en tu móvil con Expo Go o en el simulador de iOS

SwiftUI: En Xcode, selecciona Archivo → Nuevo → Proyecto → iOS → Aplicación, selecciona SwiftUI y ejecútalo una vez en el simulador.

A continuación, añade los archivos de la parte 4 (AGENTS.md y opencode.jsonc), además de otras dos:

  • ROADMAP.md: la lista de secciones verticales que aparece a continuación, con casillas de selección. El agente la lee, va marcando los elementos a medida que avanza y así siempre sabes en qué punto te encuentras.
  • src/theme/tokens.ts (o su equivalente en Swift): tus variables de Figma en forma de código. Pégalas a mano o deja que el agente las recupere con get_variable_defs.

Confirma los cambios. Si aún no tienes Git configurado, git init Primero. A partir de ahora, cada paso de trabajo terminará con un commit.

Fase 2: planificar el modelo de datos antes de diseñar ninguna pantalla

El modelo de datos es la decisión cuyo cambio resulte más costoso más adelante, ya que, una vez que los usuarios reales dispongan de datos reales, cualquier cambio requerirá una migración. Utiliza el plan agente a pleno rendimiento:

Estás planeando una aplicación del tipo “¿dónde lo he dejado?”. Lee los archivos AGENTS.md, ROADMAP.md y el pliego de condiciones. Propón el modelo de datos, el enfoque de almacenamiento local y la estructura de carpetas. La aplicación debe funcionar totalmente sin conexión y sin necesidad de crear una cuenta; las cuentas y la sincronización se incorporarán más adelante y no deben requerir reescribir la capa local. Enumera las ventajas e inconvenientes, las migraciones que necesitaríamos si añadiéramos la sincronización más adelante y cualquier aspecto ambiguo del pliego de condiciones. No escribas código todavía.

En el caso de una aplicación con una estructura similar a la de Stash, el resultado sería algo así (se trata de una ilustración, no del esquema real de Stash):

ts

type Room = {
  id: string;
  name: string; // "Pasillo"
  createdAt: number;
  updatedAt: number;
};

tipo Elemento = {
  id: cadena;
  nombre: cadena; // "Llaves de casa"
  idDeHabitación: cadena;
  ubicación?: cadena; // "Cajón superior"
  nota?: cadena; // "En el plato de cerámica de la izquierda"
  photoPath?: cadena; // primero el archivo local; copia en la nube solo con una cuenta
  voiceNotePath?: cadena;
  transcript?: cadena;     // lo que permite buscar en las notas de voz
  remindAt?: número; // recordatorio estacional
  createdAt: número;
  updatedAt: número; // se utiliza para resolver conflictos de sincronización
  deletedAt?: número; // eliminación temporal, para que las eliminaciones también se puedan sincronizar
};

Lee el plan con atención. Discútelo. Este es el momento más económico de todo el proyecto para cambiar de opinión.

Fase 3 — Desarrollo por secciones verticales

Una «sección vertical» es una funcionalidad que funciona de principio a fin, desde la pantalla hasta el almacenamiento y viceversa, antes de pasar a la siguiente. Este es el orden en el que desarrollaría una aplicación similar a Stash:

  1. Añadir un artículo: nombre, sala, ubicación y nota, guardados localmente.
  2. Fotos: cámara y galería de fotos, almacenadas como archivos locales.
  3. Inicio: los elementos guardados recientemente y la fila de habitaciones.
  4. Buscar en: por nombre, sala y nota, además de un filtro “con fotos”.
  5. Detalles del artículo y “Lo he encontrado”.
  6. Habitaciones: la cuadrícula, además de añadir, renombrar y eliminar salas.
  7. Notas de voz: grabar, transcribir y hacer que la transcripción sea consultable.
  8. Recordatorios: notificaciones locales sobre artículos de temporada.
  9. Widgets para la pantalla de inicio y la pantalla de bloqueo.
  10. Ajustes: creación, exportación y, una vez creadas las cuentas, su eliminación.
  11. Cuentas y sincronización: material de la segunda versión, si eres sensato.

Cada segmento sigue el mismo bucle:

  1. Plan: el plan El agente redacta un breve plan para la sección. Tú lo corriges.
  2. Diseño: Selecciona el marco de Figma y, a continuación, utiliza el patrón de indicaciones de la parte 6.
  3. Versión: el construir El agente implementa y ejecuta las pruebas, y corrige los errores que se producen.
  4. Hazlo tú mismo, en un dispositivo, e intenta estropearlo.
  5. Lee el archivo «diff». Todas las líneas que se van a enviar.
  6. Confirmar, marca la casilla en ROADMAP.md y abre una nueva sesión para la siguiente fase.

Esa sesión nueva es más importante de lo que parece. Aunque se disponga de un millón de datos contextuales, una sesión prolongada acumula suposiciones obsoletas. Empezar de cero y volver a leer los archivos AGENTS.md y ROADMAP.md suele ser más acertado que prolongar una sesión larga.

Fase 4: primero sin conexión y, después, sincronización

La política de privacidad de Stash describe un modelo que yo mismo aplicaría en casi cualquier aplicación personal: Sin una cuenta, todo se queda en el dispositivo; con una cuenta, los datos se sincronizan a través de un servidor. Hace que la primera versión sea más sencilla, facilita el proceso de revisión de la aplicación y refuerza la confianza de tus usuarios.

El orden de las operaciones:

  1. Primero, completa la capa local. SQLite a través de la biblioteca de Expo, o SwiftData en una aplicación nativa. Las fotos y las grabaciones se almacenan como archivos en el dispositivo.
  2. Añadir cuentas con la autenticación de Firebase. Para empezar, basta con iniciar sesión con el correo electrónico. Si añades Google u otro método de inicio de sesión de terceros como forma principal de acceder, la directriz 4.8 de Apple exige una opción equivalente centrada en la privacidad, como «Iniciar sesión con Apple».
  3. Sincronizar registros de elementos a Cloud Firestore, y las fotos y notas de voz a Cloud Storage, cada una en la ruta propia del usuario.
  4. Realiza tareas con privilegios en el servidor. Cualquier cosa que requiera derechos de administrador, como borrar todos los archivos al eliminar una cuenta, debe realizarse en Cloud Functions, nunca en el paquete de la aplicación.
  5. Asegúralo con reglas de seguridad de modo que cada usuario solo pueda leer y escribir sus propios datos:
rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{uid}/{document=**} {
 allow read, write: if request.auth != null && request.auth.uid == uid;
    }
  }
}

Escribe la regla equivalente para Cloud Storage y haz que el agente escriba pruebas que intenten leer los datos de otro usuario y fallen. El servidor MCP oficial de Firebase (que se encuentra en la configuración de la Parte 4) permite al agente comprender y validar tus reglas, y te pide tu aprobación antes de realizar cualquier cambio en el proyecto. La implementación sigue siendo tu responsabilidad, por lo que Firebase Deploy está denegado en los permisos.

Dos aspectos importantes. El plan gratuito «Spark» de Firebase incluye la autenticación (50 000 usuarios al mes) y las cuotas gratuitas de Firestore (1 GiB de almacenamiento, 50 000 lecturas y 20 000 escrituras al día), pero El almacenamiento en la nube y las funciones en la nube requieren el plan Blaze de pago por uso.. Blaze ofrece generosas cuotas gratuitas, que incluyen 5 GB de almacenamiento y 2 millones de invocaciones de funciones al mes, por lo que una aplicación pequeña puede seguir sin suponer ningún coste. De todos modos, configura una alerta de presupuesto desde el primer día.

Si quieres conocer el “porqué” más profundo que hay detrás del diseño «local-first», escribí sobre ello en Por qué el software «local-first» está volviendo a ganar popularidad.

Fase 5 — Los aspectos específicos del iPhone

Estos son los detalles que marcan la diferencia entre “funciona en mi móvil” y “supera la revisión”:

  • Las solicitudes de permiso deben ir acompañadas de motivos sinceros. La cámara, la galería de fotos, el micrófono y, si utilizas el marco de trabajo de voz de Apple, el reconocimiento de voz, necesitan cada uno una cadena de propósito que explique exactamente para qué sirven. “Para fotografiar dónde has dejado algo” es una buena opción. “Esta aplicación necesita acceso” es un motivo clásico de rechazo.
  • Pregunta en el momento adecuado. Pide que se envíen notificaciones cuando alguien configure su primer recordatorio, no al iniciar la aplicación por primera vez. La gente dice que sí cuando el motivo es obvio.
  • Prefiero el reconocimiento de voz integrado en el dispositivo siempre que el teléfono lo admita, e indica en tu política de privacidad que el servicio de reconocimiento de voz de la plataforma puede procesar audio. La política de Stash hace precisamente eso.
  • Los widgets son pequeñas aplicaciones independientes. Tienen su propio ciclo de vida, sus propios límites de memoria y su propia forma de leer tus datos. Asigna un «slice» completo para ellos.
  • Declaraciones de privacidad. Desde mayo de 2024, las aplicaciones (incluidos los SDK que contienen) deben declarar los motivos autorizados para el uso de determinadas API del sistema. Los SDK de Firebase incluyen sus propios manifiestos; asegúrate de que el tuyo también exista.
  • Modo oscuro, Tipo dinámico, VoiceOver. Marca las tres opciones en cada pantalla. Los agentes son mucho más fiables en lo que respecta a las etiquetas de accesibilidad cuando AGENTS.md las exige, así que haz que las exija.

Fase 6 — Prueba como un escéptico

El agente te dirá que ya está hecho. A menudo habrá pequeños errores, y a veces incluso grandes. Los agentes de Xcode 27 ahora pueden ejecutar pruebas y comprobar las vistas previas de SwiftUI por sí mismos, lo cual ayuda, pero nada sustituye a una persona con un móvil.

Automático: pruebas unitarias para la búsqueda, el modelo de datos y, sobre todo, la lógica de sincronización y fusión. Esos son los errores que provocan la pérdida de datos de los usuarios.

A mano, antes de cada lanzamiento:

  • Un dispositivo real, no solo el simulador
  • Modo avión: guarda, busca, edita; a continuación, vuelve a conectarte y comprueba que se sincroniza
  • Modo oscuro y el tamaño de letra más grande en todas las pantallas
  • VoiceOver: ¿puedes guardar y encontrar un elemento con los ojos cerrados?
  • Cada permiso denegado, uno por uno
  • Una instalación nueva y una actualización desde la versión anterior (los datos deben conservarse)
  • Eliminar cuenta: ¿se ha borrado realmente todo?

Cuando algo se rompa, anótalo. Utiliza la función de grabación de pantalla del iPhone, adjunta el vídeo y pregúntale a M3.1 qué pasa. Admite archivos de vídeo, y “mira esto” vale más que tres párrafos de explicación.

Plantillas de indicaciones para este tipo de aplicación

Adáptalas en lugar de copiarlas sin más.

Una porción:

Implementa la sección 4 de ROADMAP.md (búsqueda). Lee primero el archivo AGENTS.md. La búsqueda debe coincidir con los nombres de los elementos, los nombres de las habitaciones, las notas y las transcripciones de las notas de voz, sin distinguir entre mayúsculas y minúsculas, a medida que el usuario escribe. Añade un filtro “Con fotos”. Escribe primero las pruebas unitarias y, después, la implementación. Ejecuta las pruebas y el verificador de tipos. Muéstrame las diferencias y una lista de las suposiciones que hayas hecho.

Un error:

Adjunto hay una grabación de pantalla. En un iPhone con el tamaño de letra más grande, el teclado tapa el botón «Guardar» de la pantalla «Añadir». Averigua la causa, explícala en dos frases, soluciona el problema y comprueba si hay el mismo problema en los demás formularios de la aplicación.

Una reseña:

Revisa todos los cambios realizados desde la última confirmación como si fueras un revisor sénior de iOS con espíritu escéptico. Busca fallos que provoquen bloqueos, pérdidas de datos, fugas de privacidad, etiquetas de accesibilidad que falten, colores codificados de forma rígida y cualquier cosa que impida el uso sin conexión. No corrijas nada todavía; envíame una lista numerada, empezando por lo más grave.

Vale la pena ejecutar ese último comando antes de cada commit. Solo lleva un minuto y detecta los problemas que, de otro modo, te costarían todo un fin de semana.


Parte 8 — Cómo publicar una aplicación en la App Store en 2026

Desarrollar la aplicación es lo divertido. Publicarla es un rollo de papeleo, y es precisamente con ese papeleo con lo que los desarrolladores novatos pierden una semana. Aquí lo tienes todo reunido en un solo sitio.

Requisitos de Apple a partir de octubre de 2026

RequisitoDetallesEn vigor desde
Programa para desarrolladores de Apple$99 al año (99 € en Alemania). Las empresas se inscriben como organización, para lo cual es necesario disponer de un número D-U-N-S.—
Herramientas de compilaciónLos archivos subidos deben haberse compilado con Xcode 26 o posterior utilizando el SDK de iOS 2628 de abril de 2026
Objetivo mínimoLas aplicaciones deben estar dirigidas a iOS 13 o posterior9 de septiembre de 2026
Clasificación por edadesResponde a las preguntas actualizadas de Apple sobre la clasificación por edades31 de enero de 2026
Declaración de privacidadMotivos aprobados para las API de “motivo obligatorio”, incluidas las de los SDK de terceros1 de mayo de 2024
Política de privacidadVinculado en App Store Connect y accesible desde la propia aplicación (directriz 5.1.1(i))—
Eliminación de la cuenta“Si tu aplicación permite crear cuentas, también debes ofrecer la posibilidad de eliminarlas desde la propia aplicación”.” (5.1.1(v))—
Condición de operador de la UETodos los promotores lo indican. La dirección, el teléfono y el correo electrónico de los agentes inmobiliarios aparecen en la página del producto en los 27 países de la UE.—

Las versiones actuales de Apple son Xcode 27 e iOS 27, ambas lanzadas el 14 de septiembre de 2026. Aún no es necesario compilar con Xcode 27, pero ya no se puede subir nada compilado con Xcode 16 o versiones anteriores (Apple pasó directamente de Xcode 16 a 26 cuando adoptó la numeración de versiones basada en el año).

Nota para los desarrolladores alemanes y de la UE: Si publicas como empresa, se te considera un comerciante según la Ley de Servicios Digitales de la UE, y Apple verifica tus datos de contacto antes de mostrarlos en la página de tu producto. En febrero de 2025, Apple retiró miles de aplicaciones de las tiendas de la UE por carecer de esta información. No seas uno de ellos.

App Store Connect, campo por campo

Crea el registro de la aplicación en App Store Connect y, a continuación, rellena los siguientes campos:

  • ID del paquete. Un identificador de dominio inverso que nunca cambia, como el de Stash network.grahammiranda.stash. Elígelo con cuidado.
  • Nombre (30 caracteres) y subtítulo (30). Usos de Stash Stash — Encuéntralo rápido y Encuentra cualquier cosa que hayas guardado: la marca y la ventaja, y luego la ventaja explicada con palabras sencillas.
  • Palabras clave (100 caracteres), separados por comas y sin espacios. No repitas palabras que ya aparezcan en tu nombre o subtítulo; de todos modos, se cuentan.
  • Texto promocional (170 caracteres), que puedes modificar sin necesidad de una nueva revisión, y el descripción (4,000).
  • Capturas de pantalla. De una a diez por tamaño de dispositivo, en formato PNG o JPEG, sin transparencia. Para el iPhone, el tamaño de 6,9 pulgadas (1320 × 2868) o el de 6,5 pulgadas (1284 × 2778); para el iPad, el tamaño de 13 pulgadas (2064 × 2752). El conjunto de Stash utiliza los tamaños de 6,5 pulgadas y 13 pulgadas.
  • Categoría. Una principal y una secundaria opcional. La categoría «Stash» es «Productividad», seguida de «Utilidades».
  • URL. Asistencia técnica, marketing y política de privacidad. Todo debe funcionar correctamente.
  • Privacidad de la aplicación, la “etiqueta nutricional”. Más adelante hablaremos de esto, porque es un tema en el que incluso las personas honestas siguen equivocándose.
  • Clasificación por edades cuestionario.
  • Información sobre la reseña de la aplicación: datos de contacto, notas para el revisor y, si tu aplicación requiere iniciar sesión, una cuenta de demostración. Un modo de invitado como el de Stash facilita mucho el trabajo del revisor.
  • Cumplimiento de la normativa de exportación. Si tu aplicación solo utiliza el cifrado integrado en el sistema operativo, como HTTPS, normalmente cumple los requisitos para una exención. Consulta las directrices de Apple y, a continuación, configura ITSAppUtilizaCifradoNoExento en tu Info.plist para que no te lo pregunten cada vez que subas algo.

Los campos de texto también suponen un buen trabajo para el agente: “Redacta el subtítulo, las palabras clave, el texto promocional y la descripción para la App Store. Utiliza únicamente las funciones que estén presentes en el código; indica el archivo en el que se encuentra cada una de ellas”.” Esa última instrucción evita que se inventen funciones.

TestFlight, antes que nada

Sube una compilación (desde el Organizador de Xcode o mediante eas build --platform ios --auto-submit en Expo) y probarlo primero a través de TestFlight:

  • Probadores internos: Si tu equipo tiene hasta 100 personas, no es necesario realizar una revisión.
  • Evaluadores externos: hasta 10 000, invitados por correo electrónico o mediante un enlace público. La primera versión externa se somete a una breve revisión de la aplicación en fase beta.
  • Las compilaciones se mantienen disponibles para su prueba durante 90 días.

Dáselo a cinco amigos que tengan teléfonos distintos durante una semana. Ellos encontrarán el fallo que a ti se te ha pasado por alto.

¿Qué es lo que realmente hace que se rechacen las aplicaciones?

Apple afirma que “De media, se revisan 90% de solicitudes en menos de 24 horas”, y que “Más de 40% de incidencias sin resolver están relacionadas con la directriz 2.1: Exhaustividad de la solicitud”.”: fallos, contenido provisional, información incompleta y enlaces rotos. Los problemas habituales en una primera aplicación:

DirectrizQué significa esto en la práctica
2.1 Integridad de la aplicaciónSin fallos, sin “Lorem ipsum”, sin enlaces rotos; datos de la cuenta de demostración si es necesario iniciar sesión
4.2 Funcionalidad mínima“Tu aplicación debería incluir funciones, contenidos y una interfaz de usuario que la hagan algo más que una simple versión renovada de una página web”.”
4.8 Servicios de inicio de sesiónSi el inicio de sesión a través de terceros es el método principal, también debes ofrecer una opción centrada en la privacidad, como «Iniciar sesión con Apple».
5.1.1(i) Política de privacidadEn App Store Connect y dentro de la aplicación; se indica qué datos se recopilan, quién los trata y cómo funciona su supresión.
5.1.1(v) Eliminación de la cuentaSi los usuarios pueden crear una cuenta, también pueden eliminarla desde la aplicación
Metadatos precisosLas capturas de pantalla y las descripciones muestran lo que hace realmente el binario, no la hoja de ruta.

Stash mantiene sus propuestas de diseño en la página web, claramente identificadas, y fuera de la página de la App Store, que es la parte derecha de esa última línea.

Etiquetas de privacidad: hay que hacerlas bien, no basta con que parezcan verosímiles

La definición de Apple es precisa: “‘Recoger’ se refiere a transmitir datos fuera del dispositivo de tal forma que tú y/o tus socios externos podáis acceder a ellos durante un periodo más largo del necesario para atender la solicitud transmitida en tiempo real.” No se recopilan los datos que se procesan únicamente en el dispositivo.

En la práctica, en el caso de una aplicación basada en Stash:

  • Solo modo invitado (no sale nada del teléfono): los datos no se recopilan.
  • Cuentas con sincronización: la dirección de correo electrónico, las fotos, las grabaciones de voz y las notas almacenadas en tu servidor son recogidos, ya que salen del dispositivo y se almacenan en un servidor, aunque solo el usuario pueda verlos. En la etiqueta figuran como datos vinculados al usuario, que se utilizan para el funcionamiento de la aplicación, pero no para el seguimiento.

El agente es un excelente auditor en este caso, ya que puede leer todas las llamadas de red del código fuente:

Revisa este código para identificar cada dato que sale del dispositivo: qué es, adónde va (qué SDK o punto final), si se almacena, durante cuánto tiempo y si está vinculado al usuario. Incluye los datos enviados por SDK de terceros. Genera una tabla que pueda utilizar para completar las preguntas sobre privacidad de las aplicaciones de Apple y el formulario de seguridad de datos de Google Play.

A continuación, asegúrate de que los tres documentos reflejen la misma información: tu política de privacidad, tu etiqueta de privacidad de la App Store y, si tu aplicación está disponible en Android, tu formulario de seguridad de datos de Google Play. La política de privacidad de Stash indica que su tabla de datos está redactada de forma que coincida con las declaraciones de ambas tiendas, lo cual es el estándar que debes seguir.

Mostrar imagen Imprímelo, pégalo junto a la pantalla y márcalo antes de cada primer envío.

Cómo se enviaba Stash

Stash 1.0 se puso en marcha el 23 de septiembre de 2026. La versión 1.0.1, con “Nuevo diseño y correcciones de errores”, seguida el 2 de octubre, nueve días después. Lanza la versión que funciona y luego mejórala ante el público: ese es el ritmo más adecuado que conozco para una primera aplicación.


Parte 9 — “Y otras cosas”: El kit de lanzamiento en torno a la aplicación

Una aplicación en la App Store que no tiene nada a su alrededor es como una tienda sin letrero. Aquí tienes el resto del kit, utilizando de nuevo Stash como ejemplo.

Una página de destino con una demostración que los usuarios pueden tocar

La página web de Stash tiene algunas características que yo copiaría para cualquier primera aplicación:

  • Una promesa en la parte superior de la página. “Guárdalo. Y recuerda dónde”.” A continuación, una frase y dos botones: descargar la aplicación o probarla en el navegador.
  • Una vista previa en tiempo real en el área principal. El teléfono de la derecha no es una imagen. Puedes tocarlo por todas partes.
  • Una demostración real en el navegador. A Página de inicio de ejemplo donde puedes buscar las claves, explorar las habitaciones y añadir un elemento de prueba. La demostración “se ejecuta en la pestaña de tu navegador”, no modifica los datos de la aplicación y borra todo al actualizar la página. Permite a los usuarios probar la idea antes de decidirse a instalarla.
  • Tres pasos, cuatro características, sin jerga técnica. Haz una foto del lugar. Ponle un nombre y asignale una habitación. Así podrás encontrarlo cuando lo necesites.
  • Las propuestas de diseño, claramente etiquetadas como conceptos, más que como características.
  • Diez idiomas (inglés, alemán, francés, español, italiano, neerlandés, portugués de Brasil, polaco, sueco y danés), cada uno con la correspondiente hreflang etiquetas para que los motores de búsqueda muestren la correcta, además de un selector de tema claro u oscuro.
  • Datos estructurados en la que se describe la aplicación como una Aplicación móvil, con su precio, plataformas y enlace a la App Store, para que los motores de búsqueda entiendan que la página trata sobre una aplicación.
  • Nada que dé miedo. El código de la página web no contiene herramientas de análisis, píxeles publicitarios, elementos integrados de redes sociales, fuentes externas, ni formularios de inicio de sesión ni de contacto. Solo almacena el idioma y el tema que hayas elegido en tu navegador.

Mostrar imagen La página de inicio de Stash. El teléfono de la derecha es una demostración en funcionamiento, no una captura de pantalla.

Una página estática como esta también es un primer proyecto perfecto para la misma configuración de OpenCode y M3.1: HTML básico, CSS y un poco de JavaScript, sin necesidad de utilizar ningún marco de trabajo, y puedes ver cada cambio al instante en el navegador.

Esta es información general proporcionada por alguien que ha pasado por ello, no constituye asesoramiento jurídico. En caso de duda, consulta a un abogado.

Los envíos desde Alemania implican algunas páginas más de las que te indicaría un tutorial estadounidense:

  • Aviso legal (Impressum) con arreglo al artículo 5 de la Digitale-Dienste-Gesetz (DDG), la ley alemana que sustituyó a la antigua Telemediengesetz en 2024: nombre de la empresa, dirección, director general, inscripción en el registro mercantil, datos de contacto y, en caso de disponer de él, el número de identificación fiscal.
  • Dos textos distintos sobre la privacidad. Uno para la página web y otro para la aplicación, ya que procesan datos diferentes. Stash tiene ambos, y en cada uno se indica claramente cuál estás leyendo.
  • Una política de privacidad de una aplicación con contenido real. La política de Stash incluye información sobre el responsable del tratamiento, un cuadro en el que se detalla exactamente qué datos se recogen y con qué finalidad, la base jurídica de cada finalidad según el artículo 6 del RGPD, los encargados del tratamiento implicados (Firebase, de Google), cómo se regulan las transferencias internacionales (el Marco de Protección de Datos UE-EE. UU. y las cláusulas contractuales tipo), la conservación y supresión de datos, los derechos de los usuarios, la autoridad de control competente, los menores, la seguridad y la forma en que se anuncian los cambios.
  • Una forma de eliminar una cuenta fuera de la aplicación. Stash ofrece un formulario web, además de la opción integrada en la aplicación. Google Play exige un enlace web para la eliminación de cuentas si tu aplicación permite a los usuarios crear cuentas, por lo que necesitarás uno de todos modos el día que lances la aplicación en Android.
  • Las condiciones de tratamiento de datos con tu proveedor de servicios de backend, que se acepta en su consola antes de que lleguen los datos reales de los usuarios.

Las cookies son otro clásico quebradero de cabeza. La página web de Stash evita en gran medida este problema, ya que no requiere consentimiento para nada: ni herramientas de análisis, ni píxeles publicitarios, ni seguimiento; solo recuerda el idioma y el tema. El banner de consentimiento más barato es aquel que nunca hace falta.

Coste en el primer año de desarrollar una aplicación con IA en 2026: $363 en la opción básica, $532 en la opción estándar y $1.204 en la opción avanzada, repartido entre Apple, MiniMax, Figma, Expo y Google Play
La cuota de la tarifa del móvil es la partida más importante de cualquier presupuesto. La cuota de Apple es la única que no se puede evitar.

Optimización de la App Store sin remedios milagrosos

La búsqueda en la App Store se basa en tu nombre, el subtítulo y las palabras clave, y los usuarios se deciden en cuestión de segundos basándose en tu icono y las primeras capturas de pantalla. Algunas reglas que siempre funcionan:

  • Nombre: marca más ventaja. “Stash — Find It Fast” explica a un desconocido para qué sirve la aplicación.
  • Las capturas de pantalla cuentan una historia, en orden. Las seis de Stash parecen un breve anuncio: Todo tiene su sitio. Encuéntralo. En cuestión de segundos. Guarda ese lugar. Tu hogar. Habitación por habitación. Recuerda los pequeños detalles. Nítido. Con cualquier luz. Mucha gente nunca se desplaza más allá de los dos o tres primeros, así que coloca el bucle principal ahí.
  • Localiza el anuncio en todos los idiomas que tu aplicación admita realmente.
  • Pide valoraciones en un momento en el que estés de buen humor. La solicitud de valoración de Apple puede aparecer como máximo tres veces al año por usuario, así que no la desperdicies en la primera vez que se inicie la aplicación. En una aplicación como Stash, el momento ideal es justo después de que el usuario pulse “Lo he encontrado”.
  • Utiliza textos promocionales para las diferentes temporadas. La limpieza de primavera, la mudanza, guardar las cosas de invierno. Todo cambia sin necesidad de una nueva revisión.

Android, cuando estés listo

Si has desarrollado con Expo o Flutter, en Android basta, en la mayoría de los casos, con ejecutar una compilación. Los trámites son más sencillos, pero diferentes:

  • Google Play cobra $25 una vez para abrir una cuenta de desarrollador.
  • Nuevas cuentas personales (creadas después del 13 de noviembre de 2023) deben realizar una prueba cerrada con al menos 12 participantes, que se hayan inscrito durante 14 días consecutivos, antes de poder publicar. Las cuentas de las organizaciones están exentas, lo cual es una razón más para publicar a través de una editorial, si es que tienes una.
  • El formulario de seguridad de los datos Es la versión de Google de la etiqueta de privacidad. Asegúrate de que sea coherente con tu política de privacidad y con las respuestas que has facilitado en la App Store.

Parte 10 — Cuánto cuesta desarrollar una aplicación con IA en 2026

El software de esta pila es, en su mayor parte, gratuito. Lo que pagas es el modelo, la suscripción a Apple y, opcionalmente, una licencia mejorada de Figma.

ArtículoPrecio de catálogoCuando lo necesites
Programa para desarrolladores de Apple$99 al año (99 € en Alemania)Para poder publicar en la App Store
OpenCode v2Gratuito, licencia del MITSiempre
Plan MiniMax MGo $22, Explore $55, Build $132 al mes (50% de descuento en la primera cuota mensual hasta el 14 de octubre)Para utilizar M3.1-Flash-Preview
FigmaVersión Starter gratuita; licencia Professional Dev: $12 al mes; licencia completa: $16Una licencia de pago exclusiva para el servidor MCP de escritorio
XcodeFreeCompilaciones nativas en un Mac con Apple Silicon
Expo EASPlan gratuito con 15 compilaciones para iOS y 15 para Android al mes; plan Starter: $19 al mesSi compilas con Expo
FirebasePlan Spark gratuito; Blaze es un plan de prepago con cuotas gratuitasCuentas y sincronización; Almacenamiento y funciones necesitan Blaze
Google Play$25, una vezSolo si utilizas Android
Página de destinoSea cual sea el coste de tu alojamiento web y tu dominioMuy recomendable

Tres presupuestos realistas para el primer año

Presupuesto¿Qué contiene?Primer año
LeanSuscripción a Apple + Plan M Go; Figma Starter con fotogramas exportados; Expo, Firebase y OpenCode en sus planes gratuitos$363
CómodoLean + una licencia de Figma Dev para el servidor MCP de escritorio + Google Play$532
PotenciaApple + Plan M Explore + una suscripción completa a Figma + Expo Starter + Google Play$1,204

Mostrar imagen La cuota de la tarifa del móvil es la partida más importante de cualquier presupuesto. La cuota de Apple es la única que no se puede evitar.

Precios de catálogo en dólares estadounidenses a 5 de octubre de 2026, sin IVA, según las tarifas mensuales completas (sin descuentos de lanzamiento). Tu factura final dependerá de tus usuarios; a pequeña escala, las cuotas gratuitas de Firebase suelen cubrirla. De todos modos, configura una alerta de presupuesto.

El presupuesto ajustado asciende a unos $30 al mes. Sin embargo, el verdadero coste del proyecto no figura en la lista: son tus tardes. La IA reduce el tiempo dedicado a escribir, pero no al pensamiento, y el pensamiento es lo que más tiempo lleva.


Parte 11 — Diez errores que debes evitar al crear tu primera aplicación con IA

  1. Empezar por el código en lugar de por un resumen. El agente se encargará encantado de crear la aplicación equivocada en muy poco tiempo.
  2. Construirlo todo a la vez. “Crear la aplicación completa” te da una aplicación completa que presenta pequeños fallos por todas partes. Crea secciones verticales.
  3. Se omite el archivo AGENTS.md. Sin ello, cada sesión empieza desde cero y el agente vuelve a tomar decisiones que ya habías tomado.
  4. Permitir que el agente añada dependencias libremente. Cada paquete supone código que no has leído, un aumento del tamaño de la aplicación y una futura actualización que gestionar. Haz que te pida permiso.
  5. Establecer colores y tamaños de forma fija. Entonces, cambiar el diseño implica editar 140 archivos. Los tokens, como siempre.
  6. Creer que “ya está hecho”. Los agentes informan de los resultados con optimismo. Pruébalo en un teléfono real, en modo avión, en modo oscuro y con el tamaño de letra más grande.
  7. Cómo introducir claves secretas en la aplicación. Se puede extraer cualquier cosa que haya dentro del paquete de una aplicación. Las claves API que conllevan un coste o que otorgan acceso de administrador se almacenan en un servidor.
  8. Una etiqueta de privacidad que resulta verosímil, pero no precisa. Si los datos salen del dispositivo y permanecen en un servidor, se recogen, incluso cuando solo el usuario puede verlos.
  9. Olvidarse de eliminar la cuenta. Apple lo exige en la aplicación si permites el registro; Google Play también exige un enlace web.
  10. Te prometo tu hoja de ruta. Las capturas de pantalla y las descripciones muestran lo que hace la aplicación en la actualidad. Los conceptos deben aparecer en tu página web, etiquetados como «conceptos».

Y una más, por si acaso: No he leído el archivo diff. Programar con estilo «Vibe» significa no escribir cada línea. No significa no leer las líneas que se publican. Los números de seguridad en mi El estado de la IA en 2026 La razón son las redadas.


Parte 12 — ¿Deberías utilizar precisamente esta pila? Seis situaciones

1. “Nunca he escrito ni una sola línea de código”.”

Expo, la aplicación de escritorio OpenCode, M3.1 en el nivel «Go» del Plan M y el plan gratuito de Figma con marcos exportados. Tu primera aplicación debe limitarse a un único bucle principal, como el de «guardar y buscar» de Stash. No utilices comandos de shell preguntar, realiza un commit después de cada paso de trabajo y utiliza /undo sin sentirse culpable.

2. “Lo único que me importa es el iPhone, y quiero que sea totalmente nativo”.”

SwiftUI en Xcode 27, con OpenCode, ya sea desde dentro de Xcode a través de ACP o en la terminal con las herramientas MCP de Xcode. M3.1 para la planificación y el desarrollo. Tendrás acceso prioritario a los marcos de trabajo más recientes de Apple y a la integración más completa con el sistema.

3. “Ya pago por Claude o ChatGPT”.”

Aprovecha lo que tienes y sé justo a la hora de valorar en qué aspectos destaca. Claude Code, Codex y Cursor figuran hoy en la lista de aplicaciones autorizadas de Figma para el servidor MCP remoto, incluidas las herramientas de escritura en el lienzo a las que OpenCode aún no tiene acceso. OpenCode puede iniciar sesión directamente con ChatGPT Plus o Pro. Añade M3.1 a través de OpenCode para aquellas tareas en las que destacan su contexto de un millón de tokens y la entrada de vídeo.

4. “Quiero que el inicio sea lo más barato posible”.”

MiniMax M3 en lugar de M3.1 (a través de OpenCode Go por $10 al mes, o con pago por uso), Figma Starter, las compilaciones gratuitas de Expo y el plan gratuito de Firebase. La suscripción a Apple de $99 es el único gasto que no puedes evitar si quieres crear una aplicación para iPhone. Si aún no estás preparado para ello, crea primero la versión web.

5. “Mi aplicación gestiona datos confidenciales”.”

Diseña pensando primero en el modo invitado, reduce al mínimo el uso de SDK de terceros y ten en cuenta también dónde va a ir tu código. Tus instrucciones y tu código fuente se envían al proveedor del modelo. En el caso de proyectos muy confidenciales, los modelos locales a través de Ollama mantienen todo en tu propio ordenador (mi Artículo sobre OpenCode v2 (que cubre esa configuración), y pide a un experto en privacidad que revise la aplicación antes de su lanzamiento.

6. “Desarrollo aplicaciones para clientes”.”

Un plan «Organization» de Figma con Code Connect, las políticas de OpenCode para controlar qué proveedores puede utilizar cada proyecto de cliente, un nivel «M Plan» con capacidad para varios agentes en paralelo y compilaciones EAS de pago. Incluye las reglas de diseño de cada cliente en una habilidad confirmada o en el archivo AGENTS.md, para que todas las sesiones y todos los compañeros de equipo partan de las mismas reglas.


Parte 13 — A qué hay que estar atento en los próximos meses

  • La versión completa M3.1 de MiniMax. Si se lanza al mercado, si se le asigna un precio por token, si se publican índices de referencia y ponderaciones abiertas como en el caso del M3, y si la versión preliminar de Flash llega a OpenRouter, OpenCode Go u Ollama Cloud.
  • OpenCode figura en la lista de permitidos de Figma. La solicitud de incorporación de cambios de OpenCode para un cliente registrado de Figma está pendiente en Figma. Cuando se apruebe, las herramientas de escritura del servidor remoto estarán disponibles para los usuarios de OpenCode.
  • Precios de la función «Write-to-Canvas» de Figma. Figma afirma que esas funciones son gratuitas durante la fase beta y que, más adelante, su coste dependerá del uso que se haga de ellas.
  • Capas de código de Figma, presentado en Config, que promete diseño y código en un mismo lienzo.
  • OpenCode v2 va ganando madurez: Vuelve la función de compartir sesión, los complementos se están poniendo al día y las versiones 2.0.x se están estabilizando.
  • Próximo plazo para el SDK de Apple. Si Apple sigue su patrón habitual, las compilaciones realizadas con Xcode 27 serán obligatorias para las subidas a partir de la próxima primavera.
  • El propio Stash. Las tres propuestas de diseño que aparecen en su página web (marcar el punto exacto, «Quick Move», cajas y etiquetas) muestran hacia dónde se dirigen las ideas.

Preguntas frecuentes

¿Puedo crear una aplicación desde cero sin tener experiencia en programación?

Sí. En 2026, un agente de programación basado en IA, como OpenCode, combinado con un modelo potente como MiniMax M3.1, escribirá el código mientras tú tomas las decisiones: qué hace la aplicación, qué aspecto tiene, qué datos almacena y cómo la pruebas. Aún así, tendrás que aprender a leer un plan, revisar las diferencias, realizar pruebas en un dispositivo real y manejar App Store Connect. Empieza con una aplicación que tenga un único bucle principal y que no implique pagos.

¿Cuánto tiempo se tarda en desarrollar una aplicación con IA?

Depende mucho más del alcance que de las herramientas. Una aplicación pequeña con un único bucle principal, como una aplicación para guardar y buscar, se puede desarrollar en unas pocas semanas trabajando por las tardes, en lugar de meses, si se crea por partes y se va probando sobre la marcha. La publicación añade unos días para los trámites de TestFlight y la App Store; Apple afirma que el 90% de las solicitudes se revisan en menos de 24 horas.

¿Qué es MiniMax M3.1?

MiniMax M3.1 es la nueva generación de la familia de modelos M3 de MiniMax. A partir de octubre de 2026, la única versión que podrás utilizar es MiniMax-M3.1-Flash-Preview, lanzada el 27 de septiembre de 2026: un modelo de codificación multimodal con una ventana de contexto de 1 000 000 de tokens, entrada de texto, imágenes y vídeo, razonamiento permanente y cinco niveles de esfuerzo, desde el más bajo hasta el máximo. Solo está disponible a través de la suscripción al Plan M de MiniMax y de la aplicación MiniMax Code.

¿Está disponible MiniMax M3.1 a través de la API?

Solo con una clave de suscripción. M3.1-Flash-Preview funciona en los puntos finales de MiniMax compatibles con OpenAI y Anthropic, pero solo con una clave de suscripción del Plan M. Todavía no hay tarifa de pago por uso, ni pesos abiertos, ni está disponible en OpenRouter, Ollama Cloud u OpenCode Go. MiniMax M3 sigue estando disponible en modo de pago por uso a $0,30 por millón de tokens de entrada y $1,20 por millón de tokens de salida.

¿Cómo se utiliza MiniMax M3.1 en OpenCode?

Instala OpenCode v2, ábrelo en la carpeta de tu proyecto y ejecuta /connect, selecciona “MiniMax Token Plan (minimax.io)” y pega tu clave de suscripción al Plan M. A continuación, ejecuta /models y selecciona MiniMax-M3.1-Flash-Preview. No se necesita ningún archivo de configuración, aunque sí un proyecto opencode.jsonc te permite establecer niveles de esfuerzo por agente y añadir permisos.

¿Funciona el servidor MCP de Figma con OpenCode?

En parte. El servidor MCP remoto de Figma solo acepta clientes autorizados durante su fase beta, y OpenCode aún no figura en la lista, por lo que la conexión falla con un error HTTP 403. El servidor MCP de escritorio de Figma sí funciona: actívalo en «Modo de desarrollo» en la aplicación de escritorio de Figma y configura OpenCode para que apunte a http://127.0.0.1:3845/mcp. Requiere una licencia «Dev» o «Full» en un plan de pago y ofrece principalmente herramientas de solo lectura.

¿Necesito un Mac para desarrollar una aplicación para iPhone?

No necesariamente. El desarrollo nativo con Xcode requiere un Mac, y Xcode 27 necesita un procesador Apple Silicon. Con Expo, EAS compila tu aplicación para iOS en la nube y EAS Submit la sube a App Store Connect desde macOS, Windows o Linux. Seguirás necesitando un iPhone para realizar pruebas, y necesitarás ser miembro del Programa para Desarrolladores de Apple para publicarla.

¿Cuánto cuesta publicar una aplicación en la App Store?

El Programa para Desarrolladores de Apple cuesta $99 al año, o su equivalente local (99 € en Alemania). Apple no cobra por aplicación ni por envío. Los costes de desarrollo dependen de las herramientas que utilices; la configuración básica que se describe en esta guía asciende a unos $363 durante el primer año, incluida una suscripción al Plan M de MiniMax, con planes gratuitos para OpenCode, Figma, Expo y Firebase.

¿Cuánto tiempo tarda la revisión de la App Store?

Apple afirma que, de media, se revisan 90% de solicitudes en menos de 24 horas. El motivo más habitual por el que las aplicaciones quedan bloqueadas es la directriz 2.1, «Integridad de la aplicación»: fallos de funcionamiento, contenido provisional, información de revisión incompleta y enlaces rotos, incluidas las URL de la política de privacidad y de asistencia técnica.

¿Debería usar SwiftUI, React Native (Expo) o Flutter?

Utiliza SwiftUI con Xcode 27 si tu aplicación es exclusiva para Apple y quieres disponer de las últimas funciones de la plataforma. Utiliza Expo (React Native) si quieres una única base de código para iPhone y Android y trabajas en solitario: el SDK 56 es compatible con iOS 16.4 y versiones posteriores, cuenta con widgets estables para iOS y permite compilar en la nube. Utiliza Flutter si tú o tu equipo ya conocéis Dart.

¿Cuál es la diferencia entre el MiniMax M3 y el M3.1?

MiniMax M3, lanzado el 1 de junio de 2026, está disponible de forma generalizada con pesos abiertos, pruebas de rendimiento publicadas y precios por token, y funciona en numerosos proveedores. M3.1-Flash-Preview, lanzado el 27 de septiembre de 2026, es una versión preliminar disponible únicamente mediante suscripción, que aún no cuenta con pesos, precios ni pruebas de rendimiento, pero que ofrece un enfoque de «siempre activo» y cinco niveles de esfuerzo. Ambos tienen un contexto de 1 millón de tokens y admiten texto, imágenes y vídeo.

¿Qué es Stash?

Stash — Find It Fast es una aplicación gratuita para iPhone y iPad creada por Graham Miranda UG que recuerda dónde guardas las cosas. Solo tienes que hacer una foto del lugar, asignarle un nombre al objeto y una habitación, y luego buscarlo por nombre, habitación, nota o nota de voz transcrita. También ofrece recordatorios para objetos de temporada, widgets, uso sin conexión y sincronización entre el iPhone y el iPad. Se lanzó en la App Store el 23 de septiembre de 2026.

¿Stash recopila mis datos?

Stash no tiene anuncios, no realiza seguimiento analítico y no vende datos. En el modo de invitado, sin necesidad de crear una cuenta, tus habitaciones, objetos, fotos y notas de voz permanecen en tu dispositivo. Si creas una cuenta, se sincronizan a través de Google Firebase para que estén disponibles en tu iPhone y iPad, aislados de otros usuarios, y puedes eliminar tu cuenta y tus datos desde Ajustes o mediante un formulario web.


Conclusión

Crear una aplicación desde cero en 2026 ya no es cuestión de si sabes escribir el código. Un agente como OpenCode v2, que ejecuta un modelo como MiniMax M3.1, escribirá más código en una tarde del que tú leerías en una semana. El verdadero trabajo se ha desplazado a los márgenes: decidir qué es la aplicación, diseñarla con el cuidado suficiente para que un agente no la malinterprete, probarla con espíritu escéptico y realizar el tedioso papeleo que convierte una carpeta de proyecto en algo que un desconocido pueda descargar.

La pila de esta guía es la que recomendaría hoy en día. Figma para tomar decisiones que se pueden ver. OpenCode v2 porque es abierto, permite la programación mediante scripts, gestiona cuidadosamente los permisos y no se ciñe a un único modelo. MiniMax M3.1 porque un millón de tokens de contexto y la entrada de vídeo se adaptan excepcionalmente bien a la creación de aplicaciones, siempre y cuando trates la vista previa como lo que es: una vista previa. Y los “elementos” (Firebase, TestFlight, etiquetas de privacidad, una página de destino, páginas legales), porque eso es lo que los usuarios ven realmente.

Así es como se ve Stash cuando se envía: una pequeña promesa, cumplida a la perfección. Descarga Stash en la App Storeo Prueba la demostración en el navegador Primero. Después, ve y crea el tuyo.


¿Estás creando tu primera aplicación con IA? Me gustaría saber qué marco de trabajo has elegido, si has conseguido que el servidor MCP de Figma se comunique con tu agente y qué tal te está yendo con MiniMax M3.1. Se aceptan correcciones y argumentos en contra; este artículo se actualizará cuando la situación cambie.

Aviso: Stash es una aplicación que he creado yo mismo y que ha publicado mi empresa, Graham Miranda UG. Es gratuita, no tiene anuncios ni compras dentro de la aplicación. En este artículo no hay enlaces de afiliados, y ninguna de las empresas mencionadas la ha patrocinado ni revisado antes de su publicación.

Última actualización: 5 de octubre de 2026.

Añade tu señal.

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

es_ESEspañol