Skip to content

Commit d579500

Browse files
committed
Merge commit '57efa25fe59c0e4041281a0f8561b110ea691fe0'
* commit '57efa25fe59c0e4041281a0f8561b110ea691fe0': (521 commits) 🥳 flowise@1.6.2 release 🥳 flowise-ui@1.6.2 release 🥳 flowise-components@1.6.4 release Feature/OpenAI Tool Agent (FlowiseAI#1991) Fix#1947 (FlowiseAI#1960) Update autoSyncSingleCommit.yml Update autoSyncSingleCommit.yml (FlowiseAI#1985) Feature/delete backspace (FlowiseAI#1983) Send valid JSON to autosync workflows for multi-line commit messages (FlowiseAI#1981) Feature/Custom Tool OverrideConfig (FlowiseAI#1979) Feature/Mistral FunctionAgent (FlowiseAI#1912) update the version number for AzureChatOpenAI Adding support for AzureChatOpenAI Update pnpm-lock.yaml Update lockFileVersion Enable github workflow pnpm caching update lock file update lock file Merge branch 'main' into feature/Indexing Set embed versions to latest (FlowiseAI#1957) ...
2 parents c8bf3d9 + 57efa25 commit d579500

File tree

537 files changed

+57188
-6402
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

537 files changed

+57188
-6402
lines changed

.eslintignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node_modules
2+
dist

.github/ISSUE_TEMPLATE/bug_report.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ If applicable, add screenshots to help explain your problem.
2727
If applicable, add exported flow in order to help replicating the problem.
2828

2929
**Setup**
30-
- Installation [e.g. docker, `npx flowise start`, `yarn start`]
30+
31+
- Installation [e.g. docker, `npx flowise start`, `pnpm start`]
3132
- Flowise Version [e.g. 1.2.11]
3233
- OS: [e.g. macOS, Windows, Linux]
3334
- Browser [e.g. chrome, safari]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: autoSyncMergedPullRequest
2+
on:
3+
pull_request_target:
4+
types:
5+
- closed
6+
branches: ['main']
7+
jobs:
8+
autoSyncMergedPullRequest:
9+
if: github.event.pull_request.merged == true
10+
runs-on: ubuntu-latest
11+
permissions:
12+
contents: write
13+
steps:
14+
- uses: actions/checkout@v3
15+
- name: Show PR info
16+
env:
17+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
18+
run: |
19+
echo The PR #${{ github.event.pull_request.number }} was merged on main branch!
20+
- name: Repository Dispatch
21+
uses: peter-evans/repository-dispatch@v2
22+
with:
23+
token: ${{ secrets.AUTOSYNC_TOKEN }}
24+
repository: ${{ secrets.AUTOSYNC_CH_URL }}
25+
event-type: ${{ secrets.AUTOSYNC_PR_EVENT_TYPE }}
26+
client-payload: >-
27+
{
28+
"ref": "${{ github.ref }}",
29+
"prNumber": "${{ github.event.pull_request.number }}",
30+
"prTitle": "${{ github.event.pull_request.title }}",
31+
"prDescription": "${{ toJSON(github.event.pull_request.description) }}",
32+
"sha": "${{ github.sha }}"
33+
}
+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: autoSyncSingleCommit
2+
on:
3+
push:
4+
branches:
5+
- main
6+
jobs:
7+
doNotAutoSyncSingleCommit:
8+
if: github.event.commits[1] != null
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v3
12+
- name: IGNORE autoSyncSingleCommit
13+
run: |
14+
echo This single commit has came from a merged commit. We will ignore it. This case is handled in autoSyncMergedPullRequest workflow for merge commits comming from merged pull requests only! Beware, the regular merge commits are not handled by any workflow for the moment.
15+
autoSyncSingleCommit:
16+
if: github.event.commits[1] == null
17+
runs-on: ubuntu-latest
18+
steps:
19+
- uses: actions/checkout@v3
20+
- name: autoSyncSingleCommit
21+
env:
22+
GITHUB_CONTEXT: ${{ toJSON(github) }}
23+
run: |
24+
echo Autosync a single commit with id: ${{ github.sha }} from openSource main branch towards cloud hosted version.
25+
- name: Repository Dispatch
26+
uses: peter-evans/repository-dispatch@v3
27+
with:
28+
token: ${{ secrets.AUTOSYNC_TOKEN }}
29+
repository: ${{ secrets.AUTOSYNC_CH_URL }}
30+
event-type: ${{ secrets.AUTOSYNC_SC_EVENT_TYPE }}
31+
client-payload: >-
32+
{
33+
"ref": "${{ github.ref }}",
34+
"sha": "${{ github.sha }}",
35+
"commitMessage": "${{ github.event.commits[0].id }}"
36+
}

.github/workflows/main.yml

+11-6
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,21 @@ jobs:
2222
env:
2323
PUPPETEER_SKIP_DOWNLOAD: true
2424
steps:
25-
- uses: actions/checkout@v3
25+
- uses: actions/checkout@v4
26+
- uses: pnpm/action-setup@v2
27+
with:
28+
version: 6.32.9
2629
- name: Use Node.js ${{ matrix.node-version }}
27-
uses: actions/setup-node@v3
30+
uses: actions/setup-node@v4
2831
with:
2932
node-version: ${{ matrix.node-version }}
33+
check-latest: false
34+
cache: 'pnpm'
3035

31-
- run: npm i -g yarn
36+
- run: npm i -g pnpm
3237

33-
- run: yarn install --ignore-engines
38+
- run: pnpm install
3439

35-
- run: yarn lint
40+
- run: pnpm lint
3641

37-
- run: yarn build
42+
- run: pnpm build

.husky/pre-commit

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/sh
22
. "$(dirname "$0")/_/husky.sh"
33

4-
yarn quick # prettify
5-
yarn lint-staged # eslint lint(also include prettify but prettify support more file extensions than eslint, so run prettify first)
4+
pnpm quick # prettify
5+
pnpm lint-staged # eslint lint(also include prettify but prettify support more file extensions than eslint, so run prettify first)

.npmrc

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
auto-install-peers = true
2+
strict-peer-dependencies = false
3+
prefer-workspace-packages = true
4+
link-workspace-packages = deep
5+
hoist = true
6+
shamefully-hoist = true

CONTRIBUTING-ZH.md

+15-12
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030

3131
不确定要贡献什么?一些想法:
3232

33-
-Langchain 创建新组件
33+
-`packages/components` 创建新组件
3434
- 更新现有组件,如扩展功能、修复错误
3535
- 添加新的 Chatflow 想法
3636

@@ -40,13 +40,13 @@ Flowise 在一个单一的单体存储库中有 3 个不同的模块。
4040

4141
- `server`:用于提供 API 逻辑的 Node 后端
4242
- `ui`:React 前端
43-
- `components`:Langchain 组件
43+
- `components`:Langchain/LlamaIndex 组件
4444

4545
#### 先决条件
4646

47-
- 安装 [Yarn v1](https://classic.yarnpkg.com/en/docs/install)
47+
- 安装 [PNPM](https://pnpm.io/installation)
4848
```bash
49-
npm i -g yarn
49+
npm i -g pnpm
5050
```
5151

5252
#### 逐步指南
@@ -71,45 +71,45 @@ Flowise 在一个单一的单体存储库中有 3 个不同的模块。
7171
6. 安装所有模块的依赖项:
7272

7373
```bash
74-
yarn install
74+
pnpm install
7575
```
7676

7777
7. 构建所有代码:
7878

7979
```bash
80-
yarn build
80+
pnpm build
8181
```
8282

8383
8. 在[http://localhost:3000](http://localhost:3000)上启动应用程序
8484

8585
```bash
86-
yarn start
86+
pnpm start
8787
```
8888

8989
9. 开发时:
9090

91-
- 在`packages/ui`中创建`.env`文件并指定`PORT`(参考`.env.example`
91+
- 在`packages/ui`中创建`.env`文件并指定`VITE_PORT`(参考`.env.example`
9292
- 在`packages/server`中创建`.env`文件并指定`PORT`(参考`.env.example`
9393
- 运行
9494

9595
```bash
96-
yarn dev
96+
pnpm dev
9797
```
9898

9999
`packages/ui``packages/server`进行的任何更改都将反映在[http://localhost:8080](http://localhost:8080)上
100100

101-
对于`packages/components`中进行的更改,再次运行`yarn build`以应用更改。
101+
对于`packages/components`中进行的更改,再次运行`pnpm build`以应用更改。
102102

103103
10. 做完所有的更改后,运行以下命令来确保在生产环境中一切正常:
104104

105105
```bash
106-
yarn build
106+
pnpm build
107107
```
108108

109109
110110

111111
```bash
112-
yarn start
112+
pnpm start
113113
```
114114

115115
11. 提交代码并从指向 [Flowise 主分支](https://github.com/FlowiseAI/Flowise/tree/master) 的分叉分支上提交 Pull Request。
@@ -123,7 +123,9 @@ Flowise 支持不同的环境变量来配置您的实例。您可以在 `package
123123
| PORT | Flowise 运行的 HTTP 端口 | 数字 | 3000 |
124124
| FLOWISE_USERNAME | 登录用户名 | 字符串 | |
125125
| FLOWISE_PASSWORD | 登录密码 | 字符串 | |
126+
| FLOWISE_FILE_SIZE_LIMIT | 上传文件大小限制 | 字符串 | 50mb |
126127
| DEBUG | 打印组件的日志 | 布尔值 | |
128+
| BLOB_STORAGE_PATH | 存储位置 | 字符串 | `your-home-dir/.flowise/storage` |
127129
| LOG_PATH | 存储日志文件的位置 | 字符串 | `your-path/Flowise/logs` |
128130
| LOG_LEVEL | 日志的不同级别 | 枚举字符串: `error`, `info`, `verbose`, `debug` | `info` |
129131
| APIKEY_PATH | 存储 API 密钥的位置 | 字符串 | `your-path/Flowise/packages/server` |
@@ -138,6 +140,7 @@ Flowise 支持不同的环境变量来配置您的实例。您可以在 `package
138140
| DATABASE_NAME | 数据库名称(当 DATABASE_TYPE 不是 sqlite 时) | 字符串 | |
139141
| SECRETKEY_PATH | 保存加密密钥(用于加密/解密凭据)的位置 | 字符串 | `your-path/Flowise/packages/server` |
140142
| FLOWISE_SECRETKEY_OVERWRITE | 加密密钥用于替代存储在 SECRETKEY_PATH 中的密钥 | 字符串 |
143+
| DISABLE_FLOWISE_TELEMETRY | 关闭遥测 | 字符串 |
141144

142145
您也可以在使用 `npx` 时指定环境变量。例如:
143146

CONTRIBUTING.md

+19-12
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Found an issue? [Report it](https://github.com/FlowiseAI/Flowise/issues/new/choo
3030

3131
Not sure what to contribute? Some ideas:
3232

33-
- Create new components from Langchain
33+
- Create new components from `packages/components`
3434
- Update existing components such as extending functionality, fixing bugs
3535
- Add new chatflow ideas
3636

@@ -40,13 +40,13 @@ Flowise has 3 different modules in a single mono repository.
4040

4141
- `server`: Node backend to serve API logics
4242
- `ui`: React frontend
43-
- `components`: Langchain components
43+
- `components`: Third-party nodes integrations
4444

4545
#### Prerequisite
4646

47-
- Install [Yarn v1](https://classic.yarnpkg.com/en/docs/install)
47+
- Install [PNPM](https://pnpm.io/installation)
4848
```bash
49-
npm i -g yarn
49+
npm i -g pnpm
5050
```
5151

5252
#### Step by step
@@ -71,45 +71,45 @@ Flowise has 3 different modules in a single mono repository.
7171
6. Install all dependencies of all modules:
7272

7373
```bash
74-
yarn install
74+
pnpm install
7575
```
7676

7777
7. Build all the code:
7878

7979
```bash
80-
yarn build
80+
pnpm build
8181
```
8282

8383
8. Start the app on [http://localhost:3000](http://localhost:3000)
8484

8585
```bash
86-
yarn start
86+
pnpm start
8787
```
8888

8989
9. For development:
9090

91-
- Create `.env` file and specify the `PORT` (refer to `.env.example`) in `packages/ui`
91+
- Create `.env` file and specify the `VITE_PORT` (refer to `.env.example`) in `packages/ui`
9292
- Create `.env` file and specify the `PORT` (refer to `.env.example`) in `packages/server`
9393
- Run
9494

9595
```bash
96-
yarn dev
96+
pnpm dev
9797
```
9898

9999
Any changes made in `packages/ui` or `packages/server` will be reflected on [http://localhost:8080](http://localhost:8080)
100100

101-
For changes made in `packages/components`, run `yarn build` again to pickup the changes.
101+
For changes made in `packages/components`, run `pnpm build` again to pickup the changes.
102102

103103
10. After making all the changes, run
104104

105105
```bash
106-
yarn build
106+
pnpm build
107107
```
108108

109109
and
110110

111111
```bash
112-
yarn start
112+
pnpm start
113113
```
114114

115115
to make sure everything works fine in production.
@@ -123,9 +123,13 @@ Flowise support different environment variables to configure your instance. You
123123
| Variable | Description | Type | Default |
124124
| --------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------ | ----------------------------------- |
125125
| PORT | The HTTP port Flowise runs on | Number | 3000 |
126+
| CORS_ORIGINS | The allowed origins for all cross-origin HTTP calls | String | |
127+
| IFRAME_ORIGINS | The allowed origins for iframe src embedding | String | |
126128
| FLOWISE_USERNAME | Username to login | String | |
127129
| FLOWISE_PASSWORD | Password to login | String | |
130+
| FLOWISE_FILE_SIZE_LIMIT | Upload File Size Limit | String | 50mb |
128131
| DEBUG | Print logs from components | Boolean | |
132+
| BLOB_STORAGE_PATH | Location where uploaded files are stored | String | `your-home-dir/.flowise/storage` |
129133
| LOG_PATH | Location where log files are stored | String | `your-path/Flowise/logs` |
130134
| LOG_LEVEL | Different levels of logs | Enum String: `error`, `info`, `verbose`, `debug` | `info` |
131135
| APIKEY_PATH | Location where api keys are saved | String | `your-path/Flowise/packages/server` |
@@ -138,8 +142,11 @@ Flowise support different environment variables to configure your instance. You
138142
| DATABASE_USER | Database username (When DATABASE_TYPE is not sqlite) | String | |
139143
| DATABASE_PASSWORD | Database password (When DATABASE_TYPE is not sqlite) | String | |
140144
| DATABASE_NAME | Database name (When DATABASE_TYPE is not sqlite) | String | |
145+
| DATABASE_SSL_KEY_BASE64 | Database SSL client cert in base64 (takes priority over DATABASE_SSL) | Boolean | false |
146+
| DATABASE_SSL | Database connection overssl (When DATABASE_TYPE is postgre) | Boolean | false |
141147
| SECRETKEY_PATH | Location where encryption key (used to encrypt/decrypt credentials) is saved | String | `your-path/Flowise/packages/server` |
142148
| FLOWISE_SECRETKEY_OVERWRITE | Encryption key to be used instead of the key stored in SECRETKEY_PATH | String |
149+
| DISABLE_FLOWISE_TELEMETRY | Turn off telemetry | Boolean |
143150

144151
You can also specify the env variables when using `npx`. For example:
145152

Dockerfile

+8-17
Original file line numberDiff line numberDiff line change
@@ -12,30 +12,21 @@ RUN apk add --no-cache build-base cairo-dev pango-dev
1212
# Install Chromium
1313
RUN apk add --no-cache chromium
1414

15+
#install PNPM globaly
16+
RUN npm install -g pnpm
17+
1518
ENV PUPPETEER_SKIP_DOWNLOAD=true
1619
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
1720

18-
WORKDIR /usr/src/packages
19-
20-
# Copy root package.json and lockfile
21-
COPY package.json yarn.loc[k] ./
22-
23-
# Copy components package.json
24-
COPY packages/components/package.json ./packages/components/package.json
25-
26-
# Copy ui package.json
27-
COPY packages/ui/package.json ./packages/ui/package.json
28-
29-
# Copy server package.json
30-
COPY packages/server/package.json ./packages/server/package.json
31-
32-
RUN yarn install
21+
WORKDIR /usr/src
3322

3423
# Copy app source
3524
COPY . .
3625

37-
RUN yarn build
26+
RUN pnpm install
27+
28+
RUN pnpm build
3829

3930
EXPOSE 3000
4031

41-
CMD [ "yarn", "start" ]
32+
CMD [ "pnpm", "start" ]

LICENSE.md

-16
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,6 @@
22
Version 2.0, January 2004
33
http://www.apache.org/licenses/
44

5-
Flowise is governed by the Apache License 2.0, with additional terms and conditions outlined below:
6-
7-
Flowise can be used for commercial purposes for "backend-as-a-service" for your applications or as a development platform for enterprises. However, under specific conditions, you must reach out to the project's administrators to secure a commercial license:
8-
9-
a. Multi-tenant SaaS service: Unless you have explicit written authorization from Flowise, you may not utilize the Flowise source code to operate a multi-tenant SaaS service that closely resembles the Flowise cloud-based services.
10-
b. Logo and copyright information: While using Flowise in commercial application, you are prohibited from removing or altering the LOGO or copyright information displayed in the Flowise console and UI.
11-
12-
For inquiries regarding licensing matters, please contact hello@flowiseai.com via email.
13-
14-
Contributors are required to consent to the following terms related to their contributed code:
15-
16-
a. The project maintainers have the authority to modify the open-source agreement to be more stringent or lenient.
17-
b. Contributed code can be used for commercial purposes, including Flowise's cloud-based services.
18-
19-
All other rights and restrictions are in accordance with the Apache License 2.0.
20-
215
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
226

237
1. Definitions.

0 commit comments

Comments
 (0)