Running connector in Hybrid mode

I am trying to use the AI Agent LLM Connector to invoke an LLM that is deployed inside a private environment (private VM / network).

Because the LLM is hosted in a private machine and cannot be accessed from the public internet, it is not possible for Camunda 8 SaaS to directly invoke this LLM using connectors.

To address this, my understanding is that:

  • The Camunda Connector Runtime should be deployed on a private Ubuntu VM, within the same network as the LLM.

  • The runtime will operate in hybrid mode, making only outbound calls to Camunda 8 SaaS to poll for tasks.

  • The connector runtime will then invoke the LLM locally within the private network.

This satisfies the no‑inbound‑connectivity constraint while still allowing Camunda SaaS to orchestrate the process.


Question 1 – Task Definition Type in Element Template

From the documentation, I understand that the connector type is defined using:

zeebe:taskDefinition:type

and that we need to modify this value to a custom connector type, for example:

JSON

“value”: “io.camunda.agenticai:aiagent:1”

Show more lines

However, in the provided element template JSON, I do not see the zeebe:taskDefinition:type field at all in the below template json connectors/connectors/agentic-ai/element-templates/hybrid/agenticai-aiagent-outbound-connector-hybrid.json at b360ed61439926ad213702d413e0caefc03f60c8 · camunda/connectors · GitHub

  • Am I missing something?

  • Is this field expected to be added manually when creating a custom element template?

  • Or is there a different mechanism by which the taskDefinition type is derived for AI Agent connectors?


Question 2 – Publishing and Using the Custom Connector Template

My current understanding is:

JSON

docker run --rm --name=HybridConnectorRuntime \

-e CAMUNDA_CLIENT_MODE=saas \

-e CAMUNDA_CLIENT_CLOUD_CLUSTERID=“<CLUSTER_ID>” \

-e CAMUNDA_CLIENT_CLOUD_REGION=“” \

-e CAMUNDA_CLIENT_AUTH_CLIENTID=“<CLIENT_ID>” \

-e CAMUNDA_CLIENT_AUTH_CLIENTSECRET=“<CLIENT_SECRET>” \

-e CONNECTOR_AGENTICAI_AIAGENT_TYPE=“io.camunda.agenticai:aiagent:1” \

camunda/connectors-bundle:

``

Show more lines

Can someone please confirm:

  • Whether CONNECTOR_AGENTICAI_AIAGENT_TYPE is the correct environment variable name

  • Whether io.camunda.agenticai:aiagent:1 is the correct connector type value for the AI Agent connector


Question 3 – Connector Type Naming Convention Confusion

In the given examples, I see the following environment variable being used:

Shell

-e CONNECTOR_HTTP_REST_TYPE=“io.camunda:http-json:local”

``

Show more lines

However, in the official element template JSON:

https://github.com/camunda/connectors/blob/7a0b1a143028511c72ffeca718b7c2f94c5a7832/connectors/http/rest/element-templates/hybrid/http-json-connector-hybrid.json

the connector type is defined as:

"io.camunda:http-json:1"

This is confusing to me:

  • Why does the example use :local but the template uses :1?

  • Is :local just an alias used by the runtime?

  • For custom / AI Agent connectors, should we always use the :1 version style?

Based on the documentation, there are some corrections needed for your AI Agent connector hybrid mode setup. I found the following relevant resources:

Key corrections: Use CONNECTOR_AI_AGENT_TYPE environment variable, and you’ll need to manually add the zeebe:taskDefinition:type binding to your element template since it’s not present by default in hybrid templates.

Does this help? If not, can anyone from the community jump in? :waving_hand:


:light_bulb: Hints: Use the Ask AI feature in Camunda’s documentation to chat with AI and get fast help. Report bugs and features in Camuda’s GitHub issue tracker. Trust the process. :robot:

No So . Pls allow some mega expert to jump in :slight_smile:

In the camunda8 document Use connectors in hybrid mode | Camunda 8 Docs the below has been mentioned but i am not seeing zeebe:taskDefinition:type binding

Appendix

See ready-to-use hybrid element templates examples for HTTP REST and Kafka Consumer.

The Task Type in the BPMN file / Template is found at line 77

Depending on if you are using a AI Worker Task or an AI Worker Subprocess, you have to set the variables as per Prerequisites step 5
The value of the variable has to match the value in your template Line 77.

The hybrid template doesn’t include zeebe:taskDefinition:type by default - you add it manually.

Check the HTTP REST hybrid example in the docs. You’ll see they add a binding block.

For AI Agent, add this to your template:

{
  "type": "zeebe:taskDefinition:type",
  "value": "io.camunda.agenticai:aiagent:1"
}

Then set CONNECTOR_AI_AGENT_TYPE=io.camunda.agenticai:aiagent:1 in your runtime.

Have a look again at lines 76 - 83 of the linked connector. It is there, and Line 77 is where the value is set.