feat: 添加仓库管理页面和 AI 功能,优化路由和导航

- 新增仓库列表页面,支持查看和管理 CNB 仓库
- 添加 AI 代理系统和状态管理
- 新增 tags-input、popover、textarea、tooltip 等 UI 组件
- 更新依赖:@kevisual/cnb 升级至 0.0.22,添加 idb-keyval
- 改进路由守卫:未配置 API Key 时自动跳转配置页
- 优化 Dialog 遮罩层样式和整体布局

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-09 04:44:28 +08:00
parent 0ced574b8b
commit a2629fec7b
22 changed files with 1606 additions and 62 deletions

24
pnpm-lock.yaml generated
View File

@@ -21,8 +21,8 @@ importers:
specifier: ^1.1.0
version: 1.1.0(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
'@kevisual/cnb':
specifier: ^0.0.20
version: 0.0.20(dotenv@17.2.4)(idb-keyval@6.2.1)
specifier: ^0.0.22
version: 0.0.22(dotenv@17.2.4)(idb-keyval@6.2.2)
'@kevisual/context':
specifier: ^0.0.4
version: 0.0.4
@@ -47,6 +47,9 @@ importers:
es-toolkit:
specifier: ^1.44.0
version: 1.44.0
idb-keyval:
specifier: ^6.2.2
version: 6.2.2
lucide-react:
specifier: ^0.563.0
version: 0.563.0(react@19.2.4)
@@ -638,8 +641,8 @@ packages:
'@kevisual/cache@0.0.2':
resolution: {integrity: sha512-2Cl5KF2Gi27uLfhO6CdTMFnRzx9vYnqevAo7d9ab3rOaqTgF8tLeAXglXyRbaWW3WUbHU2XaOb4r98uUsqIQQw==}
'@kevisual/cnb@0.0.20':
resolution: {integrity: sha512-3ODGAT8vEnU90X/6SUeqMK1ZJCcvyn44bMsC7Joz0kvDKhntstbf/nZIm5TRhngvPEcOPyc+KROchTweC/qcNA==}
'@kevisual/cnb@0.0.22':
resolution: {integrity: sha512-KX8oSmmaHnT4qqCfAoQoHZbkcohUVSK7LfdsEKTlItrE77rPyZcvD+APByroxH4FMQ80ItRW9tQlxBO8iRlrIw==}
'@kevisual/context@0.0.4':
resolution: {integrity: sha512-HJeLeZQLU+7tCluSfOyvkgKLs0HjCZrdJlZgEgKRSa8XTwZfMAUt6J7qZTbrZAHBlPtX68EPu/PI8JMCeu3WAQ==}
@@ -1490,6 +1493,9 @@ packages:
idb-keyval@6.2.1:
resolution: {integrity: sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==}
idb-keyval@6.2.2:
resolution: {integrity: sha512-yjD9nARJ/jb1g+CvD0tlhUHOrJ9Sy0P8T9MF3YaLlHnSRpwPfpTX0XIvpmw3gAJUmEu3FiICLBDPXVwyEvrleg==}
immer@10.1.1:
resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==}
@@ -2730,14 +2736,14 @@ snapshots:
- tslib
- typescript
'@kevisual/cnb@0.0.20(dotenv@17.2.4)(idb-keyval@6.2.1)':
'@kevisual/cnb@0.0.22(dotenv@17.2.4)(idb-keyval@6.2.2)':
dependencies:
'@kevisual/query': 0.0.40
'@kevisual/router': 0.0.70
'@kevisual/use-config': 1.0.30(dotenv@17.2.4)
es-toolkit: 1.44.0
nanoid: 5.1.6
unstorage: 1.17.4(idb-keyval@6.2.1)
unstorage: 1.17.4(idb-keyval@6.2.2)
ws: '@kevisual/ws@8.19.0'
zod: 4.3.6
transitivePeerDependencies:
@@ -3532,6 +3538,8 @@ snapshots:
idb-keyval@6.2.1: {}
idb-keyval@6.2.2: {}
immer@10.1.1:
optional: true
@@ -3996,7 +4004,7 @@ snapshots:
picomatch: 4.0.3
webpack-virtual-modules: 0.6.2
unstorage@1.17.4(idb-keyval@6.2.1):
unstorage@1.17.4(idb-keyval@6.2.2):
dependencies:
anymatch: 3.1.3
chokidar: 5.0.0
@@ -4007,7 +4015,7 @@ snapshots:
ofetch: 1.5.1
ufo: 1.6.3
optionalDependencies:
idb-keyval: 6.2.1
idb-keyval: 6.2.2
update-browserslist-db@1.1.1(browserslist@4.24.2):
dependencies: