LLM-powered creation, editing, and interpretation of Business Process Model and Notation (BPMN) diagrams.
vision_demo.mp4
The easiest way to get started - no setup required!
Visit bpmn-frontend.onrender.com and provide your own API keys directly in the interface. Your keys are stored locally in your browser and never stored on any servers.
- Clone the repository
git clone https://github.com/jtlicardo/bpmn-assistant.git
cd bpmn-assistant
- Set up your environment variables
Linux, macOS
cd src/bpmn_assistant
cp .env.example .env
Windows
cd src\bpmn_assistant
copy .env.example .env
-
Open the
.envfile and replace the placeholder values with your actual API keys. -
Build and run the application
docker-compose up --build
- Open your browser and go to
http://localhost:8080
At least one of the following API keys:
Note: You can use any combination of the API keys above, but at least one is required to use the app.
Additional prerequisites for local deployment:
- GPT-5.2
- GPT-4.1
- Claude Sonnet 4.5
- Claude Opus 4.6
- Gemini 3 Flash Preview
- Gemini 3 Pro Preview
- Kimi K2.5
- Diagram creation - Generates BPMN diagrams based on text descriptions.
- Diagram editing - Modifies BPMN diagrams based on user input.
- Diagram interpretation - Provides text descriptions of BPMN diagrams.
- Drag-and-drop functionality - Users can drag and drop BPMN files (containing only supported elements) into the editor, then ask the LLM to edit or explain the process.
- Vision support - Upload images (flowcharts, sketches, diagrams) to create or modify BPMN processes. Currently available for OpenAI models only.
The application currently supports a subset of BPMN elements:
- Task
- User task
- Service task
- Send task
- Receive task
- Business rule task
- Manual task
- Script task
- Exclusive gateway
- Parallel gateway
- Inclusive gateway
Start events
- Start event
- Timer start event
- Message start event
End events
- End event
- Message end event
Intermediate events
- Intermediate throw event (generic)
- Intermediate throw event (message)
- Intermediate catch event (generic)
- Intermediate catch event (timer)
- Intermediate catch event (message)
- The AI assistant does not "see" manual edits made to the diagram. It always responds based on its last generated version. Keep this in mind when interacting with the assistant after making manual changes.
- Pools and lanes are not supported due to limitations in the BPMN Auto Layout library.
BPMN Assistant: An LLM-Based Approach to Business Process Modeling
If you have any questions or feedback, please open an issue on this GitHub repository or contact me.

