— Ahora

El registro de trabajo

Lo que estoy construyendo, lanzando, leyendo y compartiendo. Actualizado cada par de semanas.

Planes e ideas en los que estoy trabajando →
Últimas 12 semanas

5 lanzamientos en los últimos 30 días

oct 2026LanzadoSolaar ahora muestra su evidencia antes de lanzar cualquier cosaNada de lo que construyen mis agentes de IA puede publicarse hasta que las revisiones de arquitectura y seguridad estén registradas. Cada agente especialista arranca ahora con hasta 78% menos para leer, y los controles de seguridad detrás de cada acción corren hasta 88% más rápido. Las actualizaciones ahora llegan a los 14 proyectos sin fallar en silencio. La semana completa está en Notas.
oct 2026LanzadoLos asistentes de IA ya pueden consultar números de pieza LEGO reales, opens in new tabConstruí un pequeño servicio que le da a un asistente de IA el catálogo real de LEGO para consultar, en vez de adivinar números de pieza. Cubre 65.000 piezas, 275 colores y 28.000 sets, y solo lee datos: no puede modificar nada. Un proyecto personal, sin fines comerciales.
sept 2026Lanzadomariansan.io ahora es fácil de leer para asistentes de IA, opens in new tabAgregué un resumen en texto plano de todo el sitio que un asistente de IA puede leer de una sola vez, y comprobé que pasa una prueba de páginas legibles para IA (3 de 3, antes 1 de 2). Las páginas privadas siguen cerradas a los rastreadores y el resto los recibe, porque el objetivo de este sitio es compartir lo que aprendo.
sept 2026LanzadoSolaar fue auditado desde afuera — y arregló lo que falló, opens in new tabLe pedí a otra IA (Claude Fable 5.1) que auditara mi equipo de agentes, con una sola regla: demostrar todo. Encontró dos puntos débiles reales: una revisión de seguridad que nunca podía frenar nada y un guardián que dejó pasar 9 de 10 intentos de subir código directo a la rama principal. Solaar arregló ambos, y GitHub ahora bloquea esos envíos, incluso a mí. Después volvimos a probar en lugar de suponer. La prueba de envío directo pasó 4 de 4. Una regla sigue en 1 de 4, y estoy trabajando en ella.
sept 2026LanzadoVitals: los datos de tu noche ya no se pierden, opens in new tabVitals podía borrar los datos de ronquidos de anoche antes de que el servidor confirmara que los guardó. Una mala conexión y la noche desaparecía. Ahora los datos esperan seguros en el teléfono hasta que el servidor dice “guardado”. El estado de sincronización dice la verdad, día por día, en lugar de un “OK” genérico. Y pruebas automáticas ahora recorren todo el flujo nocturno antes de cada envío.
sept 2026LanzadoVitals ya se siente como una app de teléfono, opens in new tabNuevas pantallas de Inicio, Sueño, Actividad y Diario, una vista de ronquidos rediseñada y navegación día por día. En el camino arreglé un error que hacía desaparecer las entradas del diario al cambiar la fecha, y convertí la compilación de Android de un misterio en una lista de pasos.
sept 2026LanzadoSolaar ahora ve todos mis proyectos a la vez, opens in new tabSolaar mantiene una lista de mis 12 proyectos, y un solo comando envía las últimas reglas y agentes a cada uno. La primera corrida llegó a 7 de 12. Los otros 5 toparon con un error, y justo por eso pruebo. Ahora los 12 están sincronizados.
ago 2026En construcciónVitals: el camino para que el teléfono lea los datos de salud por su cuenta, opens in new tabSe construyó la tubería para que el teléfono lea los datos de salud directamente del almacén de salud de Android y los envíe al dashboard — la pieza que a futuro elimina al intermediario entre el reloj y la app. Leer ese almacén requiere código nativo, así que la app pasó a una compilación de desarrollo propia que sí lo permite. Se añadió un traductor que convierte el formato de Android al del dashboard, con pruebas detrás; el permiso para enviar datos quedó separado del que se usa para notificaciones, de modo que cada uno se administra por su cuenta; y hay una pantalla de diagnóstico que muestra una sincronización paso a paso. Dos preguntas de diseño pasan por la revisión de diseño antes de que esto llegue a una pantalla de usuario. Lo siguiente es manual: instalar la app y confirmar que los datos llegan.
ago 2026En construcciónVitals: primera app de Android instalable, opens in new tabLa app dejó de ser código y pasó a ser un archivo que se instala en un teléfono: la primera compilación de Android salió en verde. Llegar ahí pidió cuatro pasadas de ajuste sobre los cimientos del proyecto — íconos generados con una herramienta de verdad, la configuración de empaquetado devuelta a sus valores estándar, las dependencias que faltaban declaradas, y la autoverificación de fechas y horas conectada para que también corra en las compilaciones reales y no solo en desarrollo. Con eso, la comprobación de zona horaria ya corre dentro de la app instalada y el riesgo que abría esta fase queda cerrado para Android.
ago 2026En construcciónVitals: arranca la app de teléfono — primero Android, iPhone después, opens in new tabArrancó la app de teléfono. Una decisión quedó tomada y escrita de entrada: por ahora solo Android — no hay un iPhone aquí para probar, así que iPhone espera su turno. Antes de escribir la app se probó en un dispositivo real lo que más importa en un dashboard de salud: que las fechas y las horas sean exactas. El dashboard muestra todo en hora de Panamá, y los teléfonos manejan zonas horarias con un componente que algunas compilaciones traen recortado para ahorrar espacio. El formateo de hora se reescribió para no depender de él en absoluto, y las doce comprobaciones pasaron en el teléfono, no en un simulador. El esqueleto de la app ya está de pie: cuatro pestañas abajo y la navegación funcionando.
jul 2026LanzadoTrend Intelligence: más rápida y más segura para demos, opens in new tabTrend Intelligence recibió una gran mejora. Ahora usa Claude Sonnet 5, muestra los resultados a medida que llegan en lugar de hacerte esperar, y avisa cuando las fuentes detrás de una tendencia son escasas. También tiene sus primeras pruebas automáticas, para que las demos no me sorprendan.
jul 2026LanzadoVitals: los datos de salud ahora coinciden con el reloj, y el peso entra por primera vez, opens in new tabUna pasada de precisión sobre los datos que alimentan el dashboard. Los datos de sueño ahora se guardan bajo el mismo día que usa Google, que los fecha según la mañana en que te despiertas — el dashboard los fechaba según la noche en que te dormiste, y ahora ambos hablan el mismo idioma. El dato de recuperación cardíaca pasó a leerse del resumen diario oficial en vez de un flujo crudo, y ahora coincide con lo que muestra la app del reloj: 273.6 contra 274. El peso y la grasa corporal quedaron conectados a la sincronización por primera vez. Y la conexión con Google ahora avisa cuando algo no llega, en lugar de dar por buena una respuesta vacía: cualquier hueco futuro se ve de inmediato.
jul 2026LanzadoVitals: base lista para las apps nativas — un solo repositorio, datos con origen controlado, opens in new tabDos piezas grandes quedaron terminadas y funcionando en producción. Primero: todo el código se reorganizó en un monorepo — la web y las futuras apps de teléfono ahora viven juntas y van a compartir lógica en vez de duplicarla. Segundo: la puerta de entrada de los datos de salud ahora reconoce de qué fuente viene cada dato y decide qué hacer con él — escribirlo, observarlo en paralelo o descartarlo — lo que permite migrar de la web a las apps por etapas, sin perder ni duplicar nada. Once mejoras en total, todas verificadas en producción.
jul 2026LanzadoSolaar: routing de modelos fijado a Claude Opus 5 / Sonnet 5, con ajuste de esfuerzo por agente, opens in new tabLa asignación de modelo de cada agente ahora se resuelve contra el catálogo vivo de Claude en vez de una suposición desactualizada: opus → claude-opus-5, sonnet → claude-sonnet-5, cada uno ajustado con su propio nivel de esfuerzo — xhigh para agentes de generación de código, high para agentes de razonamiento profundo, medium para síntesis y reportes. El agente de Seguridad incorporó un fallback de rechazo obligatorio, ya que los clasificadores de ciberseguridad más fuertes de Opus 5 pueden fallar en trabajo legítimo de threat-modelling. Detecté mi propia regresión en scripts/lint-model-routing.py antes del merge — una tabla reformateada rompió el chequeo de pre-push que cruza el tier de cada wrapper de agente — y luego empujé la política de routing actualizada a los 16 proyectos inscritos.
jun 2026LanzadoSolaar: nuevo agente Creative Director, separado de UX, opens in new tabUn nuevo agente Creative Director ahora corre la ideación creativa — mood, metáfora, dirección visual — antes de que UX operacionalice la dirección elegida en tokens y specs. Genera tres direcciones divergentes, el Architect corre un análisis de viabilidad, y un nuevo Checkpoint 1.5 fija la dirección antes de que arranque el trabajo de UX. La Regla 10 ahora traza un límite duro: UX no debe inventar la dirección creativa desde cero, y el Creative Director no debe definir tokens ni specs de componentes.
jun 2026LanzadoVitals: navegación por línea de tiempo, en todo el sistema, opens in new tabCada métrica de salud ahora se mueve por fecha, no solo la foto de hoy. Sueño, ritmo cardíaco, actividad, cuerpo — un solo modelo de navegación en toda la app.
jun 2026LanzadoSolaar: background-claim-gate de la Regla 19, iniciativa Mac mini self-hosted, opens in new tabRegla 19 codificada y forzada: un hook Stop lee el transcript del turno y bloquea cualquier respuesta que afirme que un trabajo está 'corriendo en segundo plano' cuando no se lanzó ninguna tarea real — las afirmaciones async fantasma ya no pueden pasar. El mismo gate fue endurecido contra falsos positivos en meta-discusión. También se abrió la iniciativa del Mac mini self-hosted: plan de adopción del estratega, varias revisiones del arquitecto, y un starter kit de home-infra para correr un LLM localmente con fallbacks cloud rankeados de Cloudflare Workers AI / AI Gateway.
jun 2026LanzadoVitals: seguimiento de siestas, opens in new tabLas siestas ahora se ingieren y se muestran de extremo a extremo. El backend las retiene como hermano sleep.naps[] en vez de mezclarlas en el bloque principal de sueño, preservando la distinción entre sueño nocturno y siestas diurnas. La UI las expone como línea de siesta en el tile, una tarjeta de siestas en /sleep y una tendencia — entregado contra un veredicto de UX que definió cómo deben leerse las siestas junto al sueño principal de la noche.
jun 2026LanzadoSolaar: hook worktree-gate, migración a labeler v5, opens in new tabUn hook worktree-gate ahora bloquea escrituras que escapan de un worktree de git hacia el checkout principal — cerrando la clase de error 'escribí en main, no en el worktree', que resultó ser un problema de renderizado de ruta absoluta, no de CWD. También se migró labeler.yml al esquema actions/labeler@v5 (label → changed-files → any-glob-to-any-file).
jun 2026LanzadoSolaar: harness de regresión de comportamiento, auto-labeler de PRs, registro SECRETS, topes de blast-radius en Sentinel, opens in new tabLas reglas se volvieron testeables. Un harness de regresión de comportamiento corre escenarios contra las Reglas 10/11/12 para que un fix no pueda regresar en silencio — con correcciones multiplataforma para crashes de hooks en Windows, piping de prompts por stdin y auth de suscripción. Entregado junto a: un auto-labeler de PRs por ruta de archivo modificado, un registro SECRETS.md, configuración de stale-bot, un chequeo advisory de doc-drift en pre-push, una plantilla de PR específica por regla, y topes de blast-radius en Sentinel con un nuevo comando health-all.
jun 2026LanzadoControl Tower se muda a una nueva base de datosControl Tower, mi dashboard de uso de Claude, se mudó a una nueva base de datos (Neon). En el camino fallaron algunos tipos de datos: fechas, números grandes y dinero. Todo corregido. También actualicé los precios de los modelos Claude más recientes, para que las estimaciones de costo sigan siendo correctas.
jun 2026LanzadoVitals: detección de ronquidos en dispositivo, reconexión Fitbit de 3 estados, corrección SpO₂, opens in new tabDetección de ronquidos de primera mano que corre 100% en el dispositivo — YAMNet TFLite en el watcher de Android clasifica el audio sin subir nada (Fase 6), conectado en el dashboard como esquema, tipos, ingest y señal del briefing matutino, luego expuesto como toggle de ajustes y línea en el tile de sueño. Reconexión de Fitbit reconstruida como UI de conexión de 3 estados con botón de reconexión que se transforma y seguimiento de revocación de token. SpO₂ corregido para leer el resumen daily-oxygen-saturation, alineado con el soporte de métodos de la especificación.
jun 2026LanzadoSolaar: hooks PreToolUse pr-push-gate y secret-read-gate, gates advisory para Reglas 17/5b/16, opens in new tabTres reglas de incidentes de producción recibieron enforcement mecánico. pr-push-gate rechaza un push a una rama fusionada o equivocada; secret-read-gate bloquea lecturas de archivos .env antes de que ocurran. Se añadieron gates advisory para la Regla 17 (validar hechos contra la fuente), la Regla 5b (leer antes de preguntar) y la Regla 16 (los planes no se guardan hasta estar en git), más un checklist de Windows, telemetría, backfill de tests y una pasada de lint de Python.
jun 2026LanzadoVitals: corrección de timing del briefing nocturno, 10 hojas explicativas de métricas, opens in new tabEl briefing nocturno tenía un bug de timing — la generación corría antes de que llegaran los datos durante la noche, produciendo reportes vacíos; se corrigió el timing y se reactivó la ingestión de Google Health. Diez métricas recibieron hojas explicativas con ícono de info, para que un número como HRV o esfuerzo venga con una explicación en lenguaje claro de qué significa y por qué importa. También se escribió el spec/plan/tareas de detección de ronquidos que se entregó cuatro días después.
jun 2026LanzadoSolaar: endurecimiento del design-extractor, CI con lint-wrap, opens in new tabSe quitó la herramienta Bash del agente design-extractor — parsea enlaces compartidos y escribe tokens, así que el acceso a shell era superficie de ataque innecesaria — y se añadió un paso lint-wrap a CI para estandarizar cómo corre el lint en toda la flota de agentes.
jun 2026LanzadoVitals: Diario de Ciclo + Registro Diario, tercera pasada de traducción, Coach con locale, opens in new tabNueva función de Diario reconstruida fielmente desde un diseño ZIP — Diario de Ciclo y Registro Diario con tarjeta de fase, banner de fase, ilustraciones SVG de escala Bristol, renombrado de cycle-mood y conexión completa a la API (más una corrección de migración que elimina un prefijo public. sobrante). La tercera pasada de i18n tradujo navegación, tendencias, tarjetas, recuperación, pasos/activo/calorías, niveles de esfuerzo y etiquetas intradía — y el Coach ahora recibe el locale del usuario para responder en su idioma. También se conectó un botón de sync de Fitbit muerto en SettingsSheet.
jun 2026LanzadoVitals: soporte de español — infraestructura + primeras dos pasadas de traducción, opens in new tabSe levantó el i18n completo al español desde cero: infraestructura más la capa de UI, luego una segunda pasada que cubrió cuerpo, entrenamientos e insights. Siguieron correcciones de QA — atributo html lang, etiquetas de corazón — junto a dos arreglos de fiabilidad: proteger los deltas de NightSnapshot ante noches no consecutivas, y mostrar el briefing de la noche anterior después de medianoche en vez de un estado en blanco.
jun 2026LanzadoVitals: Recovery Ring, Motor de Esfuerzo, Monitor de Estrés, opens in new tabTres días, una transformación. Puntaje de recuperación (0–100) calculado desde HRV, FC en reposo y sueño — mostrado como un anillo luminoso en Today. Motor de esfuerzo completo en escala 0–21 con gráfico intradiario cada 15 minutos. Monitor de Estrés que clasifica el estado autonómico (Óptimo / Equilibrado / Bajo). Assessments semanales: resumen de 7 días, Índice de Healthspan e Insights de Correlación. La frecuencia respiratoria tenía tres bugs apilados — filtro incorrecto, parser equivocado, desfase de zona horaria que descartaba datos de las 10 PM Panamá fuera de la ventana UTC. Todo corregido, dos semanas rellenadas. Coach reconstruido como chat real: anclado abajo, tablas markdown.
jun 2026LanzadoSolaar: Reglas 16–18, routing gate estructural, pr-state-gate.py, corrección sync lefthook, opens in new tabTres reglas codificadas desde tres incidentes reales: los planes no comprometidos en git son invisibles para cualquier otra herramienta; nunca afirmar un hecho de API por inferencia — leer la especificación; el orquestador coordina, no implementa — ahora forzado por routing-gate.py, un hook que bloquea ediciones de archivos fuente si no se ha invocado el agente especialista correcto. También: pr-state-gate.py reemplaza el script bash en Python puro (sin WSL), y el script de sync fue corregido para no propagar lefthook.yml a los 14 repos hijo.
may 2026LanzadoVitals: rediseño completo con Claude Design — 50 pull requests, marca ring+pulse, WCAG AA, Coach, Tendencias, opens in new tabReconstrucción visual completa sobre una especificación de Claude Design — auditoría de 22 componentes, 50 pull requests, sistema de tokens dark-first con WCAG AA en tres temas. Nuevo logo-mark ring+pulse, SplashScreen de 6 keyframes, iconos PWA reconstruidos, MetricTile con flechas de delta con color, PageHeader compartido con deltas día a día, banda de referencia SpO₂ en cada gráfico. Pantalla Coach añadida: respuestas Claude en streaming, renderizado markdown, diseño keyboard-safe. Pantalla Tendencias renovada: selector de período, medias reales de 30 días, mini-sparklines.
may 2026LanzadoVitals: Google Health API — ingestión de Fitbit, fuentes de datos duales, pipeline de mediana SpO₂, opens in new tabAñadido soporte para Fitbit vía OAuth2 de Google Health API — segunda ruta de ingestión junto a la app compañera de Galaxy Watch, mismo esquema, agnóstico al dispositivo. Cinco tipos de datos vitales solo soportan el endpoint list (no dailyRollUp); esa es una restricción de soporte de métodos en la especificación, no inferible del cuerpo del error 400. SpO₂ almacenado como mediana diaria para resistir lecturas erróneas del sensor; las pipelines de Samsung y Google Health de-colisionadas para que ninguna sobreescriba a la otra.
may 2026LanzadoTrend Intelligence: dos verticales, cuatro fuentes de datos en vivo, briefing estratégico completoDos verticales dedicadas — alimentos y bebidas y nutrición para mascotas — desde un solo codebase, cada una con su propia experiencia de búsqueda y output a nivel de marca. Cuatro fuentes de datos corren en paralelo: Firecrawl (3 búsquedas simultáneas en ángulos regional, global e industrial), Google Trends (interés de búsqueda de 12 meses en 9 países — CR, GT, DO, PR, PA, SV, HN, NI, JM — con señales de dirección y consultas en alza), YouTube (principales videos en español de los últimos 6 meses por vistas) y Reddit (conversaciones de consumidores vía Google Custom Search). Cada consulta genera un briefing completo en menos de 3 minutos: tres tendencias clasificadas (Alto Momentum / En Ascenso / Emergente) con benchmarks globales, señales emergentes con contexto interregional, tres estadísticas clave y una cita de consumidor, recomendaciones estratégicas, frecuencia de consumo, ocasiones de uso, tres a cinco recetas con enfoque regional y una oportunidad por marca. Chips de país con código de color — verde, ámbar, gris — con hint de término de búsqueda cuando los bajos scores se deben a la terminología. Export a impresión/PDF con un clic. Historial completo de búsquedas por vertical.
may 2026LanzadoSolaar: de herramienta de scaffolding a socio de entrega continua, opens in new tabNueve mejoras en tres fases. Fase 1 — Fundación: seis arquetipos de pipeline (landing page hasta SaaS completo) permiten al Estratega saltarse pasos irrelevantes; el Mapa de Peligros captura landmines, convenciones no obvias y restricciones absolutas en un archivo acumulativo que todos los agentes leen al abrir sesión. Fase 2 — Capa de Inteligencia: la Base de Conocimiento del Cliente reemplaza archivos de tokens puntuales con un historial por cliente de decisiones de stack, librerías aprobadas, perfil de riesgo y lecciones acumuladas; el Seguimiento de Activación de Reglas revisa las 14 reglas de incidentes de producción al cerrar sesión; la Detección de Convenciones escanea commits y notas para heredar lo aprendido sin redescubrirlo. Fase 3 — Nuevos Agentes: Architect Review (Paso 4.5) verifica seis propiedades estructurales antes de la revisión de seguridad; el Centinela de Producción obtiene el estado de Vercel, Sentry y Lighthouse tras cada despliegue y expone advertencias antes de abrir cualquier sesión.
may 2026En construcciónSolaar: agente de monitoreo, scaffold nativo Android, Feature Sprint, opens in new tabTres nuevos agentes esta semana. El agente de Monitoreo conecta Sentry, error boundaries y analíticas en cada scaffold antes del primer despliegue — observable y desplegable son ahora el mismo paso. El agente Android Native nació a raíz de seis fallos consecutivos de CI durante el inicio de Balboa Finance: versiones de Gradle escritas desde memoria. Ahora consulta Maven Central en vivo antes de escribir una sola versión de dependencia. El agente Feature Sprint ejecuta un bucle spec → plan → tareas en 'feature <nombre>': primero preguntas de aclaración, luego tareas ejecutables por sesión. Además: el orden de caché de prompts ahorra entre un 60–80% de tokens en pasos paralelos; la Regla 14 trata los ítems sin marcar en un checklist como afirmaciones a validar contra git log.
may 2026LanzadoClaudio AI: entrada por voz, imágenes y seis nuevas herramientas agénticasMicrófono de voz con el reconocedor de voz del sistema. Imágenes adjuntas: base64 → multimodal de Claude con vista previa en miniatura y snackbar de error de decodificación. Seis nuevas herramientas: create_calendar_event, draft_email, update_task, snooze_task, get_calendar_events y generate_work_plan. Todas siguen el patrón proponer-y-confirmar — Claude sugiere, tú confirmas, la app ejecuta. El historial de chat persiste 24 horas; la conversación anterior se restaura al abrir la app.
may 2026LanzadoClaudio Android: backend migrado a SupabaseSe reemplazó toda la capa de datos de Notion con Supabase. Migración de esquema Room v7→8: columnas id volátiles, notionLastEditedAt renombrado a remoteLastEditedAt, todas las filas marcadas como PENDING_WRITE. SyncEngine reconectado; un MigrationWorker sube todos los datos cacheados localmente a Supabase en el primer inicio y luego los limpia. La validación de credenciales se trasladó a la primera sincronización — la validación en vivo al arrancar era poco fiable.
may 2026En construcciónBalboa FinanceAsistente financiero personal — reconstrucción nativa en Android. Kotlin + Compose + supabase-kt 3.6.0 + WorkManager gestiona la sincronización offline-first de forma nativa; n8n descartado en favor de alternativas propias de la plataforma. El inicio a través de Solaar expuso de inmediato una brecha en el orquestador: versiones de Gradle escritas desde memoria, a veces con 6–12 meses de retraso. Seis fallos consecutivos de CI impulsaron el agente Android Native Scaffold y la matriz de compatibilidad con AGP 9.x. Siguiente: fase de diseño UX/UI.
may 2026LanzadoControl TowerDashboard personal de uso de Claude Code integrado en mariansan.io. Consumo de tokens por proyecto — input, output, caché, coste, sesiones y turnos. API de ingesta en Supabase, auth por cookie HMAC-SHA256, desglose diario con Recharts y selector de rango, y dos scripts de sincronización: Admin API de Anthropic para cuentas de organización, SQLite local para los demás.
may 2026LanzadoClaudio AI: Fase 3 — calendario, email, herramientas de borradoAsk Claudio ya tiene las cuatro herramientas agénticas de la Fase 3: create_calendar_event (con asistentes), draft_email vía Gmail OAuth2, borrar tarea y borrar iniciativa. Además, botón para resetear el límite diario. Sonnet 3.5 gestiona el uso agéntico de herramientas; Haiku 4.5 el parsing de tareas.
may 2026En construcciónVeggieCorner: pipeline de imágenes migrado a servidor MCP, opens in new tabfal.media bloquea las peticiones servidor a servidor y Vercel agotaba el tiempo en generate + upload. Migré todo el pipeline fal.ai → Cloudinary a un servidor MCP local por stdio. Sin timeouts, visibilidad completa de errores, sin limitaciones de entorno de Vercel.
may 2026En construcciónClaudio Android: bloqueo de tareas duplicadasDoble capa en Ask Claudio: el system prompt verifica tareas existentes antes de llamar a create_task; el ViewModel bloquea en Room DB si existe coincidencia de nombre y muestra un mensaje claro. También corregidos tres errores de compilación en tests (campos DAO ausentes, aridad de constructor).
may 2026LanzadoCulinary Intelligence: listo para demoInteligencia de mercado con IA para tendencias de alimentos y bebidas en Centroamérica y el Caribe. Escribe una categoría — 'Bebidas Funcionales', 'Snacks Proteicos' — y obtén un briefing completo: scoring de momentum, señales emergentes, insights de consumidor, recomendaciones estratégicas y oportunidades por marca. Búsqueda paralela con Firecrawl + Claude Sonnet. Demo el 12 de mayo.
may 2026En construcciónSolaar: comandos init / sync / bucle meta-retro, opens in new tabAñadí 'init' (crear proyecto local sin GitHub), 'sync' (incorporar el orquestador a un proyecto existente), guardias de sesión para worktrees, bucle meta-retro para análisis de patrones, Regla 12 (verificar estado del PR antes de hacer push) y extensión de la Regla 10 (los cambios de design tokens requieren aprobación del agente UX).
may 2026En construcciónClaudio Android: corrección UX de ProyectosSe eliminó Proyectos del selector de modo de vista — era el único punto de acceso a esa pantalla, por lo que quitarlo ocultaba silenciosamente una función clave. Proyectos se reconectó como destino de navegación independiente, siempre accesible. La corrección surgió de una consulta al agente UX que detectó la dependencia de navegación antes de que el cambio se publicara.
may 2026LanzadoVitals: rebrand, actualización en vivo, pulido visual, opens in new tabRebrand a 'Vitals by mariansan' — nuevo wordmark, logo ECG pulse-V, manifiesto PWA y metadatos. Actualización en vivo con FCM trigger + Supabase Realtime, saludo adaptado al momento del día, navbar con cristal esmerilado, tarjetas hairline y tokens de color de Apple Health. FCM cierra el ciclo: la PWA activa una sincronización inmediata del watcher bajo demanda.
may 2026En construcciónVitals: n8n reemplazado con Vercel Cron, fiabilidad de generación, opens in new tabn8n reemplazado por Vercel Cron Jobs para la generación programada de briefings — sin orquestador de workflows externo. Corregida una condición de carrera en generation_lock, añadidos null-guards, generación de Claude movida dentro de after() para sobrevivir al timeout de respuesta de Vercel, RLS reforzado en generation_lock y cabecera Idempotency-Key añadida a la carga del watcher.
abr 2026LanzadoVitals, opens in new tabDashboard de salud personal para Galaxy Watch: app Android → n8n → Claude Sonnet → Supabase → PWA en Next.js. Briefing diario con IA sobre sueño, ritmo cardíaco, actividad y datos corporales.
abr 2026LanzadoClaudio para AndroidApp de productividad personal construida con Kotlin + Compose. Notion es la base de datos; Claudio es la interfaz móvil — briefings diarios con IA, gestión completa de tareas, seguimiento de proyectos y asistente conversacional.
abr 2026En construcciónPrototipando un generador de briefings con Claude para uso personalRastrea distintas fuentes de noticias y temas, y entrega un briefing personal.
abr 2026En construcciónConectando un agente de revisión semanal a mi stack de calendarioLee la semana pasada, saca a la luz patrones que se me escaparían, redacta el resumen del viernes en mi voz.
abr 2026CharlaMasterclass sobre asistentes y agentes de IA.
abr 2026LanzadoVeggie Corner, opens in new tabLa base de mi recetario personal está lista.
abr 2026LeyendoEnterprise Design ThinkingIntentando superar los retos de innovar a escala corporativa.