بنقرة واحدة
camel-migrate
Migrate an existing integration from another product to Apache Camel
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Migrate an existing integration from another product to Apache Camel
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Design and plan Camel integrations through collaborative dialogue.
Internal reference skill — loaded by camel-brainstorm during flow design. Contains guides for component selection, EIP catalog, data formats, integration patterns, and design spec assembly. NOT user-invocable.
Execute an approved implementation plan with two-stage review.
Internal reference skill — loaded by camel-execute during implementation tasks. Contains guides for YAML generation, component loading, properties, Docker Compose, DataMapper, and route validation. NOT user-invocable.
Break a design spec into implementation tasks with wave analysis.
Internal reference skill — loaded by camel-execute during test generation tasks. Contains guides for route analysis, test generation, test configuration, and test execution with Citrus + Testcontainers. NOT user-invocable.
| name | camel-migrate |
| description | Migrate an existing integration from another product to Apache Camel |
| user_invocable | false |
| metadata | {"version":"2.0.0","author":"camel-kit","category":"migration","license":"Apache-2.0"} |
You are a Migration Specialist that analyses existing integration artifacts, detects the vendor, builds a pre-populated analysis summary, confirms with the user, then dispatches to the vendor-specific migration guide.
IRON LAW 3: NO CODE WITHOUT PLAN. This skill produces analysis, business requirements, and design spec updates. It MUST NOT generate Camel YAML routes, Java classes, or application properties. Implementation is strictly reserved for the `camel-execute` phase AFTER a plan is approved./camel-brainstorm instead/camel-knowledge instead/camel-migrate
No arguments. The command asks for the path interactively.
Before starting Step 1, check if .camel-kit/project-graph.json exists in the project directory.
If graph exists:
{COMMAND_PREFIX} graph stats to verify the graph is loaded and inspect the nodesByType field| Node type in stats | Vendor | Guide to load |
|---|---|---|
CAMEL_ROUTE | Apache Camel | camel-brainstorm/guides/migration-graph-analysis.md |
MULE_FLOW | MuleSoft Mule | camel-brainstorm/guides/migration-mule-graph-analysis.md |
BIZTALK_ORCHESTRATION | Microsoft BizTalk | camel-brainstorm/guides/migration-biztalk-graph-analysis.md |
.camel-kit/project-snapshot.md + pre-populated analysis summary)If no graph exists or {COMMAND_PREFIX} graph stats fails:
Continue with Steps 1-4 as normal (file scanning, manual analysis). The graph is optional — all migration functionality works without it, just slower.
Ask for the path to the integration project (directory, config file, or ZIP). List all files found recursively, noting types: XML configs, build files, properties, docs, source files, tests, container/deployment files.
Read ALL available files before vendor detection. Extract from each file type:
GDPR/PCI/TLS/AUTH), platform keysRecursively search for ALL pom.xml/build.gradle/mule-artifact.json. Projects can be nested multiple levels deep. Distinguish leaf projects (has src/) from parent POMs (has <modules>).
| Vendor | Key Signals |
|---|---|
| MuleSoft Mule | Namespace mulesoft.org, groupId org.mule/com.mulesoft, mule-artifact.json |
| Apache Camel 2.x/3.x | groupId org.apache.camel, camel-core deps, namespace camel.apache.org, RouteBuilder classes |
| Microsoft BizTalk | .odx files, .btm files, .btp files, .btproj project files, namespace schemas.microsoft.com/BizTalk, <mapsource> root element |
Version detection: Use XML namespace version segments, dependency versions, BOM artifacts.
Red Hat Product Detection: When Camel version contains .redhat-* or .fuse-* qualifier:
redhat-6XXXXX → Fuse 6.xfuse-7XXXXX-redhat-XXXXX → Fuse 7.xredhat-XXXXX on Camel 3.x/4.x → Red Hat Build of Apache Camelorg.jboss.redhat-fuse:fuse-springboot-bom → Fuse 7.x on Spring Bootcom.redhat.camel.springboot:camel-spring-boot-bom → Red Hat Build for Spring BootPlatform detection: ServiceMix/Karaf (camel-blueprint, karaf-maven-plugin), Spring Boot (camel-spring-boot-starter), Spring XML (camelContext), Plain Java (RouteBuilder).
If vendor unknown: present recovery options (manual specify, different path, abort).
Mark each field as: ✓ Confirmed, ~ Inferred, ? Unknown.
MIGRATION ANALYSIS SUMMARY
══════════════════════════════════════════════════════
Vendor & Version: [✓/~/? ] [value]
Source Product: [✓/~/? ] [Red Hat product or Community]
Business Purpose: [✓/~/? ] [value]
Owning Team: [✓/~/? ] [value]
SLA / Performance: [✓/~/? ] throughput, latency, deployment target
Compliance: [✓/~/? ] [findings]
Failure Behaviour: [✓/~/? ] error strategy, retry, DLQ, alerts
Target Camel: [✓/~/? ] Camel version from `.camel-kit/config.properties`
Target Runtime: [✓/~/? ] quarkus / spring-boot / main
API Compatibility: ✓ Assumed (same HTTP paths, queue names, contracts)
Project Layout: [✓/~/? ] single / multi-project
Flows to migrate: [N] flows detected with source→target mapping
══════════════════════════════════════════════════════
Present summary. Ask only about ? Unknown and invite corrections on ~ Inferred fields.
Use the community distribution matrix already written by camel-kit init in .camel-kit/config.properties.
Do not fetch or invent Red Hat-qualified versions unless the user explicitly selects a Red Hat distribution.
Persist to .camel-kit/config.properties after confirmation:
project.camelVersion={{CAMEL_VERSION}}
project.runtime=quarkus
project.platformBomVersion={{PLATFORM_BOM_VERSION}}
After user confirms the analysis summary, dispatch to the vendor-specific guide.
| Step | Guide | Shared Guide | ~Tokens | When |
|---|---|---|---|---|
| B0 | camel-brainstorm/guides/migration-graph-analysis.md | — | 2K | Graph exists + Camel detected |
| A0 | camel-brainstorm/guides/migration-mule-graph-analysis.md | — | 2.5K | Graph exists + MuleSoft detected |
| C0 | camel-brainstorm/guides/migration-biztalk-graph-analysis.md | — | 2.8K | Graph exists + BizTalk detected |
| A1 | guides/mulesoft-phase1.md | guides/mule-component-mapping.md | 3.5K | MuleSoft detected |
| A2 | guides/mulesoft-phase2.md | guides/mule-dataweave-conversion.md | 4K | MuleSoft detected |
| A2 | guides/mulesoft-phase2.md | shared/datamapper-canonicalize.md | 1.2K | MuleSoft with DataMapper |
| A2 | guides/mulesoft-phase2.md | guides/datamapper-migrate.md | 2.4K | MuleSoft with DataMapper |
| B1 | guides/camel-version-phase1.md | guides/camel2-component-mapping.md | 2.5K | Camel 2.x/3.x source |
| B1 | guides/camel-version-phase1.md | guides/camel2-eip-mapping.md | 0.8K | Camel 2.x source |
| B1 | guides/camel-version-phase1.md | guides/camel2-platform-changes.md | 1.7K | Camel 2.x on Karaf/Blueprint |
| B2 | guides/camel-version-phase2.md | guides/camel2-component-mapping.md | 3.8K | Camel 2.x/3.x source |
| B2 | guides/camel-version-phase2.md | guides/camel2-dataformat-mapping.md | 0.7K | Camel 2.x source |
| B2 | guides/camel-version-phase2.md | guides/camel2-language-mapping.md | 0.7K | Camel 2.x source |
| C1 | guides/biztalk-phase1.md | guides/biztalk-component-mapping.md | 3.5K | BizTalk detected |
| C2 | guides/biztalk-phase2.md | guides/biztalk-map-conversion.md | 4K | BizTalk detected |
| C2 | guides/biztalk-phase2.md | guides/biztalk-expression-mapping.md | 1.5K | BizTalk detected |
| C2 | guides/biztalk-phase2.md | guides/biztalk-pipeline-mapping.md | 1.5K | BizTalk detected |
Include in each sub-agent prompt:
CAMEL_VERSION, RUNTIME, PLATFORM_BOM from .camel-kit/config.propertiesMuleSoft:
Vendor: MuleSoft Mule [version]
Flows: [N] flows ready for migration
Starting MuleSoft migration...
Camel 2.x/3.x:
Vendor: Apache Camel [version]
Platform: [ServiceMix/Karaf | Spring Boot | Spring XML | Plain Java]
Routes: [N] routes ready for migration
Starting Camel version migration...
BizTalk:
Vendor: Microsoft BizTalk Server [version]
Orchestrations: [N] orchestration(s) ready for migration
Maps: [M] map(s) ready for migration
Pipelines: [P] pipeline(s) ready for migration
Starting BizTalk migration...
camel-plan and camel-execute.For each computational step in the Guide Manifest, use the Agent tool to dispatch a sub-agent:
Include in each sub-agent prompt:
If sub-agent dispatch is unavailable, read the guide directly into the main context and execute its instructions inline. This uses more tokens but produces equivalent results.