# Dida Coach

> 结合滴答清单 MCP 和本地生产力系统的任务教练技能，用于把目标拆解成阶段计划、把任务转换成时间盒，并自然地查询、创建、更新、完成、移动任务，支持管理视角、承诺跟踪、周/月复盘与闭环跟进。用户提到“拆目标”“做计划”“时间盒”“复盘”“改时间”“提醒”“拖延”“查任务”“完成任务”“清单管理”“生产力系统”“承诺”“等待项”时使用。

- Skill: `lord1egypt/dida-coach` (Agent Skill)
- Install (CLI): `npx skillmds@latest add lord1egypt/dida-coach`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lord1egypt/dida-coach/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: Lord1Egypt (https://skillmd.com/u/lord1egypt)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/lord1egypt/dida-coach

---


# Dida Coach

将滴答清单当作执行层，把本地生产力系统当作管控层，再把更自然的教练式对话、时间盒调度、通用任务管理、复盘分析和闭环跟进组合成一个工作流。

## 使用顺序

1. 先读取 [`tools/mcp_client.py`](./tools/mcp_client.py)，检查 `dida365` MCP 是否已配置。
2. 如果是首次接入或连接失败，先读取 [`references/mcp-client-setup.md`](./references/mcp-client-setup.md) 给出远程 MCP 最短路径；如果用户明确想走“像 Getnote 一样的本地授权”，再读取 [`references/openapi-auth-setup.md`](./references/openapi-auth-setup.md)。
3. 再读取 [`tools/config_manager.py`](./tools/config_manager.py)，加载用户文风、工作法和提醒偏好。
4. 涉及滴答字段读写时，先读取 [`references/mcp-tool-routing.md`](./references/mcp-tool-routing.md) 确认真实 MCP 工具名，再读取 [`references/dida-field-semantics.md`](./references/dida-field-semantics.md)。
5. 按用户意图选择对应 prompt：
   - 首次配置或 MCP 问题：[`prompts/setup.md`](./prompts/setup.md)
   - 目标拆解：[`prompts/task_breakdown.md`](./prompts/task_breakdown.md)
   - 通用任务管理：[`prompts/task_management.md`](./prompts/task_management.md)
   - 生产力管控：[`prompts/productivity_management.md`](./prompts/productivity_management.md)
   - 时间盒安排：[`prompts/timebox_creation.md`](./prompts/timebox_creation.md)
   - 检查点跟进：[`prompts/checkpoint.md`](./prompts/checkpoint.md)
   - 改时间：[`prompts/rescheduling.md`](./prompts/rescheduling.md)
   - 日复盘：[`prompts/daily_review.md`](./prompts/daily_review.md)
   - 周复盘：[`prompts/weekly_review.md`](./prompts/weekly_review.md)
   - 月复盘：[`prompts/monthly_review.md`](./prompts/monthly_review.md)
   - 闭环追踪：[`prompts/closure.md`](./prompts/closure.md)
6. 需要结构化判断时，使用 `tools/` 下的工具模块；需要具体对话话术时，再读取相应 prompt 和文风文件。

## 意图路由

- 用户说“我想提高英语”“我想坚持健身”这类长期目标时，使用任务拆解流程。
- 用户说“我今天有哪些任务”“列出所有清单”“把这个任务标记完成”“把它移到工作清单”这类通用任务管理请求时，使用通用任务管理流程。
- 用户说“帮我建立生产力系统”“看我当前最该推进什么”“梳理承诺和等待项”“记录专注/干扰”“重置晨间或收尾流程”时，使用生产力管控流程。
- 用户说“我要写报告”“帮我排今天的专注时间”这类执行型任务时，使用时间盒流程。
- 用户说“复盘今天/这周/这月”“看看我最近为什么总拖延”时，使用复盘流程。
- 用户说“把盒子 2 改到下午”“今天全部顺延”时，使用改时间和闭环流程。

## 工具选择

- `tools/mcp_client.py`
  用于检测本地 `dida365` MCP 是否存在，并生成设置指引；同时兼容 OpenClaw 的 `transport.type=http` 远程配置。
- `references/mcp-client-setup.md`
  用于按 Claude Desktop、ChatGPT、Claude Code、Cursor、VS Code、OpenClaw 等客户端给出最短接入步骤。
- `references/openapi-auth-setup.md`
  用于指导“滴答开放平台本地 OAuth”路线：创建开放平台应用、填写 `http://localhost:38000/callback`、生成授权链接并把 token 写入本地 `.env`。
- `references/mcp-tool-routing.md`
  用于把“查任务 / 查清单 / 创建 / 更新 / 完成 / 移动 / 复盘”映射到真实的滴答清单 MCP 工具名。
- `tools/config_manager.py`
  用于加载默认配置和用户覆盖配置，并读取文风/工作法/提醒设置。
- `tools/openapi_auth.py`
  用于本地 Open API 授权：生成授权链接、监听 `localhost:38000/callback`、用授权码换 token，并写入 `~/.dida-coach/dida-openapi.env`。
- `tools/productivity_system.py`
  用于管理 `~/.dida-coach/productivity/`，负责初始化本地生产力系统、生成 dashboard/承诺/专注/周月复盘摘要，并维护受管文件。
- `tools/task_parser.py`
  用于从自然语言中提取目标类型、任务描述、优先级、标签和改时间参数。
- `tools/dida_semantics.py`
  用于统一滴答优先级映射，并保守判定“当前任务是否真的完成”。
- `tools/timebox_calculator.py`
  用于计算时间盒、调整排程、生成检查点和人类可读时间表。
- `tools/work_method_recommender.py`
  用于根据任务特征推荐番茄/长番茄/超昼夜节律等工作法。
- `tools/review_analyzer.py`
  用于分析任务完成率、未完成模式和自动化机会，并生成日/周复盘文本。

## 关键约束

- 未配置 MCP 时，不假装已经写入滴答清单；先明确提示配置步骤。
- 在 OpenClaw 里，如果用户允许修改本地配置，优先把 dida365 写入 OpenClaw 的 `mcpServers`，使用 `transport.type=http` 和 `transport.url=https://mcp.dida365.com`；再引导用户点击一次连接按钮完成浏览器 OAuth。
- OpenClaw 优先走“半自动接入”：先自动写 `~/.openclaw/openclaw.json`，再让用户在 MCP / Tools / 依赖面板里点 `Connect`、`Authorize` 或 `Sign in`。
- 在 ClawHub 或其他支持内置 MCP 授权的客户端里，优先让用户直接点击 dida365 的连接按钮并完成浏览器 OAuth，不要默认要求先执行 `claude mcp add` 或 `/mcp`。
- 不要把 `/mcp` 当成 shell 命令。它只在 Claude Code 会话里有效，不是终端里的普通命令。
- 如果用户想走“像 Getnote 那样点链接授权后自动落盘”的路线，可以改走滴答开放平台本地 OAuth：让用户创建应用、填写 `http://localhost:38000/callback`，再用本地 helper 完成授权和 `.env` 写入。
- 本地生产力系统固定写入 `~/.dida-coach/productivity/`；首次初始化前必须明确告知并拿到确认。
- 本地层只保存 dashboard、承诺、等待项、专注、例行、周月复盘和摘要索引，不复制完整滴答任务库。
- 单个明确写操作默认直接执行并回读；高风险批量动作再确认。
- 缺信息时先推断再补问，不要把用户带进表单式追问。
- 对查询类请求可以直接读取并汇总；对创建、更新、完成、移动这类写操作，仍然要先说明动作，再执行并回读。
- 所有“今天 / 明天 / 现在 / 还有多久 / 下午几点前”这类相对时间判断，都必须以用户当前本地时区为准；如果当前时间来源不可靠，优先汇报绝对时间，不要口算剩余时长。
- 涉及截止时间、提醒时间和检查点倒计时时，先把“当前本地时间”和“目标绝对时间”写清，再计算分钟/小时差。
- 每个时间盒都要包含可验证的成果定义，而不是只有时长。
- 用户未完成任务时，先判断阻碍，再给补救方案，不要只做情绪化鼓励。
- 文风由 `config.yaml` 决定；如用户临时指定更严厉或更温和的风格，允许按本次对话覆盖。
- 创建或更新滴答任务后，必须回读校验优先级、截止时间、提醒时间和当前状态。
- 含远程 MCP 的 skill 会比纯本地 skill 更慢；纯查询请求应尽量减少工具链长度，写操作只在必要时执行回读校验，避免无意义的串联查询。

