讲师中心 微信公众号
AI工具推荐 视频效率加速

Personal Goals Pro(个人目标管理)

Polar Sponsor
爱发电 赞助
.NET 9.0

全自动层级目标管理系统,支持年度、季度、月度全维度目标录入管理,自带智能自动拆解核心能力,每日固定时段自动将高层级大目标逐层拆分细化为可执行每日任务,无需人工手动规划排布。搭配多渠道定时消息推送,清晨准时下发当日待办清单与全周期目标进度,自动记录任务完成状态,月末一键生成完整月度复盘数据,清晰统计完成率、打卡时长与执行情况。消息推送支持根据本地 OpenClaw 已配置的渠道进行灵活设置,所有数据本地文件离线存储,隐私安全不联网,轻松搞定工作、学习、健康各类计划,告别拖延轻松落地每一个长期目标。

Personal Goals Tracker Pro

功能概述

Personal Goals Tracker Pro是一项面向实际任务的技能,主要用于四季目标管理系统:设定年目标/月目标 → 自动生成每日任务 → 完成记录 + 月度汇总;本 skill 支持定时任务自动推送,首次使用前请完成以下配置:;

核心要点

  • 1. 配置定时任务;
  • 在 Claw 的定时任务管理界面中,添加以下三个定时任务:;
  • Cron 表达式;

使用与执行

每日目标提醒;调用Skill:personal-goal。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

Personal Goals Tracker Pro

四季目标管理系统:设定年目标/月目标 → 自动生成每日任务 → 完成记录 + 月度汇总。

快速上手

本 skill 支持定时任务自动推送,首次使用前请完成以下配置:

1. 配置定时任务

在 Claw 的定时任务管理界面中,添加以下三个定时任务:

任务名称 Cron 表达式 触发消息
每日目标提醒 0 8 * * * 调用Skill:personal-goals-pro,触发:查看今日任务
明日任务生成 0 21 * * * 调用Skill:personal-goals-pro,触发:生成明天任务
月度目标汇总 0 21 L * * 调用Skill:personal-goals-pro,触发:查看本月汇总

💡 Cron 表达式说明:

  • 0 8 * * *:每天 08:00 触发
  • 0 21 * * *:每天 21:00 触发
  • 0 21 L * *:每月最后一天 21:00 触发(L 表示月末)

2. 配置 IM 推送渠道(可选)

你可以随时通过发送关键字(如「查看今日任务」「查看目标」)主动查询任务和目标。如需定时自动推送,请在 Claw 环境中配置 IM 平台(微信、钉钉、飞书等)的推送渠道,即可实现每日提醒和月度汇总的自动推送。

配置完成后即可开始使用!

配置

首次使用前,读取 skill 目录下的 config.json 获取数据存储路径:

{
  "dataDir": "./data",
  "maxBackups": 5
}
  • dataDir:数据文件的存储目录,默认为 ./data(相对于 skill 目录,即 config.json 所在目录)。用户可修改为任意绝对路径或相对路径
  • maxBackups:最大备份数量,默认 5。超过此数量时自动删除最旧的备份
  • ⚠️ 每次操作数据文件前,必须先读取 config.json 获取 dataDir,若为相对路径则基于 config.json 所在目录解析为绝对路径后再使用

数据文件(统一在 config.dataDir 目录下)

按月拆分文件,每月一个文件包含该月的所有数据(月度目标、日任务、完成记录),避免单文件无限膨胀,同时文件数量可控(一年仅12个):

{dataDir}/
├── goals_yearly.json        # 年度目标(唯一单文件,按年份分 key)
└── monthly/                 # 每月一个文件
    ├── 2026-05.json
    ├── 2026-06.json
    └── ...

{dataDir}/../backups/        # 备份目录(与 dataDir 同级)
├── 2026-05-18_210000/       # 按备份时间命名
│   ├── goals_yearly.json
│   └── monthly/
│       └── ...
├── 2026-05-17_210000/
└── ...                      # 最多保留 maxBackups 份

💡 文件路径拼接规则:

  • 年度:{dataDir}/goals_yearly.json(单文件)
  • 月度/日/完成记录:{dataDir}/monthly/{YYYY-MM}.json(每月一个文件)
  • 文件不存在时创建,内容为空模板(见下方格式)

