Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
449 commits
Select commit Hold shift + click to select a range
2dfbb48
build(deps): bump tencentcloud-sdk-python-asr from 3.1.130 to 3.1.137
dependabot[bot] Jul 30, 2026
817543a
build(deps): bump cohere from 7.0.5 to 7.0.8
dependabot[bot] Jul 30, 2026
3bf666d
build(deps): bump pytz from 2026.2 to 2026.3.post1
dependabot[bot] Jul 30, 2026
ae7b990
build(deps): bump langchain-openai from 1.4.0 to 1.4.1
dependabot[bot] Jul 30, 2026
bc19bcd
build(deps): bump dashscope from 1.26.3 to 1.26.4
dependabot[bot] Jul 30, 2026
a6cae78
build(deps): update langchain and related dependencies
liuruibin Jul 30, 2026
9dce11f
build(deps): bump deepagents to 0.7.0 and ruff to 0.16.0
liuruibin Jul 30, 2026
9f63618
build(deps): downgrade ruff from 0.16.0 to 0.15.21
liuruibin Jul 30, 2026
237866e
feat: search
wangdan-fit2cloud Jul 30, 2026
8323676
fix: update regex for <form_rander> and <think> tags to use non-greed…
liuruibin Jul 30, 2026
272a811
feat: add user group resource permission management and related SQL q…
wxg0103 Jul 31, 2026
06a124f
feat: add user group authorization status management and related tran…
wxg0103 Jul 31, 2026
3cc52cb
feat: enhance user group management with user count and improved retr…
wxg0103 Jul 31, 2026
50abf2a
feat: login layout
wangdan-fit2cloud Jul 31, 2026
d5213d2
feat: Chat user API key
peslyn Aug 3, 2026
8c37e5c
feat: add portal model, API, and configuration management
wxg0103 Aug 3, 2026
7e943f8
fix: add authorization handling to file deletion endpoint
wxg0103 Jul 28, 2026
6658b8d
feat: add knowledge_ids field to ApplicationVersion and populate from…
wxg0103 Jul 29, 2026
e723f6c
fix: update application handling in upload_application_file method ac…
wxg0103 Jul 30, 2026
b6fea37
chore: update samesite attribute from 'Lax' to 'None' in response set…
wxg0103 Jul 30, 2026
2d6968f
fix: update secure cookie handling to use request scheme in chat and …
wxg0103 Jul 30, 2026
97a188d
fix: refactor login.py for improved readability and logging enhancements
wxg0103 Jul 31, 2026
9723c0f
fix: add SECURE_PROXY_SSL_HEADER for improved SSL handling
wxg0103 Jul 31, 2026
16432f4
fix: remove unnecessary logging in post method of LoginView for clean…
wxg0103 Jul 31, 2026
9e6875a
fix: add FILE_AUTH configuration for enhanced file access control
wxg0103 Jul 31, 2026
2ba1f72
fix: correct OSS route registration
ZH007-s Jul 27, 2026
da8ae36
fix: update FILE_AUTH configuration to use string value for consistency
wxg0103 Jul 31, 2026
56dd419
Update security contact information and reporting method
liqiang-fit2cloud Aug 2, 2026
6666998
fix: enhance PDF text extraction with position-aware handling and TOC…
liuruibin Aug 3, 2026
0263831
fix: improve cookie handling in chat and login views for HTTPS support
wxg0103 Aug 3, 2026
69e624f
fix: add method to discard ambiguous destination tops in PDF split ha…
liuruibin Aug 3, 2026
10e7cea
feat: implement portal authentication and application management endp…
wxg0103 Aug 3, 2026
5322772
feat: Chat User API Key locales
peslyn Aug 3, 2026
b70dcbf
fix: User Group Serializers
peslyn Aug 3, 2026
39bb55e
fix: optimize user group query with subquery and coalesce for accurat…
wxg0103 Aug 3, 2026
632c898
feat: enhance portal model with UUID primary key and improve user gro…
wxg0103 Aug 4, 2026
8eb1e00
fix: add knowledge_ids field to applicationversion and workflow_conte…
liuruibin Aug 4, 2026
dfca6d8
feat: add S3 configuration parameters to the Config class
liuruibin Aug 4, 2026
38d7f24
feat: add AiBot support with bot_id validation and initialization in …
wxg0103 Aug 4, 2026
89b154f
feat: login
wangdan-fit2cloud Aug 4, 2026
1cc7e4e
feat: login
wangdan-fit2cloud Aug 4, 2026
2909f91
feat: login
wangdan-fit2cloud Aug 4, 2026
2a0f805
feat: enhance AiBot with file and video message handling and improve …
wxg0103 Aug 5, 2026
e560154
chore: update chat query to include chat_user_id in application_chat_…
liuruibin Aug 4, 2026
e21085d
Remove Star History section from README
maninhill Aug 4, 2026
1ca849c
chore: remove email field from user dictionary in user.py
wxg0103 Aug 4, 2026
de7d6ff
chore: update user role filtering in user.py and update community sub…
wxg0103 Aug 4, 2026
1cbc861
fix: update get_user_list method to include user_id for workspace val…
wxg0103 Aug 5, 2026
3fc25a2
feat: workspace
wangdan-fit2cloud Aug 5, 2026
a46c4fd
feat: users
wangdan-fit2cloud Aug 5, 2026
a8ec6a8
feat: System permission modification (#6593)
shaohuzhang1 Aug 5, 2026
abcebb1
fix: The program cannot start (#6595)
shaohuzhang1 Aug 6, 2026
b906bae
fix: Package guide error (#6596)
shaohuzhang1 Aug 6, 2026
127b3ad
feat: add ChatUserTokenQuota model for managing user token quotas and…
wxg0103 Aug 6, 2026
725d9c7
feat: The permission scope supports multiple (#6598)
shaohuzhang1 Aug 6, 2026
6a30ab0
feat: login
wangdan-fit2cloud Aug 6, 2026
825aeda
fix: update is_ee flag to false in permission model
shaohuzhang1 Aug 6, 2026
c27e691
fix: Authenticator error (#6601)
shaohuzhang1 Aug 6, 2026
760ba50
fix: update permission model to use dynamic is_ee flag for category c…
wxg0103 Aug 6, 2026
4c878cc
chore: add .ai directory to .gitignore and restore copilot-instructio…
liuruibin Aug 6, 2026
9e03e3c
feat: add quota setting translations and permissions for chat user ma…
wxg0103 Aug 6, 2026
db62cc3
feat: add quota setting permission for workspace chat user group
wxg0103 Aug 6, 2026
5931f2f
fix: remove period_start field from ChatUserTokenQuota model and enfo…
wxg0103 Aug 6, 2026
5a3c501
feat: login
wangdan-fit2cloud Aug 6, 2026
7fd4428
feat: login
wangdan-fit2cloud Aug 6, 2026
4b4c719
feat: update localization for chat user quota settings and related me…
wxg0103 Aug 6, 2026
eed1872
feat: Scope of Authority Designation
peslyn Aug 6, 2026
5d0da48
feat: enhance permissions for chat user and user group management wit…
wxg0103 Aug 6, 2026
c78fe17
feat: user
wangdan-fit2cloud Aug 6, 2026
1999fdc
feat: users
wangdan-fit2cloud Aug 6, 2026
2b9ef0e
chore: update dependencies in pyproject.toml to latest versions
liuruibin Aug 6, 2026
59ec85d
feat: add new resource permission constants for application, knowledg…
wxg0103 Aug 7, 2026
9e7b9c1
style: format code for consistency and readability in user.py
wxg0103 Aug 7, 2026
9724c78
feat: remove django-celery-beat dependency and related code
liuruibin Aug 7, 2026
3f8a3fd
chore: update warning handling for pydub, jieba, and celery dependencies
liuruibin Aug 7, 2026
6bba0fb
chore: update django dependency to version 6.1.0 in pyproject.toml
liuruibin Aug 7, 2026
13cf111
chore: update deepagents, sentence-transformers, boto3, tencentcloud-…
liuruibin Aug 7, 2026
c8338a1
chore: downgrade django dependency from version 6.1.0 to 6.0.7 in pyp…
liuruibin Aug 7, 2026
7b6ee7a
feat: table
wangdan-fit2cloud Aug 7, 2026
110a3cd
feat: add token quota management for chat users with localization upd…
wxg0103 Aug 7, 2026
18eb826
feat: Dialogue user authentication (#6615)
shaohuzhang1 Aug 7, 2026
ec82da4
feat: modify role list permissions
peslyn Aug 7, 2026
4e85697
feat: Dialogue profile using dialogue authenticator (#6617)
shaohuzhang1 Aug 7, 2026
ee0c488
fix: Dialogue user authentication data value error (#6618)
shaohuzhang1 Aug 7, 2026
30895e7
feat: refactor the open API
hexiaonan-800 Aug 7, 2026
116e2fd
fix: Dialogue user authentication based on user filtering permissions…
shaohuzhang1 Aug 7, 2026
a66450c
feat: user
wangdan-fit2cloud Aug 7, 2026
d0471d3
build: update pre-commit configuration to include ruff format and sta…
liuruibin Aug 7, 2026
3742445
feat: user
wangdan-fit2cloud Aug 8, 2026
b4540b2
feat: workspace
wangdan-fit2cloud Aug 8, 2026
61b5697
feat: types
wangdan-fit2cloud Aug 9, 2026
72f0633
feat: workspace
wangdan-fit2cloud Aug 9, 2026
e838c9a
feat: workspace
wangdan-fit2cloud Aug 9, 2026
790a77e
feat: add batch remove members functionality to workspace API
wxg0103 Aug 10, 2026
4b04c73
feat: chat group
wangdan-fit2cloud Aug 10, 2026
e87d4f7
feat: user group
wangdan-fit2cloud Aug 10, 2026
0cdd17c
feat: dialog
wangdan-fit2cloud Aug 10, 2026
8413173
feat: update password
wangdan-fit2cloud Aug 10, 2026
7f3d2cc
feat: set role
wangdan-fit2cloud Aug 10, 2026
f02a069
feat: update chat user token quota model and migration for user_id fi…
wxg0103 Aug 10, 2026
e1c94ed
feat: set role
wangdan-fit2cloud Aug 10, 2026
01f9ed4
fix: style error
wangdan-fit2cloud Aug 10, 2026
afa1515
feat: enhance chat file handling in MCPToolHandler and related methods
liuruibin Aug 10, 2026
ced1a76
chore: update dependencies to latest versions
liuruibin Aug 10, 2026
eada4ec
feat: api
wangdan-fit2cloud Aug 10, 2026
b7904c9
feat: update user group management with workspace-specific APIs and i…
wxg0103 Aug 10, 2026
036e5af
feat: Compatible with v2 dialogue interface (#6632)
shaohuzhang1 Aug 10, 2026
ad9d75d
feat: 对话用户
wangdan-fit2cloud Aug 10, 2026
a6b435e
feat: chat user
wangdan-fit2cloud Aug 10, 2026
2192e0e
feat: api
wangdan-fit2cloud Aug 11, 2026
d1e814e
feat: add user group management to user forms and update user list view
wxg0103 Aug 11, 2026
97f1631
feat: user group
wangdan-fit2cloud Aug 11, 2026
85421b9
feat: auth profile
hexiaonan-800 Aug 11, 2026
851f84a
feat: add endpoint for retrieving portal historical conversations wit…
wxg0103 Aug 11, 2026
9cdc09d
ci: add Python format check workflow using pre-commit
liuruibin Aug 11, 2026
fe1bc10
refactor: clean up code formatting and remove unnecessary lines in po…
wxg0103 Aug 11, 2026
bb4fd9a
feat: user group
wangdan-fit2cloud Aug 11, 2026
81df1a9
chore: update actions/checkout to version 6 in python-format-check.yml
liuruibin Aug 11, 2026
b5b41d1
feat: add batch removal functionality for workspace members and handl…
wxg0103 Aug 11, 2026
2a8fde1
feat: Modify local chat user login.
peslyn Aug 11, 2026
a1ab3e1
refactor: improve login logic and enhance error handling in login.py
wxg0103 Aug 11, 2026
882ef9a
docs: update CONTRIBUTING.md to include code formatting guidelines wi…
liuruibin Aug 11, 2026
e40a861
ci: adjust trigger for Python format check workflow to only run on pu…
liuruibin Aug 11, 2026
a177858
feat: layout
wangdan-fit2cloud Aug 11, 2026
7f55a9d
ci: adjust trigger for Python format check workflow to only run on pu…
liuruibin Aug 11, 2026
38e922f
refactor: improve login logic and enhance error handling in login.py
wxg0103 Aug 11, 2026
b17ad76
refactor: update user instance serialization in user_group.py for imp…
wxg0103 Aug 11, 2026
d95ef2b
refactor: update user instance serialization in user_group.py for imp…
wxg0103 Aug 11, 2026
da6e3e3
fix: API doc error
hexiaonan-800 Aug 11, 2026
c9e4a07
feat: email setting
wangdan-fit2cloud Aug 11, 2026
6865c50
style: format
wangdan-fit2cloud Aug 12, 2026
bb5c0e4
feat: login setting
wangdan-fit2cloud Aug 12, 2026
7ddfcf1
feat: login setting
wangdan-fit2cloud Aug 12, 2026
d33d3d6
feat: login settings
wangdan-fit2cloud Aug 12, 2026
7fa15f2
chore: update dependencies in pyproject.toml for improved compatibility
liuruibin Aug 13, 2026
a2fddfe
fix: get user_id from request.user in share_chat
peslyn Aug 13, 2026
39c21b5
feat: add application anonymous auth
hexiaonan-800 Aug 13, 2026
9aa3c92
fix: use direct ChatUser import instead of DatabaseModelManage
peslyn Aug 13, 2026
295ec5a
fix: import error for chat user
peslyn Aug 13, 2026
14588db
feat: Front end support system permissions (#6674)
shaohuzhang1 Aug 13, 2026
21703a6
fix: deleted chat can be modified
hexiaonan-800 Aug 13, 2026
9415b43
feat: role
wangdan-fit2cloud Aug 13, 2026
ba1ac60
feat: update document resource type handling across models and serial…
liuruibin Aug 13, 2026
c0d7a84
fix: remove unnecessary stream_usage flag from streaming methods
liuruibin Aug 14, 2026
1a5e485
feat: chat portal
hexiaonan-800 Aug 14, 2026
ad286c5
feat: role
wangdan-fit2cloud Aug 14, 2026
f3a18f9
refactor: update user instance serialization in user_group.py for imp…
wxg0103 Aug 14, 2026
8ce0437
feat: form list
wangdan-fit2cloud Aug 14, 2026
83e018f
feat: model part
wangdan-fit2cloud Aug 15, 2026
03966be
refactor: enhance user group resource permission handling in applicat…
wxg0103 Aug 17, 2026
9b3a47f
refactor: enhance user group resource permission handling in SQL quer…
wxg0103 Aug 17, 2026
2c1495f
feat: folder permissions
hexiaonan-800 Aug 17, 2026
1f38361
feat: model list
wangdan-fit2cloud Aug 17, 2026
46b9639
feat: homepage serializers use new permission system
hexiaonan-800 Aug 18, 2026
11875c4
fix: homepage serializers bug
hexiaonan-800 Aug 18, 2026
c9fc1e8
refactor: improve chat log cleaning process and orphan chat deletion …
wxg0103 Aug 18, 2026
8b12953
feat: The workflow supports the get_details function (#6709)
shaohuzhang1 Aug 18, 2026
021685d
feat: tree
wangdan-fit2cloud Aug 18, 2026
4a17152
feat: workflow
wangdan-fit2cloud Aug 18, 2026
fd9a106
refactor: streamline application authorization logic and remove unuse…
wxg0103 Aug 19, 2026
4f95022
feat: system homepage
hexiaonan-800 Aug 19, 2026
6d5ef63
refactor: optimize HumanMessage content generation by simplifying pro…
wxg0103 Aug 19, 2026
f21ebe1
fix: system homepage permission error
hexiaonan-800 Aug 19, 2026
80f121d
feat: workflow
wangdan-fit2cloud Aug 19, 2026
461f147
feat: Add nodes to the workflow canvas (#6717)
shaohuzhang1 Aug 19, 2026
2542754
fix: Workflow nodes cannot adapt to height based on content (#6718)
shaohuzhang1 Aug 19, 2026
571b648
feat: folder
wangdan-fit2cloud Aug 19, 2026
8bbf966
fix: delete folder
wangdan-fit2cloud Aug 19, 2026
0c74c7c
refactor: add is_portal field to Application model and update related…
wxg0103 Aug 20, 2026
b872f28
feat: refactor knowledge lark serializers and update related API calls
wxg0103 Aug 20, 2026
8b4f00c
feat: folder
wangdan-fit2cloud Aug 20, 2026
ee4d086
fix: Permission verification error (#6726)
shaohuzhang1 Aug 20, 2026
184f64b
fix: Permission verification error (#6727)
shaohuzhang1 Aug 20, 2026
395e5e2
feat: update sync types endpoint and refactor related API paths
wxg0103 Aug 20, 2026
907093c
fix: Canvas node rendering (#6730)
shaohuzhang1 Aug 20, 2026
b58a6db
feat: add enable_knowledge_base_api field to Application model and up…
wxg0103 Aug 20, 2026
794ba91
feat: enhance GenerationVideoModel with API version detection and ses…
wxg0103 Aug 20, 2026
02e896f
feat: folder
wangdan-fit2cloud Aug 20, 2026
33d83c6
chore: create AGENTS.md for shared repository instructions and update…
liuruibin Aug 20, 2026
c605a9e
feat: tool
wangdan-fit2cloud Aug 21, 2026
79ef0ee
perf: format
wangdan-fit2cloud Aug 21, 2026
e402f00
feat: application view
wangdan-fit2cloud Aug 22, 2026
f8ae5e8
feat: folder
wangdan-fit2cloud Aug 22, 2026
8f5a07e
feat: tool form
wangdan-fit2cloud Aug 23, 2026
5c10ab5
feat: add model
wangdan-fit2cloud Aug 23, 2026
333c0ac
refactor: update ttv.py to use ClassVar for class-level constants
wxg0103 Aug 24, 2026
5dbe687
fix: Fix Canvas Console Warning and AI Node Model Selection Component…
shaohuzhang1 Aug 24, 2026
7a9f472
fix: migration file (#6760)
shaohuzhang1 Aug 24, 2026
253d823
fix: Workplace administrator privileges cannot be used properly (#6761)
shaohuzhang1 Aug 24, 2026
a6dc906
fix: codemirror-editor
wangdan-fit2cloud Aug 24, 2026
a3b55f6
feat: resource authorization
wangdan-fit2cloud Aug 24, 2026
d976510
feat: resource_permission
wangdan-fit2cloud Aug 25, 2026
68d4b6f
fix: user and user group resource permission
hexiaonan-800 Aug 25, 2026
28bf0a3
feat: quota setting
wangdan-fit2cloud Aug 25, 2026
547772a
fix: user group resource permission error
hexiaonan-800 Aug 25, 2026
9cac6c4
feat: add Tencent Tokenhub ASR sync_transcribe credential and enhance…
wxg0103 Aug 25, 2026
afb98d2
feat: dynamics-form (#6774)
shaohuzhang1 Aug 25, 2026
cfd7260
feat: operate log
wangdan-fit2cloud Aug 25, 2026
14e7295
feat: add token quota management for chat users with API integration
wxg0103 Aug 25, 2026
0f0d034
fix: Optimize the execution logic of dynamic forms (#6778)
shaohuzhang1 Aug 26, 2026
e17a302
feat: theme
wangdan-fit2cloud Aug 26, 2026
265fb88
feat: add quota type and period type enums for chat user token manage…
wxg0103 Aug 26, 2026
05afb29
fix: ensure non-null assertion for user IDs in quota settings dialog
wxg0103 Aug 26, 2026
902548c
feat: application
wangdan-fit2cloud Aug 26, 2026
e4261cb
feat: Format
wangdan-fit2cloud Aug 26, 2026
5a7562f
fix: error
wangdan-fit2cloud Aug 26, 2026
e6df6c0
feat: dynamics-form
wangdan-fit2cloud Aug 27, 2026
0640cb9
fix: Dynamic Form Model Builder Interface Call Error (#6787)
shaohuzhang1 Aug 27, 2026
638c204
refactor: improve user group display in UserListView with fallback fo…
wxg0103 Aug 27, 2026
0d3bb2a
feat: dynamics-form
wangdan-fit2cloud Aug 27, 2026
5d6c606
feat: update TokenHub API endpoints and enhance video generation model
wxg0103 Aug 28, 2026
d09df94
feat: model
wangdan-fit2cloud Aug 28, 2026
2faaddd
feat: tool
wangdan-fit2cloud Aug 29, 2026
401acbd
feat: tool
wangdan-fit2cloud Aug 29, 2026
15459f8
feat: tool and format
wangdan-fit2cloud Aug 30, 2026
6ab574b
feat: application and theme
wangdan-fit2cloud Aug 30, 2026
a96b392
feat: theme
wangdan-fit2cloud Aug 31, 2026
54ffbe5
feat: Add a debug dialog box (#6820)
shaohuzhang1 Aug 31, 2026
39e82da
refactor: update API handling for MiniMax H3 model and improve parame…
wxg0103 Aug 31, 2026
3b1b028
feat: applicaiton detail
wangdan-fit2cloud Aug 31, 2026
3e13f81
build(deps): bump volcengine-python-sdk from 5.0.44 to 5.0.45
dependabot[bot] Aug 20, 2026
0c2d7b9
build(deps): bump anthropic from 0.121.0 to 0.122.0
dependabot[bot] Aug 20, 2026
abe9025
build(deps): bump xinference-client from 3.1.0 to 3.2.0
dependabot[bot] Aug 20, 2026
a8a0764
build(deps): bump tencentcloud-sdk-python-common from 3.1.155 to 3.1.157
dependabot[bot] Aug 20, 2026
c0a6193
chore: update boto3 dependency to version 1.43.72
liuruibin Sep 1, 2026
2c56367
chore: update boto3 dependency to version 1.43.83
liuruibin Sep 1, 2026
036900b
fix: intent node write context
wangdan-fit2cloud Sep 1, 2026
42bf237
feat: create application
wangdan-fit2cloud Sep 1, 2026
86162b8
feat: intent node
hexiaonan-800 Sep 1, 2026
4a710d2
refactor: remove TencentCloudModelProvider from model provider constants
wxg0103 Sep 1, 2026
c8b79d9
feat: application
wangdan-fit2cloud Sep 1, 2026
6801f84
feat: condition node
peslyn Sep 1, 2026
98f8ec7
fix: global variable reference failed
hexiaonan-800 Sep 1, 2026
3a55c3e
feat: enhance user import functionality with file upload support and …
wxg0103 Sep 1, 2026
e2ff5aa
feat: text to speech node
hexiaonan-800 Sep 1, 2026
cbf9d82
refactor: update Tencent icon SVG and rename provider to Tencent Cloud
wxg0103 Sep 1, 2026
e33a1fb
feat: workflow
wangdan-fit2cloud Sep 1, 2026
e72a471
feat: question node
hexiaonan-800 Sep 2, 2026
d07ccdb
fix: refactor sheet row handling and add utility for iterating rows
liuruibin Aug 12, 2026
30b0f77
feat: extend get_app_mcp_config to include form_data and add placehol…
liuruibin Sep 1, 2026
0d6b31e
fix: enhance form data retrieval and decoding in base_chat_node.py an…
liuruibin Sep 1, 2026
8d6bd1e
fix: collapse repeated full-text negations
ump45nose Aug 11, 2026
c03c97a
fix: show tool execution source
Iams4kura Aug 12, 2026
77861d8
security: fix dlopen bypass.
liqiang-fit2cloud Aug 18, 2026
dbb397e
deps: upgrade postgres from 17.10 to 17.11.
liqiang-fit2cloud Aug 18, 2026
749dbef
security: ban fexecve.
liqiang-fit2cloud Aug 24, 2026
077e988
Update security policy and reporting instructions
liqiang-fit2cloud Aug 26, 2026
ffd5914
fix: normalize vLLM Whisper API base URL (#6791)
ump45nose Aug 28, 2026
e2f39ed
fix: strip embedded markup before text conversion (#6751)
ump45nose Aug 28, 2026
1a3eec3
refactor: improve code formatting and enhance XLSX validation logic
wxg0103 Sep 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 0 additions & 9 deletions .github/dependabot.yml

This file was deleted.

16 changes: 8 additions & 8 deletions .github/workflows/build-and-push-python-pg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ on:
workflow_dispatch:
inputs:
architecture:
description: 'Architecture'
description: "Architecture"
required: true
default: 'linux/amd64'
default: "linux/amd64"
type: choice
options:
- linux/amd64
Expand All @@ -25,15 +25,15 @@ jobs:
run: |
DOCKER_IMAGE=ghcr.io/1panel-dev/maxkb-base
DOCKER_PLATFORMS=${{ github.event.inputs.architecture }}
TAG_NAME=python3.11-pg17.10-20260525
TAG_NAME=python3.13-pg17.11-20260902
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME}"
echo ::set-output name=docker_image::${DOCKER_IMAGE}
echo ::set-output name=version::${TAG_NAME}
echo ::set-output name=buildx_args::--platform ${DOCKER_PLATFORMS} --no-cache \
echo "docker_image=${DOCKER_IMAGE}" >> $GITHUB_OUTPUT
echo "version=${TAG_NAME}" >> $GITHUB_OUTPUT
echo "buildx_args=--platform ${DOCKER_PLATFORMS} --no-cache \
--build-arg VERSION=${TAG_NAME} \
--build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
--build-arg VCS_REF=${GITHUB_SHA::8} \
${DOCKER_IMAGE_TAGS} .
${DOCKER_IMAGE_TAGS} ." >> $GITHUB_OUTPUT
- name: Set up QEMU
uses: docker/setup-qemu-action@v4
with:
Expand All @@ -48,4 +48,4 @@ jobs:
password: ${{ secrets.GH_TOKEN }}
- name: Docker Buildx (build-and-push)
run: |
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }} -f installer/Dockerfile-base
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }} -f installer/Dockerfile-base
18 changes: 9 additions & 9 deletions .github/workflows/build-and-push-vector-model.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ on:
workflow_dispatch:
inputs:
dockerImageTag:
description: 'Docker Image Tag'
default: 'v2.0.3'
description: "Docker Image Tag"
default: "v2.0.3"
required: true
architecture:
description: 'Architecture'
description: "Architecture"
required: true
default: 'linux/amd64'
default: "linux/amd64"
type: choice
options:
- linux/amd64
Expand All @@ -32,13 +32,13 @@ jobs:
DOCKER_PLATFORMS=${{ github.event.inputs.architecture }}
TAG_NAME=${{ github.event.inputs.dockerImageTag }}
DOCKER_IMAGE_TAGS="--tag ${DOCKER_IMAGE}:${TAG_NAME} --tag ${DOCKER_IMAGE}:latest"
echo ::set-output name=docker_image::${DOCKER_IMAGE}
echo ::set-output name=version::${TAG_NAME}
echo ::set-output name=buildx_args::--platform ${DOCKER_PLATFORMS} --no-cache \
echo "docker_image=${DOCKER_IMAGE}" >> $GITHUB_OUTPUT
echo "version=${TAG_NAME}" >> $GITHUB_OUTPUT
echo "buildx_args=--platform ${DOCKER_PLATFORMS} --no-cache \
--build-arg VERSION=${TAG_NAME} \
--build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
--build-arg VCS_REF=${GITHUB_SHA::8} \
${DOCKER_IMAGE_TAGS} .
${DOCKER_IMAGE_TAGS} ." >> $GITHUB_OUTPUT
- name: Set up QEMU
uses: docker/setup-qemu-action@v4
with:
Expand All @@ -53,4 +53,4 @@ jobs:
password: ${{ secrets.GH_TOKEN }}
- name: Docker Buildx (build-and-push)
run: |
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }} -f installer/Dockerfile-vector-model
docker buildx build --output "type=image,push=true" ${{ steps.prepare.outputs.buildx_args }} -f installer/Dockerfile-vector-model
2 changes: 1 addition & 1 deletion .github/workflows/build-and-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
inputs:
dockerImageTag:
description: 'Image Tag'
default: 'v2.10.0-dev'
default: 'v3.0.0-dev'
required: true
dockerImageTagWithLatest:
description: '是否发布latest tag(正式发版时选择,测试版本切勿选择)'
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/python-format-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Python Format Check

on:
pull_request:
types: [opened, reopened]

jobs:
pre-commit:
name: Ruff format changed files
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Install pre-commit
run: python -m pip install pre-commit==4.6.1

- name: Check changed files
env:
BASE_SHA: ${{ github.event_name == 'pull_request' && github.event.pull_request.base.sha || github.event.before }}
HEAD_SHA: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}
DEFAULT_BRANCH: ${{ github.event.repository.default_branch }}
run: |
if ! git cat-file -e "${BASE_SHA}^{commit}" 2>/dev/null; then
if git show-ref --verify --quiet "refs/remotes/origin/${DEFAULT_BRANCH}"; then
BASE_SHA=$(git merge-base "$HEAD_SHA" "origin/${DEFAULT_BRANCH}")
elif git cat-file -e "${HEAD_SHA}^" 2>/dev/null; then
BASE_SHA=$(git rev-parse "${HEAD_SHA}^")
else
pre-commit run --all-files
git diff --cached --exit-code
exit 0
fi
fi

pre-commit run --from-ref "$BASE_SHA" --to-ref "$HEAD_SHA"

# The local hook formats and stages files. A clean index proves that
# every changed Python file was already formatted before CI ran.
git diff --cached --exit-code
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

# VS Code
.vscode
.claude/
.codex/
*.project
*.factorypath

Expand Down Expand Up @@ -190,4 +192,5 @@ apps/models_provider/impl/tencent_model_provider/model/stt.py
tmp/
config.yml
.SANDBOX_BANNED_HOSTS
copilot-instructions.md
copilot-instructions.md
.ai/
8 changes: 8 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.21
hooks:
- id: ruff-format
name: ruff format and stage
entry: bash -c 'ruff format "$@" && git add -- "$@"' --
require_serial: true
123 changes: 123 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
# MaxKB-v3

MaxKB (Max Knowledge Brain) is an open-source platform for building enterprise AI agents with RAG pipelines, agentic workflows, and MCP tool-use capabilities.

## Agent Instructions

- This file is the shared source of repository instructions for all coding agents.
- For changes under `ui/`, read and follow `ui/AGENTS.md` before editing or reviewing frontend code.
- Keep tool-specific entry files such as `CLAUDE.md` small; shared project rules belong here or in the applicable nested `AGENTS.md`.

## Tech Stack

**Backend:** Python 3.13, Django 6.0, Django REST Framework, LangChain 1.3, LangGraph 1.2, Celery 5.6, uv (package manager)

**Frontend:** Vue 3.5, TypeScript, Vite 8, Element Plus, Pinia, Vue Router

**Infrastructure:** PostgreSQL 17.10 + pgvector, Redis 7

## Project Structure

```
apps/ # Django backend
application/ # AI agents & applications
knowledge/ # Knowledge base & document management
chat/ # Chat functionality & MCP integration
models_provider/ # LLM provider integrations (OpenAI, Anthropic, etc.)
common/ # Shared utilities, auth, caching, chunking
maxkb/ # Django settings, URL routing, config
ops/ # Celery task queue configuration
users/ # User management
tools/ # Tool/function management
ui/ # Vue.js frontend
src/
api/ # API client services
views/ # Page views
components/ # Vue components
workflow/ # Workflow UI
installer/ # Docker build scripts and startup scripts
main.py # Application entry point
```

## Development Setup

### Backend

```bash
# Install dependencies (requires Python 3.13)
python -m uv pip install -r pyproject.toml

# Run database migrations
cd apps && python manage.py migrate

# Start dev server
python main.py dev
# or: cd apps && python manage.py runserver 0.0.0.0:8080
```

### Frontend

```bash
cd ui
npm install
npm run dev # dev server with hot reload
npm run build # production build
npm run type-check # TypeScript check
npm run lint # ESLint
npm run format # Prettier
```

### Service Management

```bash
python main.py start all -d # start all services (web + celery)
python main.py start web -d # web only
python main.py start task -d # celery worker
python main.py start local_model -d # local model service
```

### Docker

```bash
docker build -f installer/Dockerfile -t maxkb:latest .
```

## Configuration

Key environment variables (see `.env`):

| Variable | Description |
| ------------------------------------------------------- | ---------------------- |
| `MAXKB_DB_HOST` / `MAXKB_DB_PORT` | PostgreSQL connection |
| `MAXKB_DB_NAME` / `MAXKB_DB_USER` / `MAXKB_DB_PASSWORD` | PostgreSQL credentials |
| `MAXKB_REDIS_HOST` / `MAXKB_REDIS_PORT` | Redis connection |

Settings files:

- `apps/maxkb/conf.py` — main config manager (reads env vars)
- `apps/maxkb/settings/base/web.py` — Django settings
- `apps/maxkb/settings/lib.py` — Celery/Redis settings

## Testing

```bash
cd apps && python manage.py test
```

## Code Style

- Python: Ruff linter, line length 120 (`pyproject.toml`)
- TypeScript/Vue: ESLint + Prettier (`ui/`)
- Migrations in `apps/*/migrations/`

## Key Concepts

- **Knowledge Base**: Documents are chunked, embedded, and stored in PostgreSQL with pgvector for semantic search.
- **Applications/Agents**: Built on top of knowledge bases; support workflow-based and RAG-based configurations.
- **Models Provider**: Abstraction layer in `apps/models_provider/` supporting 10+ LLM providers via LangChain.
- **MCP**: Model Context Protocol tools integrated via `langchain-mcp-adapters` in `apps/chat/mcp/`.
- **Task Queue**: Heavy document processing runs async via Celery workers.

## Internationalization

Translations in `apps/locales/` (zh_CN, en_US, zh_Hant) and `ui/src/locales/`.
3 changes: 3 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@AGENTS.md

<!-- Shared repository instructions live in AGENTS.md. -->
14 changes: 13 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,18 @@ This [development guideline](https://github.com/1Panel-dev/MaxKB/wiki/3-%E5%BC%8

Note: If you split your pull request to small changes, please make sure any of the changes goes to master will not break anything. Otherwise, it can not be merged until this feature complete.

## Code formatting

This project uses [pre-commit](https://pre-commit.com/) and Ruff to format Python code. After cloning the repository and setting up the development environment, install the Git hook once:

```bash
uv sync --group dev
uv run pre-commit install --install-hooks
```


The hook runs automatically on each `git commit` and stages files changed by the formatter. The same check also runs in CI for every pull request, so all formatting changes must be committed before the pull request can be merged.

## Report issues
It is a great way to contribute by reporting an issue. Well-written and complete bug reports are always welcome! Please open an issue and follow the template to fill in required information.

Expand All @@ -27,4 +39,4 @@ When reporting issues, always include:
* Snapshots or log files if needed

Because the issues are open to the public, when submitting files, be sure to remove any sensitive information, e.g. user name, password, IP address, and company name. You can
replace those parts with "REDACTED" or other strings like "****".
replace those parts with "REDACTED" or other strings like "****".
4 changes: 0 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,6 @@ Access MaxKB web interface at `http://your_server_ip:8080` with default admin cr
- LLM Framework:[LangChain](https://www.langchain.com/)
- Database:[PostgreSQL + pgvector](https://www.postgresql.org/)

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=1Panel-dev/MaxKB&type=Date)](https://star-history.com/#1Panel-dev/MaxKB&Date)

## License

Licensed under The GNU General Public License version 3 (GPLv3) (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Expand Down
2 changes: 1 addition & 1 deletion README_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<a href="https://trendshift.io/repositories/9113" target="_blank"><img src="https://trendshift.io/api/badge/repositories/9113" alt="1Panel-dev%2FMaxKB | Trendshift" style="width: 250px; height: auto;" /></a>
</p>
<p align="center">
<a href="README_EN.md"><img src="https://img.shields.io/badge/English_README-blue" alt="English README"></a>
<a href="README.md"><img src="https://img.shields.io/badge/English_README-blue" alt="English README"></a>
<a href="https://www.gnu.org/licenses/gpl-3.0.html#license-text"><img src="https://img.shields.io/github/license/1Panel-dev/maxkb?color=%231890FF" alt="License: GPL v3"></a>
<a href="https://github.com/1Panel-dev/maxkb/releases/latest"><img src="https://img.shields.io/github/v/release/1Panel-dev/maxkb" alt="Latest release"></a>
<a href="https://github.com/1Panel-dev/maxkb"><img src="https://img.shields.io/github/stars/1Panel-dev/maxkb?style=flat-square" alt="Stars"></a>
Expand Down
12 changes: 5 additions & 7 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,15 @@
# 安全说明

如果您发现安全问题,请直接联系我们:
如果您发现安全问题,请[提交给我们](https://github.com/1Panel-dev/MaxKB/security/advisories/new)。

- support@fit2cloud.com
- 400-052-0755
谢绝只有静态代码分析,未经完整PoC验证的安全建议。

感谢您的支持!

# Security Policy

All security bugs should be reported to the contact as below:
Any security issue please [submit a vulnerability report](https://github.com/1Panel-dev/MaxKB/security/advisories/new).

- support@fit2cloud.com
- 400-052-0755
We do not accept security recommendations based solely on static code analysis without complete PoC validation.

Thanks for your support!
Thanks for your support!
Original file line number Diff line number Diff line change
Expand Up @@ -384,10 +384,11 @@ def _handle_mcp_request(
if tool is None or tool.is_active is False:
continue
executor = ToolExecutor()
init_params_default_value = {i["field"]: i.get('default_value') for i in tool.init_field_list}
if tool.init_params is not None:
tool_init_params = json.loads(rsa_long_decrypt(tool.init_params))
tool_init_params = init_params_default_value | json.loads(rsa_long_decrypt(tool.init_params))
else:
tool_init_params = {i["field"]: i.get("default_value") for i in tool.init_field_list}
tool_init_params = init_params_default_value
tool_config = executor.get_tool_mcp_config(tool, tool_init_params)

mcp_servers_config[str(tool.id)] = tool_config
Expand Down
Loading
Loading