CommunityImagengithub.com

EP Insignia

Descarga el emblema/logotipo/parche/insignia de una agencia desde una URL, elimina su fondo, lo redimensiona a 512x512, lo guarda como .png y .jpg nombrados con el prefijo del cliente de EP, y los sube al bucket S3 de insignias de EP (prod-ep-cmh-insignia). Útil cuando el usuario desea agregar, reemplazar o actualizar la insignia, logotipo, parche o imagen de un cliente/agencia en Essential Personnel (EP).

¿Qué es EP Insignia?

Esta habilidad automatiza el procesamiento y la carga de insignias o logotipos de agencias para el sistema Essential Personnel (EP). Toma una URL de imagen de origen (o una ruta de archivo local), la descarga, elimina su fondo mediante técnicas inteligentes (manteniendo la transparencia si ya existe, usando relleno por inundación para fondos sólidos o AI con rembg), la redimensiona a 512x512 píxeles y genera dos archivos: PNG con fondo transparente y JPG con fondo blanco. Luego, los sube al bucket S3 de producción de EP (`prod-ep-cmh-insignia`) en la cuenta de AWS 405995789491 (región us-east-2). Está diseñada para su uso como una habilidad de agente de IA (por ejemplo, Claude Code, Cursor, Codex) y requiere acceso a las credenciales de AWS configuradas para la cuenta de EP. El proceso incluye pasos de revisión manual: genera una vista previa combinada de los archivos PNG y JPG para que el usuario verifique que no queden restos de fondo, que las partes de la insignia no falten y que sea la agencia correcta antes de subir. También verifica si ya existen archivos en el bucket y solicita confirmación explícita antes de sobrescribirlos, respaldando los existentes. La habilidad es especialmente útil para administradores de EP que necesitan agregar o actualizar insignias de clientes de manera consistente y sin errores.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rtaylor-talmark/ep-skills/tree/HEAD/skills/ep-insignia

Installed? Explore more Imagen skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace EP Insignia?

Convierte una URL de imagen de origen en los dos archivos de insignia que EP espera y los sube a s3://prod-ep-cmh-insignia (cuenta de AWS de EP 405995789491, región us-east-2).

Convenciones, que coinciden con los archivos ya existentes en el bucket:

  • Clave: <prefijo>.png y <prefijo>.jpg en la raíz del bucket, donde <prefijo> es el prefijo del cliente de EP (minúsculas, p. ej. audubonpd, alexanderncsheriff).
  • Ambos son 512x512. La insignia se recorta, escala para ajustarse y se centra con un pequeño margen.
  • PNG tiene fondo transparente. JPG tiene fondo blanco.
  • Los tipos de contenido son image/png e image/jpeg. El bucket usa BucketOwnerEnforced, por lo que no se deben establecer ACL.

Entradas

  1. URL de origen. Si el usuario no proporcionó una, solicítala. Una ruta de archivo local también funciona.
  2. Prefijo del cliente. Si no se proporcionó, solicítalo. No lo adivines a partir del nombre de la agencia. Normalízalo a minúsculas y rechaza cualquier cosa que no sea a-z 0-9 - _.

Pasos

1. Procesar la imagen

Usa un directorio de trabajo limpio en el área de pruebas (o mktemp -d), luego ejecuta:

uv run -q <directorio_habilidad>/scripts/process_insignia.py "<url>" "<prefijo>" "<directorio_trabajo>"

uv instala las dependencias desde los metadatos en línea del script. La primera vez que se ejecuta la eliminación de fondo mediante IA, descarga un modelo de ~180 MB a ~/.u2net.

El modo de fondo predeterminado (--bg auto) funciona así:

  • Si la fuente ya tiene fondo transparente, se deja como está.
  • Si el borde es un solo color sólido (típicamente blanco), solo se elimina el fondo conectado a los bordes. Las letras o detalles blancos dentro de la insignia se conservan.
  • De lo contrario, se utiliza segmentación por IA (rembg isnet-general-use).

Anulaciones: --bg ai, --bg flood y --bg none fuerzan un modo. --margin N establece el relleno en píxeles (predeterminado 4).

Si la descarga falla con 403 o 429, o la URL es un SVG o una página web en lugar de una imagen, informa al usuario y solicita un enlace directo a la imagen. También pueden descargar el archivo ellos mismos y pasar la ruta local.

2. Revisar antes de subir

Crea una vista previa del PNG sobre un color contrastante, junto al JPG:

convert \( <directorio_trabajo>/<prefijo>.png -background '#c33' -flatten \) <directorio_trabajo>/<prefijo>.jpg +append <directorio_trabajo>/preview.png

Abre preview.png con la herramienta de lectura y verifica:

  • Que no quede fondo residual (halo, caja o borde en el lado rojo).
  • Que no falten partes de la insignia (agujeros donde se eliminó el blanco interior, o texto que se haya cortado).
  • Que sea la agencia correcta.

Si el resultado es incorrecto, vuelve a ejecutar con un modo --bg diferente. Muestra la vista previa al usuario, junto con el método de fondo que informó el script y cualquier advertencia sobre una imagen de origen pequeña.

3. Verificar acceso a AWS y archivos existentes

aws sts get-caller-identity --query Account --output text   # esperar 405995789491
aws s3 ls s3://prod-ep-cmh-insignia/<prefijo>.

Si <prefijo>.png o <prefijo>.jpg ya existen, informa al usuario. Este es un bucket de producción, por lo que se debe obtener una confirmación explícita antes de sobrescribir. Primero, respalda los archivos existentes:

aws s3 cp s3://prod-ep-cmh-insignia/<prefijo>.png <directorio_trabajo>/backup/<prefijo>.png
aws s3 cp s3://prod-ep-cmh-insignia/<prefijo>.jpg <directorio_trabajo>/backup/<prefijo>.jpg

Incluso si aún no existe nada, confirma la subida con el usuario después de mostrar la vista previa.

4. Subir

aws s3 cp <directorio_trabajo>/<prefijo>.png s3://prod-ep-cmh-insignia/<prefijo>.png --content-type image/png
aws s3 cp <directorio_trabajo>/<prefijo>.jpg s3://prod-ep-cmh-insignia/<prefijo>.jpg --content-type image/jpeg

Verifica la subida con aws s3 ls s3://prod-ep-cmh-insignia/<prefijo>., luego informa ambas claves de S3, sus tamaños y dónde se guardaron las copias de seguridad.

Skills relacionados