# 原子动作说明 - Metadata 索引

> 创建时间：2026-03-07 09:15  
> 更新时间：2026-03-07 10:30  
> 用途：人类可读的原子动作说明（大白话）  
> 对应关系：每个 TXT 文件对应 atomic-actions/ 中的一个 MD 模块文件  
> **版本：** V2.0（原子动作重新拆分版）

---

## 📁 目录结构

```
原子动作说明/
├── 00-总索引.txt (本文件)
├── 01-数据层/
│   ├── 001-保存豆包会话.txt
│   ├── 002-更新 worklog.txt
│   ├── 003-读取项目卡片.txt
│   ├── 004-更新项目进度.txt
│   ├── 022-创建 Metadata.txt 🆕
│   ├── 023-读取 Metadata.txt 🆕
│   ├── 024-更新 Metadata.txt 🆕
│   ├── 025-删除 Metadata.txt 🆕
│   ├── 026-创建项目卡片.txt 🆕
│   └── 027-删除项目卡片.txt 🆕
├── 02-呈现层/
│   ├── 005-生成 HTML 文件.txt
│   ├── 006-生成 Mermaid 图表.txt
│   ├── 007-生成专家评分.txt
│   ├── 008-生成 TTS 语音.txt
│   └── 009-Chrome 打开文件.txt
├── 03-交付层/
│   ├── 010-飞书发送文字.txt
│   ├── 011-飞书发送语音.txt
│   ├── 012-飞书发送文件.txt
│   ├── 013-本地播放语音.txt
│   └── 014-飞书发送交互卡片.txt
├── 04-分析层/
│   ├── 015-识别项目关键词.txt
│   ├── 016-提取工作内容.txt
│   ├── 017-专家视角分析.txt
│   └── 018-优先级排序.txt
├── 05-IO 层/ 🆕
│   ├── 019-读取 HTML 模板.txt 🆕
│   ├── 020-写入 HTML 内容.txt 🆕
│   └── 021-保存 HTML 文件.txt 🆕
└── 06-工具层/ 🆕
    └── 020-渲染 Mermaid 为 PNG.txt 🆕
```

---

## 📊 原子动作统计

### 按分类统计

| 分类 | 数量 | 新增 | 说明 |
|------|------|------|------|
| 01-数据层 | 10 | +6 | CRUD 完整 + Metadata 管理 |
| 02-呈现层 | 5 | 0 | 降级 1 个到 IO 层 |
| 03-交付层 | 5 | 0 | 不变 |
| 04-分析层 | 4 | 0 | 不变 |
| 05-IO 层 | 3 | +3 | 新分类（拆分自呈现层） |
| 06-工具层 | 1 | +1 | 新分类（Canvas 渲染） |
| **总计** | **28** | **+10** | **从 18 个扩展到 28 个** |

### 原子化程度

- ✅ 真正的原子动作：27 个（不可拆分）
- 🟡 待降级为 Skill：1 个（ATOM-VISUAL-005 生成 HTML 文件）

---

## 📋 使用说明

### 快速查找
1. 看文件夹名 → 知道分类（数据/呈现/交付/分析/IO/工具）
2. 看文件名 → 知道动作名称（001-保存豆包会话）
3. 打开 TXT → 大白话说明（干什么/怎么干/什么时候干）

### 文件命名规则
- **格式：** 序号 - 动作名称.txt
- **示例：** 005-生成 HTML 文件.txt
- **对应：** atomic-actions/02-visual/ATOM-VISUAL-005-生成 HTML 文件.md

### TXT 文件内容结构
每个 TXT 文件包含：
- 这个动作是干啥的（一句话）
- 输入是啥
- 输出是啥
- 什么时候用
- 注意事项
- 对应阿福的 MD 文件路径

---

## 🎯 原子动作定义（V2.0）

### 什么是原子动作？
> **不可拆分的最小动作** = 单一职责 + 不可再分 + 可复用

### 什么是 Skill？
> **多个原子动作的固定组合** = 业务流程 + 可重复执行

### 示例对比

**❌ 错误的原子动作（组合动作）：**
- "生成 HTML 文件"（包含读取/写入/保存 3 个动作）

**✅ 正确的原子动作：**
- "读取 HTML 模板"（单一 IO 操作）
- "写入 HTML 内容"（单一替换操作）
- "保存 HTML 文件"（单一写入操作）

**✅ Skill（组合动作）：**
- "html-expert-review" = 8 个原子动作的组合

---

## ✅ 已创建说明文件（完整列表）

### 01-数据层（10 个）
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 001 | 保存豆包会话 | ✅ | 写操作 |
| 002 | 更新 worklog | ✅ | 写操作 |
| 003 | 读取项目卡片 | ✅ | 读操作 |
| 004 | 更新项目进度 | ✅ | 写操作 |
| 022 | 创建 Metadata | ✅ 🆕 | CRUD-创建 |
| 023 | 读取 Metadata | ✅ 🆕 | CRUD-读取 |
| 024 | 更新 Metadata | ✅ 🆕 | CRUD-更新 |
| 025 | 删除 Metadata | ✅ 🆕 | CRUD-删除 |
| 026 | 创建项目卡片 | ✅ 🆕 | CRUD-创建 |
| 027 | 删除项目卡片 | ✅ 🆕 | CRUD-删除 |

### 02-呈现层（5 个）
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 005 | 生成 HTML 文件 | 🟡 | 待降级为 Skill |
| 006 | 生成 Mermaid 图表 | ✅ | 单一动作 |
| 007 | 生成专家评分 | ✅ | 单一动作 |
| 008 | 生成 TTS 语音 | ✅ | 单一动作 |
| 009 | Chrome 打开文件 | ✅ | 单一动作 |

### 03-交付层（5 个）
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 010 | 飞书发送文字 | ✅ | 单一动作 |
| 011 | 飞书发送语音 | ✅ | 单一动作 |
| 012 | 飞书发送文件 | ✅ | 单一动作 |
| 013 | 本地播放语音 | ✅ | 单一动作 |
| 014 | 飞书发送交互卡片 | ✅ | 单一动作 |

### 04-分析层（4 个）
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 015 | 识别项目关键词 | ✅ | 单一动作 |
| 016 | 提取工作内容 | ✅ | 单一动作 |
| 017 | 专家视角分析 | ✅ | 单一动作 |
| 018 | 优先级排序 | ✅ | 单一动作 |

### 05-IO 层（3 个）🆕
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 019 | 读取 HTML 模板 | ✅ 🆕 | IO-读 |
| 020 | 写入 HTML 内容 | ✅ 🆕 | IO-写 |
| 021 | 保存 HTML 文件 | ✅ 🆕 | IO-保存 |

### 06-工具层（1 个）🆕
| 序号 | 名称 | 状态 | 备注 |
|------|------|------|------|
| 020 | 渲染 Mermaid 为 PNG | ✅ 🆕 | Canvas 工具 |

---

## 🔄 版本历史

### V2.0（2026-03-07 10:30）
- ✅ 新增 IO 层（3 个原子动作）
- ✅ 新增工具层（1 个原子动作）
- ✅ 新增数据层 CRUD（6 个原子动作）
- ✅ 从 18 个扩展到 28 个
- ✅ 重新定义原子动作标准

### V1.0（2026-03-07 09:15）
- ✅ 初始版本（18 个原子动作）
- ✅ 4 个分类（数据/呈现/交付/分析）

---

_人类可读 | 大白话说明 | 原子化 V2.0 | 2026-03-07_
