From 3243baa87295e06d18f7c728752bae6cd009e592 Mon Sep 17 00:00:00 2001 From: abearxiong Date: Thu, 12 Mar 2026 13:51:13 +0800 Subject: [PATCH] Refactor code structure for improved readability and maintainability --- assistant/package.json | 18 +- assistant/src/module/assistant/config/args.ts | 9 +- .../src/module/assistant/config/index.ts | 3 + assistant/src/services/init/common.ts | 33 +- assistant/src/services/init/package.json | 20 +- package.json | 12 +- pnpm-lock.yaml | 656 +++++++++++------- 7 files changed, 432 insertions(+), 319 deletions(-) diff --git a/assistant/package.json b/assistant/package.json index f8f6baa..8d326a3 100644 --- a/assistant/package.json +++ b/assistant/package.json @@ -10,7 +10,7 @@ ], "author": "abearxiong (https://www.xiongxiao.me)", "license": "MIT", - "packageManager": "pnpm@10.31.0", + "packageManager": "pnpm@10.32.1", "type": "module", "files": [ "dist", @@ -43,18 +43,18 @@ }, "devDependencies": { "@inquirer/prompts": "^8.3.0", - "@kevisual/ai": "^0.0.26", - "@kevisual/api": "^0.0.62", + "@kevisual/ai": "^0.0.28", + "@kevisual/api": "^0.0.64", "@kevisual/load": "^0.0.6", "@kevisual/local-app-manager": "^0.1.32", "@kevisual/logger": "^0.0.4", "@kevisual/query": "0.0.53", - "@kevisual/router": "^0.0.90", + "@kevisual/router": "^0.1.1", "@kevisual/types": "^0.0.12", "@kevisual/use-config": "^1.0.30", - "@opencode-ai/plugin": "^1.2.22", + "@opencode-ai/plugin": "^1.2.24", "@types/bun": "^1.3.10", - "@types/node": "^25.3.5", + "@types/node": "^25.4.0", "@types/send": "^1.2.1", "@types/ws": "^8.18.1", "chalk": "^5.6.2", @@ -76,11 +76,11 @@ "access": "public" }, "dependencies": { - "@aws-sdk/client-s3": "^3.1004.0", - "@kevisual/js-filter": "^0.0.5", + "@aws-sdk/client-s3": "^3.1007.0", + "@kevisual/js-filter": "^0.0.6", "@kevisual/oss": "^0.0.20", "@kevisual/video-tools": "^0.0.13", - "@opencode-ai/sdk": "^1.2.22", + "@opencode-ai/sdk": "^1.2.24", "es-toolkit": "^1.45.1", "eventemitter3": "^5.0.4", "lowdb": "^7.0.1", diff --git a/assistant/src/module/assistant/config/args.ts b/assistant/src/module/assistant/config/args.ts index 63b8c17..0062355 100644 --- a/assistant/src/module/assistant/config/args.ts +++ b/assistant/src/module/assistant/config/args.ts @@ -9,14 +9,7 @@ const envKevisualDir = process.env.ASSISTANT_CONFIG_DIR if (envKevisualDir) { kevisualDir = envKevisualDir; logger.debug('使用环境变量 ASSISTANT_CONFIG_DIR 作为 kevisual 目录:', kevisualDir); -} else { - if (!kevisualDir) { - const isCNB = process.env.CNB_GROUP_SLUG; - if (isCNB) { - kevisualDir = path.join('/workspace/kevisual'); - } - } -} +} export const HomeConfigDir = path.join(kevisualDir, 'assistant-app'); diff --git a/assistant/src/module/assistant/config/index.ts b/assistant/src/module/assistant/config/index.ts index 900c187..be678cf 100644 --- a/assistant/src/module/assistant/config/index.ts +++ b/assistant/src/module/assistant/config/index.ts @@ -399,6 +399,9 @@ export class AssistantConfig { docs: `${kevisualUrl}/root/cli/docs/`, home: isCNB ? '/root/cli-center' : '/root/home', proxy: [], + "routes": [ + "@kevisual/cnb/routes" + ], share: { enabled: true, url: 'https://kevisual.cn/ws/proxy', diff --git a/assistant/src/services/init/common.ts b/assistant/src/services/init/common.ts index 5c0e780..2d657d3 100644 --- a/assistant/src/services/init/common.ts +++ b/assistant/src/services/init/common.ts @@ -1,38 +1,37 @@ export const configJson = `{ "name": "assistant-app", - "version": "1.0.1", + "version": "1.0.3", "description": "assistant-app package pnpm, node pkgs projects", "type": "module", "scripts": { "start": "pm2 start apps/code-center/dist/app.mjs --name code-center", - "proxy": "pm2 start apps/page-proxy/dist/app.mjs --name page-proxy", "preview": "pnpm i && ASSISTANT_CONFIG_DIR=/workspace/kevisual asst server -s" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { - "@aws-sdk/client-s3": "^3.990.0", - "@kevisual/oss": "^0.0.19", - "@kevisual/query": "^0.0.40", - "eventemitter3": "^5.0.4", - "@kevisual/router": "^0.0.70", + "@aws-sdk/client-s3": "^3.1007.0", + "@kevisual/oss": "^0.0.20", + "@kevisual/query": "^0.0.53", + "@kevisual/router": "^0.1.1", + "@kevisual/cnb": "^0.0.42", "@kevisual/use-config": "^1.0.30", - "ioredis": "^5.9.3", - "pg": "^8.18.0", - "pm2": "^6.0.14", - "crypto-js": "^4.2.0", - "unstorage": "^1.17.4", "dayjs": "^1.11.19", - "es-toolkit": "^1.44.0", + "dotenv": "^17.3.1", + "es-toolkit": "^1.45.1", + "eventemitter3": "^5.0.4", + "ioredis": "^5.10.0", "node-cron": "^4.2.1", - "dotenv": "^17.3.1" + "pg": "^8.20.0", + "pm2": "^6.0.14", + "unstorage": "^1.17.4" }, "devDependencies": { "@kevisual/types": "^0.0.12", - "@types/bun": "^1.3.9", - "@types/crypto-js": "^4.2.2", - "@types/node": "^25.2.3" + "@types/bun": "^1.3.10", + "@types/node": "^25.4.0", + "semver": "^7.7.4" } } ` \ No newline at end of file diff --git a/assistant/src/services/init/package.json b/assistant/src/services/init/package.json index 2f64a4c..a63cec1 100644 --- a/assistant/src/services/init/package.json +++ b/assistant/src/services/init/package.json @@ -5,32 +5,32 @@ "type": "module", "scripts": { "start": "pm2 start apps/code-center/dist/app.mjs --name code-center", - "proxy": "pm2 start apps/page-proxy/dist/app.mjs --name page-proxy", "preview": "pnpm i && ASSISTANT_CONFIG_DIR=/workspace/kevisual asst server -s" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { - "@aws-sdk/client-s3": "^3.994.0", - "@kevisual/oss": "^0.0.19", - "@kevisual/query": "^0.0.49", - "@kevisual/router": "^0.0.83", + "@aws-sdk/client-s3": "^3.1007.0", + "@kevisual/oss": "^0.0.20", + "@kevisual/query": "^0.0.53", + "@kevisual/router": "^0.1.1", + "@kevisual/cnb": "^0.0.42", "@kevisual/use-config": "^1.0.30", "dayjs": "^1.11.19", "dotenv": "^17.3.1", - "es-toolkit": "^1.44.0", + "es-toolkit": "^1.45.1", "eventemitter3": "^5.0.4", - "ioredis": "^5.9.3", + "ioredis": "^5.10.0", "node-cron": "^4.2.1", - "pg": "^8.18.0", + "pg": "^8.20.0", "pm2": "^6.0.14", "unstorage": "^1.17.4" }, "devDependencies": { "@kevisual/types": "^0.0.12", - "@types/bun": "^1.3.9", - "@types/node": "^25.3.0", + "@types/bun": "^1.3.10", + "@types/node": "^25.4.0", "semver": "^7.7.4" } } \ No newline at end of file diff --git a/package.json b/package.json index 69447cc..bab112e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@kevisual/cli", - "version": "0.1.20", + "version": "0.1.21", "description": "envision 命令行工具", "type": "module", "basename": "/root/cli", @@ -45,9 +45,9 @@ "@kevisual/app": "^0.0.2", "@kevisual/auth": "^2.0.3", "@kevisual/context": "^0.0.8", - "@kevisual/router": "^0.0.90", + "@kevisual/router": "^0.1.1", "@kevisual/use-config": "^1.0.30", - "@opencode-ai/sdk": "^1.2.22", + "@opencode-ai/sdk": "^1.2.24", "@types/busboy": "^1.5.4", "busboy": "^1.6.0", "eventemitter3": "^5.0.4", @@ -61,8 +61,8 @@ "unstorage": "^1.17.4" }, "devDependencies": { - "@kevisual/api": "^0.0.62", - "@kevisual/cnb": "^0.0.37", + "@kevisual/api": "^0.0.64", + "@kevisual/cnb": "^0.0.42", "@kevisual/dts": "^0.0.4", "@kevisual/load": "^0.0.6", "@kevisual/logger": "^0.0.4", @@ -71,7 +71,7 @@ "@types/crypto-js": "^4.2.2", "@types/jsonwebtoken": "^9.0.10", "@types/micromatch": "^4.0.10", - "@types/node": "^25.3.5", + "@types/node": "^25.4.0", "@types/semver": "^7.7.1", "chalk": "^5.6.2", "commander": "^14.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 926eada..a6000f9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,7 +10,7 @@ importers: dependencies: '@inquirer/prompts': specifier: ^8.3.0 - version: 8.3.0(@types/node@25.3.5) + version: 8.3.0(@types/node@25.4.0) '@kevisual/app': specifier: ^0.0.2 version: 0.0.2(dotenv@17.3.1) @@ -21,14 +21,14 @@ importers: specifier: ^0.0.8 version: 0.0.8 '@kevisual/router': - specifier: ^0.0.89 - version: 0.0.89 + specifier: ^0.1.0 + version: 0.1.0 '@kevisual/use-config': specifier: ^1.0.30 version: 1.0.30(dotenv@17.3.1) '@opencode-ai/sdk': - specifier: ^1.2.21 - version: 1.2.21 + specifier: ^1.2.24 + version: 1.2.24 '@types/busboy': specifier: ^1.5.4 version: 1.5.4 @@ -39,8 +39,8 @@ importers: specifier: ^5.0.4 version: 5.0.4 jose: - specifier: ^6.2.0 - version: 6.2.0 + specifier: ^6.2.1 + version: 6.2.1 lowdb: specifier: ^7.0.1 version: 7.0.1 @@ -67,8 +67,8 @@ importers: specifier: ^0.0.62 version: 0.0.62(@types/react@19.2.10)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@kevisual/cnb': - specifier: ^0.0.37 - version: 0.0.37(dotenv@17.3.1)(idb-keyval@6.2.2)(ioredis@5.9.3) + specifier: ^0.0.42 + version: 0.0.42(dotenv@17.3.1)(idb-keyval@6.2.2)(ioredis@5.9.3) '@kevisual/dts': specifier: ^0.0.4 version: 0.0.4(typescript@5.8.2) @@ -94,8 +94,8 @@ importers: specifier: ^4.0.10 version: 4.0.10 '@types/node': - specifier: ^25.3.5 - version: 25.3.5 + specifier: ^25.4.0 + version: 25.4.0 '@types/semver': specifier: ^7.7.1 version: 7.7.1 @@ -124,8 +124,8 @@ importers: specifier: ^9.0.3 version: 9.0.3 tar: - specifier: ^7.5.10 - version: 7.5.10 + specifier: ^7.5.11 + version: 7.5.11 zustand: specifier: ^5.0.11 version: 5.0.11(@types/react@19.2.10)(react@19.2.4) @@ -133,11 +133,11 @@ importers: assistant: dependencies: '@aws-sdk/client-s3': - specifier: ^3.1004.0 - version: 3.1004.0 + specifier: ^3.1006.0 + version: 3.1006.0 '@kevisual/js-filter': - specifier: ^0.0.5 - version: 0.0.5 + specifier: ^0.0.6 + version: 0.0.6 '@kevisual/oss': specifier: ^0.0.20 version: 0.0.20 @@ -145,8 +145,8 @@ importers: specifier: ^0.0.13 version: 0.0.13(dotenv@17.3.1)(supports-color@10.2.2) '@opencode-ai/sdk': - specifier: ^1.2.21 - version: 1.2.21 + specifier: ^1.2.24 + version: 1.2.24 es-toolkit: specifier: ^1.45.1 version: 1.45.1 @@ -171,10 +171,10 @@ importers: devDependencies: '@inquirer/prompts': specifier: ^8.3.0 - version: 8.3.0(@types/node@25.3.5) + version: 8.3.0(@types/node@25.4.0) '@kevisual/ai': - specifier: ^0.0.26 - version: 0.0.26 + specifier: ^0.0.27 + version: 0.0.27 '@kevisual/api': specifier: ^0.0.62 version: 0.0.62(@types/react@19.2.10)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -191,8 +191,8 @@ importers: specifier: 0.0.53 version: 0.0.53 '@kevisual/router': - specifier: ^0.0.89 - version: 0.0.89 + specifier: ^0.1.0 + version: 0.1.0 '@kevisual/types': specifier: ^0.0.12 version: 0.0.12 @@ -200,14 +200,14 @@ importers: specifier: ^1.0.30 version: 1.0.30(dotenv@17.3.1) '@opencode-ai/plugin': - specifier: ^1.2.21 - version: 1.2.21 + specifier: ^1.2.24 + version: 1.2.24 '@types/bun': specifier: ^1.3.10 version: 1.3.10 '@types/node': - specifier: ^25.3.5 - version: 25.3.5 + specifier: ^25.4.0 + version: 25.4.0 '@types/send': specifier: ^1.2.1 version: 1.2.1 @@ -252,16 +252,16 @@ importers: dependencies: '@astrojs/mdx': specifier: ^4.3.13 - version: 4.3.13(astro@5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2)) + version: 4.3.13(astro@5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2)) '@astrojs/react': specifier: ^4.4.2 - version: 4.4.2(@types/node@25.3.5)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@2.6.1)(lightningcss@1.30.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 4.4.2(@types/node@25.4.0)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@2.6.1)(lightningcss@1.30.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) '@astrojs/sitemap': specifier: ^3.7.0 version: 3.7.0 '@astrojs/vue': specifier: ^5.1.4 - version: 5.1.4(@types/node@25.3.5)(astro@5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(vue@3.5.27(typescript@5.8.2)) + version: 5.1.4(@types/node@25.4.0)(astro@5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(vue@3.5.27(typescript@5.8.2)) '@kevisual/api': specifier: ^0.0.28 version: 0.0.28 @@ -282,7 +282,7 @@ importers: version: 1.2.4(@types/react@19.2.10)(react@19.2.4) '@tailwindcss/vite': specifier: ^4.1.18 - version: 4.1.18(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) + version: 4.1.18(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) '@uiw/react-md-editor': specifier: ^4.0.11 version: 4.0.11(@types/react@19.2.10)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -291,7 +291,7 @@ importers: version: 6.2.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) astro: specifier: ^5.16.15 - version: 5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) + version: 5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -362,6 +362,40 @@ importers: packages: + '@ai-sdk/anthropic@3.0.58': + resolution: {integrity: sha512-/53SACgmVukO4bkms4dpxpRlYhW8Ct6QZRe6sj1Pi5H00hYhxIrqfiLbZBGxkdRvjsBQeP/4TVGsXgH5rQeb8Q==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/gateway@3.0.66': + resolution: {integrity: sha512-SIQ0YY0iMuv+07HLsZ+bB990zUJ6S4ujORAh+Jv1V2KGNn73qQKnGO0JBk+w+Res8YqOFSycwDoWcFlQrVxS4A==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/openai-compatible@2.0.35': + resolution: {integrity: sha512-g3wA57IAQFb+3j4YuFndgkUdXyRETZVvbfAWM+UX7bZSxA3xjes0v3XKgIdKdekPtDGsh4ZX2byHD0gJIMPfiA==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/openai@3.0.41': + resolution: {integrity: sha512-IZ42A+FO+vuEQCVNqlnAPYQnnUpUfdJIwn1BEDOBywiEHa23fw7PahxVtlX9zm3/zMvTW4JKPzWyvAgDu+SQ2A==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider-utils@4.0.19': + resolution: {integrity: sha512-3eG55CrSWCu2SXlqq2QCsFjo3+E7+Gmg7i/oRVoSZzIodTuDSfLb3MRje67xE9RFea73Zao7Lm4mADIfUETKGg==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider@3.0.8': + resolution: {integrity: sha512-oGMAgGoQdBXbZqNG0Ze56CHjDZ1IDYOwGYxYjO5KLSlz5HiNQ9udIXsPZ61VWaHGZ5XW/jyjmr6t2xz2jGVwbQ==} + engines: {node: '>=18'} + '@ant-design/colors@8.0.1': resolution: {integrity: sha512-foPVl0+SWIslGUtD/xBr1p9U4AKzPhNYEseXYRRo5QSzGACYZrQbe11AYJbYfAWnWSpGBx6JjBmSeugUsD9vqQ==} @@ -465,48 +499,48 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-s3@3.1004.0': - resolution: {integrity: sha512-m0zNfpsona9jQdX1cHtHArOiuvSGZPsgp/KRZS2YjJhKah96G2UN3UNGZQ6aVjXIQjCY6UanCJo0uW9Xf2U41w==} + '@aws-sdk/client-s3@3.1006.0': + resolution: {integrity: sha512-tm8R/LgWDC3zWPMCdD990owvBrmuIM2A39+OWKW/HyAomWi6ancPz/H1K/hmxf0bqdXAaRUHBQMAmzwb1aR33Q==} engines: {node: '>=20.0.0'} - '@aws-sdk/core@3.973.18': - resolution: {integrity: sha512-GUIlegfcK2LO1J2Y98sCJy63rQSiLiDOgVw7HiHPRqfI2vb3XozTVqemwO0VSGXp54ngCnAQz0Lf0YPCBINNxA==} + '@aws-sdk/core@3.973.19': + resolution: {integrity: sha512-56KePyOcZnKTWCd89oJS1G6j3HZ9Kc+bh/8+EbvtaCCXdP6T7O7NzCiPuHRhFLWnzXIaXX3CxAz0nI5My9spHQ==} engines: {node: '>=20.0.0'} '@aws-sdk/crc64-nvme@3.972.4': resolution: {integrity: sha512-HKZIZLbRyvzo/bXZU7Zmk6XqU+1C9DjI56xd02vwuDIxedxBEqP17t9ExhbP9QFeNq/a3l9GOcyirFXxmbDhmw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-env@3.972.16': - resolution: {integrity: sha512-HrdtnadvTGAQUr18sPzGlE5El3ICphnH6SU7UQOMOWFgRKbTRNN8msTxM4emzguUso9CzaHU2xy5ctSrmK5YNA==} + '@aws-sdk/credential-provider-env@3.972.17': + resolution: {integrity: sha512-MBAMW6YELzE1SdkOniqr51mrjapQUv8JXSGxtwRjQV0mwVDutVsn22OPAUt4RcLRvdiHQmNBDEFP9iTeSVCOlA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-http@3.972.18': - resolution: {integrity: sha512-NyB6smuZAixND5jZumkpkunQ0voc4Mwgkd+SZ6cvAzIB7gK8HV8Zd4rS8Kn5MmoGgusyNfVGG+RLoYc4yFiw+A==} + '@aws-sdk/credential-provider-http@3.972.19': + resolution: {integrity: sha512-9EJROO8LXll5a7eUFqu48k6BChrtokbmgeMWmsH7lBb6lVbtjslUYz/ShLi+SHkYzTomiGBhmzTW7y+H4BxsnA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-ini@3.972.17': - resolution: {integrity: sha512-dFqh7nfX43B8dO1aPQHOcjC0SnCJ83H3F+1LoCh3X1P7E7N09I+0/taID0asU6GCddfDExqnEvQtDdkuMe5tKQ==} + '@aws-sdk/credential-provider-ini@3.972.18': + resolution: {integrity: sha512-vthIAXJISZnj2576HeyLBj4WTeX+I7PwWeRkbOa0mVX39K13SCGxCgOFuKj2ytm9qTlLOmXe4cdEnroteFtJfw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-login@3.972.17': - resolution: {integrity: sha512-gf2E5b7LpKb+JX2oQsRIDxdRZjBFZt2olCGlWCdb3vBERbXIPgm2t1R5mEnwd4j0UEO/Tbg5zN2KJbHXttJqwA==} + '@aws-sdk/credential-provider-login@3.972.18': + resolution: {integrity: sha512-kINzc5BBxdYBkPZ0/i1AMPMOk5b5QaFNbYMElVw5QTX13AKj6jcxnv/YNl9oW9mg+Y08ti19hh01HhyEAxsSJQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-node@3.972.18': - resolution: {integrity: sha512-ZDJa2gd1xiPg/nBDGhUlat02O8obaDEnICBAVS8qieZ0+nDfaB0Z3ec6gjZj27OqFTjnB/Q5a0GwQwb7rMVViw==} + '@aws-sdk/credential-provider-node@3.972.19': + resolution: {integrity: sha512-yDWQ9dFTr+IMxwanFe7+tbN5++q8psZBjlUwOiCXn1EzANoBgtqBwcpYcHaMGtn0Wlfj4NuXdf2JaEx1lz5RaQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-process@3.972.16': - resolution: {integrity: sha512-n89ibATwnLEg0ZdZmUds5bq8AfBAdoYEDpqP3uzPLaRuGelsKlIvCYSNNvfgGLi8NaHPNNhs1HjJZYbqkW9b+g==} + '@aws-sdk/credential-provider-process@3.972.17': + resolution: {integrity: sha512-c8G8wT1axpJDgaP3xzcy+q8Y1fTi9A2eIQJvyhQ9xuXrUZhlCfXbC0vM9bM1CUXiZppFQ1p7g0tuUMvil/gCPg==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-sso@3.972.17': - resolution: {integrity: sha512-wGtte+48xnhnhHMl/MsxzacBPs5A+7JJedjiP452IkHY7vsbYKcvQBqFye8LwdTJVeHtBHv+JFeTscnwepoWGg==} + '@aws-sdk/credential-provider-sso@3.972.18': + resolution: {integrity: sha512-YHYEfj5S2aqInRt5ub8nDOX8vAxgMvd84wm2Y3WVNfFa/53vOv9T7WOAqXI25qjj3uEcV46xxfqdDQk04h5XQA==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-web-identity@3.972.17': - resolution: {integrity: sha512-8aiVJh6fTdl8gcyL+sVNcNwTtWpmoFa1Sh7xlj6Z7L/cZ/tYMEBHq44wTYG8Kt0z/PpGNopD89nbj3FHl9QmTA==} + '@aws-sdk/credential-provider-web-identity@3.972.18': + resolution: {integrity: sha512-OqlEQpJ+J3T5B96qtC1zLLwkBloechP+fezKbCH0sbd2cCc0Ra55XpxWpk/hRj69xAOYtHvoC4orx6eTa4zU7g==} engines: {node: '>=20.0.0'} '@aws-sdk/middleware-bucket-endpoint@3.972.7': @@ -517,8 +551,8 @@ packages: resolution: {integrity: sha512-mvWqvm61bmZUKmmrtl2uWbokqpenY3Mc3Jf4nXB/Hse6gWxLPaCQThmhPBDzsPSV8/Odn8V6ovWt3pZ7vy4BFQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-flexible-checksums@3.973.4': - resolution: {integrity: sha512-7CH2jcGmkvkHc5Buz9IGbdjq1729AAlgYJiAvGq7qhCHqYleCsriWdSnmsqWTwdAfXHMT+pkxX3w6v5tJNcSug==} + '@aws-sdk/middleware-flexible-checksums@3.973.5': + resolution: {integrity: sha512-Dp3hqE5W6hG8HQ3Uh+AINx9wjjqYmFHbxede54sGj3akx/haIQrkp85lNdTdC+ouNUcSYNiuGkzmyDREfHX1Gg==} engines: {node: '>=20.0.0'} '@aws-sdk/middleware-host-header@3.972.7': @@ -537,32 +571,32 @@ packages: resolution: {integrity: sha512-l2VQdcBcYLzIzykCHtXlbpiVCZ94/xniLIkAj0jpnpjY4xlgZx7f56Ypn+uV1y3gG0tNVytJqo3K9bfMFee7SQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-sdk-s3@3.972.18': - resolution: {integrity: sha512-5E3XxaElrdyk6ZJ0TjH7Qm6ios4b/qQCiLr6oQ8NK7e4Kn6JBTJCaYioQCQ65BpZ1+l1mK5wTAac2+pEz0Smpw==} + '@aws-sdk/middleware-sdk-s3@3.972.19': + resolution: {integrity: sha512-/CtOHHVFg4ZuN6CnLnYkrqWgVEnbOBC4kNiKa+4fldJ9cioDt3dD/f5vpq0cWLOXwmGL2zgVrVxNhjxWpxNMkg==} engines: {node: '>=20.0.0'} '@aws-sdk/middleware-ssec@3.972.7': resolution: {integrity: sha512-G9clGVuAml7d8DYzY6DnRi7TIIDRvZ3YpqJPz/8wnWS5fYx/FNWNmkO6iJVlVkQg9BfeMzd+bVPtPJOvC4B+nQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-user-agent@3.972.19': - resolution: {integrity: sha512-Km90fcXt3W/iqujHzuM6IaDkYCj73gsYufcuWXApWdzoTy6KGk8fnchAjePMARU0xegIR3K4N3yIo1vy7OVe8A==} + '@aws-sdk/middleware-user-agent@3.972.20': + resolution: {integrity: sha512-3kNTLtpUdeahxtnJRnj/oIdLAUdzTfr9N40KtxNhtdrq+Q1RPMdCJINRXq37m4t5+r3H70wgC3opW46OzFcZYA==} engines: {node: '>=20.0.0'} - '@aws-sdk/nested-clients@3.996.7': - resolution: {integrity: sha512-MlGWA8uPaOs5AiTZ5JLM4uuWDm9EEAnm9cqwvqQIc6kEgel/8s1BaOWm9QgUcfc9K8qd7KkC3n43yDbeXOA2tg==} + '@aws-sdk/nested-clients@3.996.8': + resolution: {integrity: sha512-6HlLm8ciMW8VzfB80kfIx16PBA9lOa9Dl+dmCBi78JDhvGlx3I7Rorwi5PpVRkL31RprXnYna3yBf6UKkD/PqA==} engines: {node: '>=20.0.0'} '@aws-sdk/region-config-resolver@3.972.7': resolution: {integrity: sha512-/Ev/6AI8bvt4HAAptzSjThGUMjcWaX3GX8oERkB0F0F9x2dLSBdgFDiyrRz3i0u0ZFZFQ1b28is4QhyqXTUsVA==} engines: {node: '>=20.0.0'} - '@aws-sdk/signature-v4-multi-region@3.996.6': - resolution: {integrity: sha512-NnsOQsVmJXy4+IdPFUjRCWPn9qNH1TzS/f7MiWgXeoHs903tJpAWQWQtoFvLccyPoBgomKP9L89RRr2YsT/L0g==} + '@aws-sdk/signature-v4-multi-region@3.996.7': + resolution: {integrity: sha512-mYhh7FY+7OOqjkYkd6+6GgJOsXK1xBWmuR+c5mxJPj2kr5TBNeZq+nUvE9kANWAux5UxDVrNOSiEM/wlHzC3Lg==} engines: {node: '>=20.0.0'} - '@aws-sdk/token-providers@3.1004.0': - resolution: {integrity: sha512-j9BwZZId9sFp+4GPhf6KrwO8Tben2sXibZA8D1vv2I1zBdvkUHcBA2g4pkqIpTRalMTLC0NPkBPX0gERxfy/iA==} + '@aws-sdk/token-providers@3.1005.0': + resolution: {integrity: sha512-vMxd+ivKqSxU9bHx5vmAlFKDAkjGotFU56IOkDa5DaTu1WWwbcse0yFHEm9I537oVvodaiwMl3VBwgHfzQ2rvw==} engines: {node: '>=20.0.0'} '@aws-sdk/types@3.973.5': @@ -584,8 +618,8 @@ packages: '@aws-sdk/util-user-agent-browser@3.972.7': resolution: {integrity: sha512-7SJVuvhKhMF/BkNS1n0QAJYgvEwYbK2QLKBrzDiwQGiTRU6Yf1f3nehTzm/l21xdAOtWSfp2uWSddPnP2ZtsVw==} - '@aws-sdk/util-user-agent-node@3.973.4': - resolution: {integrity: sha512-uqKeLqZ9D3nQjH7HGIERNXK9qnSpUK08l4MlJ5/NZqSSdeJsVANYp437EM9sEzwU28c2xfj2V6qlkqzsgtKs6Q==} + '@aws-sdk/util-user-agent-node@3.973.5': + resolution: {integrity: sha512-Dyy38O4GeMk7UQ48RupfHif//gqnOPbq/zlvRssc11E2mClT+aUfc3VS2yD8oLtzqO3RsqQ9I3gOBB4/+HjPOw==} engines: {node: '>=20.0.0'} peerDependencies: aws-crt: '>=1.0.0' @@ -1282,8 +1316,8 @@ packages: '@kevisual/ai@0.0.19': resolution: {integrity: sha512-AFc8m6OcHZNxCb88bvzhvwWTZ4EVYyPupBzPUsLKLpdNBvsqm9TRboKCM2brJj2cqHnm+H+RbAk9AcGJkYhRCA==} - '@kevisual/ai@0.0.26': - resolution: {integrity: sha512-lhaMpxi+vgqPdyBKiuNbSil4hy13tNLbDiqCtG0qUXKtvoowK6xMx269pSSYkYBivczM8g8I0XEouuJceUpJPg==} + '@kevisual/ai@0.0.27': + resolution: {integrity: sha512-1FlDg3Tj4171XY5NpTq+do69CyACgDE5oTA1RJYxQlGgaPeAjx2V2ahBgIDHRRhMSX/ztB1pBF1rx4zDoXq99A==} '@kevisual/api@0.0.28': resolution: {integrity: sha512-WQluRlu2qGM1qktIhPLODie8x382a6jEMfFOcay/rnkCgXK0BRpnqOKwlX7IMLdMqka7GY/BD69kSMnK1Exf5g==} @@ -1300,8 +1334,8 @@ packages: '@kevisual/auth@2.0.3': resolution: {integrity: sha512-4xpijaIhlCTr/DlJaV/gmkCQeg45EO1yxWpRvUX+1jCdVbuxSR0wZrF0SD9oybnjmKWMKDNPLsXyduFjMGcItA==} - '@kevisual/cnb@0.0.37': - resolution: {integrity: sha512-bVKvwyDjPzcawvbOVsgxUok17QRzFw7ZAysDkAHUFnMDZcQXKfD8UFw/tdvWWsEPA5VN9ewW4leQ5xFjyz+nwQ==} + '@kevisual/cnb@0.0.42': + resolution: {integrity: sha512-eVrTB2kFNaTYFkDx3U7TSdlFKitu+m8wCUCGZoDgH92q0diQI2Gy+Tcaw4NwMtxszPDvd0tzeRwxp+9wDcLdWQ==} hasBin: true '@kevisual/context@0.0.4': @@ -1317,6 +1351,9 @@ packages: '@kevisual/js-filter@0.0.5': resolution: {integrity: sha512-+S+Sf3K/aP6XtZI2s7TgKOr35UuvUvtpJ9YDW30a+mY0/N8gRuzyKhieBzQN7Ykayzz70uoMavBXut2rUlLgzw==} + '@kevisual/js-filter@0.0.6': + resolution: {integrity: sha512-FcbOsmS1inhwrfgXMM/XLFTGTHUxBCss32JEMYdEFWQDYCar5rN8cxD1W8FuKDTVRlpA+zBpQ/BE6XT4UaeljA==} + '@kevisual/kv-code@0.0.4': resolution: {integrity: sha512-9T7//119inomxhddfp0IRrXRzP0nbe0U7hiy+qgfghEbjKGTMkc8rdznz61xBjjMlonTPZnDikedYwNRTykWEw==} @@ -1347,9 +1384,6 @@ packages: '@kevisual/query@0.0.38': resolution: {integrity: sha512-bfvbSodsZyMfwY+1T2SvDeOCKsT/AaIxlVe0+B1R/fNhlg2MDq2CP0L9HKiFkEm+OXrvXcYDMKPUituVUM5J6Q==} - '@kevisual/query@0.0.52': - resolution: {integrity: sha512-m1UbyDTIxtfAQXM+EqhXA4ytE2V8rV8mXTZVBwzfW9O6+gtvAcRY7K1YYxfewTSXLVh9nwvfHe0KQ8MDL5ukyw==} - '@kevisual/query@0.0.53': resolution: {integrity: sha512-PAhpCLBr0emz0lGNlTVHMbJiC5wrtGLbInPddRzgKE35fiyNt+SWSsUWABiD0DeNrLN/OxWyAFobt880Z/e5MQ==} @@ -1365,11 +1399,11 @@ packages: '@kevisual/router@0.0.51': resolution: {integrity: sha512-i9qYBeS/um78oC912oWJD3iElB+5NTKyTrz1Hzf4DckiUFnjLL81UPwjIh5I2l9+ul0IZ/Pxx+sFSF99fJkzKg==} - '@kevisual/router@0.0.88': - resolution: {integrity: sha512-T8kEbxyTGxZpbxAKDplDjZMIY+HCnXOeEdjwQ11AQetrLuqLFDZS5PnaWdVAHnONUDLhYoftkNj7bGWLtyQDlg==} + '@kevisual/router@0.0.90': + resolution: {integrity: sha512-pFNfjsJkN9NqSVuyQB6QjvJnBeyrR/JQrM/KPa+PtvkByp0UA2FFFtSbB/OX7rduEKcXg5GImm4yucqFLdzewQ==} - '@kevisual/router@0.0.89': - resolution: {integrity: sha512-Sa8Fk3CeZzeZ78CUP9EDZnylkaKp9ibC1AzrF6Mivh5ifHJfyS5TZBw4NpNE11qoJN84MN/irX+poFU662V08A==} + '@kevisual/router@0.1.0': + resolution: {integrity: sha512-7NHoKP36uWkTDp/hxeUBMtawma91BrOAwG/caOrVsO8tM3wjqhlmCt0sIvLBM+snVJkmylROQR0WGaygd3JqYw==} '@kevisual/types@0.0.12': resolution: {integrity: sha512-zJXH2dosir3jVrQ6QG4i0+iLQeT9gJ3H+cKXs8ReWboxBSYzUZO78XssVeVrFPsJ33iaAqo4q3DWbSS1dWGn7Q==} @@ -1443,11 +1477,15 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@opencode-ai/plugin@1.2.21': - resolution: {integrity: sha512-2/JhdD19bu9fxPIzZun2x57KA4Q4EsY/yRQZO54GTsVugZ+T0b5GZkFFYIyOVE6bU4PCoSYBK5MAU+VCEyxvEA==} + '@opencode-ai/plugin@1.2.24': + resolution: {integrity: sha512-B3hw415D+2w6AtdRdvKWkuQVT0LXDWTdnAZhZC6gbd+UHh5O5DMmnZTe/YM8yK8ZZO9Dvo5rnV78TdDDYunJiw==} - '@opencode-ai/sdk@1.2.21': - resolution: {integrity: sha512-7XF7QlXDP5iAbGcAsxsrmKlIjRtSzKgbwuDHPPuZbILkhGOfCo05XwPidAZrVWucZ/re44oc/psw2zDECaZOpQ==} + '@opencode-ai/sdk@1.2.24': + resolution: {integrity: sha512-MQamFkRl4B/3d6oIRLNpkYR2fcwet1V/ffKyOKJXWjtP/CT9PDJMtLpu6olVHjXKQi8zMNltwuMhv1QsNtRlZg==} + + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} '@oslojs/encoding@1.1.0': resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==} @@ -2344,14 +2382,17 @@ packages: resolution: {integrity: sha512-75MeYpjdWRe8M5E3AW0O4Cx3UadweS+cwdXjwYGBW5h/gxxnbeZ877sLPX/ZJA9GVTlL/qG0dXP29JWFCD1Ayw==} engines: {node: '>=18.0.0'} - '@smithy/util-waiter@4.2.11': - resolution: {integrity: sha512-x7Rh2azQPs3XxbvCzcttRErKKvLnbZfqRf/gOjw2pb+ZscX88e5UkRPCB67bVnsFHxayvMvmePfKTqsRb+is1A==} + '@smithy/util-waiter@4.2.12': + resolution: {integrity: sha512-ek5hyDrzS6mBFsNCEX8LpM+EWSLq6b9FdmPRlkpXXhiJE6aIZehKT9clC6+nFpZAA+i/Yg0xlaPeWGNbf5rzQA==} engines: {node: '>=18.0.0'} '@smithy/uuid@1.1.2': resolution: {integrity: sha512-O/IEdcCUKkubz60tFbGA7ceITTAJsty+lBjNoorP4Z6XRqaFb/OjQjZODophEcuq68nKm6/0r+6/lLQ+XVpk8g==} engines: {node: '>=18.0.0'} + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + '@tailwindcss/node@4.1.18': resolution: {integrity: sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==} @@ -2512,8 +2553,8 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@25.3.5': - resolution: {integrity: sha512-oX8xrhvpiyRCQkG1MFchB09f+cXftgIXb3a7UUa4Y3wpmZPw5tyZGTLWhlESOLq1Rq6oDlc8npVU2/9xiCuXMA==} + '@types/node@25.4.0': + resolution: {integrity: sha512-9wLpoeWuBlcbBpOY3XmzSTG3oscB6xjBEEtn+pYXTfhyXhIxC5FsBer2KTopBlvKEiW9l13po9fq+SJY/5lkhw==} '@types/prismjs@1.26.5': resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==} @@ -2568,6 +2609,10 @@ packages: '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + '@vercel/oidc@3.1.0': + resolution: {integrity: sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==} + engines: {node: '>= 20'} + '@vitejs/plugin-react@4.7.0': resolution: {integrity: sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==} engines: {node: ^14.18.0 || >=16.0.0} @@ -2658,6 +2703,12 @@ packages: resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} engines: {node: '>= 14'} + ai@6.0.116: + resolution: {integrity: sha512-7yM+cTmyRLeNIXwt4Vj+mrrJgVQ9RMIW5WO0ydoLoYkewIvsMcvUmqS4j2RJTUXaF1HphwmSKUMQ/HypNRGOmA==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} @@ -3300,6 +3351,10 @@ packages: eventemitter3@5.0.4: resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} + eventsource-parser@3.0.6: + resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==} + engines: {node: '>=18.0.0'} + execa@9.6.1: resolution: {integrity: sha512-9Be3ZoN4LmYR90tUoVu2te2BsbzHfhJyfEiAVfz7N5/zv+jduIfLrV2xdQXOHbaD6KgpGdO9PRPM1Y4Q9QkPkA==} engines: {node: ^18.19.0 || >=20.5.0} @@ -3715,8 +3770,8 @@ packages: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true - jose@6.2.0: - resolution: {integrity: sha512-xsfE1TcSCbUdo6U07tR0mvhg0flGxU8tPLbF03mirl2ukGQENhUg4ubGYQnhVH0b5stLlPM+WOqDkEl1R1y5sQ==} + jose@6.2.1: + resolution: {integrity: sha512-jUaKr1yrbfaImV7R2TN/b3IcZzsw38/chqMpo2XJ7i2F8AfM/lA4G1goC3JVEwg0H7UldTmSt3P68nt31W7/mw==} js-git@0.7.8: resolution: {integrity: sha512-+E5ZH/HeRnoc/LW0AmAyhU+mNcWBzAKE+30+IDMLSLbbK+Tdt02AdkOKq9u15rlJsDEGFqtgckc8ZM59LhhiUA==} @@ -3739,6 +3794,9 @@ packages: json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} @@ -4857,8 +4915,8 @@ packages: resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} engines: {node: '>=6'} - tar@7.5.10: - resolution: {integrity: sha512-8mOPs1//5q/rlkNSPcCegA6hiHJYDmSLEI8aMH/CdSQJNWztHC9WHNam5zdQlfpTwB9Xp7IBEsHfV5LKMJGVAw==} + tar@7.5.11: + resolution: {integrity: sha512-ChjMH33/KetonMTAtpYdgUFr0tbz69Fp2v7zWxQfYZX4g5ZN2nOBXm1R2xyA+lMIKrLKIoKAwFj93jE/avX9cQ==} engines: {node: '>=18'} throttle-debounce@5.0.2: @@ -5297,6 +5355,42 @@ packages: snapshots: + '@ai-sdk/anthropic@3.0.58(zod@4.3.6)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.19(zod@4.3.6) + zod: 4.3.6 + + '@ai-sdk/gateway@3.0.66(zod@4.3.6)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.19(zod@4.3.6) + '@vercel/oidc': 3.1.0 + zod: 4.3.6 + + '@ai-sdk/openai-compatible@2.0.35(zod@4.3.6)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.19(zod@4.3.6) + zod: 4.3.6 + + '@ai-sdk/openai@3.0.41(zod@4.3.6)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.19(zod@4.3.6) + zod: 4.3.6 + + '@ai-sdk/provider-utils@4.0.19(zod@4.3.6)': + dependencies: + '@ai-sdk/provider': 3.0.8 + '@standard-schema/spec': 1.1.0 + eventsource-parser: 3.0.6 + zod: 4.3.6 + + '@ai-sdk/provider@3.0.8': + dependencies: + json-schema: 0.4.0 + '@ant-design/colors@8.0.1': dependencies: '@ant-design/fast-color': 3.0.1 @@ -5375,12 +5469,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.3.13(astro@5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))': + '@astrojs/mdx@4.3.13(astro@5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))': dependencies: '@astrojs/markdown-remark': 6.3.10 '@mdx-js/mdx': 3.1.1 acorn: 8.15.0 - astro: 5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) + astro: 5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) es-module-lexer: 1.7.0 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.5 @@ -5398,15 +5492,15 @@ snapshots: dependencies: prismjs: 1.30.0 - '@astrojs/react@4.4.2(@types/node@25.3.5)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@2.6.1)(lightningcss@1.30.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': + '@astrojs/react@4.4.2(@types/node@25.4.0)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@2.6.1)(lightningcss@1.30.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)': dependencies: '@types/react': 19.2.10 '@types/react-dom': 19.2.3(@types/react@19.2.10) - '@vitejs/plugin-react': 4.7.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) + '@vitejs/plugin-react': 4.7.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) react: 19.2.4 react-dom: 19.2.4(react@19.2.4) ultrahtml: 1.6.0 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) transitivePeerDependencies: - '@types/node' - jiti @@ -5439,14 +5533,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/vue@5.1.4(@types/node@25.3.5)(astro@5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(vue@3.5.27(typescript@5.8.2))': + '@astrojs/vue@5.1.4(@types/node@25.4.0)(astro@5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2))(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(vue@3.5.27(typescript@5.8.2))': dependencies: - '@vitejs/plugin-vue': 5.2.4(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) - '@vitejs/plugin-vue-jsx': 4.2.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) + '@vitejs/plugin-vue': 5.2.4(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) + '@vitejs/plugin-vue-jsx': 4.2.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) '@vue/compiler-sfc': 3.5.27 - astro: 5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) - vite-plugin-vue-devtools: 7.7.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) + astro: 5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) + vite-plugin-vue-devtools: 7.7.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) vue: 3.5.27(typescript@5.8.2) transitivePeerDependencies: - '@nuxt/kit' @@ -5511,29 +5605,29 @@ snapshots: '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-s3@3.1004.0': + '@aws-sdk/client-s3@3.1006.0': dependencies: '@aws-crypto/sha1-browser': 5.2.0 '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.973.18 - '@aws-sdk/credential-provider-node': 3.972.18 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/credential-provider-node': 3.972.19 '@aws-sdk/middleware-bucket-endpoint': 3.972.7 '@aws-sdk/middleware-expect-continue': 3.972.7 - '@aws-sdk/middleware-flexible-checksums': 3.973.4 + '@aws-sdk/middleware-flexible-checksums': 3.973.5 '@aws-sdk/middleware-host-header': 3.972.7 '@aws-sdk/middleware-location-constraint': 3.972.7 '@aws-sdk/middleware-logger': 3.972.7 '@aws-sdk/middleware-recursion-detection': 3.972.7 - '@aws-sdk/middleware-sdk-s3': 3.972.18 + '@aws-sdk/middleware-sdk-s3': 3.972.19 '@aws-sdk/middleware-ssec': 3.972.7 - '@aws-sdk/middleware-user-agent': 3.972.19 + '@aws-sdk/middleware-user-agent': 3.972.20 '@aws-sdk/region-config-resolver': 3.972.7 - '@aws-sdk/signature-v4-multi-region': 3.996.6 + '@aws-sdk/signature-v4-multi-region': 3.996.7 '@aws-sdk/types': 3.973.5 '@aws-sdk/util-endpoints': 3.996.4 '@aws-sdk/util-user-agent-browser': 3.972.7 - '@aws-sdk/util-user-agent-node': 3.973.4 + '@aws-sdk/util-user-agent-node': 3.973.5 '@smithy/config-resolver': 4.4.10 '@smithy/core': 3.23.9 '@smithy/eventstream-serde-browser': 4.2.11 @@ -5566,12 +5660,12 @@ snapshots: '@smithy/util-retry': 4.2.11 '@smithy/util-stream': 4.5.17 '@smithy/util-utf8': 4.2.2 - '@smithy/util-waiter': 4.2.11 + '@smithy/util-waiter': 4.2.12 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/core@3.973.18': + '@aws-sdk/core@3.973.19': dependencies: '@aws-sdk/types': 3.973.5 '@aws-sdk/xml-builder': 3.972.10 @@ -5592,17 +5686,17 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-env@3.972.16': + '@aws-sdk/credential-provider-env@3.972.17': dependencies: - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.972.18': + '@aws-sdk/credential-provider-http@3.972.19': dependencies: - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/types': 3.973.5 '@smithy/fetch-http-handler': 5.3.13 '@smithy/node-http-handler': 4.4.14 @@ -5613,16 +5707,16 @@ snapshots: '@smithy/util-stream': 4.5.17 tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.972.17': + '@aws-sdk/credential-provider-ini@3.972.18': dependencies: - '@aws-sdk/core': 3.973.18 - '@aws-sdk/credential-provider-env': 3.972.16 - '@aws-sdk/credential-provider-http': 3.972.18 - '@aws-sdk/credential-provider-login': 3.972.17 - '@aws-sdk/credential-provider-process': 3.972.16 - '@aws-sdk/credential-provider-sso': 3.972.17 - '@aws-sdk/credential-provider-web-identity': 3.972.17 - '@aws-sdk/nested-clients': 3.996.7 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/credential-provider-env': 3.972.17 + '@aws-sdk/credential-provider-http': 3.972.19 + '@aws-sdk/credential-provider-login': 3.972.18 + '@aws-sdk/credential-provider-process': 3.972.17 + '@aws-sdk/credential-provider-sso': 3.972.18 + '@aws-sdk/credential-provider-web-identity': 3.972.18 + '@aws-sdk/nested-clients': 3.996.8 '@aws-sdk/types': 3.973.5 '@smithy/credential-provider-imds': 4.2.11 '@smithy/property-provider': 4.2.11 @@ -5632,10 +5726,10 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-login@3.972.17': + '@aws-sdk/credential-provider-login@3.972.18': dependencies: - '@aws-sdk/core': 3.973.18 - '@aws-sdk/nested-clients': 3.996.7 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/nested-clients': 3.996.8 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/protocol-http': 5.3.11 @@ -5645,14 +5739,14 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-node@3.972.18': + '@aws-sdk/credential-provider-node@3.972.19': dependencies: - '@aws-sdk/credential-provider-env': 3.972.16 - '@aws-sdk/credential-provider-http': 3.972.18 - '@aws-sdk/credential-provider-ini': 3.972.17 - '@aws-sdk/credential-provider-process': 3.972.16 - '@aws-sdk/credential-provider-sso': 3.972.17 - '@aws-sdk/credential-provider-web-identity': 3.972.17 + '@aws-sdk/credential-provider-env': 3.972.17 + '@aws-sdk/credential-provider-http': 3.972.19 + '@aws-sdk/credential-provider-ini': 3.972.18 + '@aws-sdk/credential-provider-process': 3.972.17 + '@aws-sdk/credential-provider-sso': 3.972.18 + '@aws-sdk/credential-provider-web-identity': 3.972.18 '@aws-sdk/types': 3.973.5 '@smithy/credential-provider-imds': 4.2.11 '@smithy/property-provider': 4.2.11 @@ -5662,20 +5756,20 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-process@3.972.16': + '@aws-sdk/credential-provider-process@3.972.17': dependencies: - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/shared-ini-file-loader': 4.4.6 '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.972.17': + '@aws-sdk/credential-provider-sso@3.972.18': dependencies: - '@aws-sdk/core': 3.973.18 - '@aws-sdk/nested-clients': 3.996.7 - '@aws-sdk/token-providers': 3.1004.0 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/nested-clients': 3.996.8 + '@aws-sdk/token-providers': 3.1005.0 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/shared-ini-file-loader': 4.4.6 @@ -5684,10 +5778,10 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/credential-provider-web-identity@3.972.17': + '@aws-sdk/credential-provider-web-identity@3.972.18': dependencies: - '@aws-sdk/core': 3.973.18 - '@aws-sdk/nested-clients': 3.996.7 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/nested-clients': 3.996.8 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/shared-ini-file-loader': 4.4.6 @@ -5713,12 +5807,12 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/middleware-flexible-checksums@3.973.4': + '@aws-sdk/middleware-flexible-checksums@3.973.5': dependencies: '@aws-crypto/crc32': 5.2.0 '@aws-crypto/crc32c': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/crc64-nvme': 3.972.4 '@aws-sdk/types': 3.973.5 '@smithy/is-array-buffer': 4.2.2 @@ -5757,9 +5851,9 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/middleware-sdk-s3@3.972.18': + '@aws-sdk/middleware-sdk-s3@3.972.19': dependencies: - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/types': 3.973.5 '@aws-sdk/util-arn-parser': 3.972.3 '@smithy/core': 3.23.9 @@ -5780,9 +5874,9 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.972.19': + '@aws-sdk/middleware-user-agent@3.972.20': dependencies: - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/types': 3.973.5 '@aws-sdk/util-endpoints': 3.996.4 '@smithy/core': 3.23.9 @@ -5791,20 +5885,20 @@ snapshots: '@smithy/util-retry': 4.2.11 tslib: 2.8.1 - '@aws-sdk/nested-clients@3.996.7': + '@aws-sdk/nested-clients@3.996.8': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.973.18 + '@aws-sdk/core': 3.973.19 '@aws-sdk/middleware-host-header': 3.972.7 '@aws-sdk/middleware-logger': 3.972.7 '@aws-sdk/middleware-recursion-detection': 3.972.7 - '@aws-sdk/middleware-user-agent': 3.972.19 + '@aws-sdk/middleware-user-agent': 3.972.20 '@aws-sdk/region-config-resolver': 3.972.7 '@aws-sdk/types': 3.973.5 '@aws-sdk/util-endpoints': 3.996.4 '@aws-sdk/util-user-agent-browser': 3.972.7 - '@aws-sdk/util-user-agent-node': 3.973.4 + '@aws-sdk/util-user-agent-node': 3.973.5 '@smithy/config-resolver': 4.4.10 '@smithy/core': 3.23.9 '@smithy/fetch-http-handler': 5.3.13 @@ -5842,19 +5936,19 @@ snapshots: '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/signature-v4-multi-region@3.996.6': + '@aws-sdk/signature-v4-multi-region@3.996.7': dependencies: - '@aws-sdk/middleware-sdk-s3': 3.972.18 + '@aws-sdk/middleware-sdk-s3': 3.972.19 '@aws-sdk/types': 3.973.5 '@smithy/protocol-http': 5.3.11 '@smithy/signature-v4': 5.3.11 '@smithy/types': 4.13.0 tslib: 2.8.1 - '@aws-sdk/token-providers@3.1004.0': + '@aws-sdk/token-providers@3.1005.0': dependencies: - '@aws-sdk/core': 3.973.18 - '@aws-sdk/nested-clients': 3.996.7 + '@aws-sdk/core': 3.973.19 + '@aws-sdk/nested-clients': 3.996.8 '@aws-sdk/types': 3.973.5 '@smithy/property-provider': 4.2.11 '@smithy/shared-ini-file-loader': 4.4.6 @@ -5891,9 +5985,9 @@ snapshots: bowser: 2.13.1 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.973.4': + '@aws-sdk/util-user-agent-node@3.973.5': dependencies: - '@aws-sdk/middleware-user-agent': 3.972.19 + '@aws-sdk/middleware-user-agent': 3.972.20 '@aws-sdk/types': 3.973.5 '@smithy/node-config-provider': 4.3.11 '@smithy/types': 4.13.0 @@ -6397,122 +6491,122 @@ snapshots: '@inquirer/ansi@2.0.3': {} - '@inquirer/checkbox@5.1.0(@types/node@25.3.5)': + '@inquirer/checkbox@5.1.0(@types/node@25.4.0)': dependencies: '@inquirer/ansi': 2.0.3 - '@inquirer/core': 11.1.5(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) '@inquirer/figures': 2.0.3 - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/confirm@6.0.8(@types/node@25.3.5)': + '@inquirer/confirm@6.0.8(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/core@11.1.5(@types/node@25.3.5)': + '@inquirer/core@11.1.5(@types/node@25.4.0)': dependencies: '@inquirer/ansi': 2.0.3 '@inquirer/figures': 2.0.3 - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/type': 4.0.3(@types/node@25.4.0) cli-width: 4.1.0 fast-wrap-ansi: 0.2.0 mute-stream: 3.0.0 signal-exit: 4.1.0 optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/editor@5.0.8(@types/node@25.3.5)': + '@inquirer/editor@5.0.8(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/external-editor': 2.0.3(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/external-editor': 2.0.3(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/expand@5.0.8(@types/node@25.3.5)': + '@inquirer/expand@5.0.8(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/external-editor@2.0.3(@types/node@25.3.5)': + '@inquirer/external-editor@2.0.3(@types/node@25.4.0)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@inquirer/figures@2.0.3': {} - '@inquirer/input@5.0.8(@types/node@25.3.5)': + '@inquirer/input@5.0.8(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/number@4.0.8(@types/node@25.3.5)': + '@inquirer/number@4.0.8(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/password@5.0.8(@types/node@25.3.5)': + '@inquirer/password@5.0.8(@types/node@25.4.0)': dependencies: '@inquirer/ansi': 2.0.3 - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/prompts@8.3.0(@types/node@25.3.5)': + '@inquirer/prompts@8.3.0(@types/node@25.4.0)': dependencies: - '@inquirer/checkbox': 5.1.0(@types/node@25.3.5) - '@inquirer/confirm': 6.0.8(@types/node@25.3.5) - '@inquirer/editor': 5.0.8(@types/node@25.3.5) - '@inquirer/expand': 5.0.8(@types/node@25.3.5) - '@inquirer/input': 5.0.8(@types/node@25.3.5) - '@inquirer/number': 4.0.8(@types/node@25.3.5) - '@inquirer/password': 5.0.8(@types/node@25.3.5) - '@inquirer/rawlist': 5.2.4(@types/node@25.3.5) - '@inquirer/search': 4.1.4(@types/node@25.3.5) - '@inquirer/select': 5.1.0(@types/node@25.3.5) + '@inquirer/checkbox': 5.1.0(@types/node@25.4.0) + '@inquirer/confirm': 6.0.8(@types/node@25.4.0) + '@inquirer/editor': 5.0.8(@types/node@25.4.0) + '@inquirer/expand': 5.0.8(@types/node@25.4.0) + '@inquirer/input': 5.0.8(@types/node@25.4.0) + '@inquirer/number': 4.0.8(@types/node@25.4.0) + '@inquirer/password': 5.0.8(@types/node@25.4.0) + '@inquirer/rawlist': 5.2.4(@types/node@25.4.0) + '@inquirer/search': 4.1.4(@types/node@25.4.0) + '@inquirer/select': 5.1.0(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/rawlist@5.2.4(@types/node@25.3.5)': + '@inquirer/rawlist@5.2.4(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/search@4.1.4(@types/node@25.3.5)': + '@inquirer/search@4.1.4(@types/node@25.4.0)': dependencies: - '@inquirer/core': 11.1.5(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) '@inquirer/figures': 2.0.3 - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/select@5.1.0(@types/node@25.3.5)': + '@inquirer/select@5.1.0(@types/node@25.4.0)': dependencies: '@inquirer/ansi': 2.0.3 - '@inquirer/core': 11.1.5(@types/node@25.3.5) + '@inquirer/core': 11.1.5(@types/node@25.4.0) '@inquirer/figures': 2.0.3 - '@inquirer/type': 4.0.3(@types/node@25.3.5) + '@inquirer/type': 4.0.3(@types/node@25.4.0) optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 - '@inquirer/type@4.0.3(@types/node@25.3.5)': + '@inquirer/type@4.0.3(@types/node@25.4.0)': optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@ioredis/commands@1.5.0': optional: true @@ -6546,11 +6640,17 @@ snapshots: '@kevisual/permission': 0.0.3 '@kevisual/query': 0.0.31 - '@kevisual/ai@0.0.26': + '@kevisual/ai@0.0.27': dependencies: + '@ai-sdk/anthropic': 3.0.58(zod@4.3.6) + '@ai-sdk/openai': 3.0.41(zod@4.3.6) + '@ai-sdk/openai-compatible': 2.0.35(zod@4.3.6) + '@kevisual/js-filter': 0.0.6 '@kevisual/logger': 0.0.4 '@kevisual/permission': 0.0.4 - '@kevisual/query': 0.0.52 + '@kevisual/query': 0.0.53 + ai: 6.0.116(zod@4.3.6) + zod: 4.3.6 '@kevisual/api@0.0.28': dependencies: @@ -6609,10 +6709,10 @@ snapshots: '@kevisual/auth@2.0.3': {} - '@kevisual/cnb@0.0.37(dotenv@17.3.1)(idb-keyval@6.2.2)(ioredis@5.9.3)': + '@kevisual/cnb@0.0.42(dotenv@17.3.1)(idb-keyval@6.2.2)(ioredis@5.9.3)': dependencies: '@kevisual/query': 0.0.53 - '@kevisual/router': 0.0.88 + '@kevisual/router': 0.0.90 '@kevisual/use-config': 1.0.30(dotenv@17.3.1) es-toolkit: 1.45.1 nanoid: 5.1.6 @@ -6658,6 +6758,8 @@ snapshots: '@kevisual/js-filter@0.0.5': {} + '@kevisual/js-filter@0.0.6': {} + '@kevisual/kv-code@0.0.4(@types/react@19.2.10)(dotenv@17.2.3)': dependencies: '@codemirror/autocomplete': 6.20.0 @@ -6715,8 +6817,6 @@ snapshots: dependencies: tslib: 2.8.1 - '@kevisual/query@0.0.52': {} - '@kevisual/query@0.0.53': {} '@kevisual/registry@0.0.1(typescript@5.8.2)': @@ -6761,11 +6861,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@kevisual/router@0.0.88': + '@kevisual/router@0.0.90': dependencies: es-toolkit: 1.45.1 - '@kevisual/router@0.0.89': + '@kevisual/router@0.1.0': dependencies: es-toolkit: 1.45.1 @@ -6889,12 +6989,14 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@opencode-ai/plugin@1.2.21': + '@opencode-ai/plugin@1.2.24': dependencies: - '@opencode-ai/sdk': 1.2.21 + '@opencode-ai/sdk': 1.2.24 zod: 4.1.8 - '@opencode-ai/sdk@1.2.21': {} + '@opencode-ai/sdk@1.2.24': {} + + '@opentelemetry/api@1.9.0': {} '@oslojs/encoding@1.1.0': {} @@ -7950,7 +8052,7 @@ snapshots: '@smithy/util-buffer-from': 4.2.2 tslib: 2.8.1 - '@smithy/util-waiter@4.2.11': + '@smithy/util-waiter@4.2.12': dependencies: '@smithy/abort-controller': 4.2.11 '@smithy/types': 4.13.0 @@ -7960,6 +8062,8 @@ snapshots: dependencies: tslib: 2.8.1 + '@standard-schema/spec@1.1.0': {} + '@tailwindcss/node@4.1.18': dependencies: '@jridgewell/remapping': 2.3.5 @@ -8021,12 +8125,12 @@ snapshots: '@tailwindcss/oxide-win32-arm64-msvc': 4.1.18 '@tailwindcss/oxide-win32-x64-msvc': 4.1.18 - '@tailwindcss/vite@4.1.18(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))': + '@tailwindcss/vite@4.1.18(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))': dependencies: '@tailwindcss/node': 4.1.18 '@tailwindcss/oxide': 4.1.18 tailwindcss: 4.1.18 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) '@tootallnate/quickjs-emscripten@0.23.0': {} @@ -8059,7 +8163,7 @@ snapshots: '@types/busboy@1.5.4': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/crypto-js@4.2.2': {} @@ -8086,7 +8190,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 0.7.34 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/mdast@4.0.4': dependencies: @@ -8106,7 +8210,7 @@ snapshots: '@types/node@17.0.45': {} - '@types/node@25.3.5': + '@types/node@25.4.0': dependencies: undici-types: 7.18.2 @@ -8124,13 +8228,13 @@ snapshots: '@types/sax@1.2.7': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/semver@7.7.1': {} '@types/send@1.2.1': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/trusted-types@2.0.7': {} @@ -8140,7 +8244,7 @@ snapshots: '@types/ws@8.18.1': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@uiw/copy-to-clipboard@1.0.19': {} @@ -8179,7 +8283,9 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitejs/plugin-react@4.7.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))': + '@vercel/oidc@3.1.0': {} + + '@vitejs/plugin-react@4.7.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))': dependencies: '@babel/core': 7.28.5 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.5) @@ -8187,24 +8293,24 @@ snapshots: '@rolldown/pluginutils': 1.0.0-beta.27 '@types/babel__core': 7.20.5 react-refresh: 0.17.0 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue-jsx@4.2.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': + '@vitejs/plugin-vue-jsx@4.2.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': dependencies: '@babel/core': 7.28.5 '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5) '@rolldown/pluginutils': 1.0.0-beta.55 '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.5) - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) vue: 3.5.27(typescript@5.8.2) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.2.4(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': + '@vitejs/plugin-vue@5.2.4(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': dependencies: - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) vue: 3.5.27(typescript@5.8.2) '@vue/babel-helper-vue-transform-on@1.5.0': {} @@ -8266,14 +8372,14 @@ snapshots: '@vue/compiler-dom': 3.5.27 '@vue/shared': 3.5.27 - '@vue/devtools-core@7.7.9(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': + '@vue/devtools-core@7.7.9(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2))': dependencies: '@vue/devtools-kit': 7.7.9 '@vue/devtools-shared': 7.7.9 mitt: 3.0.1 nanoid: 5.1.6 pathe: 2.0.3 - vite-hot-client: 2.1.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) + vite-hot-client: 2.1.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) vue: 3.5.27(typescript@5.8.2) transitivePeerDependencies: - vite @@ -8324,6 +8430,14 @@ snapshots: agent-base@7.1.3: {} + ai@6.0.116(zod@4.3.6): + dependencies: + '@ai-sdk/gateway': 3.0.66(zod@4.3.6) + '@ai-sdk/provider': 3.0.8 + '@ai-sdk/provider-utils': 4.0.19(zod@4.3.6) + '@opentelemetry/api': 1.9.0 + zod: 4.3.6 + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 @@ -8439,7 +8553,7 @@ snapshots: astring@1.9.0: {} - astro@5.16.15(@types/node@25.3.5)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2): + astro@5.16.15(@types/node@25.4.0)(idb-keyval@6.2.2)(ioredis@5.9.3)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.57.1)(typescript@5.8.2): dependencies: '@astrojs/compiler': 2.13.0 '@astrojs/internal-helpers': 0.7.5 @@ -8496,8 +8610,8 @@ snapshots: unist-util-visit: 5.0.0 unstorage: 1.17.4(idb-keyval@6.2.2)(ioredis@5.9.3(supports-color@10.2.2)) vfile: 6.0.3 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) - vitefu: 1.1.1(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) + vitefu: 1.1.1(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 yocto-spinner: 0.2.3 @@ -8602,7 +8716,7 @@ snapshots: bun-types@1.3.10: dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 bundle-name@4.1.0: dependencies: @@ -9056,6 +9170,8 @@ snapshots: eventemitter3@5.0.4: {} + eventsource-parser@3.0.6: {} + execa@9.6.1: dependencies: '@sindresorhus/merge-streams': 4.0.0 @@ -9576,7 +9692,7 @@ snapshots: jiti@2.6.1: {} - jose@6.2.0: {} + jose@6.2.1: {} js-git@0.7.8: dependencies: @@ -9597,6 +9713,8 @@ snapshots: json-schema-traverse@1.0.0: {} + json-schema@0.4.0: {} + json-stringify-safe@5.0.1: optional: true @@ -11163,7 +11281,7 @@ snapshots: tapable@2.3.0: {} - tar@7.5.10: + tar@7.5.11: dependencies: '@isaacs/fs-minipass': 4.0.1 chownr: 3.0.0 @@ -11336,11 +11454,11 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-hot-client@2.1.0(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)): + vite-hot-client@2.1.0(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)): dependencies: - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) - vite-plugin-inspect@0.8.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)): + vite-plugin-inspect@0.8.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)): dependencies: '@antfu/utils': 0.7.10 '@rollup/pluginutils': 5.3.0(rollup@4.57.1) @@ -11351,28 +11469,28 @@ snapshots: perfect-debounce: 1.0.0 picocolors: 1.1.1 sirv: 3.0.2 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) transitivePeerDependencies: - rollup - supports-color - vite-plugin-vue-devtools@7.7.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)): + vite-plugin-vue-devtools@7.7.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)): dependencies: - '@vue/devtools-core': 7.7.9(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) + '@vue/devtools-core': 7.7.9(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2))(vue@3.5.27(typescript@5.8.2)) '@vue/devtools-kit': 7.7.9 '@vue/devtools-shared': 7.7.9 execa: 9.6.1 sirv: 3.0.2 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) - vite-plugin-inspect: 0.8.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) - vite-plugin-vue-inspector: 5.3.2(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) + vite-plugin-inspect: 0.8.9(rollup@4.57.1)(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) + vite-plugin-vue-inspector: 5.3.2(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)) transitivePeerDependencies: - '@nuxt/kit' - rollup - supports-color - vue - vite-plugin-vue-inspector@5.3.2(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)): + vite-plugin-vue-inspector@5.3.2(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)): dependencies: '@babel/core': 7.28.5 '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.28.5) @@ -11383,11 +11501,11 @@ snapshots: '@vue/compiler-dom': 3.5.27 kolorist: 1.8.0 magic-string: 0.30.21 - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) transitivePeerDependencies: - supports-color - vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2): + vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2): dependencies: esbuild: 0.25.12 fdir: 6.5.0(picomatch@4.0.3) @@ -11396,14 +11514,14 @@ snapshots: rollup: 4.43.0 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.30.2 - vitefu@1.1.1(vite@6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2)): + vitefu@1.1.1(vite@6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2)): optionalDependencies: - vite: 6.4.1(@types/node@25.3.5)(jiti@2.6.1)(lightningcss@1.30.2) + vite: 6.4.1(@types/node@25.4.0)(jiti@2.6.1)(lightningcss@1.30.2) vizion@2.2.1: dependencies: