Search

PythonReactSEOPDF
GitHub Skill

sea-dsl-authoring

Author SEA-DSL specifications with proper CQRS annotations, validation, and namespace conventions. Use when creating .sea files with entities, flows, and policies that require @cqrs, @tx, @outbox, and @idempotency annotations following the Flow-only CQRS tagging pattern.

GodSpeedAI☆ 1 Repository stars0 Repository forks

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

View source ↗Guides

Skill instructions

SEA-DSL Authoring Skill

Guides users through authoring semantically valid SEA-DSL files.

Prerequisites

Before authoring SEA-DSL, understand:

  • SEA-DSL grammar from sea_dsl_language_reference.yml
  • CQRS annotation requirements from flow_lint.py
  • Namespace conventions and bounded context boundaries

Workflow

  1. Draft: Create .sea file with proper namespacing
  2. Annotate: Add required annotations to all Flows
  3. Validate: Run just sea-validate <file>
  4. Parse: Run just sea-parse <file> to generate AST
  5. Lint: Run just flow-lint to verify annotations

Required Annotations

Every Flow MUST have:

@cqrs { "kind": "command" | "query" | "event" }

Commands MUST have:

@tx { "transactional": true | false }

Events MUST have:

@outbox { "mode": "required" | "optional" }

Rules

  • Use nested JSON only (no dotted keys like @cqrs.kind)
  • All JSON must be valid
  • Never claim success without validation passing
  • Follow namespace conventions: system.<context>.<name>

Example

@namespace "system.orders"
@version "1.0.0"

Entity "Order" in system.orders

Flow "CreateOrder" from "Customer" to "OrderAggregate"
  @cqrs { "kind": "command" }
  @tx { "transactional": true }
  @idempotency { "enabled": true, "key": "orderId" }

Related Skills

Examples

Read the usage examples in the source repository.

View source ↗

Source history

Indexed on
2026-01-20
Index updated
2026-01-26
Branch
main

Index and sync dates describe this directory. View the source repository for code history.

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!