Mallard

Toolkit CLI para agentes de IA con skills, commands y subagents para desarrollo PrestaShop.

Publicado el 20 de julio de 2026

Views
100 views
Tiempo de lectura:
Tiempo de lectura: 7 min
Mallard

Descripción General del Proyecto

Mallard es un toolkit CLI que sincroniza skills, commands y subagents para desarrollo de PrestaShop directamente en tus agentes de IA de programación. Diseñado para equipos de desarrollo que trabajan con PrestaShop 8/9, Mallard proporciona un ecosistema completo de herramientas especializadas que se integran perfectamente con Claude Code, Codex y OpenCode.

El lema del proyecto — "Skills, commands & subagents for PrestaShop 8/9 — installed into your AI coding agents and kept current with one update" — encapsula su propósito: eliminar la fricción en la configuración y mantener las herramientas siempre actualizadas con un solo comando.

Contexto y Motivación del Proyecto

Los agentes de IA para programación como Claude Code han revolucionado el flujo de trabajo de desarrollo, pero requieren contexto especializado para dominios técnicos específicos. Mallard nace de la necesidad de proporcionar a estos agentes conocimiento experto sobre el ecosistema PrestaShop sin tener que configurar manualmente cada herramienta en cada máquina.

El proyecto resuelve tres problemas fundamentales:

  1. Dispersión de conocimiento: La documentación de PrestaShop, Panda theme, Lando y GitLab estaba fragmentada
  2. Duplicación manual: Configurar skills y commands en múltiples agentes era tedioso y propenso a errores
  3. Desincronización: Mantener versiones actualizadas en equipos completos era un desafío logístico

Componentes y Tecnologías Utilizadas

1. Sistema de Skills

Mallard incluye 7 skills especializadas que proporcionan contexto profundo sobre:

  • panda-kb: Base de conocimiento del tema Panda by SunnyToo (módulos st*, Easy Builder, demos)
  • prestashop-kb: Conocimiento del núcleo de PrestaShop 8/9 (Symfony, Twig, Smarty, hooks, migración)
  • ps-security-audit: Escaneo semanal de CVEs para proyectos PS con Trivy y verificación de módulos
  • ps-watch: Watcher de BrowserSync con live-reload para desarrollo de child themes de Panda en Lando
  • lando-img-placeholder: Placeholders de imágenes estáticas para desarrollo local en Lando/PrestaShop
  • gitlab-security-setup: Protección de supply chain con Trivy + pnpm en proyectos GitLab
  • ps-demo-user: Creación de usuarios de demostración en PrestaShop 8 (Lando)

2. Sistema de Commands

5 slash commands que invocan funcionalidades o agentes expertos:

  • /ps: Invoca al agente experto de PrestaShop 8/9
  • /panda: Invoca al agente experto del tema Panda
  • /lando: Helpers para entornos Lando
  • /ps-customer: Crea clientes de prueba en PrestaShop
  • /ps-url: Utilidades de URL para PrestaShop

3. Subagents Especializados

Dos agentes expertos que inspeccionan el código del proyecto antes de responder:

  • prestashop-expert: Especialista en PrestaShop 8/9 core, themes, Symfony BO, Twig, Smarty, hooks y migración
  • panda-expert: Especialista en Panda theme, módulos st*, Easy Builder y demos de SunnyToo

4. Arquitectura Técnica

  • Lenguaje: Go (Golang) para el CLI
  • Distribución: Homebrew (macOS/Linux), Scoop (Windows), curl installer
  • Sistema de enlaces: Symlinks inteligentes (no copias)
  • Auto-detección: Detecta automáticamente agentes instalados (Claude, Codex, OpenCode, Gemini, Cursor, Windsurf)
  • TUI: Interfaz de terminal interactiva con Bubbletea
  • Estilo visual: Paleta Rose Pine con acentos de pato amarillo, logo en arte Braille

Características Clave

Instalación Sin Fricción

# Homebrew (macOS/Linux)
brew install educlopez/tap/mallard

# Scoop (Windows)
scoop bucket add educlopez https://github.com/educlopez/scoop-bucket
scoop install mallard

# curl installer (macOS/Linux)
curl -fsSL https://raw.githubusercontent.com/educlopez/mallard/main/install.sh | bash

Sincronización Automática

Un solo comando sincroniza todo el toolkit en todos los agentes detectados:

mallard update    # Re-enlaza skills/commands a la última versión
mallard doctor    # Verifica la salud de symlinks por agente
mallard registry  # Lista skills/commands instalados

Edición Centralizada

Como Mallard usa symlinks en lugar de copias, editar un skill o command se refleja instantáneamente en todos los agentes, sin necesidad de sincronizar manualmente.

Health Checks Integrados

El comando mallard doctor verifica el estado de cada symlink por agente y reporta exactamente qué está roto, facilitando el debugging.

Retos y Soluciones Implementadas

1. Compatibilidad Multi-Agente

Reto: Cada agente de IA tiene su propia estructura de directorios y convenciones.

Solución: Sistema de adaptadores con interfaz común (Adapter) y implementaciones específicas por agente (Claude, Codex, OpenCode, Gemini, Cursor, Windsurf). El registry detecta automáticamente qué agentes están instalados y solo enlaza los tipos de recursos que cada uno soporta.

