Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
6765940
✨Feat: Add AIDP search tool https://github.com/ModelEngine-Group/nexe…
DongJiBao2001 Jun 18, 2026
20af495
Release/v2.2.1 (#3270)
YehongPan Jun 18, 2026
2b1ae47
Revert "Release/v2.2.1 (#3270)" (#3274)
WMC001 Jun 18, 2026
9e1d8ff
Release/v2.2.1 (#3275)
WMC001 Jun 18, 2026
068b418
🐛 Bugfix: Multimodal tools support user model selection (#3249)
gjc199 Jun 22, 2026
b6e59cf
fix: Parallel unit test runner with file-level subprocess isolation (…
JasonW404 Jun 23, 2026
3bf2760
♻️ Improvement: The default setting for self-verification upon agent …
YehongPan Jun 23, 2026
3bee68b
♻️ Refactor: update left navigation menu (#3282)
xuyaqist Jun 23, 2026
9d2ef87
🐛 Bugfix: Fixed an issue where the `created_by` field was not written…
YehongPan Jun 24, 2026
d103d17
🧪Test: aidp interface test and bugfix (#3290)
DongJiBao2001 Jun 24, 2026
f95e6d1
Fix OpenAI LLM test memory exhaustion (#3291)
JasonW404 Jun 24, 2026
89039de
Bugfix: Fix inability to copy content to clipboard in http (#3292)
xuyaqist Jun 24, 2026
9b829f2
fix: resolve skills not exposed to agents and LogLevel enum errors (#…
JasonW404 Jun 24, 2026
4becd69
✨ Feat: model capacity foundation — context management upgrade (#3293)
wuyuanfr Jun 25, 2026
28c2ed3
🐛 Bugfix: Fix i18n translation issues in navigation sidebar (#3288)
xuyaqist Jun 25, 2026
1c81a46
🐛 Bugfix:fix aidp search tool params' save error#3296 (#3297)
DongJiBao2001 Jun 25, 2026
9d4405a
Refactor prompt handling, agent workflow, and image builds (#3302)
hhhhsc701 Jun 26, 2026
6858982
✨ Feature: add agent repository page and APIs (#3289)
Lifeng-Chen Jun 26, 2026
2d1c471
✨ Feature: Prompt-cache-aware context assembly (#3299)
JasonW404 Jun 26, 2026
f28bae8
Add offline package compression and update Docker/Kubernetes instruct…
hhhhsc701 Jun 26, 2026
a73b04f
Feat: add file upload support for agent debug mode
Zzzxxxxy Jun 25, 2026
87cc4bf
Merge branch 'develop' of github.com:ModelEngine-Group/nexent into wz…
Zzzxxxxy Jun 26, 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
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ yarn-error.log*

# Node
frontend/node_modules/
frontend/.next/
frontend/package-lock.json
frontend/tsconfig.tsbuildinfo
node_modules/
.pnpm-store/
.pnpm-lock.yaml
Expand All @@ -38,6 +41,7 @@ build/

# Backend
backend/flower_db.sqlite
model-assets.tmp.*/
uploads/
test/
assets/
Expand Down
16 changes: 8 additions & 8 deletions docker/.env.example → .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,8 @@ MINIO_REGION=cn-north-1
MINIO_DEFAULT_BUCKET=nexent

# Redis Config
REDIS_URL=redis://redis:6379/0
REDIS_BACKEND_URL=redis://redis:6379/1
REDIS_URL=redis://nexent-redis:6379/0
REDIS_BACKEND_URL=redis://nexent-redis:6379/1

# Model Engine Config
MODEL_ENGINE_ENABLED=false
Expand All @@ -93,14 +93,14 @@ DASHBOARD_PASSWORD=Huawei123

# Supabase db Config
SUPABASE_POSTGRES_PASSWORD=Huawei123
SUPABASE_POSTGRES_HOST=db
SUPABASE_POSTGRES_HOST=nexent-supabase-db
SUPABASE_POSTGRES_DB=supabase
SUPABASE_POSTGRES_PORT=5436

# Supabase Auth Config
SITE_URL=http://localhost:3011
SUPABASE_URL=http://supabase-kong-mini:8000
API_EXTERNAL_URL=http://supabase-kong-mini:8000
SUPABASE_URL=http://nexent-supabase-kong:8000
API_EXTERNAL_URL=http://nexent-supabase-kong:8000
DISABLE_SIGNUP=false
JWT_EXPIRY=3600
DEBUG_JWT_EXPIRE_SECONDS=0
Expand Down Expand Up @@ -176,7 +176,7 @@ MONITORING_TRACE_MAX_CHARS=4000
MONITORING_TRACE_MAX_ITEMS=20
# Service name for identifying traces in observability platforms
OTEL_SERVICE_NAME=nexent-backend
OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318
OTEL_EXPORTER_OTLP_ENDPOINT=http://nexent-otel-collector:4318
# Optional signal-specific endpoints. Leave empty unless the backend requires them.
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT=
Expand Down Expand Up @@ -222,7 +222,7 @@ WECHAT_OAUTH_APP_SECRET=
# Base URL for OAuth callback (e.g., http://localhost:3000 for local dev)
OAUTH_SSL_VERIFY=true
OAUTH_CA_BUNDLE=
OAUTH_CALLBACK_BASE_URL=http://localhost:3000
OAUTH_CALLBACK_BASE_URL=http://localhost:30000

# Asset owner role (opt-in; default false). Set true to enable ASSET_OWNER.
ENABLE_ASSET_OWNER_ROLE=false
Expand All @@ -231,7 +231,7 @@ ENABLE_ASSET_OWNER_ROLE=false
CAS_ENABLED=false
CAS_SERVER_URL=
CAS_VALIDATE_PATH=/p3/serviceValidate
CAS_CALLBACK_BASE_URL=http://localhost:3000
CAS_CALLBACK_BASE_URL=http://localhost:30000
# Supported values:
# - disabled: disable CAS login entry and automatic CAS redirects.
# - button: show CAS as an optional login entry.
Expand Down
12 changes: 8 additions & 4 deletions .github/workflows/auto-build-data-process-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,18 @@ on:
paths:
- 'backend/**'
- 'sdk/**'
- 'make/data_process/**'
- 'deploy/images/dockerfiles/data-process/**'
- 'deploy/common/**'
- 'deploy/sql/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'backend/**'
- 'sdk/**'
- 'make/data_process/**'
- 'deploy/images/dockerfiles/data-process/**'
- 'deploy/common/**'
- 'deploy/sql/**'
- '.github/workflows/**'

jobs:
Expand All @@ -35,7 +39,7 @@ jobs:
rm -rf .git .gitattributes
- name: Build data process image (amd64) and load locally
run: |
docker build --platform linux/amd64 -t nexent/nexent-data-process:dev-amd64 -f make/data_process/Dockerfile .
docker build --platform linux/amd64 -t nexent/nexent-data-process:dev-amd64 -f deploy/images/dockerfiles/data-process/Dockerfile .

build-data-process-arm64:
runs-on: ubuntu-24.04-arm
Expand All @@ -50,4 +54,4 @@ jobs:
rm -rf .git .gitattributes
- name: Build data process image (arm64) and load locally
run: |
docker build --platform linux/arm64 -t nexent/nexent-data-process:dev-arm64 -f make/data_process/Dockerfile .
docker build --platform linux/arm64 -t nexent/nexent-data-process:dev-arm64 -f deploy/images/dockerfiles/data-process/Dockerfile .
12 changes: 8 additions & 4 deletions .github/workflows/auto-build-main-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,18 @@ on:
paths:
- 'backend/**'
- 'sdk/**'
- 'make/main/**'
- 'deploy/images/dockerfiles/main/**'
- 'deploy/common/**'
- 'deploy/sql/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'backend/**'
- 'sdk/**'
- 'make/main/**'
- 'deploy/images/dockerfiles/main/**'
- 'deploy/common/**'
- 'deploy/sql/**'
- '.github/workflows/**'

jobs:
Expand All @@ -29,7 +33,7 @@ jobs:
uses: actions/checkout@v4
- name: Build main image (amd64) and load locally
run: |
docker build --platform linux/amd64 -t nexent/nexent:dev-amd64 -f make/main/Dockerfile .
docker build --platform linux/amd64 -t nexent/nexent:dev-amd64 -f deploy/images/dockerfiles/main/Dockerfile .

build-main-arm64:
runs-on: ubuntu-24.04-arm
Expand All @@ -38,4 +42,4 @@ jobs:
uses: actions/checkout@v4
- name: Build main image (arm64) and load locally
run: |
docker build --platform linux/arm64 -t nexent/nexent:dev-arm64 -f make/main/Dockerfile .
docker build --platform linux/arm64 -t nexent/nexent:dev-arm64 -f deploy/images/dockerfiles/main/Dockerfile .
8 changes: 4 additions & 4 deletions .github/workflows/auto-build-mcp-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ on:
paths:
- 'backend/**'
- 'sdk/**'
- 'make/mcp/**'
- 'deploy/images/dockerfiles/mcp/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'backend/**'
- 'sdk/**'
- 'make/mcp/**'
- 'deploy/images/dockerfiles/mcp/**'
- '.github/workflows/**'

jobs:
Expand All @@ -29,7 +29,7 @@ jobs:
uses: actions/checkout@v4
- name: Build MCP image (amd64) and load locally
run: |
docker build --platform linux/amd64 -t nexent/nexent-mcp:dev-amd64 -f make/mcp/Dockerfile .
docker build --platform linux/amd64 -t nexent/nexent-mcp:dev-amd64 -f deploy/images/dockerfiles/mcp/Dockerfile .

build-mcp-arm64:
runs-on: ubuntu-24.04-arm
Expand All @@ -38,6 +38,6 @@ jobs:
uses: actions/checkout@v4
- name: Build MCP image (arm64) and load locally
run: |
docker build --platform linux/arm64 -t nexent/nexent-mcp:dev-arm64 -f make/mcp/Dockerfile .
docker build --platform linux/arm64 -t nexent/nexent-mcp:dev-arm64 -f deploy/images/dockerfiles/mcp/Dockerfile .


8 changes: 4 additions & 4 deletions .github/workflows/auto-build-terminal-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ on:
pull_request:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'make/terminal/**'
- 'deploy/images/dockerfiles/terminal/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'make/terminal/**'
- 'deploy/images/dockerfiles/terminal/**'
- '.github/workflows/**'

jobs:
Expand All @@ -25,7 +25,7 @@ jobs:
uses: actions/checkout@v4
- name: Build terminal image (amd64) and load locally
run: |
docker build --platform linux/amd64 -t nexent/nexent-ubuntu-terminal:dev-amd64 -f make/terminal/Dockerfile .
docker build --platform linux/amd64 -t nexent/nexent-ubuntu-terminal:dev-amd64 -f deploy/images/dockerfiles/terminal/Dockerfile .
build-terminal-arm64:
runs-on: ubuntu-24.04-arm
Expand All @@ -34,4 +34,4 @@ jobs:
uses: actions/checkout@v4
- name: Build terminal image (arm64) and load locally
run: |
docker build --platform linux/arm64 -t nexent/nexent-ubuntu-terminal:dev-arm64 -f make/terminal/Dockerfile .
docker build --platform linux/arm64 -t nexent/nexent-ubuntu-terminal:dev-arm64 -f deploy/images/dockerfiles/terminal/Dockerfile .
8 changes: 4 additions & 4 deletions .github/workflows/auto-build-web-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ on:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'frontend/**'
- 'make/web/**'
- 'deploy/images/dockerfiles/web/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'frontend/**'
- 'make/web/**'
- 'deploy/images/dockerfiles/web/**'
- '.github/workflows/**'

jobs:
Expand All @@ -27,7 +27,7 @@ jobs:
uses: actions/checkout@v4
- name: Build web image (amd64) and load locally
run: |
docker build --platform linux/amd64 -t nexent/nexent-web:dev-amd64 -f make/web/Dockerfile .
docker build --platform linux/amd64 -t nexent/nexent-web:dev-amd64 -f deploy/images/dockerfiles/web/Dockerfile .

build-web-arm64:
runs-on: ubuntu-24.04-arm
Expand All @@ -36,4 +36,4 @@ jobs:
uses: actions/checkout@v4
- name: Build web image (arm64) and load locally
run: |
docker build --platform linux/arm64 -t nexent/nexent-web:dev-arm64 -f make/web/Dockerfile .
docker build --platform linux/arm64 -t nexent/nexent-web:dev-arm64 -f deploy/images/dockerfiles/web/Dockerfile .
36 changes: 31 additions & 5 deletions .github/workflows/auto-unit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,36 @@ on:
description: 'runner array in json format (e.g. ["ubuntu-latest"] or ["self-hosted"])'
required: false
default: '["ubuntu-24.04-arm"]'
pytest_workers:
description: 'parallel test workers (auto=CPU count, 0=serial, N=fixed count)'
required: false
default: 'auto'
pytest_file_timeout:
description: 'per-file timeout in seconds (0=disabled)'
required: false
default: '300'
pull_request:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'backend/**'
- 'sdk/**'
- 'deploy/common/**'
- 'deploy/tests/**'
- 'deploy/offline/**'
- 'deploy/docker/**'
- 'deploy/k8s/**'
- 'test/**'
- '.github/workflows/**'
push:
branches: [develop, 'release/**', 'hotfix/**']
paths:
- 'backend/**'
- 'sdk/**'
- 'deploy/common/**'
- 'deploy/tests/**'
- 'deploy/offline/**'
- 'deploy/docker/**'
- 'deploy/k8s/**'
- 'test/**'
- '.github/workflows/**'

Expand All @@ -33,6 +51,12 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4

- name: Run deployment script tests
run: |
bash deploy/tests/test_common.sh
bash deploy/tests/test_sql_migrations.sh
bash deploy/tests/test_build_offline_package.sh

- name: Set up Python
uses: actions/setup-python@v4
with:
Expand All @@ -49,23 +73,25 @@ jobs:
cd ..

- name: Run all tests and collect coverage
env:
NEXENT_PYTEST_WORKERS: ${{ github.event.inputs.pytest_workers || 'auto' }}
NEXENT_PYTEST_FILE_TIMEOUT: ${{ github.event.inputs.pytest_file_timeout || '300' }}
run: |
source backend/.venv/bin/activate && python test/run_all_test.py
TEST_EXIT_CODE=$?

if [ -f "test/coverage.xml" ]; then
echo "Coverage XML file generated successfully."
echo "Coverage XML file generated successfully."
else
echo "Coverage XML file not found."
echo "Coverage XML file not found."
exit 1
fi

# Check if tests actually passed
if [ $TEST_EXIT_CODE -ne 0 ]; then
echo "Tests failed with exit code $TEST_EXIT_CODE"
echo "Tests failed with exit code $TEST_EXIT_CODE"
exit $TEST_EXIT_CODE
else
echo "All tests passed successfully."
echo "All tests passed successfully."
fi

- name: Upload coverage to Codecov
Expand Down
Loading
Loading