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)