diff --git a/agent/modules/cnb-manager.ts b/agent/modules/cnb-manager.ts index 5e8e959..6553138 100644 --- a/agent/modules/cnb-manager.ts +++ b/agent/modules/cnb-manager.ts @@ -4,7 +4,9 @@ import { useKey } from '@kevisual/context'; import { createOpenAICompatible } from '@ai-sdk/openai-compatible'; export const getConfig = async (opts: { token?: string }) => { const kevisualEnv = useKey('KEVISUAL_ENV') - const baseUrl = kevisualEnv === 'production' ? 'https://kevisual.cn/api/router' : 'https://kevisual.xiongxiao.me/api/router'; + const isCNB = useKey('CNB'); + let isProduction = kevisualEnv !== 'development' || (isCNB && !kevisualEnv); + const baseUrl = isProduction ? 'https://kevisual.cn/api/router' : 'https://kevisual.xiongxiao.me/api/router'; const res = await fetch(baseUrl, { method: 'POST', body: JSON.stringify({ @@ -70,6 +72,8 @@ export class CNBManager { if (token) { return this.addCNB({ username, token, cookie }) } + } else { + console.error('获取 CNB 配置失败', username, res) } return null } diff --git a/agent/routes/cnb-manager/index.ts b/agent/routes/cnb-manager/index.ts index ed5270d..0fe062b 100644 --- a/agent/routes/cnb-manager/index.ts +++ b/agent/routes/cnb-manager/index.ts @@ -9,7 +9,7 @@ app.route({ middleware: ['auth'], }).define(async (ctx) => { - const tokenUser = ctx.tokenUser; + const tokenUser = ctx.state?.tokenUser; if (!tokenUser) { ctx.throw(401, '未授权'); } @@ -29,7 +29,8 @@ app.route({ description: '获取我的cnb配置', middleware: ['auth'], }).define(async (ctx) => { - const username = ctx.tokenUser?.username; + const tokenUser = ctx.state?.tokenUser; + const username = tokenUser?.username; const token = ctx.query?.token; if (!username) { ctx.throw(400, '未授权'); diff --git a/agent/routes/cnb-manager/test.ts b/agent/routes/cnb-manager/test.ts new file mode 100644 index 0000000..516a2ec --- /dev/null +++ b/agent/routes/cnb-manager/test.ts @@ -0,0 +1,6 @@ +const token = 'st_logh1b3ozq2resntxlnk4bccao0bon8e' +import { CNBManager } from "../../modules/cnb-manager.ts" +const cnbManager = new CNBManager() + +const cnbItem = await cnbManager.getCNB({ username: 'root', kevisualToken: token }); +console.log('cnbItem', cnbItem) \ No newline at end of file diff --git a/package.json b/package.json index 22103b2..8747713 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@kevisual/cnb", - "version": "0.0.43", + "version": "0.0.45", "description": "", "main": "index.js", "basename": "/root/cnb",