[
https://issues.apache.org/jira/browse/CAMEL-25283?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18122061#comment-18122061
]
Claus Ibsen commented on CAMEL-25283:
-------------------------------------
_Claude Code on behalf of davsclaus_
PR: https://github.com/apache/camel/pull/27299
kamelet-custom.adoc (plain Camel only, one Kamelet of each kind, all run with
camel run), a short section on the kamelet page, and camel_catalog_doc docPage
for component sub-pages. A model is pointed at the page from the kamelet
answer, its samples, and an invalid .kamelet.yaml.
> camel-kamelet - document how to write a custom Kamelet (source, sink, action)
> as a sub-page camel_catalog_doc can return
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25283
> URL: https://issues.apache.org/jira/browse/CAMEL-25283
> Project: Camel
> Issue Type: Improvement
> Components: camel-jbang, camel-kamelet
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Minor
>
> The Kamelet component page explains how to *use* a Kamelet, but not how to
> *write* one. An AI agent (and a person) asking the catalog how to author a
> custom Kamelet gets nothing: camel_catalog_doc kamelet returns the component
> page, camel_catalog_sample kamelet gives the usage shape (to: kamelet:...),
> and there is no page about the .kamelet.yaml file.
> Follow-up of CAMEL-25194 (the validator now accepts a Kamelet file), which
> came from checking how an agent would do the task of the Kaoto blog
> https://kaoto.io/blog/2026/custom-kamelets/ with the CLI and the MCP server.
> h3. Proposed
> * kamelet-component.adoc: a short section on writing a custom Kamelet, the
> three kinds (source, sink, action, set by the camel.apache.org/kamelet.type
> label), linking to a sub-page.
> * A sub-page kamelet-custom.adoc in camel-kamelet (published under others,
> like the aws2-s3 sub-pages): the file envelope, the kamelet.type label,
> spec.definition as a JSON schema (required, default), properties in the
> template as {{name}} and optional ones as {{?name}}, kamelet:source /
> kamelet:sink in the template per kind, spec.dependencies, beans in the
> template, where Camel finds the file (camel run, classpath:kamelets), and how
> to use each kind from a route. One example per kind.
> * camel_catalog_doc: docPage for components as well as languages, so a
> component sub-page can be requested (docPage=custom for kamelet). The
> sub-pages are found from the xref:others:<name>-*.adoc links of the component
> page, so the existing aws2-s3 sub-pages become reachable too.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)