Files
JARVIS/development-doc/plan/temple-update/phase-3-skills-integration.md

89 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Phase 3Skills Tab 复用集成
日期2026-04-08
状态:待开始
---
## 1. 本阶段目的
将现有的 `/skills` 页面完整嵌入 Temple 页面的 Skills Tab实现统一入口。
---
## 2. 核心文件
| 文件 | 作用 |
|------|------|
| `frontend/src/pages/skills/index.vue` | 已有Skills 完整页面 |
| `frontend/src/pages/skills/composables/useSkillsPage.ts` | 已有Skills 逻辑 |
| `frontend/src/api/skill.ts` | 已有Skills API 客户端 |
---
## 3. 集成方式
### 3.1 方案选择
**方案 A推荐Tab 内条件渲染**
`Temple/index.vue` 中使用 `v-if` 切换:
```vue
<div v-if="activeTab === 'skills'">
<!-- Skills 页面内容内联或引用子组件 -->
</div>
```
优点:单一页面,状态共享简单
缺点Skills 页面较大,代码集中
**方案 B路由嵌套**
```vue
// Temple/index.vue
<router-view />
```
`skills/` 路由加 `parent: temple`
优点:页面分离,代码清晰
缺点:需要改路由配置
**推荐方案 A**改动最小Skills 页面代码以内联形式放入 Temple。
### 3.2 Tab 切换逻辑
```typescript
function switchTab(tab: 'tools' | 'skills') {
activeTab.value = tab
if (tab === 'skills') {
// Skills 页面初始化(如果需要)
}
}
```
---
## 4. 样式调整
Skills 页面样式独立在 `skillsPage.css`,切换 Tab 时保留其样式上下文。
---
## 5. 注意事项
- Skills 页面的 Modal创建/编辑)需要在 Tab 切换后仍可正常弹出
- Skills 页面的 API 调用(`skillApi.list()`, `skillApi.create()` 等)保持不变
- Metrics Strip 在 Skills Tab 下显示不同的指标TOTAL / ACTIVE / UPTIME
---
## 6. 产出要求
- [x] Skills Tab 点击后正确切换到 Skills 页面
- [x] Skills 的 CRUD创建/编辑/删除/启用/禁用)功能正常
- [x] Skills 的 MCP Panel 仍可正常打开
- [x] Skills 页面的 Modal、Drawer 等交互正常
- [x] Tab 切换不丢失状态