Introducing WorkGPT: AI-native BMP engine, the fusion of BPM workflow technology with GPT. This innovation brings AI-powered workflow engines to the forefront, seamlessly integrating ChatGPT into enterprise scenarios.
It's AI Era now, if you are building a Workflow, or BPM (Business Process Management), or RPA (Robotic Process Automation) system, or any other system that involves workflow, you can use WorkGPT to enhance your system with AI capabilities.
Unlike other existing BPM engines which require Java to develop enterprise workflow application, You may use any modern language to develop enterprise workflow applications with WorkGPT, although itself is developed with Node.js.
-
GPT-Powered Decision Support System:
- Analyzes workflow and business objects for better decision-making.
- Recommends decisions with estimated outcomes.
-
Natural Language Interface:
- Embedded ChatGPT chatbot in the workflow UI.
- Dynamic conversations on workflow and business subjects.
-
Generate Workflow Template via Natural Language:
- Describe your process; AI crafts the workflow template.
-
Workflow Enhancement:
- Refines workflow templates based on real-time data.
-
Comprehensive Workflow Engine:
- Includes a designer, process driver, and runtime monitor.
- H5 UI for end-users; robust API for developers.
(At this moment, please wait for a while, we are preparing the demo site for you.)
- Node.js 14.17.0 or above
- Mongodb instance which you can access, you should have a correct connnection string to your Mongodb instance, for example: "mongodb://127.0.0.1:27017/emp"; you will configure it in your "setenv.sh" script later. Make sure your mongodb instance has replicaSet enabled. see here for details
- Redis instance which you can access, you should have a correct connnection string to your Redis instance, for example: "redis://default:foobared@localhost:6379"; you will configure it in your "setenv.sh" script later.
- SMTP server which you can access, you should have SMTP server address, port, user name and password ready; you will configure them in your "setenv.sh" script later.
- Caddy server is used as a reverse proxy server with https enabled, it's helpful for local development environment. for example, we use 'workgpt.localhost' as the server name for backend server, 'lkh.ai.localhost' as the web front server name. so we should have this in '/etc/hosts'
127.0.0.1 workgpt.localhost
127.0.0.1 lkh.ai.localhost
and this in Caddyfile:
workgpt.localhost {
reverse_proxy http://localhost:5008
}
lkh.ai.localhost {
reverse_proxy http://localhost:6173
}
Run 'caddy start' to start caddy server
- Clone this repository and enter workgpt folder;
git clone git@github.com:cnshsliu/workgpt.git
cd workgpt
- Run npn install:
$ npm install
or 'pnpm install' if you prefer pnpm.
While you are in your workgpt folder, follow next steps to start WorkGPT server:
Step 1. compile typescript source files:
$ node run dev.tsc.once
Step 2. Prepare environment Run installer script:
$ ./installer/installer.sh
$ vim setenv.sh
"installer.sh" will generate "setenv.sh" for you, you MUST edit generated "setenv.sh", change environment variables value according to your environment.
Step 3. then, start the backend server with "./start.sh"
$ ./start.sh
Step 4. Initialize site data
node ./build/tools/db/init_site.js
Step 5. Start the Frontend server
Open a new terminal window, then goto "workgpt/frt"
cd frt
npm run dev
- Open your browser, go to https://lkh.ai.localhost/register
- Manage organizations, users, roles, and more.
- Design workflows with WorkGPT Designer.
- Generate & enhance workflow templates.
- Initiate workflows, review personal worklists, handle tasks.
- Integrate the engine into applications with API.
- Engage with the engine for business process insights.
We welcome contributions! Please see our Contribution Guidelines.
Join our Slack channel or visit our Forum for support and to connect with other users.
This project is licensed under the MIT License.
- Feature 1 planned...
- Enhancement 2 coming...
- What if our company already has workflow system? - Integrate .
- Question 2 - Answer here.
Thanks to our amazing contributors and supporters!
If you find this project helpful, please star the repo! Sharing is caring!
You must enable replicaSet for your MongoDB instance to run WorkGPT.
Here we use a local mongodb instance running in docker as an example. Following command start a Mongodb community server on local docker with replicaset enabled
docker run --rm --name myMongo -d -p 27017:27017 -u $(id -u):$(id -g) -v $HOME/mongodb6:/data/db mongodb/mongodb-community-server:latest --dbpath /data/db --replSet rs0
The above command mount local folder '$HOME/mongodb6' to container's '/data/db'. if this folder is not empty before start this server for the first time. please clean it up.
Once server is up, you may run 'mongo' or 'mongosh' client to connect to it, then run following command to initialize the replicaSet:
rs.initiate()