Claude Code Plugins

Community-maintained marketplace

Feedback

sea-dsl-authoring

@GodSpeedAI/SEA
1
0

Author SEA-DSL specifications with proper CQRS annotations and validation.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name sea-dsl-authoring
description Author SEA-DSL specifications with proper CQRS annotations and validation.
tags semantic-core, authoring, sea-dsl
inputs [object Object]

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