This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 7eac26b4a120 CAMEL-21966: Add example usage snippets to camel-jbang
CLI help text
7eac26b4a120 is described below
commit 7eac26b4a120fca64d4fc7b2b1b7c51257c9a231
Author: Guillaume Nodet <[email protected]>
AuthorDate: Fri Mar 27 08:46:20 2026 +0100
CAMEL-21966: Add example usage snippets to camel-jbang CLI help text
Add picocli footer examples to 29 camel-jbang CLI commands, showing
common usage patterns in --help output (similar to oc/kubectl style).
Commands with examples: run, init, export, debug, explain, harden,
script, shell, completion, wrapper, sbom, ps, stop, get, get route,
get health, top, doc, catalog component, catalog kamelet, log, trace,
cmd send, config set, config get, dependency list, transform route,
version list, version set.
- Use top-level shortcuts where available (camel log, camel trace, camel
doc)
- All example options validated against actual command definitions
---
.../org/apache/camel/dsl/jbang/core/commands/Complete.java | 5 ++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Debug.java | 7 ++++++-
.../apache/camel/dsl/jbang/core/commands/DependencyList.java | 6 +++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Explain.java | 7 ++++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Export.java | 9 ++++++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Harden.java | 7 ++++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Init.java | 8 +++++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Run.java | 10 +++++++++-
.../apache/camel/dsl/jbang/core/commands/SBOMGenerator.java | 7 ++++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Script.java | 6 +++++-
.../java/org/apache/camel/dsl/jbang/core/commands/Shell.java | 6 +++++-
.../apache/camel/dsl/jbang/core/commands/TransformRoute.java | 6 +++++-
.../apache/camel/dsl/jbang/core/commands/WrapperCommand.java | 6 +++++-
.../camel/dsl/jbang/core/commands/action/CamelLogAction.java | 7 ++++++-
.../camel/dsl/jbang/core/commands/action/CamelSendAction.java | 6 +++++-
.../camel/dsl/jbang/core/commands/action/CamelTraceAction.java | 6 +++++-
.../dsl/jbang/core/commands/catalog/CatalogComponent.java | 6 +++++-
.../camel/dsl/jbang/core/commands/catalog/CatalogDoc.java | 8 +++++++-
.../camel/dsl/jbang/core/commands/catalog/CatalogKamelet.java | 7 ++++++-
.../apache/camel/dsl/jbang/core/commands/config/ConfigGet.java | 6 +++++-
.../apache/camel/dsl/jbang/core/commands/config/ConfigSet.java | 6 +++++-
.../dsl/jbang/core/commands/process/CamelRouteStatus.java | 7 ++++++-
.../camel/dsl/jbang/core/commands/process/CamelStatus.java | 8 +++++++-
.../apache/camel/dsl/jbang/core/commands/process/CamelTop.java | 7 ++++++-
.../camel/dsl/jbang/core/commands/process/ListHealth.java | 6 +++++-
.../camel/dsl/jbang/core/commands/process/ListProcess.java | 7 ++++++-
.../camel/dsl/jbang/core/commands/process/StopProcess.java | 8 +++++++-
.../camel/dsl/jbang/core/commands/version/VersionList.java | 7 ++++++-
.../camel/dsl/jbang/core/commands/version/VersionSet.java | 7 ++++++-
29 files changed, 170 insertions(+), 29 deletions(-)
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Complete.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Complete.java
index d8ca99c9ab9a..f61e0a7a570b 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Complete.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Complete.java
@@ -21,7 +21,10 @@ import java.io.PrintStream;
import picocli.AutoComplete;
import picocli.CommandLine;
[email protected](name = "complete", description = "Generate completion
script for bash/zsh")
[email protected](name = "complete", description = "Generate completion
script for bash/zsh",
+ footer = {
+ "%nExamples:",
+ " source <(camel completion)" })
public class Complete extends CamelCommand {
public Complete(CamelJBangMain main) {
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java
index 6882f0f540bd..c233b1539f27 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java
@@ -74,7 +74,12 @@ import picocli.CommandLine.Command;
import static
org.apache.camel.dsl.jbang.core.common.CommandLineHelper.CAMEL_JBANG_WORK_DIR;
import static org.apache.camel.util.IOHelper.buffered;
-@Command(name = "debug", description = "Debug local Camel integration",
sortOptions = false, showDefaultValues = true)
+@Command(name = "debug", description = "Debug local Camel integration",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel debug hello.java",
+ " camel debug hello.yaml --breakpoint=myBreakpoint",
+ " camel debug hello.java --stop-on-exit=false" })
public class Debug extends Run {
@CommandLine.Option(names = { "--remote-attach" },
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
index 9fa59ae6d238..aa454cccbabb 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
@@ -46,7 +46,11 @@ import static
org.apache.camel.dsl.jbang.core.common.CamelJBangConstants.*;
@CommandLine.Command(name = "list",
description = "Displays all Camel dependencies required
to run", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel dependency list hello.java",
+ " camel dependency list hello.java --output=gav"
})
public class DependencyList extends Export {
protected static final String EXPORT_DIR =
CommandLineHelper.CAMEL_JBANG_WORK_DIR + "/export";
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Explain.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Explain.java
index 8abac544185f..5854f14979d9 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Explain.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Explain.java
@@ -52,7 +52,12 @@ import picocli.CommandLine.Parameters;
*/
@Command(name = "explain",
description = "Explain what a Camel route does using AI/LLM",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel explain hello.java",
+ " camel explain hello.yaml --format=markdown",
+ " camel explain hello.java --model=gpt-4" })
public class Explain extends CamelCommand {
public static class FormatCompletionCandidates implements Iterable<String>
{
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
index 6deae48e4ea8..113a61187907 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
@@ -59,7 +59,14 @@ import static
org.apache.camel.dsl.jbang.core.common.CamelJBangConstants.SPRING_
@Command(name = "export",
description = "Export to other runtimes (Camel Main, Spring Boot, or
Quarkus)", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel export hello.java",
+ " camel export --runtime=spring-boot hello.java",
+ " camel export --runtime=quarkus *",
+ " camel export --gav=com.example:myapp:1.0 hello.java",
+ " camel export --dry-run hello.java" })
public class Export extends ExportBaseCommand {
public Export(CamelJBangMain main) {
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Harden.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Harden.java
index 77a5b46144a5..2fcc6fb4b470 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Harden.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Harden.java
@@ -53,7 +53,12 @@ import picocli.CommandLine.Parameters;
*/
@Command(name = "harden",
description = "Suggest security hardening for Camel routes using
AI/LLM",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel harden hello.java",
+ " camel harden hello.yaml --format=markdown",
+ " camel harden hello.java --model=gpt-4" })
public class Harden extends CamelCommand {
public static class FormatCompletionCandidates implements Iterable<String>
{
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java
index 1a0f967b8bff..6d965cd2dd89 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java
@@ -48,7 +48,13 @@ import static
org.apache.camel.dsl.jbang.core.common.GitHubHelper.asGithubSingle
import static
org.apache.camel.dsl.jbang.core.common.GitHubHelper.fetchGithubUrls;
@Command(name = "init", description = "Creates a new Camel integration",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel init hello.java",
+ " camel init hello.yaml",
+ " camel init hello.xml",
+ " camel init --list" })
public class Init extends CamelCommand {
@Parameters(description = "Name of integration file (or a github link)",
arity = "0..1",
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
index 653b99ea8541..1c23567cc89e 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
@@ -89,7 +89,15 @@ import static
org.apache.camel.dsl.jbang.core.common.GistHelper.fetchGistUrls;
import static
org.apache.camel.dsl.jbang.core.common.GitHubHelper.asGithubSingleUrl;
import static
org.apache.camel.dsl.jbang.core.common.GitHubHelper.fetchGithubUrls;
-@Command(name = "run", description = "Run as local Camel integration",
sortOptions = false, showDefaultValues = true)
+@Command(name = "run", description = "Run as local Camel integration",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel run hello.java",
+ " camel run hello.yaml",
+ " camel run *",
+ " camel run hello.java --dev",
+ " camel run hello.java --port=8080",
+ " camel run https://gist.github.com/user/123456" })
public class Run extends CamelCommand {
// special template for running camel-jbang in docker containers
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/SBOMGenerator.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/SBOMGenerator.java
index 826e9bad3928..81f85fb3d84a 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/SBOMGenerator.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/SBOMGenerator.java
@@ -34,7 +34,12 @@ import static
org.apache.camel.dsl.jbang.core.common.CamelJBangConstants.*;
@CommandLine.Command(name = "sbom",
description = "Generate a CycloneDX or SPDX SBOM for a
specific project", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel sbom hello.java",
+ " camel sbom hello.java --sbom-format=spdx",
+ " camel sbom hello.java
--sbom-output-format=xml" })
public class SBOMGenerator extends Export {
protected static final String EXPORT_DIR =
CommandLineHelper.CAMEL_JBANG_WORK_DIR + "/export";
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Script.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Script.java
index 17030493cf29..5d60efca98ba 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Script.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Script.java
@@ -23,7 +23,11 @@ import
org.apache.camel.dsl.jbang.core.common.LoggingLevelCompletionCandidates;
import picocli.CommandLine;
@CommandLine.Command(name = "script", description = "Run Camel integration as
shell script for terminal scripting",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel script hello.java",
+ " camel script hello.java --max-messages=10" })
public class Script extends CamelCommand {
@CommandLine.Parameters(description = "Name of file", arity = "1",
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Shell.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Shell.java
index 4eb84de7e2b5..eeffd993ed50 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Shell.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Shell.java
@@ -48,7 +48,11 @@ import picocli.shell.jline3.PicocliCommands;
@CommandLine.Command(name = "shell",
description = "Interactive Camel JBang shell.",
- footer = "Press Ctrl-C to exit.")
+ footer = {
+ "%nExamples:",
+ " camel shell",
+ "",
+ "Press Ctrl-C to exit." })
public class Shell extends CamelCommand {
public Shell(CamelJBangMain main) {
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/TransformRoute.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/TransformRoute.java
index bed812a5bb44..3e776e4a5714 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/TransformRoute.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/TransformRoute.java
@@ -36,7 +36,11 @@ import picocli.CommandLine;
import picocli.CommandLine.Command;
@Command(name = "route", description = "Transform Camel routes to XML or YAML
format", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel transform route hello.java --format=yaml",
+ " camel transform route hello.xml --format=yaml" })
public class TransformRoute extends CamelCommand {
public static class FormatCompletionCandidates implements Iterable<String>
{
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/WrapperCommand.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/WrapperCommand.java
index b6429041c8a7..51d16db5041c 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/WrapperCommand.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/WrapperCommand.java
@@ -31,7 +31,11 @@ import picocli.CommandLine;
import picocli.CommandLine.Command;
@Command(name = "wrapper", description = "Install Camel wrapper scripts for
version pinning", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel wrapper",
+ " camel wrapper --camel-version=4.10.0" })
public class WrapperCommand extends CamelCommand {
private static final String DEFAULT_REPO_URL =
"https://repo1.maven.org/maven2";
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelLogAction.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelLogAction.java
index ed03e9bd1ac9..aad9637a14c0 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelLogAction.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelLogAction.java
@@ -50,7 +50,12 @@ import org.fusesource.jansi.AnsiConsole;
import picocli.CommandLine;
@CommandLine.Command(name = "log",
- description = "Tail logs from running Camel
integrations", sortOptions = false, showDefaultValues = true)
+ description = "Tail logs from running Camel
integrations", sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel log hello",
+ " camel log *",
+ " camel log hello --tail=50" })
public class CamelLogAction extends ActionBaseCommand {
private static final int NAME_MAX_WIDTH = 25;
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelSendAction.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelSendAction.java
index 16569e746f1a..7e80f9fb3081 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelSendAction.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelSendAction.java
@@ -51,7 +51,11 @@ import picocli.CommandLine;
@CommandLine.Command(name = "send",
description = "Send messages to endpoints", sortOptions =
false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel cmd send --endpoint=kafka:myTopic
--body='Hello World'",
+ " camel cmd send hello --endpoint=direct:foo
--body='Hello'" })
public class CamelSendAction extends ActionBaseCommand {
@CommandLine.Parameters(description = "To use an existing running Camel
integration for sending the message (name or pid)",
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelTraceAction.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelTraceAction.java
index d772f65473bf..397cd69ab767 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelTraceAction.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelTraceAction.java
@@ -60,7 +60,11 @@ import picocli.CommandLine;
@CommandLine.Command(name = "trace",
description = "Tail message traces from running Camel
integrations", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel trace hello",
+ " camel trace *" })
public class CamelTraceAction extends ActionBaseCommand {
private static final int NAME_MAX_WIDTH = 25;
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
index 3f4f602a0e49..154e96b3f38e 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
@@ -24,7 +24,11 @@ import org.apache.camel.tooling.model.ComponentModel;
import picocli.CommandLine;
@CommandLine.Command(name = "component",
- description = "List components from the Camel Catalog",
sortOptions = false, showDefaultValues = true)
+ description = "List components from the Camel Catalog",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel catalog component",
+ " camel catalog component --filter=kafka" })
public class CatalogComponent extends CatalogBaseCommand {
public CatalogComponent(CamelJBangMain main) {
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
index fd3b9fdad533..eb487dbd275f 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
@@ -52,7 +52,13 @@ import static
org.apache.camel.dsl.jbang.core.commands.catalog.CatalogBaseComman
@CommandLine.Command(name = "doc",
description = "Shows documentation for kamelet,
component, and other Camel resources", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel doc kafka",
+ " camel doc timer",
+ " camel doc aws-s3-source",
+ " camel doc jsonpath" })
public class CatalogDoc extends CamelCommand {
@CommandLine.Parameters(description = "Name of kamelet, component,
dataformat, or other Camel resource",
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogKamelet.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogKamelet.java
index b6fd263d6b33..a6cc5bd627fe 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogKamelet.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogKamelet.java
@@ -39,7 +39,12 @@ import org.apache.camel.util.StringHelper;
import picocli.CommandLine;
@CommandLine.Command(name = "kamelet",
- description = "List Kamelets from the Kamelet Catalog",
sortOptions = false, showDefaultValues = true)
+ description = "List Kamelets from the Kamelet Catalog",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel catalog kamelet",
+ " camel catalog kamelet --type=source",
+ " camel catalog kamelet --filter=kafka" })
public class CatalogKamelet extends CamelCommand {
@CommandLine.Option(names = { "--sort" },
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigGet.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigGet.java
index 1331e5d48a78..69fd0c074bbe 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigGet.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigGet.java
@@ -24,7 +24,11 @@ import
org.apache.camel.dsl.jbang.core.common.CommandLineHelper;
import picocli.CommandLine;
@CommandLine.Command(name = "get",
- description = "Display user configuration value",
sortOptions = false, showDefaultValues = true)
+ description = "Display user configuration value",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel config get camel-version",
+ " camel config get runtime" })
public class ConfigGet extends CamelCommand {
@CommandLine.Parameters(description = "Configuration key", arity = "1")
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigSet.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigSet.java
index 1f51bcd874fe..2a8c748f4208 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigSet.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/config/ConfigSet.java
@@ -25,7 +25,11 @@ import org.apache.camel.util.StringHelper;
import picocli.CommandLine;
@CommandLine.Command(name = "set",
- description = "Set user configuration value", sortOptions
= false, showDefaultValues = true)
+ description = "Set user configuration value", sortOptions
= false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel config set camel-version=4.10.0",
+ " camel config set runtime=spring-boot" })
public class ConfigSet extends CamelCommand {
@CommandLine.Parameters(description = "Configuration parameter (ex.
key=value)", arity = "1")
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java
index a4106f65f550..70ef00c2e468 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java
@@ -42,7 +42,12 @@ import picocli.CommandLine;
import picocli.CommandLine.Command;
@Command(name = "route", description = "Get status of Camel routes",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel get route",
+ " camel get route hello",
+ " camel get route --watch" })
public class CamelRouteStatus extends ProcessWatchCommand {
@CommandLine.Parameters(description = "Name or pid of running Camel
integration", arity = "0..1")
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelStatus.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelStatus.java
index 466cf9e3befa..4b69a1bcf6c2 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelStatus.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelStatus.java
@@ -22,7 +22,13 @@ import picocli.CommandLine;
@CommandLine.Command(name = "get",
description = "Get status of Camel integrations (use get
--help to see sub commands)",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel get",
+ " camel get route",
+ " camel get health",
+ " camel get endpoint" })
public class CamelStatus extends CamelCommand {
@CommandLine.Option(names = { "--watch" },
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelTop.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelTop.java
index c5be9e2afb30..6bc940229199 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelTop.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelTop.java
@@ -22,7 +22,12 @@ import picocli.CommandLine;
@CommandLine.Command(name = "top",
description = "Top status of Camel integrations (use top
--help to see sub commands)",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel top",
+ " camel top route",
+ " camel top processor" })
public class CamelTop extends CamelCommand {
@CommandLine.Option(names = { "--watch" },
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListHealth.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListHealth.java
index aaf70735aaa0..1d73292981d4 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListHealth.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListHealth.java
@@ -43,7 +43,11 @@ import picocli.CommandLine;
import picocli.CommandLine.Command;
@Command(name = "health", description = "Get health check status of running
Camel integrations", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel get health",
+ " camel get health --watch" })
public class ListHealth extends ProcessWatchCommand {
@CommandLine.Option(names = { "--sort" }, completionCandidates =
PidNameAgeCompletionCandidates.class,
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java
index 2746cab92513..992636d06e12 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java
@@ -39,7 +39,12 @@ import picocli.CommandLine.Command;
import static
org.apache.camel.dsl.jbang.core.common.CamelCommandHelper.extractState;
-@Command(name = "ps", description = "List running Camel integrations",
sortOptions = false, showDefaultValues = true)
+@Command(name = "ps", description = "List running Camel integrations",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel ps",
+ " camel ps --sort=name",
+ " camel ps --watch" })
public class ListProcess extends ProcessWatchCommand {
@CommandLine.Option(names = { "--sort" }, completionCandidates =
PidNameAgeCompletionCandidates.class,
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/StopProcess.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/StopProcess.java
index 6a5b66bdaa97..78721470eb19 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/StopProcess.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/StopProcess.java
@@ -26,7 +26,13 @@ import org.apache.camel.dsl.jbang.core.common.PathUtils;
import picocli.CommandLine;
import picocli.CommandLine.Command;
-@Command(name = "stop", description = "Shuts down running Camel integrations",
sortOptions = false, showDefaultValues = true)
+@Command(name = "stop", description = "Shuts down running Camel integrations",
sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel stop hello",
+ " camel stop *",
+ " camel stop 12345",
+ " camel stop hello --kill" })
public class StopProcess extends ProcessBaseCommand {
@CommandLine.Parameters(description = "Name or pid of running Camel
integration(s)", arity = "0..1")
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionList.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionList.java
index 50b4291067ff..cb1ccea2e0ef 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionList.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionList.java
@@ -65,7 +65,12 @@ import picocli.CommandLine;
import static
org.apache.camel.dsl.jbang.core.common.CamelCommandHelper.CAMEL_INSTANCE_TYPE;
@CommandLine.Command(name = "list", description = "Displays available Camel
versions",
- sortOptions = false, showDefaultValues = true)
+ sortOptions = false, showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel version list",
+ " camel version list --runtime=spring-boot",
+ " camel version list --lts" })
public class VersionList extends CamelCommand {
private static final String VERSION_LIST_CHECKER =
".camel-jbang-version-list.json";
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionSet.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionSet.java
index aad93b502d84..04d2659112f8 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionSet.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/version/VersionSet.java
@@ -25,7 +25,12 @@ import
org.apache.camel.dsl.jbang.core.common.RuntimeTypeConverter;
import picocli.CommandLine;
@CommandLine.Command(name = "set", description = "Set/change current Camel
version", sortOptions = false,
- showDefaultValues = true)
+ showDefaultValues = true,
+ footer = {
+ "%nExamples:",
+ " camel version set 4.10.0",
+ " camel version set --runtime=spring-boot
4.10.0",
+ " camel version set --reset" })
public class VersionSet extends CamelCommand {
@CommandLine.Parameters(description = "Camel version", arity = "0..1")