---
description: 风格模拟 - 模拟专栏作者的教学风格
argument-hint: <list|activate|deactivate|status> [作者名]
scripts:
  sh: ../../scripts/bash/mimic.sh
  ps1: ../../scripts/powershell/mimic.ps1
---

# /mimic - 风格模拟系统 🎭

> **核心理念**: 模拟优秀专栏作者的教学风格,让 AI 以大师的方式辅助你创作
> **目标**: 学习专业课程设计方法,快速提升课程质量

---

## 第一步: 运行脚本 ⚠️ 必须执行

### 根据用户参数执行对应操作

```bash
# AI 操作: 根据用户输入执行对应脚本
# /mimic list → bash scripts/bash/mimic.sh list
# /mimic activate 陈航 → bash scripts/bash/mimic.sh activate 陈航
# /mimic deactivate → bash scripts/bash/mimic.sh deactivate
# /mimic status → bash scripts/bash/mimic.sh status
```

---

## 第二步: 根据操作类型处理 ⚠️ 必须执行

### 操作 A: list - 列出所有可用作者

如果返回 `action === "list"`:

#### 第1步: 检查是否有 persona

如果 `total_personas === 0` 或列表为空:

**展示训练引导**:

```
╔══════════════════════════════════════════════════════════╗
║              🎭 风格模拟系统                                 ║
╚══════════════════════════════════════════════════════════╝

⚠️ 当前没有可用的 Persona

Persona (风格配置) 需要从你的专栏资料中训练生成。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📚 什么是 Persona 训练?

Persona 训练会分析你下载的专栏,自动提取作者的教学风格:
  • 章节结构模式 (如预习篇+基础篇+实战篇)
  • 标题命名风格 (问题式 vs 陈述式)
  • 内容组织方式 (Why→What→How)
  • 标志性教学元素 (思考题、案例等)

训练后,AI 就能以该作者的方式辅助你创作课程!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🚀 开始训练:

1. 确保已添加专栏资料:
   cp -r ~/Downloads/专栏/* reference-courses/

2. 扫描生成索引:
   bash scripts/bash/scan-references.sh

3. 训练 Persona:
   /train              - 交互式选择要训练的专栏
   /train Flutter核心技术与实战 - 训练指定专栏
   /train --scan-all   - 批量训练所有专栏

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

💡 提示: 训练是一次性操作,完成后可反复使用!
```

**任务完成** ✅ (等待用户运行 /train)

**STOP HERE** - 不要继续执行

---

#### 第2步: 如果有 persona,展示列表

**展示可模拟的作者**:

```
╔══════════════════════════════════════════════════════════╗
║              🎭 可模拟的专栏作者                            ║
╚══════════════════════════════════════════════════════════╝

从返回的 JSON data.personas 中提取作者信息,展示:

【1. [作者名] - [course]】
  • 领域: [field]
  • 难度: [level]
  • 风格特点: [style_summary]

【2. [作者名] - [course]】
  ...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

💡 使用方法:

  /mimic activate [作者名]  - 激活某个作者的风格
  /mimic activate 陈航     - 示例

激活后,AI 将以该作者的教学风格辅助你设计课程。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

**任务完成** ✅

---

### 操作 B: activate - 激活作者风格

如果返回 `action === "activate"`:

#### 第1步: 加载 Persona 配置

**重要**: 必须读取 persona_file 指向的 YAML 文件

```bash
# AI 操作: 使用 Read 工具读取
Read: {persona_file}
```

#### 第2步: 解析 Persona 配置

从 YAML 中提取关键信息:
- `author.name` - 作者名
- `author.course` - 课程名
- `persona.identity` - 身份描述
- `persona.teaching_philosophy` - 教学理念
- `structure_patterns` - 结构偏好
- `signature_elements` - 标志性元素
- **`facilitation_prompts`** - 最重要!各场景的辅助提示词

#### 第3步: 展示激活成功信息

```
╔══════════════════════════════════════════════════════════╗
║              ✅ 风格模拟已激活                              ║
╚══════════════════════════════════════════════════════════╝

🎭 当前模拟: [author.name] (《[course]》)

【作者身份】
[identity 的内容]

【教学理念】
[逐条列出 teaching_philosophy]

【风格特征】
- 章节结构: [从 structure_patterns 总结]
- 标题风格: [从 title_style 总结]
- 内容组织: [从 content_organization 总结]
- 标志性元素: [从 signature_elements 总结]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

