Claus Ibsen created CAMEL-23774:
-----------------------------------

             Summary: Add pattern-level recipes catalog to camel-catalog for 
AI-assisted development
                 Key: CAMEL-23774
                 URL: https://issues.apache.org/jira/browse/CAMEL-23774
             Project: Camel
          Issue Type: Improvement
          Components: camel-catalog
            Reporter: Claus Ibsen


The camel-catalog provides excellent component-level metadata (options, URI 
syntax, validation) that is already being used by AI agents via MCP tooling. 
However, there is a gap between knowing what individual component options exist 
and knowing how to compose them to solve real integration problems.

This issue proposes adding a "recipes catalog" — structured, machine-readable 
pattern-level guidance that describes how to combine multiple Camel components 
and EIPs to solve common integration problems.

h3. Problem

AI agents (and IDE tooling) can look up individual component options from the 
catalog, but they lack compositional knowledge — how pieces fit together for a 
given problem. This leads to:
- Hallucinated or suboptimal combinations of components
- Missing critical configuration for patterns like exactly-once processing or 
transactional outbox
- Inability to suggest idiomatic Camel solutions for common integration 
scenarios

h3. Proposed Solution

Add a new catalog section (e.g., "recipes" or "patterns") with structured 
entries containing:
- *Pattern name* — e.g., "Idempotent Kafka Consumer", "Scatter-Gather with 
Timeout", "Transactional Outbox"
- *Problem statement* — what integration problem this solves
- *Components involved* — list of components and EIPs used
- *Key options* — specific options with recommended values for this pattern
- *Pitfalls* — common mistakes and misconfigurations
- *Example route* — minimal working example in YAML and/or Java DSL

h3. Source: camel-jbang Examples

The existing camel-jbang examples (camel-jbang-examples) are a natural starting 
point for building these recipes — they are already runnable, self-contained, 
and demonstrate real integration patterns. The recipes can be derived from and 
linked to these examples.

This also enables bundling the recipes in the Camel TUI, making them 
discoverable and runnable directly from the terminal — a powerful workflow for 
developers exploring integration patterns interactively.

h3. Example Patterns to Include

- Idempotent consumer (with Kafka, JMS, file)
- Error handling with dead-letter channel and redelivery
- Scatter-gather (parallel multicast with aggregation and timeout)
- Transactional outbox (DB + messaging)
- Content-based routing with validation
- Request-reply over async messaging
- Throttling and rate limiting
- Circuit breaker with fallback
- Saga / distributed transaction coordination
- File polling with idempotent repository and move/error handling

h3. Why This Matters

The camel-catalog is already a competitive advantage for Camel in the AI era — 
no other integration framework has an equivalent open-source, embeddable 
metadata library. Adding pattern-level recipes would extend this advantage from 
component-level assistance to solution-level assistance, making AI agents 
significantly more effective at generating correct, idiomatic Camel routes.

This would benefit:
- AI coding assistants (via MCP / camel-catalog API)
- IDE plugins (IDEA, VS Code)
- Camel Karavan
- Camel TUI (bundled recipes, interactive discovery)
- Documentation and learning resources



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to