BPMN AI Agent

The BPMN AI Agent adds an LLM-powered chat assistant to CIB seven Modeler. From the BPMN Agent panel you describe what you need in natural language and the agent designs, generates, edits, reviews, and explains BPMN diagrams directly on the canvas. It connects to any OpenAI-compatible model endpoint you configure — hosted (OpenAI, OpenRouter) or self-hosted (Ollama, vLLM, and others).

Enterprise Feature

The BPMN AI Agent is available only in the Enterprise Edition and requires a valid CIB seven license. It also requires the modeler to be enabled (cibseven.webclient.modeler.enabled: true); see Enable / Disable.

Prerequisites

  • CIB seven Enterprise Edition with a valid license.
  • The modeler enabled: cibseven.webclient.modeler.enabled: true (a database is required — see Enable / Disable).
  • At least one OpenAI-compatible provider and one model configured (below).

Enabling the Agent

The BPMN AI Agent is disabled by default. Enable it by setting enabled: true under cibseven.webclient.modeler.ai in cibseven-webclient’s application.yaml:

cibseven:
  webclient:
    modeler:
      ai:
        enabled: true

Or via environment variable:

CIBSEVEN_WEBCLIENT_MODELER_AI_ENABLED=true

Required configuration

When the agent is enabled, the defaultModel must match one of the listed models, and every listed model must reference a provider whose baseUrl is set — otherwise the webclient will not start.

Configuring an OpenAI-Compatible Provider

Providers are named entries under ai.providers; each points at an OpenAI-compatible HTTP endpoint. Set its baseUrl (required) and, where the endpoint needs authentication, an apiKey. API keys support environment-variable expansion such as ${OPENAI_API_KEY:}, so secrets stay out of the configuration file.

Typical base URLs:

  • OpenAI — https://api.openai.com/v1
  • OpenRouter — https://openrouter.ai/api/v1
  • Ollama — http://localhost:11434/v1
  • vLLM / other self-hosted — http://<host>:<port>/v1

The api field selects the API surface: chat-completions (the default, /v1/chat/completions) works with virtually every OpenAI-compatible server. Use responses (/v1/responses) for OpenAI gpt-5.x reasoning models that also use tools. See the configuration reference for all provider fields.

Defining Models

Models are listed under ai.models. Each model’s provider must match the key of a configured provider, and value is the model id sent to that endpoint. The label is shown in the model dropdown. defaultModel must equal the value of one of the listed models.

Choosing a model

For day-to-day modeling, prefer a fast model (capability: FAST) — lower latency keeps the chat responsive and the experience smooth. Also configure a frontier model for complex or ambiguous requests where answer quality matters most, and switch to it from the model dropdown when needed. For a cost-efficient, self-hosted option, serve the latest Gemma 4 models through an Ollama server.

Complete Example (OpenAI)

A minimal end-to-end configuration that enables the agent against OpenAI:

cibseven:
  webclient:
    modeler:
      enabled: true
      ai:
        enabled: true
        defaultModel: gpt-5.4-2026-03-05
        providers:
          openai:
            baseUrl: https://api.openai.com/v1
            apiKey: ${OPENAI_API_KEY:}
            api: responses
        models:
          - value: gpt-5.4-2026-03-05
            provider: openai
            label: "GPT-5.4"
            contextWindow: 400000

Set the OPENAI_API_KEY environment variable to your key. The model then appears in the modeler’s model dropdown and is selected by default.

Other OpenAI-Compatible Endpoints

Because the agent speaks the OpenAI API, any compatible server works the same way — only the baseUrl (and, if required, apiKey) change. A local Ollama server needs no API key — point baseUrl at its OpenAI-compatible endpoint and reference the model by the name Ollama serves it under:

cibseven:
  webclient:
    modeler:
      ai:
        enabled: true
        defaultModel: gemma4:26b
        providers:
          ollama:
            baseUrl: http://localhost:11434/v1
        models:
          - value: gemma4:26b
            provider: ollama
            label: "Gemma 4 (local)"
            capability: LIGHTWEIGHT