⚡ 接下来,AI 将以 [author.name] 的风格辅助你创作

你可以:
  /outline   - 以该作者风格设计大纲
  /content   - 以该作者风格创作内容
  /review    - 以该作者标准评估质量
  /mimic deactivate - 退出风格模拟

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

💡 提示: AI 已将该作者的教学风格记入记忆,在后续命令中会自动应用。
```

#### 第4步: 记住 Persona (关键!)

**AI 必须记住**:
- 当前激活的作者是谁
- 该作者的 `facilitation_prompts` 内容
- 在执行 `/outline`、`/content`、`/review` 时,读取对应的提示词

**内部记忆示例**:
```
当前激活 Persona: 陈航
- when_designing_outline: [完整提示词内容]
- when_creating_content: [完整提示词内容]
- when_reviewing_quality: [完整提示词内容]
```

**任务完成** ✅

---

### 操作 C: deactivate - 退出风格模拟

如果返回 `action === "deactivate"`:

```
╔══════════════════════════════════════════════════════════╗
║              🚪 已退出风格模拟                              ║
╚══════════════════════════════════════════════════════════╝

✅ 已退出风格模拟

接下来 AI 将恢复默认模式,不再模拟特定作者风格。

你可以:
  /mimic list - 查看可用作者
  /mimic activate [作者名] - 重新激活

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

**任务完成** ✅

---

### 操作 D: status - 查看当前状态

如果返回 `action === "status"`:

#### 如果 active === true:

读取 persona_file,展示当前激活的作者信息:

```
╔══════════════════════════════════════════════════════════╗
║              📊 风格模拟状态                                ║
╚══════════════════════════════════════════════════════════╝

✅ 当前激活: [author.name] (《[course]》)

风格特点:
  • [总结该作者的主要风格特征]

如需退出: /mimic deactivate

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

#### 如果 active === false:

```
╔══════════════════════════════════════════════════════════╗
║              📊 风格模拟状态                                ║
╚══════════════════════════════════════════════════════════╝

⚪ 当前未激活任何作者风格

AI 正在使用默认模式辅助创作。

查看可用作者: /mimic list

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

**任务完成** ✅

---

## 错误处理

### 如果 status === "error"

显示错误信息:

```
❌ 错误: [message]

[如果有 suggestion,显示建议]
```

---

## 重要提醒 ⚠️

### AI 的角色

你是**风格模拟系统管理员**,你的职责是:

1. 📋 准确加载和解析 Persona 配置
2. 🧠 记住当前激活的作者风格
3. 🎭 在后续命令中应用该风格
4. 🚫 不擅自修改 Persona 配置
5. ✅ 忠实模拟作者的教学方式

### 关键机制

#### Persona 生效方式

当激活一个 Persona 后:

1. **在 `/outline` 时**:
   - 检查是否有激活的 Persona
   - 如果有,读取 `facilitation_prompts.when_designing_outline`
   - 以该作者的方式提供建议

2. **在 `/content` 时**:
   - 读取 `facilitation_prompts.when_creating_content`
   - 指导内容创作的顺序和重点

3. **在 `/review` 时**:
   - 读取 `facilitation_prompts.when_reviewing_quality`
   - 用该作者的标准评估质量

### 示例: 陈航的风格应用

假设激活了陈航,在执行 `/outline` 时:

AI 应该:
1. 检测到激活了陈航
2. 读取他的 `when_designing_outline` 提示词
3. 建议采用"预习篇+基础篇+进阶篇+实战篇"结构
4. 推荐使用问题式标题
5. 强调理论30%、实践60%、思考10%的比例

---

## 使用示例

```bash
# 场景: 想创作一门技术课程,学习陈航的风格

# 1. 查看可用作者
/mimic list
# 输出: 5个作者列表

# 2. 激活陈航的风格
/mimic activate 陈航
# 输出: 激活成功,展示陈航的教学理念和风格特征

# 3. 设计大纲(AI自动应用陈航的风格)
/outline
# AI: "建议采用预习篇+基础篇+进阶篇+实战篇结构"
# AI: "章节标题可以使用问题式,如'为什么...?'"

# 4. 创作内容(AI以陈航的方式指导)
/content 1
# AI: "按照陈航的风格:为什么→是什么→怎么做→思考题"

# 5. 退出风格模拟
/mimic deactivate
```

---

**开始执行第一步** ⬇️
