docs(wiki): 重构为模块化知识库 — 按模块组织而非按文档类型
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
问题: 旧 wiki 按文档类型组织(architecture/data-flows/file-map), 修复 Butler Router 需要读 4 个文件才能拼凑全貌。 且 SaaS Relay 主路径 vs 本地降级的优先级描述不准确。 重构为模块化结构,每个模块页自包含: - 设计思想: 为什么这样设计 - 代码逻辑: 数据流 + 关键代码 - 关联模块: 依赖关系 新增模块页: - routing.md: 客户端路由 (明确 SaaS Relay 是主路径,不是本地模式) - chat.md: 聊天系统 (3种实现 + Token Pool 中转机制) - butler.md: 管家模式 (路由/冷启动/痛点/双模式UI) - memory.md: 记忆管道 (提取→FTS5→检索→注入) - saas.md: SaaS平台 (认证/Token池/计费/Admin) - middleware.md: 中间件链 (14层 + 优先级) - hands-skills.md: Hands(9) + Skills(75) - pipeline.md: Pipeline DSL 删除旧文件: architecture.md, data-flows.md, module-status.md, file-map.md (内容已分布到对应模块页中) 添加 .gitignore 排除 Obsidian 工作区状态文件
This commit is contained in:
90
wiki/hands-skills.md
Normal file
90
wiki/hands-skills.md
Normal file
@@ -0,0 +1,90 @@
|
||||
---
|
||||
title: Hands + Skills
|
||||
updated: 2026-04-11
|
||||
status: active
|
||||
tags: [module, hands, skills]
|
||||
---
|
||||
|
||||
# Hands + Skills
|
||||
|
||||
> 从 [[index]] 导航。关联模块: [[chat]] [[middleware]]
|
||||
|
||||
## 设计思想
|
||||
|
||||
**Hands = 自主能力 (行动层), Skills = 知识技能 (认知层)**
|
||||
|
||||
- Hands: 浏览器自动化、数据收集、Twitter 操作等 — **执行动作**
|
||||
- Skills: 75 个 SKILL.md 文件 — **语义路由匹配**,增强 LLM 的领域知识
|
||||
- 触发: 用户请求 → LLM 判断需要执行 → 选择 Hand/Skill → 执行
|
||||
|
||||
## 代码逻辑
|
||||
|
||||
### Hands (9 启用 + 2 禁用)
|
||||
|
||||
| Hand | 功能 | 依赖 | 配置 |
|
||||
|------|------|------|------|
|
||||
| Browser | 浏览器自动化 | WebDriver | `hands/Browser/HAND.toml` |
|
||||
| Collector | 数据收集聚合 | — | `hands/Collector/HAND.toml` |
|
||||
| Researcher | 深度研究 | LLM | `hands/Researcher/HAND.toml` |
|
||||
| Clip | 视频处理 | FFmpeg | `hands/Clip/HAND.toml` |
|
||||
| Twitter | Twitter 自动化 | OAuth 1.0a | `hands/Twitter/HAND.toml` |
|
||||
| Whiteboard | 白板演示 | — | `hands/Whiteboard/HAND.toml` |
|
||||
| Slideshow | 幻灯片生成 | — | `hands/Slideshow/HAND.toml` |
|
||||
| Speech | 语音合成 | Browser TTS | `hands/Speech/HAND.toml` |
|
||||
| Quiz | 测验生成 | — | `hands/Quiz/HAND.toml` |
|
||||
| Predictor | 预测分析 | **禁用** | 无 TOML/无 Rust 实现 |
|
||||
| Lead | 销售线索 | **禁用** | 无 TOML/无 Rust 实现 |
|
||||
|
||||
### 触发流
|
||||
|
||||
```
|
||||
UI 触发 → handStore.trigger(handName, params)
|
||||
→ Tauri invoke('hand_trigger', { handName, params })
|
||||
→ Kernel → Hand 执行
|
||||
→ needs_approval? → 等待 approvalStore 确认
|
||||
→ 执行结果 → Tauri Event emit
|
||||
→ handStore 更新状态 + 记录日志
|
||||
```
|
||||
|
||||
### Skills (75 个)
|
||||
|
||||
```
|
||||
skills/
|
||||
├── SKILL_001_数据分析.md
|
||||
├── SKILL_002_报告生成.md
|
||||
├── ... (75 个 SKILL.md 文件)
|
||||
```
|
||||
|
||||
每个 SKILL.md 定义:
|
||||
- 技能名称和描述
|
||||
- 触发条件
|
||||
- 执行步骤
|
||||
- 输入/输出格式
|
||||
|
||||
### 语义路由
|
||||
|
||||
`crates/zclaw-skills/src/semantic_router.rs`
|
||||
|
||||
```
|
||||
用户消息 → SemanticSkillRouter
|
||||
→ TF-IDF 计算消息与 75 个技能的相似度
|
||||
→ 返回最匹配的技能
|
||||
→ ButlerRouter 使用此结果增强 system prompt
|
||||
```
|
||||
|
||||
## 关联模块
|
||||
|
||||
- [[chat]] — 消息流中可能触发 Hand/Skill
|
||||
- [[butler]] — ButlerRouter 使用语义路由匹配技能
|
||||
- [[middleware]] — 技能注入通过中间件实现
|
||||
|
||||
## 关键文件
|
||||
|
||||
| 文件 | 职责 |
|
||||
|------|------|
|
||||
| `crates/zclaw-hands/src/` | 9 个 Hand 实现 |
|
||||
| `crates/zclaw-skills/src/semantic_router.rs` | TF-IDF 语义路由 |
|
||||
| `skills/*.md` | 75 个技能定义 |
|
||||
| `hands/*/HAND.toml` | Hand 配置 |
|
||||
| `desktop/src/store/handStore.ts` | 前端 Hand 状态 |
|
||||
| `desktop/src/store/approvalStore.ts` | 审批状态 |
|
||||
Reference in New Issue
Block a user