ME

messaging-decision

Decide which messaging broker (RabbitMQ, Kafka, etc.) fits your requirements.

Install

mkdir -p .claude/skills/messaging-decision && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18596" && unzip -o skill.zip -d .claude/skills/messaging-decision && rm skill.zip

Installs to .claude/skills/messaging-decision

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Decide whether a portfolio repository should use no broker, transactional outbox, RabbitMQ, Kafka/Redpanda, Redis Streams, or NATS based on delivery semantics, ordering, replay, retry/DLQ, throughput, and benchmark evidence.
224 charsno explicit “when” trigger
Advanced

Key capabilities

  • Decide on messaging broker usage
  • Identify actual messaging needs
  • Choose one messaging mode and reject alternatives
  • Update `project.yaml` with messaging decision
  • Document topology and failure cases for selected broker
  • Add a benchmark to prove broker choice

How it works

This skill decides on the appropriate messaging broker by evaluating project needs against a messaging matrix. It selects a mode, documents the decision, and requires a benchmark to validate the choice.

Inputs & outputs

You give it
Portfolio repository context, messaging requirements
You get back
Decision on messaging broker, updated `project.yaml`, `sdd/technical-decision.md` documentation, and a benchmark

When to use messaging-decision

  • Choose messaging broker
  • Design event stream topology
  • Validate retry strategy
  • Implement transactional outbox

About this skill

Messaging Decision

Use a broker only when the problem needs broker semantics.

  1. Read decision-brain/messaging-matrix.yaml or .portfolio/decision-brain/messaging-matrix.yaml.
  2. Identify the actual messaging need: none, async reliability, work queue, routing, retry/DLQ, event log, replay, stream processing, fanout, or lightweight pub/sub.
  3. Choose one messaging mode and reject the alternatives.
  4. Update project.yaml with decision_brain.messaging.
  5. If a broker is selected, document topology and failure case in sdd/technical-decision.md.
  6. Add a benchmark that proves the broker choice: throughput, lag, retry success, lost messages under failure, or replay time.

Defaults:

  • Use no broker when synchronous flow is enough.
  • Use transactional outbox when reliability is needed but a broker is not central to the default proof.
  • Use RabbitMQ for work queues, routing, acknowledgements, retries, DLQ, and task processing.
  • Use Kafka or Redpanda for event streaming, durable logs, replay, partitions, CQRS projections, CDC, and high-throughput pipelines.
  • Use Redis Streams only when Redis is already in the stack and lightweight stream semantics are enough.
  • Use NATS only when lightweight pub/sub or request/reply is the core proof.

Rule: every broker choice must include rejected alternatives and a failure benchmark.

When not to use it

  • When synchronous flow is sufficient
  • When a broker is not central to the default proof for reliability

Limitations

  • Uses a broker only when the problem needs broker semantics
  • Every broker choice must include rejected alternatives
  • Every broker choice must include a failure benchmark

How it compares

This skill provides a structured, evidence-based approach to messaging broker selection, requiring explicit rejection of alternatives and a failure benchmark, unlike ad-hoc choices.

Compared to similar skills

messaging-decision side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
messaging-decision (this skill)018dNo flagsAdvanced
product-map03moNo flagsIntermediate
database-design66moReviewIntermediate
database-schema-designer66moNo flagsIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry