This is an automated email from the ASF dual-hosted git repository.

luigidemasi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-kit.git

commit d12a3c5c0c86aceff7e391712bdc098dba5253ea
Author: Luigi De Masi <[email protected]>
AuthorDate: Sat Oct 24 10:02:40 2026 +0200

    docs: clarify optional Citrus MCP validation
---
 CHANGELOG.md                          | 4 ++--
 docs/commands.md                      | 7 +++++++
 docs/modules/ROOT/pages/commands.adoc | 7 +++++++
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 84ff02a2..aab8916c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -22,8 +22,8 @@ and this project adheres to [Semantic 
Versioning](https://semver.org/spec/v2.0.0
 - **Make Citrus MCP server opt-in (#109)** — `camel-kit init` no longer writes 
Citrus MCP server
   configuration by default. Pass `--with-citrus-mcp` to include it. Workspaces 
created before this
   change that have `citrus.mcp.version` but no `citrus.mcp.enabled` are 
treated as implicitly opted
-  in for backward compatibility. `camel-kit doctor` permits an absent Citrus 
server when not opted in,
-  but validates any present Citrus server regardless of the opt-in setting. 
Regeneration without
+  in for backward compatibility. Citrus MCP configuration is optional: 
`camel-kit doctor` accepts a
+  missing entry when not opted in and validates any existing entry. 
Regeneration without
   `--with-citrus-mcp` removes previously generated Citrus entries from 
OpenCode and Antigravity configs.
 - **Claude Code native skill discovery (#243)** — skills are now installed to 
`.claude/skills/` with
   `user-invocable` and `description` frontmatter so Claude Code discovers them 
natively without command stubs.
diff --git a/docs/commands.md b/docs/commands.md
index ff565e44..39ae4325 100644
--- a/docs/commands.md
+++ b/docs/commands.md
@@ -283,6 +283,13 @@ internal helpers remain hidden. Empty public skill files 
and unparseable metadat
 
 `doctor` validates `.camel-kit/config.properties`, selected agent command 
stubs when that target uses them, skill directories and `SKILL.md` files, 
registered workspace templates, user-invocable command exposure, 
runtime-supported MCP filtering and permission fields, graph availability, 
command prefix configuration, Java/Maven/JBang prerequisites, and common stale 
references in active generated files. For Codex, it parses 
`.codex/config.toml`, checks the exact MCP allowlists and prompt a [...]
 
+In the development snapshot, Citrus MCP configuration is optional. When the 
project has not opted in,
+`doctor` accepts a missing `citrus` entry; when opted in, a missing entry is a 
failure. Any existing Citrus
+entry is validated, including the tool filtering and permission fields 
supported by the target. An invalid
+entry produces a `FAIL` finding and exit code 1 even when the project has not 
opted in. These checks inspect
+configuration without starting the Citrus server or testing its availability. 
For compatibility,
+projects with `citrus.mcp.version` but no `citrus.mcp.enabled` are treated as 
opted in.
+
 Findings are printed as `PASS`, `WARN`, or `FAIL`. Missing external 
prerequisites are warnings so automated checks do not depend on the local 
machine having every optional tool installed. Broken generated workspace 
artifacts are failures and produce a non-zero exit code.
 
 ### camel-kit graph
diff --git a/docs/modules/ROOT/pages/commands.adoc 
b/docs/modules/ROOT/pages/commands.adoc
index 18f4fce2..0ae7fbdb 100644
--- a/docs/modules/ROOT/pages/commands.adoc
+++ b/docs/modules/ROOT/pages/commands.adoc
@@ -71,6 +71,13 @@ evaluates all configuration layers as one and names the file 
that defines each r
 current filter and permission fields produce upgrade warnings; malformed 
current ones fail. Internal skills must
 exist as skills but must not be exposed as command stubs.
 
+In the development snapshot, Citrus MCP configuration is optional. When the 
project has not opted in,
+`doctor` accepts a missing `citrus` entry; when opted in, a missing entry is a 
failure. Any existing Citrus
+entry is validated, including the tool filtering and permission fields 
supported by the target. An invalid
+entry produces a `FAIL` finding and exit code 1 even when the project has not 
opted in. These checks inspect
+configuration without starting the Citrus server or testing its availability. 
For compatibility,
+projects with `citrus.mcp.version` but no `citrus.mcp.enabled` are treated as 
opted in.
+
 [[nextid]]
 === nextId
 

Reply via email to