The same models entries work against a hosted aggregator too — for example OpenRouter (baseUrl: https://openrouter.ai/api/v1, with an apiKey) exposes Gemma as google/gemma-4-26b-a4b-it:nitro.

Per-Distribution Configuration

The configuration from the example above works across all distributions. Place the cibseven.webclient.modeler.ai properties in the distribution-specific file listed below:

  • CIB seven Runconfiguration/default.yml (or configuration/production.yml when started with --production), under the existing cibseven.webclient.modeler tree.
  • Tomcatconf/Catalina/localhost/webapp.xml, as context <Parameter> entries.
  • WildFlyWEB-INF/classes/application-wildfly.yaml in the deployed WAR.

Using the Agent

Open a BPMN diagram, then open the BPMN Agent panel from the modeler toolbar. The panel docks beside the canvas — you can float, resize, or collapse it, and its position is remembered between sessions. Type what you want in natural language and send it; the agent’s reply streams in live, and you can Stop a running request at any time.

Composing a request

The compose box at the bottom gives you several ways to shape a request:

  • Model — pick the model from the dropdown; for reasoning models a reasoning effort level is shown next to it.
  • Mode — choose how the agent should act on the request (for example, ask a question about the diagram instead of editing it).
  • Context — select elements on the canvas to attach them as context, and attach files for the agent to take into account.
  • Voice — dictate a request instead of typing it.
  • Token budget — an indicator shows how much of the per-session context budget the conversation has used.

Reviewing and applying changes

When the agent modifies the diagram, the change is shown as a diff card listing the added, changed, and removed elements. Review it and Apply or Discard it, or ask the agent to revise it. Enable the Auto-accept toggle to apply edits automatically without confirming each one; the layout is tidied up automatically when needed.

For a larger request the agent first proposes a plan. You can approve the whole plan, generate a quick draft, or work through it one step at a time — continue to the next step, skip a step, modify it, or reject the remaining steps.

Fixing validation issues

When the diagram has BPMN validation problems, the panel lists them inline with the number of errors and warnings, each with a quick-fix the agent applies on click.

Chat sessions

Each conversation is kept as a session. Start a new chat, switch between previous sessions from the history, and delete the ones you no longer need.

Beta

The BPMN AI Agent is currently in beta. Review generated diagrams before deploying them.

Configuration Reference

All properties live under the cibseven.webclient.modeler.ai prefix.

Agent options

Property Default Description
enabled false Master switch for the agent.
defaultModel Model value selected by default; must match a listed model.
maxTokens 50000 Per-session chat-memory token budget (input + history).
limits.messageMaxChars 600000 Max characters in a user message.
limits.filesMaxCount 10 Max attached files per request.
limits.filesMaxBytesPerFile 5242880 Max size (bytes) of any single attached file.
limits.currentBpmnXmlMaxChars 500000 Max characters of canvas BPMN XML sent per request.
limits.elementTemplatesMaxCount 1000 Max element templates sent per request.
systemPrompt.append Inline text appended to every agent system prompt.
systemPrompt.appendFile A classpath: or file: resource appended to every system prompt.
skills Extra skill directories, each laid out as <dir>/<skill>/SKILL.md.

Provider options (providers.<name>)

Property Default Description
baseUrl – (required) OpenAI-compatible base URL, e.g. https://api.openai.com/v1.
apiKey Bearer token sent as Authorization; supports ${ENV_VAR:} expansion.
timeoutSeconds 300 Per-request timeout.
api chat-completions API surface: chat-completions or responses (needed for gpt-5.x reasoning + tools).
headers Extra HTTP headers added to every request (values support ${ENV_VAR:}).

Model options (entries under models)

Property Default Description
value – (required) Model id sent to the endpoint.
provider – (required) Key of a configured provider.
label Name shown in the model dropdown.
contextWindow Context size in tokens.
capability GENERAL GENERAL, FAST, or LIGHTWEIGHT.
supportedEfforts [] Reasoning effort levels, e.g. [low, medium, high].

On this Page: