render-icon-pipeline
Acerca de
Esta habilidad ejecuta la canalización de visualización para renderizar iconos a partir de glifos existentes para habilidades, agentes y equipamiento. Maneja la generación de paletas, la construcción de datos, la creación del manifiesto y el renderizado final de los iconos. Los desarrolladores deben usar siempre `build.sh` como punto de entrada y nunca llamar a Rscript directamente.
Instalación rápida
Claude Code
Recomendadonpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/render-icon-pipelineCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
Renderizar Pipeline de Iconos
Ejecutar el pipeline de viz de principio a fin para renderizar iconos a partir de glyphs existentes. Cubre la generacion de paletas, la construccion de datos, la creacion de manifiestos y el renderizado de iconos para habilidades, agentes y equipos.
Punto de entrada canonico: bash viz/build.sh [flags] desde la raiz del proyecto, o bash build.sh [flags] desde viz/. Este script maneja la deteccion de plataforma (WSL, Docker, nativa), la seleccion del binario R y el orden de los pasos. Nunca llames a Rscript directamente para los scripts de construccion — esa ruta es exclusivamente para la configuracion del servidor MCP.
Cuando Usar
- Despues de crear o modificar funciones de glyph
- Despues de agregar nuevas habilidades, agentes o equipos a los registros
- Cuando los iconos necesitan re-renderizarse para paletas nuevas o actualizadas
- Para una reconstruccion completa del pipeline (p. ej., despues de cambios de infraestructura)
- Al configurar el entorno viz por primera vez
Entradas
- Opcional: Tipo de entidad —
skill,agent,teamoall(predeterminado:all) - Opcional: Paleta — nombre de paleta especifico o
all(predeterminado:all) - Opcional: Filtro de dominio — dominio especifico para iconos de habilidades (p. ej.,
git,design) - Opcional: Modo de renderizado —
full,incrementalodry-run(predeterminado:incremental)
Procedimiento
Paso 1: Verificar Prerequisitos
Asegurar que el entorno esta listo para el renderizado.
- Confirmar que
viz/build.shexiste:ls -la viz/build.sh - Verificar que Node.js esta disponible:
node --version - Comprobar que
viz/config.ymlexiste (perfiles de ruta R especificos por plataforma):ls viz/config.yml
build.sh maneja automaticamente la resolucion del binario R — no necesitas verificar las rutas de R manualmente. En WSL usa /usr/local/bin/Rscript (R nativo de WSL), en Docker usa el R del contenedor, y en Linux/macOS nativo usa Rscript del PATH.
Esperado: build.sh, Node.js y config.yml estan presentes.
En caso de fallo: Si config.yml no existe, el pipeline usara valores predeterminados del sistema. Si Node.js no esta disponible, instalar via nvm.
Paso 2: Ejecutar el Pipeline
build.sh ejecuta 5 pasos en orden:
- Generar colores de paleta (R) →
palette-colors.json+colors-generated.js - Construir datos (Node) →
skills.json - Construir manifiestos (Node) →
icon-manifest.json,agent-icon-manifest.json,team-icon-manifest.json - Renderizar iconos (R) → archivos WebP en
icons/eicons-hd/ - Generar glyphs de terminal (Node) →
cli/lib/glyph-data.json
Pipeline completo (todos los tipos, todas las paletas, estandar + HD):
bash viz/build.sh
Incremental (saltar iconos que ya existen en disco):
bash viz/build.sh --skip-existing
Dominio individual (solo habilidades):
bash viz/build.sh --only design
Tipo de entidad individual:
bash viz/build.sh --type skill
bash viz/build.sh --type agent
bash viz/build.sh --type team
Ejecucion en seco (vista previa sin renderizar):
bash viz/build.sh --dry-run
Solo tamano estandar (sin HD):
bash viz/build.sh --no-hd
Todos los indicadores despues de build.sh se pasan a build-all-icons.R.
Esperado: Iconos renderizados en viz/public/icons/<palette>/ y viz/public/icons-hd/<palette>/.
En caso de fallo:
- renv se cuelga en NTFS: El
.Rprofilede viz omiterenv/activate.Ry establece.libPaths()directamente. Asegurate de ejecutar desdeviz/(build.sh lo hace automaticamente mediantecd "$(dirname "$0")") - Paquetes R faltantes: Ejecutar
Rscript -e "install.packages(c('ggplot2', 'ggforce', 'ggfx', 'ragg', 'magick', 'future', 'furrr', 'digest'))"desde el entorno R quebuild.shselecciona - No glyph mapped: La entidad necesita una funcion de glyph — usar la habilidad
create-glyphantes de renderizar
Paso 3: Verificar Salida
Confirmar que el renderizado se completo exitosamente.
- Verificar que los conteos de archivos coinciden con las expectativas:
find viz/public/icons/cyberpunk -name "*.webp" | wc -l find viz/public/icons-hd/cyberpunk -name "*.webp" | wc -l - Verificar tamanos de archivo razonables (2-80 KB por icono)
- Ejecutar la habilidad
audit-icon-pipelinepara una verificacion completa
Esperado: Los conteos de archivos coinciden con los conteos de entradas del manifiesto. Los tamanos de archivo estan en el rango esperado.
En caso de fallo: Si los conteos no coinciden, algunos glyphs pueden haber producido errores durante el renderizado. Revisar el registro de construccion buscando lineas [ERROR].
Referencia de Indicadores CLI
Todos los indicadores se pasan a traves de build.sh a build-all-icons.R:
| Flag | Default | Descripcion |
|---|---|---|
--type <types> | all | Separados por coma: skill, agent, team |
--palette <name> | all | Paleta individual o all (9 paletas) |
--only <filter> | ninguno | Dominio (habilidades) o ID de entidad (agentes/equipos) |
--skip-existing | desactivado | Saltar iconos con archivos WebP existentes |
--dry-run | desactivado | Listar lo que se generaria |
--size <n> | 512 | Dimension de salida en pixeles |
--glow-sigma <n> | 4 | Radio de difuminado del resplandor |
--workers <n> | automatico | Trabajadores paralelos (detectCores()-1) |
--no-cache | desactivado | Ignorar cache de hash de contenido |
--hd | activado | Habilitar variantes HD (1024px) |
--no-hd | desactivado | Saltar variantes HD |
--strict | desactivado | Salir ante el primer fallo de sub-script |
Que Hace build.sh Internamente
Solo como referencia — NO ejecutar estos pasos manualmente:
cd viz/
# 1. Platform detection: sets R_CONFIG_ACTIVE (wsl, docker, or unset)
# 2. R binary selection: WSL → /usr/local/bin/Rscript, Docker → same, native → Rscript
# 3. $RSCRIPT generate-palette-colors.R
# 4. node build-data.js
# 5. node build-icon-manifest.js --type all
# 6. $RSCRIPT build-all-icons.R "$@" (flags passed through)
# 7. node build-terminal-glyphs.js
Alternativa con Docker
El pipeline tambien puede ejecutarse en Docker:
cd viz
docker compose up --build
Esto ejecuta el pipeline completo en un entorno Linux aislado y sirve el resultado en el puerto 8080.
Lista de Validacion
- Se ejecuto
bash viz/build.sh(noRscriptdirecto) - Colores de paleta generados (JSON + JS)
- Archivos de datos construidos desde los registros
- Manifiestos generados desde los datos
- Iconos renderizados para los tipos y paletas objetivo
- Los conteos de archivos coinciden con las expectativas
- Los tamanos de archivo estan en el rango esperado (2-80 KB)
Errores Comunes
- Llamar a Rscript directamente: Nunca ejecutes
Rscript build-icons.RoRscript generate-palette-colors.Rmanualmente. Usa siemprebash build.sh [flags]. Las llamadas directas a Rscript omiten la deteccion de plataforma y pueden usar el binario R incorrecto (Windows R via el wrapper~/bin/Rscripten lugar del R nativo de WSL en/usr/local/bin/Rscript). Nota: la ruta de Windows R en CLAUDE.md y en las guias es exclusivamente para la configuracion del servidor MCP, no para los scripts de construccion. - Directorio de trabajo incorrecto:
build.shhace cd a su propio directorio automaticamente (cd "$(dirname "$0")"), asi que puedes llamarlo desde cualquier lugar:bash viz/build.shdesde la raiz del proyecto funciona correctamente. - Manifiestos desactualizados:
build.shejecuta los pasos 1-5 en orden, por lo que los manifiestos siempre se regeneran antes del renderizado. Si solo necesitas manifiestos sin renderizar, usanode viz/build-data.js && node viz/build-icon-manifest.js(los pasos de Node no necesitan R). - renv no activado: La solucion alternativa de
.Rprofilerequiere ejecutar desdeviz/—build.shse encarga de esto. Usar el indicador--vanillao ejecutar R desde otro directorio lo omitira. - Paralelismo en Windows: Windows no soporta paralelismo basado en fork — el pipeline selecciona automaticamente
multisessionviaconfig.yml.
Habilidades Relacionadas
- audit-icon-pipeline — detectar glyphs e iconos faltantes antes de renderizar
- create-glyph — crear nuevas funciones de glyph para entidades sin iconos
- enhance-glyph — mejorar glyphs existentes antes de re-renderizar
Repositorio GitHub
Habilidades relacionadas
content-collections
MetaEsta habilidad proporciona una configuración probada en producción para Content Collections, una herramienta centrada en TypeScript que transforma archivos Markdown/MDX en colecciones de datos con tipado seguro mediante validación Zod. Úsala al construir blogs, sitios de documentación o aplicaciones Vite + React con mucho contenido para garantizar seguridad de tipos y validación automática de contenido. Abarca todo, desde la configuración del plugin de Vite y compilación MDX hasta la optimización de despliegue y validación de esquemas.
polymarket
MetaEsta habilidad permite a los desarrolladores crear aplicaciones con la plataforma de mercados de predicción Polymarket, incluyendo la integración de API para operaciones y datos de mercado. También proporciona transmisión de datos en tiempo real a través de WebSocket para monitorear operaciones en vivo y actividad del mercado. Úsela para implementar estrategias de trading o crear herramientas que procesen actualizaciones de mercado en tiempo real.
creating-opencode-plugins
MetaEsta habilidad ayuda a los desarrolladores a crear complementos de OpenCode que se conectan a más de 25 tipos de eventos, como comandos, archivos y operaciones LSP. Proporciona la estructura del complemento, las especificaciones de la API de eventos y los patrones de implementación para módulos en JavaScript/TypeScript. Úsala cuando necesites interceptar, monitorear o extender el ciclo de vida del asistente de IA de OpenCode con lógica personalizada basada en eventos.
sglang
MetaSGLang es un framework de alto rendimiento para el servicio de LLM que se especializa en generación rápida y estructurada para JSON, expresiones regulares y flujos de trabajo de agentes utilizando su caché de prefijos RadixAttention. Ofrece una inferencia significativamente más rápida, especialmente para tareas con prefijos repetidos, lo que lo hace ideal para salidas complejas y estructuradas, y conversaciones multiturno. Elige SGLang sobre alternativas como vLLM cuando necesites decodificación restringida o estés construyendo aplicaciones con uso extensivo de prefijos compartidos.
