diff --git a/.cnb/web_trigger.yml b/.cnb/web_trigger.yml deleted file mode 100644 index 7194675..0000000 --- a/.cnb/web_trigger.yml +++ /dev/null @@ -1,11 +0,0 @@ -# .cnb/web_trigger.yml -branch: - # 如下按钮在分支名以 release 开头的分支详情页面显示 - - reg: "^main" - buttons: - - name: 同步代码到gitea - description: 同步代码到gitea - event: web_trigger_sync_to_gitea - - name: 同步gitea代码到当前仓库 - description: 同步gitea代码到当前仓库 - event: web_trigger_sync_from_gitea \ No newline at end of file diff --git a/assistant/src/module/assistant/config/index.ts b/assistant/src/module/assistant/config/index.ts index d64f0ae..5430d8f 100644 --- a/assistant/src/module/assistant/config/index.ts +++ b/assistant/src/module/assistant/config/index.ts @@ -390,7 +390,7 @@ export class AssistantConfig { home: '/root/home', proxy: [], share: { - enabled: false, + enabled: true, url: 'https://kevisual.cn/ws/proxy', }, } as AssistantConfigData; diff --git a/assistant/src/module/assistant/local-app-manager/assistant-app.ts b/assistant/src/module/assistant/local-app-manager/assistant-app.ts index b096070..4ffbd87 100644 --- a/assistant/src/module/assistant/local-app-manager/assistant-app.ts +++ b/assistant/src/module/assistant/local-app-manager/assistant-app.ts @@ -301,11 +301,11 @@ const checkLocalUser = async (opts: { assistantApp: AssistantApp }) => { const config = assistantApp.config.getConfig(); const auth = config?.auth || {}; const isLogin = await assistantQuery.queryLogin.getToken(); - logger.log('[assistant] 正在检查本地用户登录状态...', auth, '是否已登录', !!isLogin); + logger.log('[assistant] 正在检查本地用户登录状态...', 'user', auth.username, '是否已登录', !!isLogin); const saveAuth = (auth: typeof config.auth, opts: { appId?: string, username: string; share: 'protected' | 'private' }) => { - auth.username = opts.username; - auth.share = opts.share; + auth.username = auth.username ?? opts.username; + auth.share = auth.share ?? opts.share; const app = config?.app || {}; if (!app?.id) { app.id = opts.appId || 'dev-cnb' @@ -333,15 +333,23 @@ const checkLocalUser = async (opts: { assistantApp: AssistantApp }) => { const res = await assistantQuery.queryLogin.loginByCnb({ cnbToken }) if (res.code === 200) { const userInfo = await assistantQuery.queryLogin.checkLocalUser() - saveAuth(auth, { username: userInfo.username, share: 'protected' }) + if (!userInfo.username) { + saveAuth(auth, { username: userInfo.username, share: 'protected' }) + } return } else { logger.error('CNB登录失败,无法获取用户信息', res); } } - const kevisualToken = useKey('KEVISUAL_TOKEN'); - if (kevisualToken) { + const accessToken = useKey('KEVISUAL_TOKEN'); + if (accessToken) { logger.info('[cnb]检测到 KEVISUAL_TOKEN,正在尝试使用 KEVISUAL_TOKEN 登录...'); - const res = await assistantQuery.queryLogin.refreshLoginUser(kevisualToken) + const res = await assistantQuery.queryLogin.refreshLoginUser({ accessToken, refreshToken: '' }) + if (res.code === 200) { + if (!auth.username) { + const userInfo = await assistantQuery.queryLogin.checkLocalUser() + saveAuth(auth, { username: userInfo.username, share: 'protected' }) + } + } } } \ No newline at end of file diff --git a/assistant/src/module/light-code/index.ts b/assistant/src/module/light-code/index.ts index 292554b..b73176d 100644 --- a/assistant/src/module/light-code/index.ts +++ b/assistant/src/module/light-code/index.ts @@ -5,10 +5,10 @@ import fs from 'node:fs'; import glob from 'fast-glob'; import { runCode } from './run.ts'; const codeDemoId = '0e700dc8-90dd-41b7-91dd-336ea51de3d2' -import { filter } from "@kevisual/js-filter"; import { getHash, getStringHash } from '../file-hash.ts'; import { AssistantConfig } from '@/lib.ts'; import { assistantQuery } from '@/app.ts'; +import { logger } from '../logger.ts'; const codeDemo = `// 这是一个示例代码文件 import {App} from '@kevisual/router'; @@ -47,17 +47,17 @@ type LightCodeFile = { export const initLightCode = async (opts: Opts) => { const token = await assistantQuery.getToken(); if (!token) { - console.error('[light-code] 当前未登录,无法初始化 light-code'); + logger.error('[light-code] 当前未登录,无法初始化 light-code'); return; } // 注册 light-code 路由 const config = opts.config as AssistantInit; const app = opts.router; - console.log('初始化 light-code 路由'); + logger.log('[light-code] 初始化 light-code 路由'); const query = config.query; const sync = opts.sync ?? 'remote'; if (!config || !app) { - console.error('[light-code] initLightCode 缺少必要参数, config 或 app'); + logger.error('[light-code] initLightCode 缺少必要参数, config 或 app'); return; } const lightcodeDir = opts.rootPath; diff --git a/kevisual.json b/kevisual.json deleted file mode 100644 index f04667a..0000000 --- a/kevisual.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "metadata": { - "name": "kevisual", - "share": "public" - }, - "checkDir": { - "./build/tools/kevisual-sync": { - "url": "https://kevisual.xiongxiao.me/root/ai/kevisual/tools/kevisual-sync/", - "enabled": true - } - }, - "syncDirectory": [ - { - "files": [ - "build/**/*" - ], - "ignore": [ - "build/ignore.md" - ], - "registry": "https://kevisual.xiongxiao.me/root/ai/kevisual", - "replace": { - "build/": "" - } - } - ], - "sync": { - "./build/01-summary.md": { - "url": "https://kevisual.xiongxiao.me/root/ai/kevisual/01-summary.md", - "meta": { - "share": "public" - } - } - } -} \ No newline at end of file diff --git a/src/command/sync/modules/base.ts b/src/command/sync/modules/base.ts index 9ebed38..44649f6 100644 --- a/src/command/sync/modules/base.ts +++ b/src/command/sync/modules/base.ts @@ -19,7 +19,9 @@ const checkAuth = (value: string = '', baseURL: string = '') => { return false; }; -const DEFAULT_IGNORE = ['node_modules/**', '.git/**', '.next/**', '.astro/**', '.pack-dist/**']; +const DEFAULT_IGNORE = [ + 'node_modules/**', '.git/**', '.next/**', '.astro/**', '.pack-dist/**', +]; export class SyncBase { config: Config; #filename: string; diff --git a/temp.md b/temp.md deleted file mode 100644 index da57256..0000000 --- a/temp.md +++ /dev/null @@ -1,4 +0,0 @@ -"@nut-tree-fork/nut-js": "^4.2.6", -"@kevisual/hot-api": "^0.0.3", - -KEVISUAL_TOKEN="" LOG_LEVEL=DEBUG pnpm dev deploy ./cli-center/dist -k cli -v 0.0.4 -u -y y \ No newline at end of file