CommunityRedacción y edicióngithub.com

chiggosVikash/pattern_principal

Habilidades de agente de IA para escribir código de producción limpio y basado en principios — GoF, SOLID, YAGNI, DRY.

¿Qué es pattern_principal?

Este skill permite al agente de IA aplicar principios de diseño y patrones de software reconocidos, como los patrones GoF (Gang of Four), SOLID, YAGNI y DRY, para generar código de producción limpio, mantenible y escalable. Está diseñado para desarrolladores que trabajan con asistentes de IA como Claude Code, Cursor o Codex, y buscan escribir software de alta calidad de manera consistente. El skill se basa en un archivo SKILL.md que define cómo el agente debe evaluar y estructurar el código en tiempo real, guiando decisiones de diseño como la separación de responsabilidades, la prevención de redundancias y la elección de patrones adecuados. Al integrar estos principios, el agente no solo escribe código funcional, sino que también sigue las mejores prácticas de la ingeniería de software, reduciendo la deuda técnica y facilitando el mantenimiento a largo plazo. Es compatible con cualquier plataforma que soporte la definición de skills en YAML o Markdown, y su enfoque es ideal para equipos que priorizan la calidad del código desde el inicio.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add chiggosVikash/pattern_principal

Installed? Explore more Redacción y edición skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Preguntar en tu IA favorita

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

Documentación

¿Qué hace pattern_principal?

Habilidades de agente de IA para escribir código de producción limpio y basado en principios — GoF, SOLID, YAGNI, DRY.

Descripción general

Este conjunto de habilidades guía al agente de IA para aplicar principios fundamentales de ingeniería de software al generar código. Incluye:

  • Patrones GoF (Gang of Four): Estrategia, Observador, Fábrica, Decorador, etc.
  • Principios SOLID: Responsabilidad única, Abierto/Cerrado, Sustitución de Liskov, Segregación de interfaces, Inversión de dependencias.
  • YAGNI (You Ain't Gonna Need It): No agregues funcionalidad hasta que sea necesaria.
  • DRY (Don't Repeat Yourself): Evita la duplicación de lógica.

Plataformas compatibles

  • Claude Code
  • Cursor
  • Codex
  • Otros asistentes de IA que admitan definiciones de habilidades basadas en YAML o Markdown.

Cómo usar

  1. Agrega el archivo SKILL.md a tu proyecto.
  2. El asistente de IA leerá automáticamente las instrucciones.
  3. Al solicitar código, el agente aplicará los principios especificados.

Ejemplo de uso

Solicitud:

Crea un sistema de notificaciones usando el patrón Observador.

Respuesta del agente:

from abc import ABC, abstractmethod
from typing import List

# Patrón Observador (GoF)
class Observer(ABC):
    @abstractmethod
    def update(self, message: str) -> None:
        pass

class Subject:
    def __init__(self):
        self._observers: List[Observer] = []

    def attach(self, observer: Observer) -> None:
        self._observers.append(observer)

    def detach(self, observer: Observer) -> None:
        self._observers.remove(observer)

    def notify(self, message: str) -> None:
        for observer in self._observers:
            observer.update(message)

# Implementaciones concretas
class EmailObserver(Observer):
    def update(self, message: str) -> None:
        print(f"Enviando correo: {message}")

class SMSObserver(Observer):
    def update(self, message: str) -> None:
        print(f"Enviando SMS: {message}")

Principios aplicados

SOLID

  • Responsabilidad única: Cada clase tiene una sola responsabilidad.
  • Abierto/Cerrado: Las clases están abiertas para extensión, pero cerradas para modificación.
  • Sustitución de Liskov: Las subclases pueden reemplazar a sus clases base.
  • Segregación de interfaces: Interfaces pequeñas y específicas.
  • Inversión de dependencias: Depender de abstracciones, no de implementaciones concretas.

YAGNI

  • No agregues código para casos de uso futuros hipotéticos.
  • Mantén el código base mínimo y enfocado.

DRY

  • Extrae lógica repetida en funciones o clases reutilizables.
  • Evita la duplicación de reglas de negocio.

Contribución

Si encuentras errores o deseas sugerir mejoras, abre un issue o envía un pull request al repositorio.

Licencia

MIT

Skills relacionados