Agent skill dev (#6668)

* chore: Rename service & container names for consistency in Docker configs (#6710)

* chore: Rename container names for consistency in Docker configs

* chore: Rename service names for consistency in Docker configs

chore: Update OpenSandbox versions and image repositories (#6709)

* chore: Update OpenSandbox versions and image repositories

* yml version

* images

* init yml

* port

---------

Co-authored-by: archer <545436317@qq.com>

refactor(chat): optimize sandbox status logic and decouple UI/Status hooks (#6713)

* refactor(chat): optimize sandbox status logic and decouple UI/Status hooks

* fix: useRef, rename onClose to afterClose

Update .env.template (#6720)

aiproxy默认的请求地址改成http协议

feat: comprehensive agent skill management and sandbox infrastructure optimization

- Skill System: Implemented a full skill management module including CRUD operations, folder organization, AI-driven skill generation, and versioning (switch/update).
- Sandbox Infrastructure: Introduced 'volume-manager' for PVC and Docker volume lifecycle management, replacing the MinIO sync-agent for better data persistence.
- Workflow Integration: Enhanced the Agent node to support skill selection and configuration, including new UI components and data normalization.
- Permission Management: Added granular permission controls for skills, supporting collaborators, owner transfers, and permission inheritance.
- UI/UX: Added a dedicated Skill dashboard, sandbox debug interface (terminal, logs, and iframe proxy), and comprehensive i18n support.
- Maintenance: Migrated Docker services to named volumes, optimized sandbox instance limits, and improved error handling for sandbox providers.

Co-authored-by: chanzhi82020 <chenzhi@sangfor.com.cn>
Co-authored-by: lavine77
Signed-off-by: Jon <ljp@sangfor.com.cn>

feat: hide skill

prettier

* perf: hide skill code

* fix: ts

* lock

* perf: tool code

* fix: ts

* lock

* fix: test

* fix: openapi

* lock

* fix: test

* null model

---------

Co-authored-by: archer <545436317@qq.com>
This commit is contained in:
Jon
2026-04-07 22:52:03 +08:00
committed by GitHub
parent 5c709afef0
commit 57a505f837
271 changed files with 24108 additions and 454 deletions
+51 -2
View File
@@ -13,6 +13,8 @@
# - fastgpt-aiproxy: 3010
# - fastgpt-aiproxy-pg: 5432
# - 使用 pgvector 作为默认的向量库
# - 配置 opensandbox-config 的 network_mode 为 docker 网络,如 dev_fastgpt
# - 配置 opensandbox-config 的 host_ip 为宿主机 LAN IP,如 192.168.1.100
# plugin auth token
x-plugin-auth-token: &x-plugin-auth-token 'token'
@@ -366,6 +368,47 @@ services:
interval: 5s
timeout: 5s
retries: 10
opensandbox-server:
image: ${{opensandbox-server.image}}:${{opensandbox-server.tag}}
container_name: opensandbox-server
restart: always
networks:
- fastgpt
ports:
- '8090:8090'
volumes:
- /var/run/docker.sock:/var/run/docker.sock
configs:
- source: opensandbox-config
target: /etc/opensandbox/config.toml
environment:
- SANDBOX_CONFIG_PATH=/etc/opensandbox/config.toml
healthcheck:
test: ['CMD', 'curl', '-f', 'http://localhost:8090/health']
interval: 10s
timeout: 5s
retries: 5
volume-manager:
image: fastgpt-volume-manager:latest
container_name: volume-manager
restart: always
networks:
- fastgpt
ports:
- 3004:3001
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- VM_RUNTIME=docker
- VM_AUTH_TOKEN=changeme
- VM_VOLUME_NAME_PREFIX=fastgpt-session
- VM_LOG_LEVEL=info
healthcheck:
test:
['CMD', 'bun', '-e', "fetch('http://localhost:3001/health').then((res) => { if (!res.ok) throw new Error(String(res.status)); })"]
interval: 10s
timeout: 5s
retries: 5
networks:
fastgpt:
aiproxy:
@@ -394,6 +437,12 @@ configs:
[docker]
network_mode = "bridge"
# 容器内访问宿主机服务时需要设置为宿主机 IP hostname
# macOS/Windows: host.docker.internalLinux: 宿主机 LAN IP(如 192.168.1.100
# When server runs in a container, set host_ip to the host's IP or hostname so bridge-mode endpoints are reachable (e.g. host.docker.internal or the host LAN IP).
# It's required when server deployed with docker container under host.
host_ip = "host.docker.internal"
drop_capabilities = ["AUDIT_WRITE", "MKNOD", "NET_ADMIN", "NET_RAW", "SYS_ADMIN", "SYS_MODULE", "SYS_PTRACE", "SYS_TIME", "SYS_TTY_CONFIG"]
no_new_privileges = true
pids_limit = 512
[ingress]
mode = "direct"