ASD

Event Store Design

Diseña e implementa event stores para sistemas de event sourcing: infraestructura, elección de tecnología y patrones de persistencia de eventos.

Estrellas
38.8k

en todo el repo

Actividad
47

0–100, la ruta de este skill

Actualizado
hace 2 meses

último commit aquí

Commits
1

últimos 90 días

Contexto
1k tok

47 tok en reposo

Paquete
2 archivos

15 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add wshobson/agents --skill event-store-design --agent claude-code

Se instala solo en este repositorio.

Qué hace

  • Guía el diseño de arquitecturas de event store para sistemas basados en event sourcing
  • Compara tecnologías como EventStoreDB, PostgreSQL, Kafka, DynamoDB y Marten
  • Define requisitos clave: append-only, ordenación, versionado, suscripciones e idempotencia
  • Aporta buenas prácticas sobre stream IDs, correlation/causation IDs y evolución de esquemas

Úsalo cuando

  • Al diseñar infraestructura de event sourcing
  • Al elegir entre distintas tecnologías de event store
  • Al implementar un event store propio
  • Al optimizar el almacenamiento y la recuperación de eventos, o planificar su escalado

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Ayúdame a diseñar el esquema de un event store para mi sistema
    • ¿Qué tecnología de event store me conviene, EventStoreDB o PostgreSQL?
    • Necesito implementar concurrencia optimista en mi event store

    SKILL.md

    En inglés

    Event Store Design

    Comprehensive guide to designing event stores for event-sourced applications.

    When to Use This Skill

    • Designing event sourcing infrastructure
    • Choosing between event store technologies
    • Implementing custom event stores
    • Optimizing event storage and retrieval
    • Setting up event store schemas
    • Planning for event store scaling

    Core Concepts

    1. Event Store Architecture

    ┌─────────────────────────────────────────────────────┐
    │                    Event Store                       │
    ├─────────────────────────────────────────────────────┤
    │  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐ │
    │  │   Stream 1   │  │   Stream 2   │  │   Stream 3   │ │
    │  │ (Aggregate)  │  │ (Aggregate)  │  │ (Aggregate)  │ │
    │  ├─────────────┤  ├─────────────┤  ├─────────────┤ │
    │  │ Event 1     │  │ Event 1     │  │ Event 1     │ │
    │  │ Event 2     │  │ Event 2     │  │ Event 2     │ │
    │  │ Event 3     │  │ ...         │  │ Event 3     │ │
    │  │ ...         │  │             │  │ Event 4     │ │
    │  └─────────────┘  └─────────────┘  └─────────────┘ │
    ├─────────────────────────────────────────────────────┤
    │  Global Position: 1 → 2 → 3 → 4 → 5 → 6 → ...     │
    └─────────────────────────────────────────────────────┘
    

    2. Event Store Requirements

    Requirement Description
    Append-only Events are immutable, only appends
    Ordered Per-stream and global ordering
    Versioned Optimistic concurrency control
    Subscriptions Real-time event notifications
    Idempotent Handle duplicate writes safely

    Technology Comparison

    Technology Best For Limitations
    EventStoreDB Pure event sourcing Single-purpose
    PostgreSQL Existing Postgres stack Manual implementation
    Kafka High-throughput streaming Not ideal for per-stream queries
    DynamoDB Serverless, AWS-native Query limitations
    Marten .NET ecosystems .NET specific

    Templates and detailed worked examples

    Full template library and detailed worked examples live in references/details.md. Read that file when you need the concrete templates.

    Best Practices

    Do's

    • Use stream IDs that include aggregate type - Order-{uuid}
    • Include correlation/causation IDs - For tracing
    • Version events from day one - Plan for schema evolution
    • Implement idempotency - Use event IDs for deduplication
    • Index appropriately - For your query patterns

    Don'ts

    • Don't update or delete events - They're immutable facts
    • Don't store large payloads - Keep events small
    • Don't skip optimistic concurrency - Prevents data corruption
    • Don't ignore backpressure - Handle slow consumers

    Reproducido de wshobson/agents bajo licencia MIT. Leer esta página en markdown.

    Archivos

    2 archivos en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Para plantillas y ejemplos detallados, consultar el archivo references/details.md.

    Detalles

    Creador
    wshobson
    Categoría
    Bases de datos
    Licencia
    MIT
    Recursos incluidos
    referencias
    Repositorio
    wshobson/agents
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de wshobson/agents

    Este repo incluye 180 skills. Si instalas uno, normalmente ya tienes los demás.

    Úsalo al seleccionar y colocar iconos, imágenes, SVGs, diagramas o infografías de apoyo aprobados en un PPTX editable.

    Costo de contexto al activarse
    344 tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 26 días
    documentos

    Úsalo cuando pidan optimizar un prompt, mejorar su rendimiento, diseñar una plantilla, aplicar chain-of-thought, few-shot prompting o técnicas avanzadas de prompt engineering para producción.

    Costo de contexto al activarse
    1.3k tok
    Tamaño del paquete
    10 archivos
    Última actualización
    el mes pasado
    herramientas desarrollo

    Úsalo al redactar o reparar una especificación JSON con coordenadas explícitas para un PPTX editable.

    Costo de contexto al activarse
    489 tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 26 días
    documentos

    Úsalo para validar o reparar un PPTX editable en cuanto a geometría, accesibilidad, editabilidad nativa, linaje de fuente e integridad del paquete OOXML.

    Costo de contexto al activarse
    409 tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 26 días
    documentos

    Úsalo para analizar un PPTX de referencia en modo solo lectura: estructura, tema, tipografía, ritmo de layout, diagnósticos, catálogos de plantillas derivados o inspección segura del paquete OOXML.

    Costo de contexto al activarse
    689 tok
    Tamaño del paquete
    8 archivos
    Última actualización
    hace 26 días
    documentos

    Úsalo al preparar la narrativa, las fuentes y el contexto de diseño para un nuevo deck PPTX editable.

    Costo de contexto al activarse
    415 tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 26 días
    documentos

    Skills relacionados

    Domina la optimización de consultas SQL, estrategias de indexado y análisis EXPLAIN para mejorar drásticamente el rendimiento de la base de datos y eliminar consultas lentas.

    Costo de contexto al activarse
    1.5k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 2 meses
    bases de datos

    Ejecuta migraciones de bases de datos entre ORMs y plataformas con estrategias zero-downtime, transformación de datos y procedimientos de rollback.

    Costo de contexto al activarse
    2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 2 meses
    bases de datos

    Testea contratos inteligentes de forma exhaustiva con Hardhat y Foundry: tests unitarios, de integración y forking de mainnet.

    Costo de contexto al activarse
    2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 2 meses
    testing qa