goals_yearly.json 格式(按年份分 key,唯一单文件)

{
  "2026": [
    {
      "id": "uuid",
      "content": "目标描述",
      "category": "health|learning|work|life|other",
      "createdAt": "2026-01-15",
      "active": true,
      "completed": false,
      "progress": 0,
      "notes": [
        {
          "id": "uuid",
          "date": "2026-03-15",
          "content": "阶段性进度或附属信息"
        }
      ]
    }
  ],
  "2027": []
}

monthly/{YYYY-MM}.json 格式(每月一个文件,包含该月全部数据)

{
  "goals": [
    {
      "id": "uuid",
      "content": "月度目标描述",
      "category": "health|learning|work|life|other",
      "createdAt": "2026-05-01",
      "active": true,
      "completed": false,
      "progress": 0,
      "notes": [
        {
          "id": "uuid",
          "date": "2026-05-10",
          "content": "备注内容"
        }
      ]
    }
  ],
  "days": {
    "2026-05-01": [
      {
        "id": "uuid",
        "content": "任务描述",
        "source": "manual|yearly|monthly",
        "sourceGoalId": "uuid(可选,关联来源目标)",
        "sourcePeriod": "2026-05(对应月度)或 2026(对应年度)",
        "completed": false,
        "completedAt": null,
        "createdAt": "ISO date"
      }
    ],
    "2026-05-02": []
  },
  "completion_log": [
    {
      "date": "2026-05-16",
      "completed": ["task-id-1", "task-id-2"],
      "total": 3,
      "rate": 0.67
    }
  ]
}

💡 年目标与月目标是并列的,不存在包含关系:用户独立设定年目标和月目标,日任务由二者共同生成。 💡 跨月目标处理:拆分为两条记录,分别写入对应月份文件,各月标注进度比例。 💡 notes 字段:目标的日志记录,用于记录目标的完整生命周期事件,包括进度更新、阶段性成果、完成记录等。每条记录含 id、date、content,按时间倒序存储(最新的在前)。新建目标时 notes 默认为空数组 []。完成目标、补充备注、删除目标等操作均应自动写入一条 note。 💡 progress 字段:目标当前进度,浮点数 0~1(归一化),0 表示未开始,1 表示已完成。新建目标时默认为 0,目标 completed=true 时为 1。补充备注时根据备注内容智能推断进度并更新此字段;若无法推断则保持原值不变。展示时乘以 100 转为百分比显示。 ⚠️ completion_log 按日期倒序存储(最新的在前)。

用户命令(自然语言识别)

修改数据目录

Trigger: "修改数据目录", "换个存储位置", "数据存到XX"

将 config.json 中的 dataDir 更新为用户指定路径,并提示是否迁移已有数据文件到新目录。

添加目标

Trigger: "添加目标", "新增", "加一条", "我要..."

识别层级:

  • 含「今年/明年/2026年」→ 年度目标,写入 goals_yearly.json
  • 含「X月」→ 月度目标,写入 monthly/{YYYY-MM}.json 的 goals 字段(默认当年)
  • 含「每天/每日」→ 日任务,写入 monthly/{YYYY-MM}.json 的 days.{YYYY-MM-DD} 字段
  • 默认 → 日任务

跨月目标(如「5月、6月减肥15斤」): 拆分为两条记录,分别写入 monthly/2026-05.json 和 monthly/2026-06.json 的 goals 字段,content 注明归属月份。

添加后自动提示是否需要基于此目标自动生成日任务。

查看目标

Trigger: "查看目标", "我的目标", "看看计划", "列出"

显示指定年/月的目标,注明已完成状态。

  • 「看看今年的目标」→ 读取 goals_yearly.json 的 "2026" key
  • 「看看5月目标」→ 读取 monthly/2026-05.json 的 goals 字段
  • 展示目标时,若该目标有 notes 则一并展示最近的备注内容

补充目标备注

Trigger: "补充备注", "记录进度", "记一下", "已完成XX(非完成目标)"

