langchain4j-agent/component.json

427 lines
17 KiB
JSON
Raw Permalink Normal View History

{
"component": {
"kind": "component",
"name": "langchain4j-agent",
"title": "LangChain4j Agent",
"description": "LangChain4j Agent component",
"deprecated": false,
"firstVersion": "3.26.0",
"label": "ai",
"javaType": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentComponent",
"supportLevel": "Stable",
"nativeSupported": true,
"metadata": {
"quarkusVersion": "3.36.0",
"camelArtifact": "org.apache.camel:camel-langchain4j-agent",
"camelVersion": "4.20.0"
},
"groupId": "org.apache.camel.quarkus",
"artifactId": "camel-quarkus-langchain4j-agent",
"version": "4.20.0 (CEQ 3.36.0)",
"scheme": "langchain4j-agent",
"extendsScheme": "",
"syntax": "langchain4j-agent:agentId",
"async": false,
"api": false,
"consumerOnly": false,
"producerOnly": true,
"lenientProperties": false,
"browsable": false,
"remote": true
},
"componentProperties": {
"agent": {
"index": 0,
"kind": "property",
"displayName": "Agent",
"group": "producer",
"label": "",
"required": false,
"type": "object",
"javaType": "org.apache.camel.component.langchain4j.agent.api.Agent",
"deprecated": false,
"deprecationNote": "",
"autowired": true,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "The agent to use for the component"
},
"agentFactory": {
"index": 1,
"kind": "property",
"displayName": "Agent Factory",
"group": "producer",
"label": "",
"required": false,
"type": "object",
"javaType": "org.apache.camel.component.langchain4j.agent.api.AgentFactory",
"deprecated": false,
"deprecationNote": "",
"autowired": true,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "The agent factory to use for creating agents if no Agent is provided"
},
"configuration": {
"index": 2,
"kind": "property",
"displayName": "Configuration",
"group": "producer",
"label": "",
"required": false,
"type": "object",
"javaType": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"deprecated": false,
"autowired": false,
"secret": false,
"description": "The configuration"
},
"lazyStartProducer": {
"index": 3,
"kind": "property",
"displayName": "Lazy Start Producer",
"group": "producer",
"label": "producer",
"required": false,
"type": "boolean",
"javaType": "boolean",
"deprecated": false,
"autowired": false,
"secret": false,
"defaultValue": false,
"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing."
},
"tags": {
"index": 4,
"kind": "property",
"displayName": "Tags",
"group": "producer",
"label": "",
"required": false,
"type": "string",
"javaType": "java.lang.String",
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "Tags for discovering and calling Camel route tools"
},
"autowiredEnabled": {
"index": 5,
"kind": "property",
"displayName": "Autowired Enabled",
"group": "advanced",
"label": "advanced",
"required": false,
"type": "boolean",
"javaType": "boolean",
"deprecated": false,
"autowired": false,
"secret": false,
"defaultValue": true,
"description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc."
},
"mcpClients": {
"index": 6,
"kind": "property",
"displayName": "Mcp Clients",
"group": "advanced",
"label": "advanced",
"required": false,
"type": "array",
"javaType": "java.util.List<dev.langchain4j.mcp.client.McpClient>",
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "Pre-built MCP (Model Context Protocol) client instances for external tool integration. Reference beans from the registry, e.g., #myMcpClient1,#myMcpClient2"
},
"mcpServer": {
"index": 7,
"kind": "property",
"displayName": "Mcp Server",
"group": "advanced",
"label": "advanced",
"required": false,
"type": "object",
"javaType": "java.util.Map<java.lang.String, java.lang.Object>",
"prefix": "mcpServer.",
"multiValue": true,
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "MCP server definitions in the form of mcpServer..=. Supported properties: transportType (stdio, http, streamableHttp, or sse, default: stdio), command (comma-separated, for stdio), url (for http/sse), environment.= (for stdio), timeout (in seconds, default: 60), logRequests, logResponses, oauthProfile (OAuth profile for HTTP auth, requires camel-oauth). This is a multi-value option with prefix: mcpServer."
}
},
"headers": {
"CamelLangChain4jAgentSystemMessage": {
"index": 0,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "The system prompt.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#SYSTEM_MESSAGE"
},
"CamelLangChain4jAgentMemoryId": {
"index": 1,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "Object",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "Memory ID.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#MEMORY_ID"
},
"CamelLangChain4jAgentUserMessage": {
"index": 2,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "The user message to accompany file content when using WrappedFile as input.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#USER_MESSAGE"
},
"CamelLangChain4jAgentMediaType": {
"index": 3,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "The media type (MIME type) of the file content. Overrides auto-detection from file extension.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#MEDIA_TYPE"
},
"CamelLangChain4jAgentExcludeTags": {
"index": 4,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "Comma-separated list of Camel tool tags to exclude from this agent invocation.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#EXCLUDE_TAGS"
},
"CamelLangChain4jAgentExcludeMcpServers": {
"index": 5,
"kind": "header",
"displayName": "",
"group": "producer",
"label": "",
"required": false,
"javaType": "String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "Comma-separated list of MCP server names (keys) to exclude from this agent invocation.",
"constantName": "org.apache.camel.component.langchain4j.agent.api.Headers#EXCLUDE_MCP_SERVERS"
}
},
"properties": {
"agentId": {
"index": 0,
"kind": "path",
"displayName": "Agent Id",
"group": "producer",
"label": "",
"required": true,
"type": "string",
"javaType": "java.lang.String",
"deprecated": false,
"deprecationNote": "",
"autowired": false,
"secret": false,
"description": "The Agent id"
},
"agent": {
"index": 1,
"kind": "parameter",
"displayName": "Agent",
"group": "producer",
"label": "",
"required": false,
"type": "object",
"javaType": "org.apache.camel.component.langchain4j.agent.api.Agent",
"deprecated": false,
"deprecationNote": "",
"autowired": true,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "The agent to use for the component"
},
"agentFactory": {
"index": 2,
"kind": "parameter",
"displayName": "Agent Factory",
"group": "producer",
"label": "",
"required": false,
"type": "object",
"javaType": "org.apache.camel.component.langchain4j.agent.api.AgentFactory",
"deprecated": false,
"deprecationNote": "",
"autowired": true,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "The agent factory to use for creating agents if no Agent is provided"
},
"tags": {
"index": 3,
"kind": "parameter",
"displayName": "Tags",
"group": "producer",
"label": "",
"required": false,
"type": "string",
"javaType": "java.lang.String",
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "Tags for discovering and calling Camel route tools"
},
"lazyStartProducer": {
"index": 4,
"kind": "parameter",
"displayName": "Lazy Start Producer",
"group": "producer (advanced)",
"label": "producer,advanced",
"required": false,
"type": "boolean",
"javaType": "boolean",
"deprecated": false,
"autowired": false,
"secret": false,
"defaultValue": false,
"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing."
},
"mcpClients": {
"index": 5,
"kind": "parameter",
"displayName": "Mcp Clients",
"group": "advanced",
"label": "advanced",
"required": false,
"type": "array",
"javaType": "java.util.List<dev.langchain4j.mcp.client.McpClient>",
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "Pre-built MCP (Model Context Protocol) client instances for external tool integration. Reference beans from the registry, e.g., #myMcpClient1,#myMcpClient2"
},
"mcpServer": {
"index": 6,
"kind": "parameter",
"displayName": "Mcp Server",
"group": "advanced",
"label": "advanced",
"required": false,
"type": "object",
"javaType": "java.util.Map<java.lang.String, java.lang.Object>",
"prefix": "mcpServer.",
"multiValue": true,
"deprecated": false,
"autowired": false,
"secret": false,
"configurationClass": "org.apache.camel.component.langchain4j.agent.LangChain4jAgentConfiguration",
"configurationField": "configuration",
"description": "MCP server definitions in the form of mcpServer..=. Supported properties: transportType (stdio, http, streamableHttp, or sse, default: stdio), command (comma-separated, for stdio), url (for http/sse), environment.= (for stdio), timeout (in seconds, default: 60), logRequests, logResponses, oauthProfile (OAuth profile for HTTP auth, requires camel-oauth). This is a multi-value option with prefix: mcpServer."
}
},
"propertiesSchema": {
"properties": {
"agentId": {
"title": "Agent Id",
"description": "The Agent id",
"type": "string",
"$comment": "group:producer"
},
"agent": {
"title": "Agent",
"description": "The agent to use for the component",
"type": "string",
"$comment": "group:producer",
"format": "bean:org.apache.camel.component.langchain4j.agent.api.Agent"
},
"agentFactory": {
"title": "Agent Factory",
"description": "The agent factory to use for creating agents if no Agent is provided",
"type": "string",
"$comment": "group:producer",
"format": "bean:org.apache.camel.component.langchain4j.agent.api.AgentFactory"
},
"tags": {
"title": "Tags",
"description": "Tags for discovering and calling Camel route tools",
"type": "string",
"$comment": "group:producer"
},
"lazyStartProducer": {
"title": "Lazy Start Producer",
"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
"type": "boolean",
"$comment": "group:producer (advanced)",
"default": false
},
"mcpClients": {
"title": "Mcp Clients",
"description": "Pre-built MCP (Model Context Protocol) client instances for external tool integration. Reference beans from the registry, e.g., #myMcpClient1,#myMcpClient2",
"type": "array",
"items": {
"type": "string"
},
"$comment": "group:advanced"
},
"mcpServer": {
"title": "Mcp Server",
"description": "MCP server definitions in the form of mcpServer..=. Supported properties: transportType (stdio, http, streamableHttp, or sse, default: stdio), command (comma-separated, for stdio), url (for http/sse), environment.= (for stdio), timeout (in seconds, default: 60), logRequests, logResponses, oauthProfile (OAuth profile for HTTP auth, requires camel-oauth). This is a multi-value option with prefix: mcpServer.",
"type": "object",
"$comment": "group:advanced"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": [
"agentId"
]
}
}