2. Actualizaciones Sin Conflictos

Reto: Actualizar skills podría sobrescribir personalizaciones locales.

Solución: Sistema de backup automático que mantiene las últimas 5 versiones con manifiestos. Si mallard update detecta conflictos, crea backups que pueden restaurarse con mallard update --restore <manifest-id>.

3. Base de Conocimiento Versionada

Reto: Mantener la KB de PrestaShop y Panda sincronizada con las versiones del software.

Solución: La KB vive directamente en el repositorio bajo skills/panda-kb/references/ y skills/prestashop-kb/references/, permitiendo versionado con Git y facilitando contribuciones de la comunidad.

4. Experiencia de Usuario en Terminal

Reto: Los CLIs tradicionales pueden ser intimidantes para nuevos usuarios.

Solución: TUI interactivo con Bubbletea que guía al usuario paso a paso, con pantalla de bienvenida inspirada en gentle-ai, logo en arte Braille y paleta de colores Rose Pine con acentos amarillos (tema pato).

Beneficios para Equipos de Desarrollo

  1. Onboarding más rápido: Nuevos desarrolladores obtienen todo el contexto de PrestaShop con un comando
  2. Consistencia en el equipo: Todos usan las mismas versiones de skills y commands
  3. Conocimiento centralizado: La KB se mantiene en un repositorio, no en heads individuales
  4. Actualizaciones sin fricción: Un mallard update sincroniza a todo el equipo
  5. Workflow ágil: Slash commands aceleran tareas comunes sin salir del agente

Casos de Uso Reales

Desarrollo de Child Theme para Panda

Un desarrollador que trabaja en un child theme de Panda puede:

  1. Ejecutar /panda para consultar al agente experto sobre Easy Builder
  2. Usar ps-watch skill para tener live-reload automático
  3. Invocar /ps-url para generar URLs de PrestaShop correctas
  4. Crear clientes de prueba con /ps-customer sin salir del terminal

Auditoría de Seguridad

Un equipo que necesita auditar un proyecto de PrestaShop puede:

  1. Activar ps-security-audit skill para escaneo semanal de CVEs
  2. Verificar módulos contra la lista de Friends of Presta
  3. Ejecutar Trivy sobre las dependencias
  4. Recibir reportes automáticos sobre vulnerabilidades

Setup de Proyecto GitLab

Al iniciar un nuevo proyecto con GitLab, gitlab-security-setup skill configura automáticamente:

  • Pipeline de Trivy para análisis de vulnerabilidades
  • Protección de supply chain con pnpm
  • Checks de seguridad en merge requests

Arquitectura del Código

main.go                       Entry point + CLI routing
cmd/
  install.go                  Install (TUI + non-interactive modes)
  update.go                   Update con backup, restore, list-backups
  doctor.go                   Verificación de salud de symlinks
  registry.go                 Listado de skills/commands instalados
internal/
  agents/                     Adaptadores por agente (Claude, Codex, etc.)
  backup/backup.go            Sistema de snapshots con GC (keep-latest-5)
  updater/updater.go          Lógica pura de actualización (compartida CLI/TUI)
  skillregistry/registry.go   Parser de SKILL.md y frontmatter de commands
  tui/                        Interfaz Bubbletea con máquina de estados
skills/                       Skills de Claude Code (symlinked)
claude/commands/              Slash commands (symlinked)
claude/agents/                Subagents de Claude (symlinked, Claude only)

Futuras Expansiones

  1. Soporte para más agentes: Integración con GitHub Copilot Workspace y nuevos agentes que surjan
  2. Marketplace de skills: Permitir a la comunidad publicar y compartir skills propias
  3. Telemetría opt-in: Métricas sobre qué skills son más usados para priorizar mejoras
  4. Auto-actualización: Notificaciones cuando hay nuevas versiones de Mallard
  5. Templates de proyectos: Scaffolding de proyectos PrestaShop con configuración Mallard incluida
  6. Integración con CI/CD: Skills especializados para pipelines de GitLab y GitHub Actions

Resultados y Adopción

  • Licencia: MIT (Open Source)
  • Distribución: Homebrew, Scoop y curl installer
  • Compatibilidad: macOS, Linux y Windows
  • Agentes soportados: Claude Code, Codex, OpenCode, Gemini, Cursor, Windsurf
  • Comunidad: Contribuciones abiertas en GitHub

Conclusión

Mallard representa un cambio de paradigma en cómo los equipos de desarrollo de PrestaShop trabajan con agentes de IA. Al centralizar el conocimiento en skills versionadas, proporcionar commands especializados y ofrecer subagents expertos, Mallard transforma la experiencia de desarrollo de reactiva a proactiva.

El toolkit elimina la fricción de configuración, garantiza consistencia en equipos, y mantiene el conocimiento actualizado con un solo comando. Para equipos que trabajan con PrestaShop 8/9, Lando y GitLab, Mallard no es solo una herramienta — es el sistema operativo de su flujo de trabajo con agentes de IA.

Enlace al proyecto: mallard.educalvolopez.com Repositorio: github.com/educlopez/mallard