CommunityProgramación y desarrollogithub.com

Revisión por Sobrediseño (Ponytail Review)

Encuentra exceso de ingeniería en diffs de código: bibliotecas estándar reinventadas, dependencias innecesarias, abstracciones especulativas y flexibilidad muerta. Una línea por hallazgo: ubicación, qué cortar, con qué reemplazarlo.

¿Qué es Revisión por Sobrediseño (Ponytail Review)?

Esta habilidad, diseñada para herramientas como Claude Code, Cursor o Codex, se enfoca exclusivamente en detectar y reportar sobreingeniería en revisiones de código. Contrasta con las revisiones tradicionales orientadas a corrección, seguridad o rendimiento, y se activa con comandos como "review for over-engineering", "what can we delete", "is this over-engineered", "simplify review" o la invocación explícita "/ponytail-review". Su formato de salida es extremadamente conciso: una línea por hallazgo que indica la ubicación (número de línea), una etiqueta (delete, stdlib, native, yagni, shrink), qué eliminar y el reemplazo sugerido. Al final, reporta el único indicador que importa: "net: -N líneas posibles". Si no hay nada que cortar, muestra "Lean already. Ship." y se detiene. No aplica los cambios, solo los lista. Además, se puede desactivar con "stop ponytail-review" o "normal mode" para volver a un estilo de revisión detallado.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/EastDong314/agent-skills/tree/HEAD/skills/ponytail-review

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

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

Documentación

Revisa diffs en busca de complejidad innecesaria. Una línea por hallazgo: ubicación, qué cortar, con qué reemplazarlo. El mejor resultado para un diff es que se vuelva más corto.

Formato

L<línea>: <etiqueta> <qué>. <reemplazo>., o <archivo>:L<línea>: ... para difs con múltiples archivos.

Etiquetas:

  • delete: código muerto, flexibilidad no utilizada, característica especulativa. Reemplazo: nada.
  • stdlib: cosa hecha a mano que ya incluye la biblioteca estándar. Nombra la función.
  • native: dependencia o código que hace algo que la plataforma ya hace. Nombra la función.
  • yagni: abstracción con una sola implementación, configuración que nadie define, capa con un solo llamador.
  • shrink: misma lógica, menos líneas. Muestra la forma más corta.

Ejemplos

❌ "Esta clase EmailValidator puede ser más compleja de lo necesario, ¿has considerado si todas estas reglas de validación se necesitan en esta etapa?"

✅ L12-38: stdlib: clase validadora de 27 líneas. "@" en el email, 1 línea, la validación real es el correo de confirmación.

✅ L4: native: moment.js importado para una sola llamada de formato. Intl.DateTimeFormat, 0 dependencias.

✅ repo.py:L88: yagni: AbstractRepository con una sola implementación. Mantenlo en línea hasta que exista una segunda.

✅ L52-71: delete: envoltorio de reintento alrededor de una llamada local idempotente. Nada lo reemplaza.

✅ L30-44: shrink: bucle manual construye un diccionario. dict(zip(claves, valores)), 1 línea.

Puntuación

Termina con la única métrica que importa: net: -<N> líneas posibles.

Si no hay nada que cortar, escribe Ya es esbelto. Envíalo. y detente.

Límites

Alcance: solo sobreingeniería y complejidad. Errores de corrección, vulnerabilidades de seguridad y rendimiento están explícitamente fuera del alcance. Envíalos a una revisión normal, no a esta. Una sola prueba de humo o una autocomprobación basada en assert es el mínimo del ponytail, no es hinchazón, nunca la marques para eliminar. No aplica las correcciones, solo las lista. "detener ponytail-review" o "modo normal": volver al estilo de revisión detallado.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

EastDong314/agent-skills

查询《中华人民共和国民法典》条文原文(1260 条 / 7 编 84 章 / 附则)。当用户询问民法典的任何条文或制度时使用,例如「第 1042 条」「离婚冷静期」「居住权」「保证合同」「高空抛物」「诉讼时效」「夫妻共同债务」;也用于需要引述、比对、解释民法典原文的场景。回答必须逐字引用条文原文并标注条号,不做改写。 | Look up verbatim articles of the PRC Civil Code (中华人民共和国民法典). Use when the user asks about any Civil Code article, needs the exact statutory text, or wants to cite, quote, or compare provisions.

EastDong314/agent-skills

管理 Ricky 的本地 Obsidian 知识库(默认 $HOME/workspace/notes):创建、读取、更新、删除、搜索、重构、入库(ingest)、体检(lint)、建索引与整理笔记。当用户要求管理 Obsidian 笔记、知识库内容、日记、项目笔记、资料入库(source-to-wiki)、backlinks、tags、YAML frontmatter、Properties、Bases、Dataview 字段或查询、wiki 链接、嵌入、callout、canvas、网页剪藏,或用本地 Obsidian 应用/CLI 打开笔记时使用。 | Create, read, update, delete, search, refactor, ingest, lint, index, and organize Ricky's local Obsidian vault at $HOME/workspace/notes (override with OBSIDIAN_VAULT). Use when an AI coding agent is asked to manage Obsidian notes, knowledge-base content, daily notes, project notes, source-to-wiki ingestion, backlinks, tags, YAML frontmatter, Properties, Bases, Dataview fields or queries, wiki links, embeds, callouts, canvases, web clipping, or to open notes in the local Obsidian app/CLI.

EastDong314/agent-skills

Develop against ruoyi-vue-pro/Yudao projects, including backend modules, Vue3 admin UI, uni-app UI, SQL, permissions, and data-integration boundaries.

EastDong314/agent-skills

Investigate a bug, regression, flaky behavior, or unclear backend failure with an evidence-first debugging workflow before jumping into fixes. Use when Codex should establish a reproducible feedback loop, rank hypotheses, inspect the real failing path, and only then propose or apply changes.

Skills relacionados