integration-pattern-selection

Select integration patterns for services based on consistency, latency, and infrastructure trade-offs.

1|Updated Nov 29, 2025
One-click install
npx skills add https://github.com/SSiertsema/claude-code-plugins --skill integration-pattern-selection
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: integration-pattern-selection
Source: https://github.com/SSiertsema/claude-code-plugins/tree/main/integration-pattern-selection/skills/integration-pattern-selection
Command: npx skills add https://github.com/SSiertsema/claude-code-plugins --skill integration-pattern-selection

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Identify and select the appropriate integration pattern for services (sync, async, saga, outbox, CDC, polling, webhook) based on trade-offs.

Core Features & Use Cases

  • Guidance across sync, async, saga orchestration/choreography, outbox, CDC, polling, and webhook choices.
  • Decision framework: consistency, latency, ownership, and existing infrastructure.
  • Structured catalog with phase-based evaluation and anti-pattern checks.

Quick Start

Provide the recommended integration pattern for a Source → Target scenario given the stated constraints.

Frequently Asked Questions about integration-pattern-selection

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose the right integration pattern for distributed systems?

Choosing the right integration pattern requires evaluating trade-offs in consistency, latency, ownership boundaries, and existing infrastructure to select between sync, async, saga, outbox, CDC, polling, or webhook approaches for your services.

When should I use saga orchestration versus choreography in microservices?

Use saga orchestration when a central controller is needed to manage distributed transactions, and choose choreography when services react to events independently, with the decision driven by your specific workflow complexity and ownership boundaries.

What is the outbox pattern and when is it needed for data flow?

The outbox pattern is needed for reliable data flow when you must guarantee event delivery alongside database updates, preventing data inconsistency in distributed systems without distributed transaction support.

How do I handle idempotency and retries when selecting an integration pattern?

Handling idempotency and retries requires applying anti-pattern checks during pattern selection to ensure the chosen sync, async, or webhook approach safely manages duplicate requests and failures through dead letter queues (DLQs).

Does this integration pattern selection framework work for both simple and complex workflows?

Yes, this integration pattern selection framework works for both simple and complex workflows by applying phase-based evaluation and structured catalog decisions to guide pattern choice across varying multi-service architectures.

Why should I avoid synchronous integration for high-latency multi-service architectures?

You should avoid synchronous integration for high-latency architectures because it tightens coupling and exhausts latency budgets, making asynchronous patterns, CDC, or webbooks better choices for maintaining performance under load.