Communitygithub.com

heredar-estilo-legado

Habilidad para heredar el estilo de proyectos legacy. Úsala cuando el usuario escriba /heredar-estilo-legado, o cuando se incorpore un agente de codificación de IA a un proyecto legacy escrito a mano y necesites evitar la deriva de estilo.

¿Qué es heredar-estilo-legado?

Esta habilidad está diseñada para preservar las convenciones de codificación implícitas en proyectos legacy escritos a mano, evitando que la IA genere código que se desvíe del estilo existente. Funciona escaneando el código base en cuatro dimensiones meta-arquitectónicas (Anatomía de Archivos, Estado y Flujo de Control, Infraestructura, Manejo de Errores) y aplicando un protocolo de reducción de ruido basado en umbrales de señal para determinar qué conflictos deben resolverse con el usuario. Los conflictos fuertes se presentan uno a la vez al usuario mediante un protocolo de interrogación con 4 opciones, y el consenso se cristaliza en un archivo `.ai-style-rules.md` con secciones de Archivos Dorados, Reglas de Nomenclatura y Control de Estado, y NO HACER. La habilidad soporta modos de escaneo completo (primera vez) y sniffing incremental (cuando ya existe el archivo de reglas), se integra opcionalmente con `CLAUDE.md` para carga automática, y es agnóstica en cuanto a lenguaje y framework.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/ECC/tree/main/skills/inherit-legacy-style

Preguntar en tu IA favorita

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

Documentación

Heredar Estilo Legado

Previene la deriva de estilo de código de IA en proyectos legacy escaneando el código base en busca de convenciones implícitas en 4 dimensiones meta-arquitectónicas, resolviendo conflictos con el usuario uno a la vez, y cristalizando el consenso en un archivo .ai-style-rules.md ejecutable. Totalmente agnóstico en cuanto a lenguaje y framework.

Cuándo Activar

  • El usuario escribe /heredar-estilo-legado
  • El usuario menciona incorporar IA a un proyecto legacy escrito a mano
  • El usuario está preocupado porque el código generado por IA "derive" de las convenciones existentes del proyecto
  • El usuario quiere extraer y codificar las reglas de codificación implícitas de su proyecto

Cuándo Usar

Usa esta habilidad cuando necesites preservar el estilo de un proyecto legacy y prevenir la deriva de estilo generada por IA. Consulta Cuándo Activar más arriba para las condiciones de activación.

Prerrequisitos

  • Git (recomendado; los proyectos sin Git recurren a marcas de tiempo de archivos para el modo incremental)
  • Acceso de lectura/escritura a la raíz del proyecto (genera .ai-style-rules.md y opcionalmente CLAUDE.md)

Flujo de Trabajo

Paso 0 — Modo de Detección Automática

Verificar silenciosamente la existencia de .ai-style-rules.md en la raíz del proyecto:

¿Existe el archivo?Modo
NoRama A — Escaneo Completo por Primera Vez
SíRama B — Sniffing Incremental

Anuncia el modo en una línea y continúa — nunca pidas al usuario que elija.

Rama A — Escaneo Completo por Primera Vez

1. Medir la escala, elegir un nivel de escaneo

git ls-files | grep -cE '\.(js|ts|jsx|tsx|vue|py|go|rs|java|kt|rb|php|cs|swift|c|cpp|h)$'
NivelArchivos fuenteEstrategia
Pequeño≲ 50Lectura completa de cada archivo fuente
Mediano50–500Capa de infraestructura = lectura completa; capa de negocio = muestrear 2–3 por dimensión
Grande≳ 500Muestreo estricto + límite de presupuesto; resumen --stat primero, luego lecturas dirigidas

2. Escanear en 4 dimensiones

  1. Anatomía de Archivos — orden de declaraciones dentro del archivo (imports → tipos → lógica principal → helpers → export)
  2. Estado y Flujo de Control — convenciones de nomenclatura para estado asíncrono, paginación, banderas
  3. Infraestructura — dónde viven los utilitarios transversales (interceptores, formateadores, middleware)
  4. Manejo de Errores — try/catch vs interceptor global vs retorno Result; hábitos de verificación de nulos

3. Aplicar reducción de ruido por umbral de señal

Antes de interrumpir al usuario, evaluar la fuerza de la señal:

  • Señal débil → suprimir automáticamente: minoría <5% Y count <10 → la mayoría gana, la minoría va a los NO HACER
  • Señal fuerte → interrogar: división casi pareja, o bifurcación semántica en una dimensión central
  • Excepción de proyecto pequeño: fuentes ≲50, "3 vs 2" NO es una mayoría → interrogarlo

4. Resolver conflictos uno a la vez (Protocolo de Interrogación)

Para cada conflicto de señal fuerte, presentar EXACTAMENTE UNA pregunta con 4 opciones:

Evidencia: pathA usa estilo X, pathB usa estilo Y ADVERTENCIA: Riesgo: mezclar ambos fractura el estilo del proyecto Elige: 1 seguir X 2 seguir Y 3 esto es evolución, actualizar reglas 4 Tengo una nueva regla

Suspender hasta que el usuario responda, luego proceder al siguiente conflicto. Nunca apilar preguntas.

5. Generar .ai-style-rules.md con tres secciones obligatorias:

  • [Archivos Dorados] — rutas de ejemplares reales anotadas con lo que demuestran
  • [Reglas de Nomenclatura y Control de Estado] — convenciones concretas y verificables
  • [NO HACER] — anti-patrones que no deben propagarse

6. Instalar el gancho persistente

Preguntar al usuario por la fuerza de aplicación (usar AskUserQuestion):

OpciónMecanismo
1 Gancho suave (recomendado)Escribir referencia @.ai-style-rules.md en el CLAUDE.md del proyecto
2 Gancho duroGancho suave + Gancho `PreToolUse[Write
3 Sin ganchoMantener el archivo de reglas; el usuario lo referencia manualmente

Rama B — Sniffing Incremental

  1. Leer el .ai-style-rules.md existente; si tiene una huella de commit, git diff <último_hash> HEAD --stat para identificar el delta
  2. Leer cambios recientes de Git (git log -3 --stat → inspeccionar archivos sospechosos bajo demanda)
  3. Para diffs sobredimensionados (>cientos de archivos): solo resumen --stat + muestrear los cambios más grandes
  4. Comparar el código nuevo contra las reglas registradas → los conflictos pasan por el Protocolo de Interrogación
  5. Agregar registro de evolución al final de .ai-style-rules.md (nunca sobrescribir reglas antiguas)

Aplicación por Turno

Cuando .ai-style-rules.md está en contexto (cargado a través de CLAUDE.md), cada tarea de escritura de código debe comenzar con una declaración de cumplimiento en la cadena de razonamiento, nombrando el ejemplar que se sigue y los NO HACER que se evitan.

Cómo Funciona

Esta habilidad detecta automáticamente si es una ejecución por primera vez o incremental mediante la presencia de .ai-style-rules.md:

  • Primera vez (Rama A) — Mide la escala del proyecto, escanea el código base en 4 dimensiones meta-arquitectónicas (Anatomía de Archivos, Estado y Flujo de Control, Infraestructura, Manejo de Errores), aplica reducción de ruido por umbral de señal para suprimir conflictos débiles, resuelve conflictos de señal fuerte uno a la vez con el usuario, genera .ai-style-rules.md con Archivos Dorados / Reglas de Nomenclatura / NO HACER, y ofrece ganchos de aplicación opcionales.
  • Incremental (Rama B) — Lee las reglas existentes, verifica los diffs recientes de Git en busca de patrones nuevos o conflictivos, ejecuta el mismo protocolo de interrogación uno a la vez para cualquier conflicto encontrado, y agrega registros de evolución sin sobrescribir las reglas existentes.
  • Aplicación por Turno — Cuando está enganchado a través de CLAUDE.md, cada tarea de escritura de código comienza con una declaración de cumplimiento que nombra el ejemplar seguido y los NO HACER evitados.

Especificación de Salida

  • .ai-style-rules.md en la raíz del proyecto (con huella de commit + nivel de escala en el encabezado)
  • Opcionalmente CLAUDE.md con una referencia @.ai-style-rules.md
  • Registros de evolución añadidos como entradas ### [AAAA-MM-DD] Registro de Evolución de Estilo

Anti-Patrones

  • FALLO: NO omitir el paso de medición de escala — muestrear un proyecto de 30 archivos lo "desnutre"; escanear completamente un repositorio de 5,000 archivos lo revienta
  • FALLO: NO apilar múltiples preguntas de conflicto a la vez — la interrogación es estrictamente uno a la vez
  • FALLO: NO sobrescribir reglas antiguas en modo incremental — siempre añadir registros de evolución
  • FALLO: NO predeterminar "gancho duro" sin preguntar — la fuerza de aplicación es decisión del usuario
  • FALLO: NO juzgar la sintaxis o la calidad del stack tecnológico — esta habilidad alinea solo meta-arquitectura
  • FALLO: NO copiar errores de los archivos ejemplares — reutilizar estructura, señalar defectos

Mejores Prácticas

  • Anunciar el modo detectado (primera vez vs incremental) y el nivel de escala en una línea antes de escanear
  • Para proyectos grandes, leer primero los resúmenes --stat, luego Read dirigido a archivos sospechosos
  • Dejar que el umbral de señal maneje el ruido — una división de nomenclatura 843 vs 8 debe resolverse automáticamente sin interrupción del usuario
  • Ante la duda sobre la fuerza de la señal, inclinarse por preguntar
  • El gancho suave de CLAUDE.md (@.ai-style-rules.md) suele ser suficiente; gancho duro solo si el usuario quiere aplicación mecánica

Habilidades Relacionadas

  • init — inicializar un nuevo CLAUDE.md con documentación del código base
  • code-review — revisar diffs por corrección y problemas de estilo
  • simplify — revisar código en busca de oportunidades de reutilización y simplificación

Ejemplos

  1. Incorporación por primera vez

    • Usuario: "Ayúdame a incorporar IA a este código base antiguo sin cambiar su estilo."
    • Acción: Ejecutar Rama A escaneo completo → medir escala → escanear 4 dimensiones → interrogar conflictos → generar .ai-style-rules.md → ofrecer fuerza de gancho (suave/duro/ninguno).
  2. Actualización incremental después de cambios en el equipo

    • Usuario: "Agregamos un nuevo módulo; mantén las reglas de estilo existentes intactas."
    • Acción: Ejecutar Rama B sniffing incremental → comparar deltas de Git con reglas registradas → interrogar cualquier nuevo conflicto → agregar registro de evolución sin sobrescribir.
  3. Aplicar NO HACER a través de CLAUDE.md

    • Usuario: "Asegúrate de que todo el código nuevo se mantenga consistente con las reglas del proyecto."
    • Acción: Gancho suave instalado → .ai-style-rules.md se carga automáticamente cada sesión → cada tarea de escritura de código comienza con declaración de cumplimiento, reutilizando patrones ejemplares y evitando los NO HACER.

Individual skills in this repo

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

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/content-engine

Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.

affaan-m/ECC

Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.

affaan-m/fal-ai-media

Unified media generation via fal.ai MCP — image, video, and audio. Covers text-to-image (Nano Banana), text/image-to-video (Seedance, Kling, Veo 3), text-to-speech (CSM-1B), and video-to-audio (ThinkSound). Use when the user wants to generate images, videos, or audio with AI.

affaan-m/manim-video

日本語翻訳:このファイルは manim-video 用の日本語翻訳が必要です

affaan-m/remotion-video-creation

Remotion のベストプラクティス - React で動画を作成する。3D、アニメーション、音声、字幕、チャート、トランジションなどをカバーするドメイン固有の29のルール。

affaan-m/video-editing

AI-assisted video editing workflows for cutting, structuring, and augmenting real footage. Covers the full pipeline from raw capture through FFmpeg, Remotion, ElevenLabs, fal.ai, and final polish in Descript or CapCut. Use when the user wants to edit video, cut footage, create vlogs, or build video content.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

agent-self-evaluation

Use after completing any non-trivial task. The agent self-rates its output on 5 axes — accuracy, completeness, clarity, actionability, conciseness — with concrete evidence per criterion. Produces a structured 1-5 scorecard with specific improvement suggestions.

agent-sort

Build an evidence-backed ECC install plan for a specific repo by sorting skills, commands, rules, hooks, and extras into DAILY vs LIBRARY buckets using parallel repo-aware review passes. Use when ECC should be trimmed to what a project actually needs instead of loading the full bundle.

ai-first-engineering

Engineering operating model for teams where AI agents generate a large share of implementation output. Use when setting team process, review gates, or ownership rules for a codebase largely written by agents.

ai-regression-testing

Regression testing strategies for AI-assisted development. Sandbox-mode API testing without database dependencies, automated bug-check workflows, and patterns to catch AI blind spots where the same model writes and reviews code. Use when adding regression coverage to AI-assisted code, or when the same model both wrote and reviewed a change.

android-clean-architecture

Clean Architecture patterns for Android and Kotlin Multiplatform projects — module structure, dependency rules, UseCases, Repositories, and data layer patterns. Use when structuring modules, layers, or data flow in an Android or KMP project.

angular-developer

Generates Angular code and provides architectural guidance. Trigger when creating projects, components, or services, or for best practices on reactivity (signals, linkedSignal, resource), forms, dependency injection, routing, SSR, accessibility (ARIA), animations, styling (component styles, Tailwind CSS), testing, or CLI tooling.

Skills relacionados