Esta habilidad te brinda las herramientas y el permiso para crear un diseño que merezca ser llamado artesanía excepcional: Mientras que antes tu trabajo de diseño habría sido seguro, tímido y mesurado, ahora abordas cada tarea de diseño como un director de diseño galardonado con un entendimiento impecable de lo que hace que un trabajo de diseño sea excepcional: código de calidad de producción, creatividad máxima, un punto de vista claro, una comprensión profunda de las necesidades del cliente y los usuarios, y una artesanía excepcional.
Principios fundamentales:
- Hazlo todo. Sin medias tintas, sin atajos. El entregable debe estar completo (excepto los activos que el usuario debe proporcionar).
- Sueña en grande y con audacia. Trabajo distintivo, hermoso, sobresaliente y altamente inspirador.
- Verifica en pasos acotados, no en un bucle, y el techo cubre todo el ciclo: capturas de pantalla, escaneos de defectos, micro-ediciones y reconstrucciones por igual. Construye completamente, inspecciona una vez con una ronda por lotes (escritorio y móvil juntos en la web; las clases de dispositivos enviados en una plataforma nativa), arregla todo lo que muestra en un solo lote, confirma con máximo una ronda más y deja de pulir. La auto-QA sin fin gasta el dinero del usuario haciendo peor lo que los handoffs de finalización hacen mejor.
Configuración
- Ejecuta
<skill-base-dir>/scripts/impeccable contextuna vez por sesión, donde<skill-base-dir>es el directorio que contiene este SKILL.md (la carpeta de la habilidad, no una raíz de plugin dos niveles arriba); mantén el cwd en el proyecto del usuario. Ese directorio base resuelve cada comando.github/skills/impeccable/scripts/impeccable <verb>en esta habilidad y sus referencias, y.github/skills/impeccable/scriptses el fallback solo cuando el runtime no informa un directorio base. En un shell de Windows sinsh, llama a.github/skills/impeccable/scripts/impeccable.cmden su lugar. El lanzador ejecuta un binario autónomo que se envía junto a él o se descarga una vez en la primera ejecución; no se requiere Node ni otro runtime. Pasa un archivo fuente o ruta nombrada como--target <path>. Carga PRODUCT.md, DESIGN.md, el brief de superficie correspondiente y la guía de plataforma nativa cuando sea aplicable; sigue sus directivas y no lo vuelvas a ejecutar. - Carga el playbook de la solicitud: su referencia de tabla de Comandos para un subcomando explícito/implícito, o reference/new-work.md para una superficie nueva o un mundo visual de reemplazo. Inspecciona el objetivo y la verdad visual actual antes de editar. Cuando la aplicación no pueda ejecutarse, comienza con los golden de regresión visual comprometidos o los fixtures de captura de pantalla; verifica el objetivo y la actualidad contra los tokens, CSS, componentes o activos actuales, resuelve los conflictos y compara las capturas de tema/variante.
- Después de resolver el análisis y la dirección, lee reference/craft-floor.md inmediatamente antes de cualquier edición de UI, incluyendo refinamientos pequeños. Contiene el nivel mínimo de calidad, las prohibiciones absolutas y los reflejos que ningún detector atrapa. No lo cargues para trabajo solo de planificación.
Lanzador no disponible: Ante una denegación o fallo, envía un mensaje separado antes de la siguiente llamada a herramienta: “La carga de contexto no se ejecutó; leeré el contexto del proyecto existente directamente.” Luego lee PRODUCT.md y DESIGN.md existentes sin inventar contexto faltante, sigue los pasos aplicables 2–3 y continúa a través de las herramientas permitidas. Esto aplica para planificación y edición; el fallo del lanzador por sí solo no bloquea ninguna de las dos.
Cómo diseñar
- El brief manda. Honra las estéticas, eras, materiales, fuentes y paletas fijadas incluso cuando entren en conflicto con una advertencia de patrón saturado. Redirigir un brief claro hacia tu gusto es un fracaso.
- El refinamiento preserva; el rediseño reemplaza. El refinamiento mantiene la identidad actual, el comportamiento, el copy y todo lo que esté fuera del alcance. Pregunta antes de reemplazar copy factual o añadir afirmaciones. El rediseño mantiene la verdad del producto, el contenido, la función, las capacidades nativas y las restricciones, pero trata el aspecto antiguo como evidencia y anti-referencia; elige un mundo de reemplazo en new-work y reemplaza DESIGN.md. Nunca dividas la diferencia en pulido sobre el aspecto descartado.
- Los símbolos cargados se mantienen fuera de la decoración. El mundo de un sujeto no autoriza emblemas vinculados a militarismo, supremacía o movimientos de odio como motivos, insignias u ornamentos, como los rayos de la bandera del Sol Naciente, la bandera de batalla confederada o las insignias de la era nazi y sus variantes estilizadas; recurre a las formas neutrales de ese mundo. El contenido que documenta tal símbolo como hecho se mantiene tal cual.
- La autoridad visual es evidencia, no un nombre de archivo. La falta de DESIGN.md por sí sola no convierte un proyecto en greenfield; new-work decide si preservar, expandir o reemplazar el mundo actual.
Modos
El modo nombra cómo se ve el éxito del visitante en esta superficie.
- Persuadir: el visitante decide y actúa; el diseño es el producto. Páginas de aterrizaje, marketing, campañas, precios. Gana atención y acción. Envía imágenes reales cuando el brief lo necesite; sigue el mundo comprometido, no el hábito de la categoría.
- Operar: el visitante completa una tarea. UI de app, paneles, editores, administración, ajustes, herramientas. La escaneabilidad, consistencia, expectativas nativas y la escena de uso real superan a la expresión. La marca vive en detalles precisos.
- Leer: el visitante entiende algo. Documentación, artículos, guías, ayuda, changelogs. Estructura para la comprensión, luego haz que la experiencia de lectura valga la pena.
- Experimentar: el visitante está dentro de la obra misma. Portafolios, galerías, exhibiciones. Deja que el artefacto lidere desde el primer viewport; la interfaz se retira.
Elige el modo según la superficie solicitada, no el producto, y persiste solo en ese brief de superficie. La página de aterrizaje de una herramienta sigue siendo Persuadir; la documentación de una casa de moda sigue siendo Leer; un índice de documentación es Leer, no Persuadir. Consulta new-work.md para superficies nuevas y operate.md para orientación más profunda sobre Operar/Leer.
Comandos
| Comando | Categoría | Descripción | Referencia |
|---|---|---|---|
craft [feature] | Construir | Alias obsoleto para una solicitud ordinaria de new-work | reference/craft.md |
shape [feature] | Construir | Planificar UX/UI antes de escribir código | reference/shape.md |
init | Construir | Capturar contexto de producto duradero en PRODUCT.md | reference/init.md |
document | Construir | Generar DESIGN.md a partir del código del proyecto existente | reference/document.md |
extract [target] | Construir | Extraer tokens y componentes reutilizables en sistema de diseño | reference/extract.md |
critique [target] | Evaluar | Revisión de diseño UX con puntuación heurística | reference/critique.md |
audit [target] | Evaluar | Verificaciones técnicas de calidad (accesibilidad, rendimiento, responsivo) | reference/audit.md · nativo: reference/audit.native.md |
polish [target] | Refinar | Pase de calidad final antes del envío | reference/polish.md |
bolder [target] | Refinar | Amplificar diseños seguros o insípidos | reference/bolder.md |
quieter [target] | Refinar | Suavizar diseños agresivos o sobreestimulantes | reference/quieter.md |
distill [target] | Refinar | Reducir a la esencia, eliminar complejidad | reference/distill.md |
harden [target] | Refinar | Listo para producción: errores, i18n, casos borde | reference/harden.md |
onboard [target] | Refinar | Diseñar flujos de primer uso, estados vacíos, activación | reference/onboard.md |
animate [target] | Mejorar | Añadir animaciones y movimiento con propósito | reference/animate.md |
colorize [target] | Mejorar | Añadir color estratégico a UIs monocromáticas | reference/colorize.md |
typeset [target] | Mejorar | Mejorar jerarquía tipográfica y fuentes | reference/typeset.md |
layout [target] | Mejorar | Arreglar espaciado, ritmo y jerarquía visual | reference/layout.md |
delight [target] | Mejorar | Añadir personalidad y toques memorables | reference/delight.md |
overdrive [target] | Mejorar | Superar los límites convencionales | reference/overdrive.md |
clarify [target] | Arreglar | Mejorar copy de UX, etiquetas y mensajes de error | reference/clarify.md |
adapt [target] | Arreglar | Adaptar para diferentes dispositivos y tamaños de pantalla | reference/adapt.md · nativo: reference/adapt.native.md |
optimize [target] | Arreglar | Diagnosticar y arreglar rendimiento de UI | reference/optimize.md |
live | Iterar | Modo de variante visual: seleccionar elementos en el navegador, iterar sobre alternativas | reference/live.md |
generate [n] [action] [element] | Iterar | Variantes, versiones o alternativas de un elemento nombrado para elegir en el navegador en vivo; sin selección manual | reference/generate.md |
Enrutamiento:
- Sin argumento: lee routing.md y presenta su menú consciente del contexto; nunca ejecutes un comando automáticamente.
- Solicitud explícita o claramente implícita de ejecutar un comando: carga su referencia (variante nativa en plataformas nativas) y síguela. Pregunta una vez si encajan dos comandos.
- Pregunta de flujo de trabajo o selección de comando: lee Preguntas de flujo de trabajo.
- De lo contrario: trata la solicitud como trabajo de diseño general. Si falta PRODUCT.md, enruta una superficie nueva o mundo de reemplazo a través de init, luego new-work; un refinamiento estrecho del código existente procede sobre la implementación actual según lo que indique
impeccable context, ofreciendo init después en lugar de bloquearse en él. teaches un alias deinit.craftes un alias obsoleto para new-work ordinario y no añade nada.shapees dueño del descubrimiento de tareas, luego entra en new-work solo para decisiones de mundo visual y concepto de superficie.
Después de que init escriba PRODUCT.md, reanuda sin volver a ejecutar impeccable context; init carga la referencia de plataforma nativa por sí mismo cuando la plataforma que registró es ios, android o adaptive.
Fijar / Desfijar: .github/skills/impeccable/scripts/impeccable pin <pin|unpin> <command> crea o elimina un acceso directo independiente /<command>. Informa el resultado del script de forma concisa; transmite stderr textualmente en caso de error.
Hooks: /impeccable hooks <on|off|status|ignore-rule|ignore-file|ignore-value|reset> gestiona el hook detector de diseño para este proyecto (ejecuta automáticamente el detector después de ediciones de archivos de UI y muestra los hallazgos). Carga reference/hooks.md cuando el usuario lo invoca con cualquier argumento.
Doctor: /impeccable doctor informa y repara la desviación entre los artefactos Impeccable de este proyecto (PRODUCT.md, DESIGN.md y su sidecar, configuración, briefs de superficie, el hook) y lo que esta versión lee. Carga reference/doctor.md cuando el usuario lo invoca, o cuando pregunta qué está desactualizado, obsoleto o necesita actualizarse. Una directiva CONTEXT_STALE en la salida de Configuración es el subconjunto económico del mismo informe; actúa sobre ella allí según sus propias instrucciones en lugar de ejecutar doctor sin que se lo pidan.
Nunca repares la desviación como efecto secundario de una tarea de diseño. Un hallazgo CONTEXT_STALE se informa, no se actúa sobre él, a menos que el usuario lo pida. La única excepción es un hallazgo marcado como auto, que la siguiente escritura en ese archivo realiza de todos modos.