Compare commits

..

6 Commits

12 changed files with 452 additions and 422 deletions

1
.npmrc
View File

@@ -1,3 +1,2 @@
//npm.xiongxiao.me/:_authToken=${ME_NPM_TOKEN}
//npm.cnb.cool/kevisual/registry/-/packages/:_authToken=${CNB_API_KEY} //npm.cnb.cool/kevisual/registry/-/packages/:_authToken=${CNB_API_KEY}
//registry.npmjs.org/:_authToken=${NPM_TOKEN} //registry.npmjs.org/:_authToken=${NPM_TOKEN}

View File

@@ -42,18 +42,18 @@
} }
}, },
"devDependencies": { "devDependencies": {
"@inquirer/prompts": "^8.3.0", "@inquirer/prompts": "^8.3.2",
"@kevisual/ai": "^0.0.28", "@kevisual/ai": "^0.0.28",
"@kevisual/api": "^0.0.64", "@kevisual/api": "^0.0.65",
"@kevisual/load": "^0.0.6", "@kevisual/load": "^0.0.6",
"@kevisual/local-app-manager": "^0.1.32", "@kevisual/local-app-manager": "^0.1.32",
"@kevisual/logger": "^0.0.4", "@kevisual/logger": "^0.0.4",
"@kevisual/query": "0.0.53", "@kevisual/query": "0.0.55",
"@kevisual/router": "^0.1.2", "@kevisual/router": "^0.2.2",
"@kevisual/types": "^0.0.12", "@kevisual/types": "^0.0.12",
"@kevisual/use-config": "^1.0.30", "@kevisual/use-config": "^1.0.30",
"@opencode-ai/plugin": "^1.2.26", "@opencode-ai/plugin": "^1.3.0",
"@types/bun": "^1.3.10", "@types/bun": "^1.3.11",
"@types/node": "^25.5.0", "@types/node": "^25.5.0",
"@types/send": "^1.2.1", "@types/send": "^1.2.1",
"@types/ws": "^8.18.1", "@types/ws": "^8.18.1",
@@ -62,9 +62,9 @@
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"dayjs": "^1.11.20", "dayjs": "^1.11.20",
"dotenv": "^17.3.1", "dotenv": "^17.3.1",
"get-port": "^7.1.0", "get-port": "^7.2.0",
"meilisearch": "^0.55.0", "meilisearch": "^0.56.0",
"nanoid": "^5.1.6", "nanoid": "^5.1.7",
"send": "^1.2.1", "send": "^1.2.1",
"supports-color": "^10.2.2", "supports-color": "^10.2.2",
"table": "^6.9.0", "table": "^6.9.0",
@@ -77,11 +77,11 @@
"access": "public" "access": "public"
}, },
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.1009.0", "@aws-sdk/client-s3": "^3.1014.0",
"@kevisual/js-filter": "^0.0.6", "@kevisual/js-filter": "^0.0.6",
"@kevisual/oss": "^0.0.20", "@kevisual/oss": "^0.0.20",
"@kevisual/video-tools": "^0.0.13", "@kevisual/video-tools": "^0.0.13",
"@opencode-ai/sdk": "^1.2.26", "@opencode-ai/sdk": "^1.3.0",
"es-toolkit": "^1.45.1", "es-toolkit": "^1.45.1",
"eventemitter3": "^5.0.4", "eventemitter3": "^5.0.4",
"lowdb": "^7.0.1", "lowdb": "^7.0.1",

View File

