CANN/cannbot-skills Ascend C任务焦点工作流程详解
```┌─────────────────────────────────────────────────────┐│ 1. 任务接收││- 评估任务复杂度││- 决定是否使用 todo.md
·
完整工作流程详解
标准工作流程
┌─────────────────────────────────────────────────────┐
│ 1. 任务接收 │
│ - 评估任务复杂度 │
│ - 决定是否使用 todo.md │
└─────────────────────────────────────────────────────┘
│
复杂度判断
│
┌──────┴──────┐
│ │
简单任务 复杂任务
(<3 步) (≥3 步)
│ │
│ ▼
│ ┌─────────────────────┐
│ │ 2. 创建 todo.md │
│ │ - 定义目标 │
│ │ - 列出步骤 │
│ │ - 初始化进度 │
│ └─────────────────────┘
│ │
└────────────┤
│
┌──────┴──────┐
│ │
直接执行 进入循环
│ │
│ ▼
│ ┌─────────────────────┐
│ │ 3. 执行当前步骤 │
│ │ - 专注当前任务 │
│ └─────────────────────┘
│ │
│ ▼
│ ┌─────────────────────┐
│ │ 4. 更新 todo.md │
│ │ - 勾选完成 │
│ │ - 更新进度 │
│ │ - 移至已完成 │
│ └─────────────────────┘
│ │
│ ▼
│ 每 3-5 步?
│ │
│ ┌──────┴──────┐
│ │ │
│ 是 否
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ 5. 打印 │ │
│ │ todo.md │ │
│ │ 到末尾 │ │
│ └─────────────┘ │
│ │ │
└──────┴─────────────┘
│
▼
┌─────────────┐
│ 所有步骤完成?│
│ │
┌──────┴──────┐
│ │
否 是
│ │
▼ ▼
返回执行 ┌─────────────┐
│ 6. 最终总结 │
│ - 归档 │
│ - 总结 │
└─────────────┘
详细步骤说明
第 1 步:任务接收与评估
评估维度:
| 维度 | 简单 | 复杂 |
|---|---|---|
| 步骤数 | < 3 | ≥ 3 |
| 时间 | < 10 分钟 | ≥ 10 分钟 |
| 子任务 | 无 | 多个 |
| 不确定性 | 低 | 高 |
决策:
- 简单任务 → 直接执行,不创建 todo.md
- 复杂任务 → 创建 todo.md
第 2 步:创建 todo.md
基础结构:
# 任务:[名称]
## 目标
[1-2 句话]
## 待办事项
- [ ] 步骤 1
- [ ] 步骤 2
...
## 进度
0/N
创建要点:
- 目标简洁明确
- 步骤按顺序排列
- 步骤粒度适中 (10-30 分钟)
- 初始化进度为 0/N
第 3 步:执行当前步骤
执行原则:
- 专注当前步骤,不跳步
- 如遇阻塞,记录到"阻塞问题"
- 完成后立即更新 todo.md
第 4 步:更新 todo.md
更新动作:
# 更新前
- [ ] 编写 kernel 代码
# 更新后
- [x] 编写 kernel 代码
更新进度:
## 进度
1/N → 2/N
移动已完成:
## 待办事项
- [ ] 步骤 2
- [ ] 步骤 3
## 已完成
- [x] 步骤 1
第 5 步:打印 todo.md 到末尾
打印时机:
- 每 3-5 步完成后
- 切换阶段时
- 发现阻塞时
- 任务过半时
打印格式:
=== 任务焦点 ===
当前任务:[任务名称]
当前步骤:步骤 X
进度:X/N (Z%)
下一步:[下个步骤]
=== 待办事项 ===
[列出剩余步骤]
==================
第 6 步:最终总结
总结内容:
- 任务完成情况
- 遇到的问题及解决
- 经验教训
归档 todo.md:
- 移动到项目文档目录
- 或删除(如不需要)
特殊场景工作流
场景 1:精度调试
开始调试
│
├─ 创建带调试计数的 todo.md
│
├─ 尝试快速方法(计数 +1)
│ │
│ ├─ < 7 次 → 继续快速方法
│ └─ ≥ 7 次 → 切换二分调试
│
├─ 找到问题 → 实施修复
│
└─ 验证修复 → 完成
场景 2:阶段式任务
开始任务
│
├─ 创建分阶段 todo.md
│
├─ 完成阶段 1
│ └─ 打印 todo.md(标记阶段完成)
│
├─ 完成阶段 2
│ └─ 打印 todo.md(标记阶段完成)
│
└─ 所有阶段完成 → 总结
场景 3:阻塞处理
正常执行
│
├─ 遇到阻塞
│
├─ 记录到"阻塞问题"
│
├─ 打印 todo.md(标记阻塞)
│
├─ 尝试解决
│ │
│ ├─ 解决 → 继续
│ └─ 无法解决 → 等待用户输入
│
└─ 用户输入 → 继续执行
与用户交互点
用户输入 → 触发 ascendc-task-focus
↓
创建/更新 todo.md
↓
执行步骤
↓
完成步骤 → 更新 todo.md
↓
每 3-5 步 → 打印 todo.md 到末尾 ← 用户看到当前状态
↓
继续执行
↓
完成 → 总结
注意力保持机制
为什么有效?
| 机制 | 效果 |
|---|---|
| 反复打印到末尾 | 目标在近期注意力范围 |
| 明确进度 | 了解当前位置 |
| 列出下一步 | 知道要去哪里 |
| 移动已完成 | 减少干扰信息 |
最佳实践
- 打印频率:每 3-5 步,不过度也不过少
- 打印位置:始终在上下文末尾
- 打印内容:包含当前状态、下一步
- 更新及时:完成立即更新
更多推荐




所有评论(0)