为目标添加附属备注信息,不改变目标的完成状态。

  • 识别目标:根据用户描述匹配对应年/月目标
  • 将备注追加到目标的 notes 数组开头(倒序,最新在前),包含 id、date、content
  • 根据备注内容智能推断当前进度,更新目标的 progress 字段(0~1 的浮点数)
    • 可推断时更新:如目标"读6本书",备注"已读3本"→ progress=0.5
    • 无法推断时保持原值:如备注仅为附属信息,无法量化进度
  • 若推断进度为 1,提示用户是否将该目标标记为已完成

⚠️ 补充备注 ≠ 完成目标,仅记录进度细节,不自动修改 completed 状态。

查看今日任务

Trigger: "查看今日任务", "今日任务", "今天的任务"

读取 monthly/{YYYY-MM}.json 的 days.{YYYY-MM-DD} 字段(当日),展示当日任务及完成状态。

查看/完成/删除目标

Trigger: "完成了XX", "XX做完了", "删除XX", "完成目标:XX", "删除目标:XX"

  • 完成("完成了XX"):
    • 日任务:标记 completed=true,记录完成时间,同步更新 monthly/{YYYY-MM}.json 的 completion_log
    • 年/月目标:标记 completed=true,progress 更新为 1,同时在 notes 中追加一条完成记录(含完成日期和说明)
  • 删除("删除XX"):采用软删除,标记 active=false,不物理移除数据
    • 年/月目标:将 active 设为 false,该目标不再出现在日常展示和日任务生成中,同时在 notes 中追加一条删除记录
    • 日任务:将 active 设为 false,该任务不再显示
    • ⚠️ 已关联的日任务不清理,保留历史记录完整性

查看本月汇总

Trigger: "查看本月汇总", "本月汇总", "月度汇总"

读取 monthly/{YYYY-MM}.json 的 completion_log,输出本月完成率和目标完成情况。

生成/更新日任务

Trigger: "生成明天任务", "更新日任务"

读取月/年目标,智能生成日任务(按来源标注)。

自动生成逻辑(核心)

每日 21:00 日任务生成规则:

年目标与月目标是并列的,日任务由二者共同生成,不存在"年目标拆解为月目标"的逻辑。

  1. 执行数据备份:将 config.dataDir 目录下的全部内容(含 goals_yearly.json、monthly/ 等所有文件和子目录)递归复制到 {dataDir}/../backups/{YYYY-MM-DD_HHmmss}/,备份完成后检查备份数量,超过 config.maxBackups 则按时间倒序删除最旧的备份
  2. 获取次日日期,提取 YYYY-MM-DD、YYYY-MM 和 YYYY
  3. 读取 monthly/{YYYY-MM}.json 的 goals 字段,取该月 active 目标
  4. 读取 goals_yearly.json 中次日所在年份("YYYY")的 active 目标
  5. 将上述月目标 + 年目标中每个 active 目标各生成一条日任务,内容根据原文长度决定(≤15字直接用原文,>15字概括核心),如"减肥7斤"、"读完8本书"等
  6. 写入 monthly/{YYYY-MM}.json 的 days.{YYYY-MM-DD} 字段,每条任务标 source、sourceGoalId、sourcePeriod
  7. 不覆盖已有记录,只追加

⚠️ 关键规则:日任务内容按目标原文长度决定展示方式,绝不自行推测时间/数量!

  • 目标原文 ≤ 15 字:直接使用原文作为日任务内容
    • "减肥7斤" → 日任务 = 减肥7斤
    • "读完8本书" → 日任务 = 读完8本书
  • 目标原文 > 15 字:在原文基础上概括核心,保留关键信息
    • "5月减肥7斤,因为这个月我要去其他地方玩" → 日任务 = 减肥7斤
    • "今年系统学习前端开发,完成React和Vue两个框架的实战项目" → 日任务 = 学习前端开发
  • 不自行补充用户未提及的时长、频率、数量等细节

手动日任务:用户随时可添加,source=manual

定时任务

⚠️ 触发机制:skill 本身无法设置系统定时器,以下定时任务由外部调度器(如 cron、云函数定时触发)按时间调用,或由用户发消息时检查当前时间判断是否需要执行。

每日目标提醒(每天 08:00)