@@ -379,7 +379,7 @@ export class AssistantConfig {
return checkConfigDir; return checkConfigDir;
} }
protected getDefaultInitAssistantConfig() { protected getDefaultInitAssistantConfig() {
const id = randomId(); let id = randomId();
const isCNB = !!useKey('CNB'); const isCNB = !!useKey('CNB');
let kevisualUrl = 'https://kevisual.cn'; let kevisualUrl = 'https://kevisual.cn';
if (isCNB) { if (isCNB) {
@@ -390,6 +390,11 @@ export class AssistantConfig {
kevisualUrl = 'http://kevisual.cn'; kevisualUrl = 'http://kevisual.cn';
} }
} }
const routes = ["@kevisual/cnb/routes"]
if (isCNB) {
routes.push("@kevisual/project-search/routes")
id = 'dev-cnb'
}
return { return {
app: { app: {
url: kevisualUrl, url: kevisualUrl,
@@ -399,9 +404,7 @@ export class AssistantConfig {
docs: `${kevisualUrl}/root/cli/docs/`, docs: `${kevisualUrl}/root/cli/docs/`,
home: isCNB ? '/root/cli-center' : '/root/home', home: isCNB ? '/root/cli-center' : '/root/home',
proxy: [], proxy: [],
"routes": [ "routes": routes,
"@kevisual/cnb/routes"
],
share: { share: {
enabled: true, enabled: true,
url: 'https://kevisual.cn/ws/proxy', url: 'https://kevisual.cn/ws/proxy',

View File

@@ -86,7 +86,7 @@ export const checkAuth = async (ctx: any, isAdmin = false) => {
app app
.route({ .route({
path: 'auth', path: 'auth',
id: 'auth', rid: 'auth',
description: '获取当前登录用户信息, 第一个登录的用户为管理员用户', description: '获取当前登录用户信息, 第一个登录的用户为管理员用户',
}) })
.define(async (ctx) => { .define(async (ctx) => {
@@ -102,7 +102,7 @@ app
app app
.route({ .route({
path: 'auth-admin', path: 'auth-admin',
id: 'auth-admin', rid: 'auth-admin',
description: '管理员鉴权, 获取用户信息,并验证是否为管理员。', description: '管理员鉴权, 获取用户信息,并验证是否为管理员。',
}) })
.define(async (ctx) => { .define(async (ctx) => {

View File

@@ -1,5 +1,5 @@
import { app } from '../../app.ts'; import { app } from '../../app.ts';
import './cnb-dev-env.ts'; import './dev-cnb-env.ts';
import { execCommand } from '@/module/npm-install.ts'; import { execCommand } from '@/module/npm-install.ts';
import { useKey } from '@kevisual/context'; import { useKey } from '@kevisual/context';

View File

@@ -1,6 +1,6 @@
export const configJson = `{ export const configJson = `{
"name": "assistant-app", "name": "assistant-app",
"version": "1.0.3", "version": "1.0.4",
"description": "assistant-app package pnpm, node pkgs projects", "description": "assistant-app package pnpm, node pkgs projects",
"type": "module", "type": "module",
"scripts": { "scripts": {
@@ -11,18 +11,21 @@ export const configJson = `{
"author": "", "author": "",
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.1007.0", "@aws-sdk/client-s3": "^3.1011.0",
"@kevisual/cnb": "^0.0.53",
"@kevisual/oss": "^0.0.20", "@kevisual/oss": "^0.0.20",
"@kevisual/project-search": "^0.0.12",
"@kevisual/query": "^0.0.53", "@kevisual/query": "^0.0.53",
"@kevisual/router": "^0.1.1", "@kevisual/router": "^0.1.5",
"@kevisual/cnb": "^0.0.42",
"@kevisual/use-config": "^1.0.30", "@kevisual/use-config": "^1.0.30",
"dayjs": "^1.11.19", "@parcel/watcher": "^2.5.6",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.20",
"dotenv": "^17.3.1", "dotenv": "^17.3.1",
"es-toolkit": "^1.45.1", "es-toolkit": "^1.45.1",
"eventemitter3": "^5.0.4", "eventemitter3": "^5.0.4",
"ioredis": "^5.10.0", "ioredis": "^5.10.0",
"node-cron": "^4.2.1", "cron": "^4.4.0",
"pg": "^8.20.0", "pg": "^8.20.0",
"pm2": "^6.0.14", "pm2": "^6.0.14",
"unstorage": "^1.17.4" "unstorage": "^1.17.4"
@@ -30,7 +33,8 @@ export const configJson = `{
"devDependencies": { "devDependencies": {
"@kevisual/types": "^0.0.12", "@kevisual/types": "^0.0.12",
"@types/bun": "^1.3.10", "@types/bun": "^1.3.10",
"@types/node": "^25.4.0", "@types/crypto-js": "^4.2.2",
"@types/node": "^25.5.0",
"semver": "^7.7.4" "semver": "^7.7.4"
} }
} }

View File

@@ -113,6 +113,10 @@ export class AssistantInit extends AssistantConfig {
`packages: `packages:
- 'apps/**/*' - 'apps/**/*'
- 'pages/**/*' - 'pages/**/*'
- 'skills/**/*'
allowBuilds:
'@parcel/watcher': true
`, `,
); );
console.log(chalk.green('助手 pnpm-workspace.yaml 文件创建成功')); console.log(chalk.green('助手 pnpm-workspace.yaml 文件创建成功'));

View File

@@ -1,6 +1,6 @@
{ {
"name": "assistant-app", "name": "assistant-app",
"version": "1.0.3", "version": "1.0.4",
"description": "assistant-app package pnpm, node pkgs projects", "description": "assistant-app package pnpm, node pkgs projects",
"type": "module", "type": "module",
"scripts": { "scripts": {
@@ -11,18 +11,21 @@
"author": "", "author": "",
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.1007.0", "@aws-sdk/client-s3": "^3.1011.0",
"@kevisual/cnb": "^0.0.53",
"@kevisual/oss": "^0.0.20", "@kevisual/oss": "^0.0.20",
"@kevisual/project-search": "^0.0.12",
"@kevisual/query": "^0.0.53", "@kevisual/query": "^0.0.53",
"@kevisual/router": "^0.1.1", "@kevisual/router": "^0.1.5",
"@kevisual/cnb": "^0.0.42",
"@kevisual/use-config": "^1.0.30", "@kevisual/use-config": "^1.0.30",
"dayjs": "^1.11.19", "@parcel/watcher": "^2.5.6",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.20",
"dotenv": "^17.3.1", "dotenv": "^17.3.1",
"es-toolkit": "^1.45.1", "es-toolkit": "^1.45.1",
"eventemitter3": "^5.0.4", "eventemitter3": "^5.0.4",
"ioredis": "^5.10.0", "ioredis": "^5.10.0",
"node-cron": "^4.2.1", "cron": "^4.4.0",
"pg": "^8.20.0", "pg": "^8.20.0",
"pm2": "^6.0.14", "pm2": "^6.0.14",
"unstorage": "^1.17.4" "unstorage": "^1.17.4"
@@ -30,7 +33,8 @@
"devDependencies": { "devDependencies": {
"@kevisual/types": "^0.0.12", "@kevisual/types": "^0.0.12",
"@types/bun": "^1.3.10", "@types/bun": "^1.3.10",
"@types/node": "^25.4.0", "@types/crypto-js": "^4.2.2",
"@types/node": "^25.5.0",
"semver": "^7.7.4" "semver": "^7.7.4"
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "@kevisual/cli", "name": "@kevisual/cli",
"version": "0.1.27", "version": "0.1.32",
"description": "envision 命令行工具", "description": "envision 命令行工具",
"type": "module", "type": "module",
"basename": "/root/cli", "basename": "/root/cli",
@@ -41,33 +41,33 @@
], ],
"author": "abearxiong", "author": "abearxiong",
"dependencies": { "dependencies": {
"@inquirer/prompts": "^8.3.0", "@inquirer/prompts": "^8.3.2",
"@kevisual/app": "^0.0.2", "@kevisual/app": "^0.0.2",
"@kevisual/auth": "^2.0.3", "@kevisual/auth": "^2.0.3",
"@kevisual/context": "^0.0.8", "@kevisual/context": "^0.0.8",
"@kevisual/router": "^0.1.1", "@kevisual/router": "^0.2.2",
"@kevisual/use-config": "^1.0.30", "@kevisual/use-config": "^1.0.30",
"@opencode-ai/sdk": "^1.2.26", "@opencode-ai/sdk": "^1.3.0",
"@types/busboy": "^1.5.4", "@types/busboy": "^1.5.4",
"busboy": "^1.6.0", "busboy": "^1.6.0",
"eventemitter3": "^5.0.4", "eventemitter3": "^5.0.4",
"jose": "^6.2.1", "jose": "^6.2.2",
"lowdb": "^7.0.1", "lowdb": "^7.0.1",
"lru-cache": "^11.2.7", "lru-cache": "^11.2.7",
"micromatch": "^4.0.8", "micromatch": "^4.0.8",
"nanoid": "^5.1.6", "nanoid": "^5.1.7",
"pm2": "latest", "pm2": "latest",
"semver": "^7.7.4", "semver": "^7.7.4",
"unstorage": "^1.17.4" "unstorage": "^1.17.4"
}, },
"devDependencies": { "devDependencies": {
"@kevisual/api": "^0.0.64", "@kevisual/api": "^0.0.65",
"@kevisual/cnb": "^0.0.46", "@kevisual/cnb": "^0.0.60",
"@kevisual/dts": "^0.0.4", "@kevisual/dts": "^0.0.4",
"@kevisual/load": "^0.0.6", "@kevisual/load": "^0.0.6",
"@kevisual/logger": "^0.0.4", "@kevisual/logger": "^0.0.4",
"@kevisual/query": "0.0.53", "@kevisual/query": "0.0.55",
"@types/bun": "^1.3.10", "@types/bun": "^1.3.11",
"@types/crypto-js": "^4.2.2", "@types/crypto-js": "^4.2.2",
"@types/jsonwebtoken": "^9.0.10", "@types/jsonwebtoken": "^9.0.10",
"@types/micromatch": "^4.0.10", "@types/micromatch": "^4.0.10",
@@ -82,8 +82,8 @@
"ignore": "^7.0.5", "ignore": "^7.0.5",
"jsonwebtoken": "^9.0.3", "jsonwebtoken": "^9.0.3",
"pm2": "^6.0.14", "pm2": "^6.0.14",
"tar": "^7.5.11", "tar": "^7.5.12",
"zustand": "^5.0.11" "zustand": "^5.0.12"
}, },
"engines": { "engines": {
"node": ">=22.0.0" "node": ">=22.0.0"

761
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -12,14 +12,15 @@ type Model = typeof MODELS[number];
const changeMinimax = (token?: string) => { const changeMinimax = (token?: string) => {
const auth_token = token || useKey("MINIMAX_API_KEY") const auth_token = token || useKey("MINIMAX_API_KEY")
const MINIMAX_MODEL = useKey("MINIMAX_MODEL") || "MiniMax-M2.5"
return { return {
"env": { "env": {
"ANTHROPIC_AUTH_TOKEN": auth_token, "ANTHROPIC_AUTH_TOKEN": auth_token,
"ANTHROPIC_BASE_URL": "https://api.minimaxi.com/anthropic", "ANTHROPIC_BASE_URL": "https://api.minimaxi.com/anthropic",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "MiniMax-M2.5", "ANTHROPIC_DEFAULT_HAIKU_MODEL": MINIMAX_MODEL,
"ANTHROPIC_DEFAULT_OPUS_MODEL": "MiniMax-M2.5", "ANTHROPIC_DEFAULT_OPUS_MODEL": MINIMAX_MODEL,
"ANTHROPIC_DEFAULT_SONNET_MODEL": "MiniMax-M2.5", "ANTHROPIC_DEFAULT_SONNET_MODEL": MINIMAX_MODEL,
"ANTHROPIC_MODEL": "MiniMax-M2.5", "ANTHROPIC_MODEL": MINIMAX_MODEL,
"API_TIMEOUT_MS": "3000000", "API_TIMEOUT_MS": "3000000",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1 "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1
} }