Camel CLI
The Camel CLI is the command-line interface for Apache Camel. It gives you a complete, terminal-native development environment for building integrations — from a first prototype to a production-ready project — without requiring an IDE, a Maven project, or boilerplate code.
Write a route in YAML, Java, or XML. Run it. Debug it. Trace messages flowing through it. Spin up the infrastructure it needs. Export it to Spring Boot or Quarkus when you are ready. All from the terminal.
Why Camel CLI
Zero-to-running in seconds. Create and run an integration in three commands — no project skeleton, no POM file, no IDE. The CLI auto-detects the Camel components your route needs and downloads them on the fly.
Full development lifecycle. The CLI is not just a runner. It includes a built-in route debugger, a message tracer, health checks, metrics, a data-transformation prototyper, and an export command that produces a production-ready Spring Boot or Quarkus project from your prototype files.
Terminal-native and AI-ready. Every capability is a structured CLI command — designed for both human operators and AI coding assistants that work through terminal prompts. The Camel MCP Server exposes the full Camel catalog to AI tools (Claude Code, GitHub Copilot, JetBrains AI, and others), and the Camel TUI provides a visual dashboard in the terminal — useful over SSH, in containers, in CI, or in any environment where a browser is not available.
300+ connectors, one CLI. The entire Apache Camel ecosystem — Kafka, AWS, databases, REST, messaging, files, and hundreds more — is available through a single camel run command. No dependency management required.
Graduated path to production. Start with flat files for fast prototyping. When the integration is ready, use camel export to generate a full Maven project targeting Spring Boot, Quarkus, or standalone Camel Main. Your prototype code becomes your production code.
Quick Start
Install the CLI with the installer script (Linux and macOS; see Installing the Camel CLI Launcher for Windows):
curl -fsSL https://camel.apache.org/install.sh | sh Or, if you use JBang:
jbang app install camel@apache/camel Create a route and run it:
camel init hello.yaml
camel run hello.yaml Run in dev mode with live reload:
camel run hello.yaml --dev What Can You Do
| Area | What it covers |
|---|---|
Installation, shell completion, creating and running your first route, built-in examples. | |
Version-pinned installs, offline-safe setups, container images, the Camel CLI Launcher. | |
Dev mode with hot reload, profiles, properties, dependency management, Maven repositories and settings, Kamelets, platform-http, Spring Boot and Quarkus runtimes, running a Maven project. | |
Start and manage local infrastructure services (databases, message brokers, etc.) for development and testing, powered by Camel test-infra and containers. | |
Transforming messages with live reload, using expression languages, components, data formats, and converting between route DSL formats. | |
Sending and receiving messages, JDBC configuration, terminal scripting, IDE editing, updating dependencies. | |
Checking routes, properties and other source files before running them, and normalizing YAML routes. | |
Ask questions about running integrations, explain routes, a project overview, and security hardening suggestions. | |
How the LLM provider is chosen, and running a model locally with Ollama or an OpenAI-compatible server. | |
Camel route debugging from the CLI, IDE integration (VSCode, IDEA), Java-level debugging. | |
Listing and stopping processes, route and group control, developer console, message history, log tailing, message tracing, health checks, metrics, circuit breaker status, Jolokia and Hawtio. | |
Errors and inflight messages, memory leaks, heap and thread dumps, startup, SQL and Kafka, vault secrets. | |
Exporting to Spring Boot / Quarkus / Camel Main, SBOM generation, plugin management, version management, automated upgrades. | |
Run from GitHub or clipboard, stub components, inline code, interactive prompts, upload via HTTP. | |
Writing and wiring Java beans into routes using Camel, Spring Boot, or Quarkus annotations. | |
CLI configuration options, config commands, configuration precedence, troubleshooting. | |
Complete reference for all CLI commands and their options. |
Plugins and Extensions
| Extension | Description |
|---|---|
Self-contained executable JAR — run the CLI without JBang. | |
Build and deploy Camel integrations to Kubernetes and OpenShift. | |
Automated testing with the Citrus test framework. | |
Terminal dashboard for developing, monitoring, and debugging Camel integrations with a source editor, route topology, message tracing, and AI integration. | |
Expose the Camel catalog and tools to AI coding assistants via the Model Context Protocol. |
How It Works
The Camel CLI is a Java application. It is installed either as the self-contained Camel CLI Launcher or through JBang. When you run camel run, the CLI resolves and caches the Camel JARs your routes need from Maven, and runs the routes in a JVM. The CLI communicates with running integrations through a local connector, enabling management commands (camel ps, camel get, camel log, camel trace) to inspect and control them from a separate terminal.
For Spring Boot and Quarkus applications, adding the camel-cli-connector dependency lets the CLI manage those applications the same way.