读取 monthly/{YYYY-MM}.json 的 days.{YYYY-MM-DD} 字段(当日),重点展示未完成任务,简要提及月/年目标。

明日任务生成(每天 21:00)

执行"自动生成逻辑",生成次日任务。

月度目标汇总(每月最后一天 21:00)

读取 monthly/{YYYY-MM}.json 的 completion_log,取本月记录,输出月度复盘。

推送格式

以下为模板定义,{} 内为动态变量,实际推送时替换为真实数据。

每日目标提醒(08:00)

📅 {M}月{D}日 {周X}
⏳ 今日任务:{未完成数}项未完成

{序号}. [ ] {任务内容} {来源标签}
{序号}. [x] {任务内容} {来源标签}
...

—— 🎯 目标进度 ——

{YYYY}年 | {目标内容}
{进度条} {百分比}%

{M}月 | {目标内容}
{进度条} {百分比}%
(仅展示未完成的年/月目标,已完成的不显示)
...

变量说明:

  • 标题行:{M}月{D}日 {周X} + 未完成数;全部完成时显示 ⏳ 今日任务:全部完成 ✓
  • 任务行:[ ] 未完成,[x] 已完成
  • 来源标签:年目标 [年]、月目标 [月]、手动添加不显示
  • 目标进度行:仅展示 completed=false 的年/月目标,已完成的不显示(避免消息随完成数增多而变长);年目标用 {YYYY}年 | 标注年份,月目标用 {M}月 | 标注月份;进度百分比由 progress 字段(0~1)乘以 100 取整得到;进度条 10 格,█ 填充 + ░ 空白

明日任务生成推送(21:00)

✅ 明日任务已生成
📆 {次日M}月{次日D}日 | 共{任务数}项

{序号}. {任务内容} {来源标签}
...

晚安,明天也要加油呀 💪

变量说明:

  • 来源标签:年目标 [年]、月目标 [月]、手动添加不显示

月度目标汇总推送(月末 21:00)

📊 {M}月目标复盘
━━━━━━━━━━━━━━━━

📈 整体完成率:{百分比}%
📅 达标天数:{达标天数}天 / {有记录天数}天

— 目标完成情况 —
{目标内容}  ✅ 已完成
{目标内容}  🔄 进行中({百分比}%)
...

— 任务统计 —
📝 总任务:{总数}项
✅ 已完成:{完成数}项
☐ 未完成:{未完成数}项

{M+1}月继续加油,未来可期 ✨

完成打卡反馈

当用户说"完成了XX":

  • 单项完成:{任务内容} ✓ 剩余 {N} 项
  • 全部完成:今日任务全部完成 ✓

边界场景

跨月/跨年处理

  • 12月31日生成次日任务:次日为1月1日,需写入 monthly/{nextYear}-01.json,读取的月目标也是1月的,年目标取新年份
  • 12月完成日任务:completion_log 写入 monthly/2026-12.json,即使当前已进入1月,完成记录仍归属于任务所在月份
  • 跨月目标(如"5月、6月减肥15斤"):拆分为两条记录,分别写入各自月份文件

补录历史任务

  • 用户补录昨天的任务时,按目标日期(而非当前日期)写入对应 monthly/{YYYY-MM}.json 的 days.{YYYY-MM-DD} 字段
  • 若目标日期跨月(如今天是6月1日,补5月31日的任务),写入 monthly/2026-05.json
  • completion_log 同样写入目标日期所在月份的文件

异常处理

config.json 损坏或缺失

  • 若 config.json 不存在:自动重建,dataDir 默认 ./data(相对于 skill 目录),maxBackups 默认 5,然后从重建后的 config.json 中读取配置,并提示用户「配置文件缺失,已用默认配置重建」
  • 若 config.json 内容非法(JSON 解析失败):备份原文件为 config.json.broken,用默认值重建,提示用户「配置文件损坏,已备份并重建默认配置」

dataDir 目录不存在

  • 读写数据文件前检查 dataDir 目录是否存在,不存在则自动创建(含 monthly/ 子目录)
  • 提示用户「数据目录不存在,已自动创建」

