Communitygithub.com

heyeuca/less

Elimina elementos que no tienen una razón clara para existir en escritura, código y código de UI (HTML/CSS, JSX, Tailwind), manteniendo corrección, contexto necesario, seguridad, accesibilidad y todo lo que el usuario pidió. Úsalo cuando el usuario pida cortar, recortar, eliminar, simplificar, acortar o limpiar algo, o diga que está "demasiado largo", "demasiado recargado" o "se ve desordenado", o pida limpiar una salida generada por IA. No es para construir o agregar funciones de UI, auditorías de accesibilidad ni refactorizaciones de rendimiento.

¿Qué es less?

La habilidad `less` está diseñada para recortar contenido redundante o innecesario en escritura, código y código de interfaz de usuario, siguiendo una guía de decisión basada en el principio: **cada elemento debe tener una razón clara para existir**. Funciona en plataformas como Claude Code, Cursor y Codex, y es especialmente útil cuando el usuario solicita explícitamente reducir, acortar o limpiar material, o cuando la salida generada por IA se percibe como "demasiado larga" o "desordenada". La habilidad analiza oraciones, comentarios de código, parámetros, opciones, estilos y elementos de UI, eliminando relleno, duplicaciones, abstracciones innecesarias, código defensivo para casos imposibles, y calificativos que no modifican el significado. Sin embargo, **nunca elimina** contenido que afecte la corrección (números, fechas, condiciones), la seguridad, el contexto necesario (prerrequisitos, versiones), la intención del usuario (su tono y solicitudes), ni elementos de cortesía o formales. La habilidad preserva la estructura que los lectores usan para navegar (encabezados, TOC, pasos numerados) y no realiza reescrituras de estilo ni cambios independientes. Cuando recorta código, verifica llamadores, exportaciones y pruebas relevantes para no romper interfaces externas. Finalmente, devuelve el texto o código reducido sin comentarios, a menos que el usuario pida una lista de lo eliminado.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/heyeuca/less/tree/HEAD/skills/less

Preguntar en tu IA favorita

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

Documentación

¿Qué hace less?

Menos, pero mejor. Conserva solo lo que tiene una razón para existir.

La prueba

Para cada elemento (oración, advertencia, encabezado, viñeta, comentario, función, parámetro, opción), pregúntate: ¿Tiene una razón clara para existir? Si no la tiene, elimínalo. La claridad supera a la brevedad. Cuando tengas dudas, consérvalo. Juzga lo que hace un pasaje en contexto, no si coincide con una frase hecha. Lee el texto circundante: un calificador puede regir oraciones posteriores. Deja las oraciones y regiones de código fuera de los objetivos de eliminación confirmados sin cambios; permite solo las reparaciones locales necesarias por esas eliminaciones.

Cuándo

Solo a petición o con una señal clara, no al mero escribir un borrador o código nuevo. Elimina material innecesario; permite solo las ediciones locales necesarias para que el resultado sea gramatical o ejecutable (como en línea de un ayudante redundante). Sin reescrituras independientes de estilo o voz, traducciones, resúmenes de longitud fija, verificación de hechos, sustituciones de algoritmos ni trabajo de rendimiento.

No aplicar

Devuelve la entrada sin cambios más una línea que indique el motivo para:

  • Texto legal, contractual u otro texto textual; citas y transcripciones.
  • Código, configuración o comandos que el usuario no señaló.

Cambia solo el código que el usuario señaló. Una longitud o formato establecido por el usuario no es una exclusión: trabaja dentro de él.

Orden de eliminación

Revisa cada candidato primero contra "Nunca eliminar", especialmente los saludos y despedidas propios del usuario.

Escritura:

  1. Preámbulo, pregunta repetida y saludos que agregaste ("¡Gran pregunta!").
  2. Resúmenes de cierre y ofertas que agregaste, o que terminan una descripción de PR, commit o documento ("Espero que ayude", "¿Quieres que...").
  3. Relleno y muletillas que no cambian nada.
  4. Puntos duplicados (conserva el más claro).
  5. Advertencias y alternativas no solicitadas que no cambian lo que el lector hace.
  6. Decoración en respuestas de menos de ~5 oraciones: encabezados, negritas, viñetas.
  7. Fusiona y acorta el resto, manteniendo oraciones completas. Al editar el texto del usuario, no fusiones ni reformulees oraciones; solo repara la gramática directamente afectada por una eliminación.

Código:

  1. Comentarios que repiten el código.
  2. Abstracciones innecesarias: ayudantes, envoltorios, interfaces, fábricas. El uso único por sí solo no es evidencia de que una abstracción sea innecesaria.
  3. Opciones, banderas, configuraciones no solicitadas.
  4. Código defensivo para casos que demostrablemente no pueden ocurrir desde el código visible. De lo contrario, consérvalo.

Antes de eliminar código u opciones, inspecciona los llamadores disponibles, exportaciones y pruebas relevantes. Conserva las firmas y el comportamiento usados externamente a menos que el usuario solicite explícitamente ese cambio. Ejecuta las comprobaciones relevantes existentes luego de las ediciones de código; si no se puede establecer el uso o comportamiento, conserva el candidato.

Documentos: aplica la prueba sección por sección. Conserva la estructura por la que los lectores navegan: encabezados, TOC y anclas, pasos numerados referenciados en otro lugar, tablas que contienen datos. Elimina una sección completa solo cuando falla la prueba. Conserva cada encabezado y su entrada en el TOC a menos que se corte toda la sección; nunca fusiones una sección en la introducción.

Diseño: para código de UI que el usuario señala, aplica la prueba a elementos y estilos. Elimina solo después de verificar references/design.md (orden de eliminación y lista de nunca eliminar). El contenido no solicitado allí se refiere a lo que el agente agregó, no a lo que el usuario escribió. Cambia solo marcado y estilos; sin nueva estética. No es para construir nueva UI, capturas de pantalla ni archivos de Figma.

Nunca eliminar

  • Corrección: números, unidades, fechas, condiciones, excepciones, negaciones.
  • Fuerza de afirmación: incertidumbre, aproximación, alcance, relaciones causales y obligación. Conserva calificadores que transporten significado como "aproximadamente", "algunos", "como máximo", "puede" y "debe"; el acortamiento no debe fortalecer ni debilitar una afirmación.
  • Contexto necesario: lo que el lector necesita para actuar (prerrequisitos, pasos, versiones).
  • Seguridad: advertencias de pérdida de datos, seguridad, dinero, legales, acciones irreversibles.
  • La solicitud del usuario: contenido, formato, longitud, restricciones solicitados.
  • Atribución y citas.
  • La voz del usuario al editar su texto. No reescribas el estilo.
  • En un mensaje a personas (correo, chat, carta) que el usuario escribió: saludos, despedidas y líneas que piden una respuesta o preguntas ("Dime si..."). P. ej.: "No dudes en contactarme si algo no queda claro." se conserva; puedes recortar "no dudes" y "si algo". Solo los saludos y despedidas están protegidos: otro relleno en el texto del usuario ("básicamente", "literalmente", "solamente") todavía se corta, conservando su voz.
  • Registro de cortesía: formas 존댓말/敬語, 様, saludos, despedidas. Los suavizadores e intensificadores apilados dentro de él (정말, 혹시, 大変, 誠に, 何卒) son solo candidatos: consérvalos cuando transporten incertidumbre o intención social.
  • Código: comportamiento (salida, efectos secundarios, errores); manejo de errores en límites reales (E/S, red, entrada de usuario); comentarios de "por qué", restricciones, notas de seguridad; API pública y firmas a menos que se solicite; anotaciones de tipo que afectan la comprobación o el tiempo de ejecución; enganches y costuras solo para pruebas.
  • Cualquier cosa cuyo propósito no puedas determinar.

Detenerse

Detente cuando cada elemento pase la prueba, o cuando el próximo corte costaría significado o requeriría adivinación. Compara el resultado con la fuente en busca de cambios en la fuerza de las afirmaciones y ediciones no intencionadas en buen material circundante. Nunca cortes para alcanzar una longitud. Si el usuario pidió acortar su texto, el relleno que falla la prueba se va; lo no cambiado necesita una razón.

Salida

Solo el texto o código reducido, en el mismo formato e idioma. Excepción: la línea con el motivo bajo No aplicar. No comentes sobre lo que se cortó a menos que el usuario lo pida; entonces enuméralo. Si nada debe cambiar, devuélvelo sin cambios.

Skills relacionados