asyncapi-design

AsyncAPI Design Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "asyncapi-design" with this command: npx skills add melodic-software/claude-code-plugins/melodic-software-claude-code-plugins-asyncapi-design

AsyncAPI Design Skill

When to Use This Skill

Use this skill when:

  • Designing event-driven APIs - AsyncAPI 3.0 for message-based architectures

  • Configuring message brokers - Kafka, RabbitMQ, MQTT, WebSocket bindings

  • Implementing in C# - Event contracts, MassTransit, Confluent Kafka

  • Event versioning - Schema evolution and backward compatibility

MANDATORY: Documentation-First Approach

Before creating AsyncAPI specifications:

  • Invoke docs-management skill for event-driven patterns

  • Verify AsyncAPI 3.0 syntax via MCP servers (context7 for latest spec)

  • Base all guidance on AsyncAPI 3.0 specification

AsyncAPI vs OpenAPI

Aspect OpenAPI AsyncAPI

Communication Request/Response Event-Driven

Protocol HTTP/HTTPS Kafka, RabbitMQ, MQTT, WebSocket

Initiator Client requests Publisher emits

Pattern Synchronous Asynchronous

Use Case REST APIs Message queues, streaming, IoT

AsyncAPI 3.0 Structure Overview

asyncapi: 3.0.0 info: title: API Title version: 1.0.0

servers: production: host: kafka.example.com:9092 protocol: kafka

channels: orderCreated: address: orders.created messages: orderCreatedMessage: $ref: '#/components/messages/OrderCreated'

operations: publishOrderCreated: action: send channel: $ref: '#/channels/orderCreated'

components: messages: { } schemas: { } securitySchemes: { }

For complete template: See basic-template.md

Quick Reference

Supported Protocols

Protocol Use Case Binding Version

Kafka High-throughput streaming 0.5.0

AMQP (RabbitMQ) Message queuing 0.3.0

MQTT IoT, lightweight messaging 0.2.0

WebSocket Real-time browser comms

For protocol-specific patterns: See protocol-patterns.md

Channel Naming Convention

{domain}.{entity}.{action}.{version} Example: orders.order.created.v1

Workflow

  • Identify events - What significant occurrences need to be communicated?

  • Define channels - What topics/queues will carry these events?

  • Design messages - What data does each event contain?

  • Choose protocol - Kafka, RabbitMQ, MQTT, etc.?

  • Add bindings - Protocol-specific configuration

  • Document security - Authentication and authorization

  • Version strategy - How will events evolve?

  • Generate code - Use AsyncAPI generator for clients/handlers

References

Load on-demand based on need:

Reference Load When

basic-template.md Creating a new AsyncAPI spec from scratch

protocol-patterns.md Configuring Kafka, RabbitMQ, MQTT, WebSocket

csharp-implementation.md Implementing in .NET/C# with MassTransit or Confluent

event-design-patterns.md Event envelopes, versioning, best practices

Related Skills (Cross-Plugin)

Phase Skill Plugin Purpose

DESIGN asyncapi-design (this skill) formal-specification Architecture research, pattern selection

AUTHORING asyncapi-authoring

spec-driven-development Concrete YAML file creation

Workflow: Design (research event patterns) → Author (create YAML) → Implement (generate code)

MCP Research

For current AsyncAPI patterns and tools:

perplexity: "AsyncAPI 3.0 specification" "event-driven API design patterns" context7: "asyncapi" (for official documentation) ref: "AsyncAPI spec examples" "Kafka binding patterns"

Version History

  • v2.0.0 (2026-01-17): Refactored to progressive disclosure pattern

  • Extracted 4 reference files (~650 lines)

  • Hub reduced from 789 to ~130 lines

  • v1.0.0 (2025-12-26): Initial release

Last Updated: 2026-01-17

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

design-thinking

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

plantuml-syntax

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

system-prompt-engineering

No summary provided by upstream source.

Repository SourceNeeds Review