* 描述问题
* 运行环境
- NocoBase 版本:
- 数据库种类与版本:
MySQL 8
- 操作系统:
-浏览器及版本
- 部署方式:
- Docker 镜像版本:
v2.0.0-alpha.63
- NodeJS 版本:
如何重现
预期行为
能正常使用AI员工
截图
日志
{“level”:“info”,“message”:“request POST /api/ai:listLLMProviders”,“method”:“POST”,“path”:“/api/ai:listLLMProviders”,“req”:{“header”:{“x-role”:“root”,“x-hostname”:“192.168.100.201”,“x-timezone”:“+08:00”,“x-locale”:“zh-CN”,“x-authenticator”:“basic”}},“app”:“main”,“reqId”:“6b88e686-ba21-4da5-93d4-6660511806bd”,“timestamp”:“2026-01-07 13:53:38”}
{“level”:“error”,“message”:“Cannot read properties of undefined (reading ‘title’)”,“meta”:{“err”:“TypeError: Cannot read properties of undefined (reading ‘title’)\n at /app/nocobase/node_modules/@nocobase/plugin-ai/dist/server/manager/ai-manager.js:50:48\n at Array.map ()\n at AIManager.listLLMProviders (/app/nocobase/node_modules/@nocobase/plugin-ai/dist/server/manager/ai-manager.js:50:34)\n at listLLMProviders (/app/nocobase/node_modules/@nocobase/plugin-ai/dist/server/resource/ai.js:48:35)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at triggerWorkflowActionMiddleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-action-trigger/dist/server/ActionTrigger.js:61:13)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at verificationMiddleware (/app/nocobase/node_modules/@nocobase/plugin-verification/dist/server/verification-manager.js:214:16)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at dataTemplate (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/data-template.js:36:9)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at parseVariables (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/parse-variables.js:38:12)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at /app/nocobase/node_modules/@nocobase/plugin-ui-templates/dist/server/plugin.js:168:16\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at /app/nocobase/node_modules/@nocobase/plugin-users/dist/server/server.js:208:13\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at deleteRolesCache (/app/nocobase/node_modules/@nocobase/plugin-users/dist/server/server.js:197:13)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at createMiddleware (/app/nocobase/node_modules/@nocobase/plugin-file-manager/dist/server/actions/attachments.js:197:12)\n at dispatch (/app/nocobase/node_modules/koa-compose/index.js:42:32)\n at handleFieldSourceMiddleware (/app/nocobase/node_modules/@nocobase/plugin-data-source-main/dist/server/server.js:463:13)”},“module”:“ai”,“submodule”:“listLLMProviders”,“method”:“error-handler”,“app”:“main”,“reqId”:“6b88e686-ba21-4da5-93d4-6660511806bd”,“dataSourceKey”:“main”,“timestamp”:“2026-01-07 13:53:38”}
{“level”:“error”,“message”:“response /api/ai:listLLMProviders”,“method”:“POST”,“path”:“/api/ai:listLLMProviders”,“res”:[{“message”:“Cannot read properties of undefined (reading ‘title’)”}],“action”:{“actionName”:“listLLMProviders”,“resourceName”:“ai”,“params”:{“resourceName”:“ai”,“actionName”:“listLLMProviders”,“values”:{}}},“userId”:1,“username”:“nocobase”,“status”:500,“cost”:7,“app”:“main”,“reqId”:“6b88e686-ba21-4da5-93d4-6660511806bd”,“bodySize”:80,“timestamp”:“2026-01-07 13:53:38”}
{“level”:“info”,“message”:“request GET /api/llmServices:list?filter=%7B%7D”,“method”:“GET”,“path”:“/api/llmServices:list?filter=%7B%7D”,“req”:{“header”:{“x-role”:“root”,“x-hostname”:“192.168.100.201”,“x-timezone”:“+08:00”,“x-locale”:“zh-CN”,“x-authenticator”:“basic”}},“app”:“main”,“reqId”:“944bf23a-f3e3-42a3-92fe-6399ea303da5”,“timestamp”:“2026-01-07 13:53:38”}
{“level”:“info”,“message”:“response /api/llmServices:list?filter=%7B%7D”,“method”:“GET”,“path”:“/api/llmServices:list?filter=%7B%7D”,“res”:{“status”:200},“action”:{“actionName”:“list”,“resourceName”:“llmServices”,“params”:{“filter”:{},“resourceName”:“llmServices”,“actionName”:“list”,“values”:{}}},“userId”:1,“username”:“nocobase”,“status”:200,“cost”:8,“app”:“main”,“reqId”:“944bf23a-f3e3-42a3-92fe-6399ea303da5”,“bodySize”:67,“timestamp”:“2026-01-07 13:53:38”}
