# Goal Decompose Schedule

> 将个人目标智能拆解为可执行的每日任务，并写入 Apple Reminders。当用户说"帮我拆解目标"、"我想实现X"、"帮我安排计划"、"把目标分解成日程"、"制定执行计划"等时使用。适合任何需要分阶段推进的个人目标：学习、项目、技能、创作等。

- Skill: `pixiesgeosun/goal-decompose-schedule` (Agent Skill)
- Install (CLI): `npx skillmds@latest add pixiesgeosun/goal-decompose-schedule`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pixiesgeosun/goal-decompose-schedule/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: pixiesgeosun (https://skillmd.com/u/pixiesgeosun)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/pixiesgeosun/goal-decompose-schedule

---


# Goal Decompose & Schedule

将用户目标拆解成粒度合适的每日任务，写入 Apple Reminders。

## 整体流程

阶段一 → 拆解任务  
阶段二 → 用户确认清单  
阶段三 → 询问排期参数 + 冲突检测 + 写入 Reminders

---

## 阶段一：任务拆解

### 简单目标判断

如果目标满足以下所有条件，**跳过拆解**，直接进入阶段三：
- 完成所需时间 ≤ 3小时
- 只有一个清晰的执行步骤
- 不存在需要逐步验证的子成果

例如："帮我读完这篇论文"→ 直接安排一个任务即可。

### 粒度判断标准

每个任务必须满足：

**时长锚点**
- 目标范围：**1～3小时**可完成
- 超过3小时 → 必须继续细分
- 少于30分钟 → 合并到相邻任务（除非是高认知密度工作，如算法设计可保留45分钟）

**完成标志（Definition of Done）**
每个任务完成后必须有一个**可展示的产出物**：
- 一份文档 / 一段代码 / 一个决策 / 一个测试结果 / 一个草图
- 不能是"思考了一下"这类无形产出

**判断口诀：**
> "做完这个任务，我能给别人看什么？" → 答得上来 ✓，答不上来 → 继续拆

### 拆解示例（供参考，实际以目标为准）

❌ 太粗（无法一天完成，产出不明确）：
- "设计工作流"
- "测试系统"

❌ 太细（是动作不是任务，无独立产出）：
- "新建账号"
- "安装依赖"
- "打开文件"

✅ 合适粒度：
- "设计 agent 生成短片的整体架构框架（输出：架构图草稿）" — 2h
- "实现故事→分镜脚本 prompt 并完成3个样本测试" — 2.5h
- "调试图片生成模块，记录失败案例和优化方向" — 1.5h

### 风险评估

每个任务标注一个风险点（简短，1句话），常见类型：
- 技术障碍：API不稳定、依赖冲突
- 认知障碍：需要先学习才能执行
- 外部依赖：等待他人反馈、需要特定资源
- 时间低估：首次接触此类工作，实际可能超时

---

## 阶段二：输出确认清单

用以下格式输出，**等待用户确认或修改，再进入阶段三**：

```
目标：[用户的目标]
预计总任务数：N 个 | 预计总投入：X 小时

─────────────────────────────
任务清单
─────────────────────────────
1. [任务名称]
   预估时长：X 小时
   完成标志：[能展示的产出]
   风险：[一句话]

2. [任务名称]
   预估时长：X 小时
   完成标志：[能展示的产出]
   风险：[一句话]
...
─────────────────────────────

以上清单是否需要调整？确认后我们进入排期安排。
```

用户说"OK"/"确认"/"没问题"等 → 进入阶段三  
用户提出修改 → 更新清单，重新输出，再次确认

---

## 阶段三：排期与写入

### 询问排期参数

确认清单后，询问以下信息（可一次问完）：

```
好的，任务清单已确认。现在安排排期：

1. 从哪天开始？（例如：今天、明天、2026-04-10）
2. 安排节奏：
   A. 工作日（周一至周五）
   B. 节假日（周六、周日）
   C. 每天
3. 每天几点做这个任务？（工作时间 9:00-19:00 内，默认 9:00）
4. 有没有需要跳过的日期？（例如：4月15日出差、五一假期等）
```

### 冲突检测

排期前，用 `remindctl` 检查每个计划日期是否已有任务：

```bash
remindctl YYYY-MM-DD --json
```

如果某天已有提醒且时间重叠：
- 自动顺延到该天其他时段（如已满则顺延到下一个可用日）
- 告知用户："4月10日 9:00 已有安排，已自动调整到 10:00"

冲突判断规则：
- 同一天同一小时内（前后30分钟内）已有 reminder → 视为冲突
- 同天但不同时间段 → 不冲突，正常安排

### 确定 Reminder 列表

写入前询问："写入哪个 Reminders 列表？" 并列出现有列表供选择，也可新建。

检查现有列表：
```bash
remindctl list
```

### 写入 Apple Reminders

逐个写入，格式：

```bash
remindctl add \
  --title "[目标名] · [任务名]" \
  --list "[用户选择的列表]" \
  --due "YYYY-MM-DD HH:mm" \
  --notes "预估时长：Xh | 完成标志：[产出] | 风险：[风险点]"
```

**命名规范：**
- 标题格式：`目标关键词 · 任务名`（用中间点 · 分隔，方便在 Reminders 里一眼看出归属）
- 例如：`短片工作流 · 设计整体架构框架`

写入完成后输出汇总：

```
✅ 已写入 Apple Reminders

目标：[目标名]
列表：[列表名]
任务安排：

4月9日（周三）09:00 — 设计整体架构框架（2h）
4月10日（周四）09:00 — 实现故事→分镜脚本 prompt（2.5h）
4月14日（周一）09:00 — 调试图片生成模块（1.5h）
...

共 N 个任务，预计 X 月 X 日完成。
打开 Apple Reminders 即可查看。
```

---

## 注意事项

- 拆解时始终从"完成标志"出发倒推任务边界，而不是从"要做什么"正推
- 不要把学习和执行混在一个任务里（"学习X并实现Y"→拆成两个）
- 风险点优先标注"首次接触"类任务，这类任务往往实际耗时是预估的2倍
- 节假日/每天模式的时段默认白天（9:00-12:00 或用户指定时间）
- 每次写入前都要做冲突检测，不要在用户不知情的情况下堆叠任务