数据文件损坏(JSON 解析失败)

  • goals_yearly.json 损坏:备份为 goals_yearly.json.broken,重建空模板 {},提示用户「年度目标文件损坏,已备份并重建空文件,历史数据需手动恢复」
  • monthly/{YYYY-MM}.json 损坏:备份为 {YYYY-MM}.json.broken,重建空模板(goals/days/completion_log),提示用户「X月数据文件损坏,已备份并重建空文件,该月历史数据需手动恢复」
  • ⚠️ 绝不静默丢弃数据,损坏文件必须备份后才可重建

数据文件缺失

  • 文件不存在时直接创建空模板,无需额外提示(这是正常首次使用场景)

通用原则

  1. 先备份再修复:任何损坏文件都先 .broken 备份,再重建
  2. 主动告知用户:异常情况必须提示,不可静默处理
  3. 最小影响:仅重建出问题的文件,不影响其他正常文件
  4. 可恢复:备份文件保留原始数据,用户有机会手动抢救

Rules

  1. UUID 生成方式:使用 Date.now() + 随机数 拼接生成,不依赖外部 UUID 库。示例:Date.now().toString(36) + Math.random().toString(36).slice(2, 8)
  2. 所有 JSON 数据文件必须格式化:写入时使用 indent=2 缩进,ensure_ascii=False 保留中文,不可压缩成一行
  3. 读取数据前必须先 load 对应文件
  4. 写操作后立即验证 JSON 可读
  5. 完成日任务时同步更新 monthly/{YYYY-MM}.json 的 completion_log
  6. 生成日任务时注明 sourceGoalId 和 sourcePeriod 便于追溯(月目标和年目标地位平等,不存在谁拆解谁)
  7. 每月汇总用上个月的时间范围(不是当月)
  8. 日任务生成不删除同日已有任务,只追加
  9. completion_log 每文件内按日期倒序存储(最新的在前)
  10. 年度/月度目标按年份/月份精确匹配,不是模糊匹配
  11. 每次读写数据文件前,必须先读取 config.json 获取 dataDir,若为相对路径则基于 config.json 所在目录解析为绝对路径,用其拼接完整文件路径,不可硬编码 data/ 目录
  12. notes 按时间倒序存储(最新的在前),补充备注时追加到数组开头
  13. notes 是目标日志,完成目标、删除目标等状态变更操作均须自动追加一条 note 记录
  14. 补充备注(notes)不改变目标 completed 状态,仅记录附属信息
  15. progress 字段为 0~1 的浮点数(归一化),新建目标默认 0,completed=true 时为 1;补充备注时根据内容智能推断进度并更新,无法推断则保持原值
  16. 推送格式中目标进度百分比由 progress × 100 取整得到,不另行计算
目录

热门AI工具

更多
超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
Playwright 测试失败怎么办
Playwright 测试失败怎么办

Playwright测试失败专题汇集超时、定位器匹配、浏览器提前关闭、依赖与插件配置、文件上传、SSL及Docker启动等故障文章,并介绍通过截图、报告和Trace定位错误。

0

2026.10.21

Playwright 页面操作指南
Playwright 页面操作指南

Playwright页面操作专题汇集元素定位、点击与输入、等待响应、多页面切换、Iframe、事件监听及文件处理的已审核文章,便于按操作场景查阅示例与常见问题。

0

2026.10.21

Playwright 入门教程
Playwright 入门教程

Playwright入门专题汇集测试框架安装、VS Code配置、录制脚本、编写首个用例、运行调试及查看报告的已审核文章,帮助初学者搭建端到端测试流程。

0

2026.10.21

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

0

2026.10.16

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

0

2026.10.16

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

0

2026.10.16

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

0

2026.10.16

Revel框架MVC路由与控制器
Revel框架MVC路由与控制器

本专题聚焦Revel框架MVC核心机制,讲解路由定义、控制器Action、参数绑定、请求响应和反向路由,并结合常见场景梳理接口请求处理流程。

0

2026.10.16

Revel框架入门与安装配置
Revel框架入门与安装配置

本专题从Revel框架环境搭建讲起,系统介绍命令行工具安装、项目创建、目录结构、配置文件及热代码重载,帮助开发者快速完成首个Go Web应用。

0

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn