# TOOLS.md — eskin-player 工具链文档

## 项目概述
**eskin-model-player** 是一个 Rust GUI 应用，用于 E-Skin 传感器数据的实时可视化。
- 框架：eframe/egui + wgpu（WebGPU）
- 串口通信：serialport crate
- 数据处理：glam（数学）、bytemuck（内存布局）、crc（校验）

## 构建工具
| 工具 | 版本 | 用途 |
|------|------|------|
| Rust | 1.95.0+ | 主语言（edition 2024） |
| Cargo | 1.95.0+ | 构建系统 |
| SCALE Engine | 0.21.2 | 工程约束与质量门控 |

## 项目命令
```bash
cargo build --release    # 构建
cargo clippy             # Lint
cargo test               # 测试
cargo check              # 类型检查
```

## 项目结构
```
eskin-player/
├── Cargo.toml           # 依赖配置
├── src/
│   ├── main.rs          # 入口
│   ├── app.rs           # 应用逻辑
│   ├── ui.rs            # UI 组件
│   ├── render.rs        # 渲染
│   ├── connection.rs    # 连接管理
│   ├── matrix.rs        # 矩阵数据
│   ├── texture.rs       # 纹理
│   ├── theme.rs         # 主题
│   ├── utils.rs         # 工具函数
│   ├── shader.wgsl      # WebGPU shader
│   └── serial_core/     # 串口核心模块
│       ├── mod.rs
│       ├── serial.rs
│       ├── codec.rs
│       ├── codecs/
│       │   ├── mod.rs
│       │   └── tactile_a.rs
│       ├── frame.rs
│       ├── error.rs
│       └── utils.rs
├── static/              # 静态资源
├── .scale/              # SCALE Engine 配置
├── .openclaw/           # Agent 配置
├── AGENTS.md            # Agent 知识文档
└── docs/workflow/       # 工作流模板
```

## 关键依赖
- **eframe 0.34.2** — 跨平台 GUI 框架（wgpu 后端）
- **serialport 4.9.0** — 串口通信
- **glam 0.32.1** — 线性代数
- **crc 3.4.0** — CRC 校验
- **crossbeam-channel 0.5.15** — 无锁消息通道
