新增titleBar

This commit is contained in:
ACT丶流星雨 2026-03-26 21:46:42 +08:00
parent a9634755b5
commit bef0454b02
7 changed files with 2350 additions and 2142 deletions

File diff suppressed because one or more lines are too long

156
package-lock.json generated
View File

@ -16,6 +16,7 @@
"@ai-sdk/openai-compatible": "^2.0.27",
"@ai-sdk/xai": "^3.0.47",
"@huggingface/transformers": "^3.8.1",
"@rmp135/sql-ts": "^2.2.0",
"ai": "^6.0.67",
"axios": "^1.13.2",
"axios-retry": "^4.5.0",
@ -32,7 +33,6 @@
"js-md5": "^0.8.3",
"jsonwebtoken": "^9.0.3",
"knex": "^3.2.5",
"kysely": "^0.28.14",
"lodash": "^4.17.23",
"morgan": "^1.10.1",
"qwen-ai-provider-v5": "^2.1.0",
@ -46,7 +46,6 @@
"zod": "^4.3.5"
},
"devDependencies": {
"@types/better-sqlite3": "^7.6.13",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.6",
"@types/express-ws": "^3.0.6",
@ -1024,6 +1023,51 @@
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==",
"license": "BSD-3-Clause"
},
"node_modules/@rmp135/sql-ts": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/@rmp135/sql-ts/-/sql-ts-2.2.0.tgz",
"integrity": "sha512-OnZJ0KtNMfR8J81rRXllClkX1ECZNNiREHCjDjrY5Ri6sedma7X61UuAAsTwm/bLX/QI5DHJNT+gXPJl8fK6hw==",
"license": "MIT",
"dependencies": {
"@types/pluralize": "^0.0.33",
"change-case": "^5.4.3",
"handlebars": "^4.7.8",
"knex": "^3.1.0",
"lodash-es": "^4.17.21",
"pluralize": "^8.0.0",
"yargs": "^17.7.2"
},
"bin": {
"sql-ts": "bin/sql-ts"
},
"peerDependencies": {
"better-sqlite3": "^11.2.1",
"mssql": "^10.0.2",
"mysql2": "^3.9.2",
"pg": "^8.11.3",
"sqlite3": "^5.1.7"
},
"peerDependenciesMeta": {
"better-sqlite3": {
"optional": true
},
"mssql": {
"optional": true
},
"mysql": {
"optional": true
},
"mysql2": {
"optional": true
},
"pg": {
"optional": true
},
"sqlite3": {
"optional": true
}
}
},
"node_modules/@sindresorhus/is": {
"version": "4.6.0",
"resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-4.6.0.tgz",
@ -1062,16 +1106,6 @@
"node": ">=10"
}
},
"node_modules/@types/better-sqlite3": {
"version": "7.6.13",
"resolved": "https://registry.npmmirror.com/@types/better-sqlite3/-/better-sqlite3-7.6.13.tgz",
"integrity": "sha512-NMv9ASNARoKksWtsq/SHakpYAYnhBrQgGD8zkLYk/jaK8jUGn08CfEdTRgYhMypUQAfzSP8W6gNLe0q19/t4VA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/node": "*"
}
},
"node_modules/@types/body-parser": {
"version": "1.19.6",
"resolved": "https://registry.npmmirror.com/@types/body-parser/-/body-parser-1.19.6.tgz",
@ -1247,6 +1281,12 @@
"undici-types": "~7.18.0"
}
},
"node_modules/@types/pluralize": {
"version": "0.0.33",
"resolved": "https://registry.npmmirror.com/@types/pluralize/-/pluralize-0.0.33.tgz",
"integrity": "sha512-JOqsl+ZoCpP4e8TDke9W79FDcSgPAR0l6pixx2JHkhnRjvShyYiAYw2LVsnA7K08Y6DeOnaU6ujmENO4os/cYg==",
"license": "MIT"
},
"node_modules/@types/qs": {
"version": "6.14.0",
"resolved": "https://registry.npmmirror.com/@types/qs/-/qs-6.14.0.tgz",
@ -1471,7 +1511,6 @@
"version": "5.0.1",
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
@ -1481,7 +1520,6 @@
"version": "4.3.0",
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"license": "MIT",
"dependencies": {
"color-convert": "^2.0.1"
@ -2287,6 +2325,12 @@
"node": ">=8"
}
},
"node_modules/change-case": {
"version": "5.4.4",
"resolved": "https://registry.npmmirror.com/change-case/-/change-case-5.4.4.tgz",
"integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==",
"license": "MIT"
},
"node_modules/chokidar": {
"version": "3.6.0",
"resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz",
@ -2374,7 +2418,6 @@
"version": "8.0.1",
"resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz",
"integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
"dev": true,
"license": "ISC",
"dependencies": {
"string-width": "^4.2.0",
@ -2422,7 +2465,6 @@
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"color-name": "~1.1.4"
@ -2435,7 +2477,6 @@
"version": "1.1.4",
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true,
"license": "MIT"
},
"node_modules/colorette": {
@ -3125,7 +3166,6 @@
"version": "8.0.0",
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true,
"license": "MIT"
},
"node_modules/encodeurl": {
@ -3793,7 +3833,6 @@
"version": "2.0.5",
"resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
"dev": true,
"license": "ISC",
"engines": {
"node": "6.* || 8.* || >= 10.*"
@ -4045,6 +4084,27 @@
"integrity": "sha512-Y8T4vYhEfwJOTbouREvG+3XDsjr8E3kIr7uf+JZ0BYloFsttiHU0WfvANVsR7TxNUJa/WpCnw/Ino/p+DeBhBQ==",
"license": "ISC"
},
"node_modules/handlebars": {
"version": "4.7.8",
"resolved": "https://registry.npmmirror.com/handlebars/-/handlebars-4.7.8.tgz",
"integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==",
"license": "MIT",
"dependencies": {
"minimist": "^1.2.5",
"neo-async": "^2.6.2",
"source-map": "^0.6.1",
"wordwrap": "^1.0.0"
},
"bin": {
"handlebars": "bin/handlebars"
},
"engines": {
"node": ">=0.4.7"
},
"optionalDependencies": {
"uglify-js": "^3.1.4"
}
},
"node_modules/has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz",
@ -4377,7 +4437,6 @@
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
@ -4756,15 +4815,6 @@
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
"license": "MIT"
},
"node_modules/kysely": {
"version": "0.28.14",
"resolved": "https://registry.npmmirror.com/kysely/-/kysely-0.28.14.tgz",
"integrity": "sha512-SU3lgh0rPvq7upc6vvdVrCsSMUG1h3ChvHVOY7wJ2fw4C9QEB7X3d5eyYEyULUX7UQtxZJtZXGuT6U2US72UYA==",
"license": "MIT",
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/lazy-val": {
"version": "1.0.5",
"resolved": "https://registry.npmmirror.com/lazy-val/-/lazy-val-1.0.5.tgz",
@ -4871,6 +4921,12 @@
"integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==",
"license": "MIT"
},
"node_modules/lodash-es": {
"version": "4.17.23",
"resolved": "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.23.tgz",
"integrity": "sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==",
"license": "MIT"
},
"node_modules/lodash.difference": {
"version": "4.5.0",
"resolved": "https://registry.npmmirror.com/lodash.difference/-/lodash.difference-4.5.0.tgz",
@ -5376,6 +5432,12 @@
"node": ">= 0.6"
}
},
"node_modules/neo-async": {
"version": "2.6.2",
"resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz",
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"license": "MIT"
},
"node_modules/node-abi": {
"version": "3.87.0",
"resolved": "https://registry.npmmirror.com/node-abi/-/node-abi-3.87.0.tgz",
@ -5996,6 +6058,15 @@
"node": ">=10.4.0"
}
},
"node_modules/pluralize": {
"version": "8.0.0",
"resolved": "https://registry.npmmirror.com/pluralize/-/pluralize-8.0.0.tgz",
"integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==",
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/possible-typed-array-names": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
@ -6435,7 +6506,6 @@
"version": "2.1.1",
"resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
@ -7081,7 +7151,6 @@
"version": "0.6.1",
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
"license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
@ -7231,7 +7300,6 @@
"version": "4.2.3",
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
"license": "MIT",
"dependencies": {
"emoji-regex": "^8.0.0",
@ -7262,7 +7330,6 @@
"version": "6.0.1",
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-regex": "^5.0.1"
@ -7803,6 +7870,19 @@
"node": ">=14.17"
}
},
"node_modules/uglify-js": {
"version": "3.19.3",
"resolved": "https://registry.npmmirror.com/uglify-js/-/uglify-js-3.19.3.tgz",
"integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==",
"license": "BSD-2-Clause",
"optional": true,
"bin": {
"uglifyjs": "bin/uglifyjs"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/undefsafe": {
"version": "2.0.5",
"resolved": "https://registry.npmmirror.com/undefsafe/-/undefsafe-2.0.5.tgz",
@ -8029,11 +8109,16 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/wordwrap": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/wordwrap/-/wordwrap-1.0.0.tgz",
"integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==",
"license": "MIT"
},
"node_modules/wrap-ansi": {
"version": "7.0.0",
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-styles": "^4.0.0",
@ -8116,7 +8201,6 @@
"version": "5.0.8",
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz",
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
"dev": true,
"license": "ISC",
"engines": {
"node": ">=10"
@ -8133,7 +8217,6 @@
"version": "17.7.2",
"resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz",
"integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
"dev": true,
"license": "MIT",
"dependencies": {
"cliui": "^8.0.1",
@ -8152,7 +8235,6 @@
"version": "21.1.1",
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz",
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
"dev": true,
"license": "ISC",
"engines": {
"node": ">=12"

View File

@ -50,6 +50,7 @@
"better-sqlite3": "^12.8.0",
"compressing": "^2.1.0",
"cors": "^2.8.5",
"custom-electron-titlebar": "^4.2.8",
"dotenv": "^17.2.3",
"express": "^5.2.1",
"express-ws": "^5.0.2",
@ -89,4 +90,4 @@
"tsx": "^4.21.0",
"typescript": "^5.9.3"
}
}
}

View File

@ -1,4 +1,4 @@
import { app, BrowserWindow } from "electron";
import { app, BrowserWindow, protocol,ipcMain } from "electron";
import path from "path";
import fs from "fs";
import Module from "module";
@ -75,16 +75,29 @@ function requireWithCustomPaths(modulePath: string): any {
}
}
function createMainWindow(port: any): void {
let mainWindow: BrowserWindow | null = null;
function createMainWindow(): void {
const win = new BrowserWindow({
width: 900,
height: 600,
width: 1000,
height: 700,
minWidth: 800,
minHeight: 500,
frame: false,
show: true,
autoHideMenuBar: true,
titleBarStyle: "hidden",
titleBarOverlay: false,
roundedCorners: true
});
win.webContents.on("did-start-loading", () => {
void win.webContents.executeJavaScript(`window.$electron = true; window.$port = ${port};`);
mainWindow = win;
win.setMenuBarVisibility(false);
win.removeMenu();
win.on("closed", () => {
mainWindow = null;
});
const isDev = process.env.NODE_ENV === "dev" || !app.isPackaged;
if (process.env.VITE_DEV) {
void win.loadURL("http://localhost:50188");
@ -96,6 +109,17 @@ function createMainWindow(port: any): void {
let closeServeFn: (() => Promise<void>) | undefined;
protocol.registerSchemesAsPrivileged([
{
scheme: "toonflow",
privileges: {
secure: true,
supportFetchAPI: true,
corsEnabled: true,
},
},
]);
app.whenReady().then(async () => {
try {
let servePath: string;
@ -111,12 +135,44 @@ app.whenReady().then(async () => {
const mod = requireWithCustomPaths(servePath);
closeServeFn = mod.closeServe;
const port = await mod.default(true);
console.log("%c Line:112 🍇 port", "background:#2eafb0", port);
createMainWindow(port);
// 注册协议处理器
protocol.handle("toonflow", (request) => {
const url = new URL(request.url);
const pathname = url.hostname.toLowerCase();
const handlers: Record<string, () => object> = {
getport: () => ({ port: port }),
windowminimize: () => {
mainWindow?.minimize();
return { ok: true };
},
windowmaximize: () => {
if (mainWindow?.isMaximized()) {
mainWindow.unmaximize();
} else {
mainWindow?.maximize();
}
return { ok: true };
},
windowclose: () => {
mainWindow?.close();
return { ok: true };
},
windowismaximized: () => ({
maximized: mainWindow?.isMaximized() ?? false,
}),
};
const handler = handlers[pathname];
const responseData = handler ? handler() : { error: "未知接口" };
return new Response(JSON.stringify(responseData), {
headers: { "Content-Type": "application/json" },
});
});
createMainWindow();
} catch (err) {
console.error("[服务启动失败]:", err);
// 如果服务启动失败,使用默认端口创建窗口
createMainWindow(defaultPort);
// 如果服务启动失败,仍然创建窗口
createMainWindow();
}
});
@ -126,8 +182,7 @@ app.on("window-all-closed", () => {
app.on("activate", () => {
if (BrowserWindow.getAllWindows().length === 0) {
// 重新激活时使用默认端口
createMainWindow(defaultPort);
createMainWindow();
}
});

View File

@ -1,4 +1,4 @@
// @routes-hash adf6a50cb14a1d93aea2983d0364e6a3
// @routes-hash 758e343e27eb25780faf00eeab306216
import { Express } from "express";
import route1 from "./routes/agents/clearMemory";
@ -13,89 +13,90 @@ import route9 from "./routes/assets/batchGenerationData";
import route10 from "./routes/assets/delAssets";
import route11 from "./routes/assets/getAssetsApi";
import route12 from "./routes/assets/getImage";
import route13 from "./routes/assets/saveAssets";
import route14 from "./routes/assets/updateAssets";
import route15 from "./routes/assets/uploadClip";
import route16 from "./routes/assetsGenerate/generateAssets";
import route17 from "./routes/assetsGenerate/polishAssetsPrompt";
import route18 from "./routes/cornerScape/getAllAssets";
import route19 from "./routes/general/generalStatistics";
import route20 from "./routes/general/getSingleProject";
import route21 from "./routes/general/updateProject";
import route22 from "./routes/login/login";
import route23 from "./routes/migrate/migrateData";
import route24 from "./routes/modelSelect/getModelDetail";
import route25 from "./routes/modelSelect/getModelList";
import route26 from "./routes/novel/addNovel";
import route27 from "./routes/novel/batchDeleteNovel";
import route28 from "./routes/novel/delNovel";
import route29 from "./routes/novel/event/batchDeleteEvent";
import route30 from "./routes/novel/event/deletEvent";
import route31 from "./routes/novel/event/generateEvents";
import route32 from "./routes/novel/event/getEvent";
import route33 from "./routes/novel/getNovel";
import route34 from "./routes/novel/getNovelEventState";
import route35 from "./routes/novel/getNovelIndex";
import route36 from "./routes/novel/updateNovel";
import route37 from "./routes/other/deleteAllData";
import route38 from "./routes/other/getVersion";
import route39 from "./routes/production/assets/getAssetsData";
import route40 from "./routes/production/editImage/generateFlowImage";
import route41 from "./routes/production/editImage/getImageFlow";
import route42 from "./routes/production/editImage/saveImageFlow";
import route43 from "./routes/production/editImage/updateImageFlow";
import route44 from "./routes/production/exportImage";
import route45 from "./routes/production/getFlowData";
import route46 from "./routes/production/getProductionData";
import route47 from "./routes/production/getStoryboardData";
import route48 from "./routes/production/saveFlowData";
import route49 from "./routes/production/storyboard/downPreviewImage";
import route50 from "./routes/production/storyboard/getStoryboardData";
import route51 from "./routes/production/storyboard/previewImage";
import route52 from "./routes/production/workbench/confirmSelection";
import route53 from "./routes/production/workbench/delVideo";
import route54 from "./routes/production/workbench/generateVideo";
import route55 from "./routes/production/workbench/getChatLines";
import route56 from "./routes/production/workbench/getVideoModelDetail";
import route57 from "./routes/production/workbench/videoPolling";
import route58 from "./routes/project/addProject";
import route59 from "./routes/project/delProject";
import route60 from "./routes/project/editProject";
import route61 from "./routes/project/getProject";
import route62 from "./routes/script/addScript";
import route63 from "./routes/script/delScript";
import route64 from "./routes/script/exportScript";
import route65 from "./routes/script/getScrptApi";
import route66 from "./routes/script/updateScript";
import route67 from "./routes/scriptAgent/getPlanData";
import route68 from "./routes/scriptAgent/setPlanData";
import route69 from "./routes/setting/agentDeploy/agentSetKey";
import route70 from "./routes/setting/agentDeploy/deployAgentModel";
import route71 from "./routes/setting/agentDeploy/getAgentDeploy";
import route72 from "./routes/setting/dbConfig/clearData";
import route73 from "./routes/setting/fileManagement/openFolder";
import route74 from "./routes/setting/getTextModel";
import route75 from "./routes/setting/loginConfig/getUser";
import route76 from "./routes/setting/loginConfig/updateUserPwd";
import route77 from "./routes/setting/memoryConfig/delAllMemory";
import route78 from "./routes/setting/memoryConfig/getMemory";
import route79 from "./routes/setting/memoryConfig/sureMemory";
import route80 from "./routes/setting/skillManagement/addSkill";
import route81 from "./routes/setting/skillManagement/deleteSkill";
import route82 from "./routes/setting/skillManagement/embeddingSkill";
import route83 from "./routes/setting/skillManagement/generateDescription";
import route84 from "./routes/setting/skillManagement/getSkillList";
import route85 from "./routes/setting/skillManagement/scanSkills";
import route86 from "./routes/setting/skillManagement/updateSkill";
import route87 from "./routes/setting/vendorConfig/addVendor";
import route88 from "./routes/setting/vendorConfig/deleteVendor";
import route89 from "./routes/setting/vendorConfig/getVendorList";
import route90 from "./routes/setting/vendorConfig/modelTest";
import route91 from "./routes/setting/vendorConfig/updateVendor";
import route92 from "./routes/task/getTaskApi";
import route93 from "./routes/task/getTaskCategories";
import route94 from "./routes/task/taskDetails";
import route95 from "./routes/test/test";
import route13 from "./routes/assets/getMaterialData";
import route14 from "./routes/assets/saveAssets";
import route15 from "./routes/assets/updateAssets";
import route16 from "./routes/assets/uploadClip";
import route17 from "./routes/assetsGenerate/generateAssets";
import route18 from "./routes/assetsGenerate/polishAssetsPrompt";
import route19 from "./routes/cornerScape/getAllAssets";
import route20 from "./routes/general/generalStatistics";
import route21 from "./routes/general/getSingleProject";
import route22 from "./routes/general/updateProject";
import route23 from "./routes/login/login";
import route24 from "./routes/migrate/migrateData";
import route25 from "./routes/modelSelect/getModelDetail";
import route26 from "./routes/modelSelect/getModelList";
import route27 from "./routes/novel/addNovel";
import route28 from "./routes/novel/batchDeleteNovel";
import route29 from "./routes/novel/delNovel";
import route30 from "./routes/novel/event/batchDeleteEvent";
import route31 from "./routes/novel/event/deletEvent";
import route32 from "./routes/novel/event/generateEvents";
import route33 from "./routes/novel/event/getEvent";
import route34 from "./routes/novel/getNovel";
import route35 from "./routes/novel/getNovelEventState";
import route36 from "./routes/novel/getNovelIndex";
import route37 from "./routes/novel/updateNovel";
import route38 from "./routes/other/deleteAllData";
import route39 from "./routes/other/getVersion";
import route40 from "./routes/production/assets/getAssetsData";
import route41 from "./routes/production/editImage/generateFlowImage";
import route42 from "./routes/production/editImage/getImageFlow";
import route43 from "./routes/production/editImage/saveImageFlow";
import route44 from "./routes/production/editImage/updateImageFlow";
import route45 from "./routes/production/exportImage";
import route46 from "./routes/production/getFlowData";
import route47 from "./routes/production/getProductionData";
import route48 from "./routes/production/getStoryboardData";
import route49 from "./routes/production/saveFlowData";
import route50 from "./routes/production/storyboard/downPreviewImage";
import route51 from "./routes/production/storyboard/getStoryboardData";
import route52 from "./routes/production/storyboard/previewImage";
import route53 from "./routes/production/workbench/confirmSelection";
import route54 from "./routes/production/workbench/delVideo";
import route55 from "./routes/production/workbench/generateVideo";
import route56 from "./routes/production/workbench/getChatLines";
import route57 from "./routes/production/workbench/getVideoModelDetail";
import route58 from "./routes/production/workbench/videoPolling";
import route59 from "./routes/project/addProject";
import route60 from "./routes/project/delProject";
import route61 from "./routes/project/editProject";
import route62 from "./routes/project/getProject";
import route63 from "./routes/script/addScript";
import route64 from "./routes/script/delScript";
import route65 from "./routes/script/exportScript";
import route66 from "./routes/script/getScrptApi";
import route67 from "./routes/script/updateScript";
import route68 from "./routes/scriptAgent/getPlanData";
import route69 from "./routes/scriptAgent/setPlanData";
import route70 from "./routes/setting/agentDeploy/agentSetKey";
import route71 from "./routes/setting/agentDeploy/deployAgentModel";
import route72 from "./routes/setting/agentDeploy/getAgentDeploy";
import route73 from "./routes/setting/dbConfig/clearData";
import route74 from "./routes/setting/fileManagement/openFolder";
import route75 from "./routes/setting/getTextModel";
import route76 from "./routes/setting/loginConfig/getUser";
import route77 from "./routes/setting/loginConfig/updateUserPwd";
import route78 from "./routes/setting/memoryConfig/delAllMemory";
import route79 from "./routes/setting/memoryConfig/getMemory";
import route80 from "./routes/setting/memoryConfig/sureMemory";
import route81 from "./routes/setting/skillManagement/addSkill";
import route82 from "./routes/setting/skillManagement/deleteSkill";
import route83 from "./routes/setting/skillManagement/embeddingSkill";
import route84 from "./routes/setting/skillManagement/generateDescription";
import route85 from "./routes/setting/skillManagement/getSkillList";
import route86 from "./routes/setting/skillManagement/scanSkills";
import route87 from "./routes/setting/skillManagement/updateSkill";
import route88 from "./routes/setting/vendorConfig/addVendor";
import route89 from "./routes/setting/vendorConfig/deleteVendor";
import route90 from "./routes/setting/vendorConfig/getVendorList";
import route91 from "./routes/setting/vendorConfig/modelTest";
import route92 from "./routes/setting/vendorConfig/updateVendor";
import route93 from "./routes/task/getTaskApi";
import route94 from "./routes/task/getTaskCategories";
import route95 from "./routes/task/taskDetails";
import route96 from "./routes/test/test";
export default async (app: Express) => {
app.use("/api/agents/clearMemory", route1);
@ -110,87 +111,88 @@ export default async (app: Express) => {
app.use("/api/assets/delAssets", route10);
app.use("/api/assets/getAssetsApi", route11);
app.use("/api/assets/getImage", route12);
app.use("/api/assets/saveAssets", route13);
app.use("/api/assets/updateAssets", route14);
app.use("/api/assets/uploadClip", route15);
app.use("/api/assetsGenerate/generateAssets", route16);
app.use("/api/assetsGenerate/polishAssetsPrompt", route17);
app.use("/api/cornerScape/getAllAssets", route18);
app.use("/api/general/generalStatistics", route19);
app.use("/api/general/getSingleProject", route20);
app.use("/api/general/updateProject", route21);
app.use("/api/login/login", route22);
app.use("/api/migrate/migrateData", route23);
app.use("/api/modelSelect/getModelDetail", route24);
app.use("/api/modelSelect/getModelList", route25);
app.use("/api/novel/addNovel", route26);
app.use("/api/novel/batchDeleteNovel", route27);
app.use("/api/novel/delNovel", route28);
app.use("/api/novel/event/batchDeleteEvent", route29);
app.use("/api/novel/event/deletEvent", route30);
app.use("/api/novel/event/generateEvents", route31);
app.use("/api/novel/event/getEvent", route32);
app.use("/api/novel/getNovel", route33);
app.use("/api/novel/getNovelEventState", route34);
app.use("/api/novel/getNovelIndex", route35);
app.use("/api/novel/updateNovel", route36);
app.use("/api/other/deleteAllData", route37);
app.use("/api/other/getVersion", route38);
app.use("/api/production/assets/getAssetsData", route39);
app.use("/api/production/editImage/generateFlowImage", route40);
app.use("/api/production/editImage/getImageFlow", route41);
app.use("/api/production/editImage/saveImageFlow", route42);
app.use("/api/production/editImage/updateImageFlow", route43);
app.use("/api/production/exportImage", route44);
app.use("/api/production/getFlowData", route45);
app.use("/api/production/getProductionData", route46);
app.use("/api/production/getStoryboardData", route47);
app.use("/api/production/saveFlowData", route48);
app.use("/api/production/storyboard/downPreviewImage", route49);
app.use("/api/production/storyboard/getStoryboardData", route50);
app.use("/api/production/storyboard/previewImage", route51);
app.use("/api/production/workbench/confirmSelection", route52);
app.use("/api/production/workbench/delVideo", route53);
app.use("/api/production/workbench/generateVideo", route54);
app.use("/api/production/workbench/getChatLines", route55);
app.use("/api/production/workbench/getVideoModelDetail", route56);
app.use("/api/production/workbench/videoPolling", route57);
app.use("/api/project/addProject", route58);
app.use("/api/project/delProject", route59);
app.use("/api/project/editProject", route60);
app.use("/api/project/getProject", route61);
app.use("/api/script/addScript", route62);
app.use("/api/script/delScript", route63);
app.use("/api/script/exportScript", route64);
app.use("/api/script/getScrptApi", route65);
app.use("/api/script/updateScript", route66);
app.use("/api/scriptAgent/getPlanData", route67);
app.use("/api/scriptAgent/setPlanData", route68);
app.use("/api/setting/agentDeploy/agentSetKey", route69);
app.use("/api/setting/agentDeploy/deployAgentModel", route70);
app.use("/api/setting/agentDeploy/getAgentDeploy", route71);
app.use("/api/setting/dbConfig/clearData", route72);
app.use("/api/setting/fileManagement/openFolder", route73);
app.use("/api/setting/getTextModel", route74);
app.use("/api/setting/loginConfig/getUser", route75);
app.use("/api/setting/loginConfig/updateUserPwd", route76);
app.use("/api/setting/memoryConfig/delAllMemory", route77);
app.use("/api/setting/memoryConfig/getMemory", route78);
app.use("/api/setting/memoryConfig/sureMemory", route79);
app.use("/api/setting/skillManagement/addSkill", route80);
app.use("/api/setting/skillManagement/deleteSkill", route81);
app.use("/api/setting/skillManagement/embeddingSkill", route82);
app.use("/api/setting/skillManagement/generateDescription", route83);
app.use("/api/setting/skillManagement/getSkillList", route84);
app.use("/api/setting/skillManagement/scanSkills", route85);
app.use("/api/setting/skillManagement/updateSkill", route86);
app.use("/api/setting/vendorConfig/addVendor", route87);
app.use("/api/setting/vendorConfig/deleteVendor", route88);
app.use("/api/setting/vendorConfig/getVendorList", route89);
app.use("/api/setting/vendorConfig/modelTest", route90);
app.use("/api/setting/vendorConfig/updateVendor", route91);
app.use("/api/task/getTaskApi", route92);
app.use("/api/task/getTaskCategories", route93);
app.use("/api/task/taskDetails", route94);
app.use("/api/test/test", route95);
app.use("/api/assets/getMaterialData", route13);
app.use("/api/assets/saveAssets", route14);
app.use("/api/assets/updateAssets", route15);
app.use("/api/assets/uploadClip", route16);
app.use("/api/assetsGenerate/generateAssets", route17);
app.use("/api/assetsGenerate/polishAssetsPrompt", route18);
app.use("/api/cornerScape/getAllAssets", route19);
app.use("/api/general/generalStatistics", route20);
app.use("/api/general/getSingleProject", route21);
app.use("/api/general/updateProject", route22);
app.use("/api/login/login", route23);
app.use("/api/migrate/migrateData", route24);
app.use("/api/modelSelect/getModelDetail", route25);
app.use("/api/modelSelect/getModelList", route26);
app.use("/api/novel/addNovel", route27);
app.use("/api/novel/batchDeleteNovel", route28);
app.use("/api/novel/delNovel", route29);
app.use("/api/novel/event/batchDeleteEvent", route30);
app.use("/api/novel/event/deletEvent", route31);
app.use("/api/novel/event/generateEvents", route32);
app.use("/api/novel/event/getEvent", route33);
app.use("/api/novel/getNovel", route34);
app.use("/api/novel/getNovelEventState", route35);
app.use("/api/novel/getNovelIndex", route36);
app.use("/api/novel/updateNovel", route37);
app.use("/api/other/deleteAllData", route38);
app.use("/api/other/getVersion", route39);
app.use("/api/production/assets/getAssetsData", route40);
app.use("/api/production/editImage/generateFlowImage", route41);
app.use("/api/production/editImage/getImageFlow", route42);
app.use("/api/production/editImage/saveImageFlow", route43);
app.use("/api/production/editImage/updateImageFlow", route44);
app.use("/api/production/exportImage", route45);
app.use("/api/production/getFlowData", route46);
app.use("/api/production/getProductionData", route47);
app.use("/api/production/getStoryboardData", route48);
app.use("/api/production/saveFlowData", route49);
app.use("/api/production/storyboard/downPreviewImage", route50);
app.use("/api/production/storyboard/getStoryboardData", route51);
app.use("/api/production/storyboard/previewImage", route52);
app.use("/api/production/workbench/confirmSelection", route53);
app.use("/api/production/workbench/delVideo", route54);
app.use("/api/production/workbench/generateVideo", route55);
app.use("/api/production/workbench/getChatLines", route56);
app.use("/api/production/workbench/getVideoModelDetail", route57);
app.use("/api/production/workbench/videoPolling", route58);
app.use("/api/project/addProject", route59);
app.use("/api/project/delProject", route60);
app.use("/api/project/editProject", route61);
app.use("/api/project/getProject", route62);
app.use("/api/script/addScript", route63);
app.use("/api/script/delScript", route64);
app.use("/api/script/exportScript", route65);
app.use("/api/script/getScrptApi", route66);
app.use("/api/script/updateScript", route67);
app.use("/api/scriptAgent/getPlanData", route68);
app.use("/api/scriptAgent/setPlanData", route69);
app.use("/api/setting/agentDeploy/agentSetKey", route70);
app.use("/api/setting/agentDeploy/deployAgentModel", route71);
app.use("/api/setting/agentDeploy/getAgentDeploy", route72);
app.use("/api/setting/dbConfig/clearData", route73);
app.use("/api/setting/fileManagement/openFolder", route74);
app.use("/api/setting/getTextModel", route75);
app.use("/api/setting/loginConfig/getUser", route76);
app.use("/api/setting/loginConfig/updateUserPwd", route77);
app.use("/api/setting/memoryConfig/delAllMemory", route78);
app.use("/api/setting/memoryConfig/getMemory", route79);
app.use("/api/setting/memoryConfig/sureMemory", route80);
app.use("/api/setting/skillManagement/addSkill", route81);
app.use("/api/setting/skillManagement/deleteSkill", route82);
app.use("/api/setting/skillManagement/embeddingSkill", route83);
app.use("/api/setting/skillManagement/generateDescription", route84);
app.use("/api/setting/skillManagement/getSkillList", route85);
app.use("/api/setting/skillManagement/scanSkills", route86);
app.use("/api/setting/skillManagement/updateSkill", route87);
app.use("/api/setting/vendorConfig/addVendor", route88);
app.use("/api/setting/vendorConfig/deleteVendor", route89);
app.use("/api/setting/vendorConfig/getVendorList", route90);
app.use("/api/setting/vendorConfig/modelTest", route91);
app.use("/api/setting/vendorConfig/updateVendor", route92);
app.use("/api/task/getTaskApi", route93);
app.use("/api/task/getTaskCategories", route94);
app.use("/api/task/taskDetails", route95);
app.use("/api/test/test", route96);
}

View File

@ -6,6 +6,7 @@ import { useSkill } from "@/utils/agent/skillsTools";
export default router.get("/", async (req, res) => {
const skill = await useSkill("universal_agent.md");
console.log("%c Line:11 🍏 skill.prompt", "background:#fca650", skill.prompt);
const result = await u.Ai.Text("universalAgent").invoke({
system: "请直接调用activate_skill工具激活技能" + skill.prompt,
messages: [{ role: "user", content: `如何烹饪龙肉` }],

1699
yarn.lock

File diff suppressed because it is too large Load Diff