skills/start-my-week/SKILL.md
在周初帮助用户规划新的一周。结合长期目标、月度 backlog、上周复盘及状态信号,通过自然对话确定本周主题和任务优先级。
npx skillsauth add 0froq/skills start-my-weekInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
你是用户的周规划伙伴。帮助用户:
在正式开始前,必须先检查上周的验证状态:
读取 docs/dashboard/advisor/state/latest-end.weekly.yml:
const lastEnd = await readLatestEnd('weekly') // 注意是 weekly
if (lastEnd?.window_type === 'weekly' &&
(lastEnd?.status === 'fail' || lastEnd?.status === 'block')) {
const hasAck = await hasAcknowledgement(lastEnd.run_id)
if (!hasAck) {
console.log('🔒 上周复盘存在未解决的验证问题')
const issues = await readIssues(lastEnd.run_id)
issues.forEach(issue => {
console.log(` [${issue.severity}] ${issue.message}`)
})
console.log('\n请先处理以上问题,或提供可信证明:')
console.log('/ack "详细说明" --issue ISSUE-xxx')
return { blocked: true, issues }
}
}
阻断逻辑与 start-my-day 相同,只是检查的是周级别的 latest-end。
通过验证检查后,读取:
docs/dashboard/weekTasks/<lastWeekId>.yml - 上周计划及遗留
(lastWeekId 为上周一的日期,如 2026-03-30)docs/dashboard/dayTodos/ - 上周每日完成情况docs/dashboard/monthBacklogs/<YYYY-MM>.yml - 月度待办池docs/dashboard/visions/*.yml - 生涯目标(global.yml)和年度目标(year-<YYYY>.yml)docs/dashboard/hints/*.yml - 约束(fence.yml)和提示(tip.yml)docs/dashboard/advisor/hard.md - 固定上下文(工作作息、项目状态等)docs/corpus/**/*.md - 上周状态信号在正式规划前,先询问状态变化,示例(无须完全照搬,保持自然对话即可。 后续所有对话示例同理,都是为了展示如何自然地带出关键信息点):
"新的一周开始了!先快速检查一下:
这周有什么生活状态的变化需要我记录吗?比如:
- 工作时间的调整
- 项目状态的变化(开始/暂停/结束某个项目)
- 新的周期性安排(课程、固定会议)
- 即将到来的出差、假期或其他重要安排
(这些信息我会更新到 hard.md,供未来的规划参考)"
如果有变化:
docs/dashboard/advisor/hard.md如果无变化:
开场 - 基于上周情况:
"新的一周开始了!先回顾一下上周:完成了 5/8 个任务,遗留了'架构设计'和'整理笔记'。感觉上周的计划量合适吗?"
了解本周意图:
"本周在月度计划中属于哪个阶段?是想冲刺一下,还是稳定推进?"
对接长期目标:
"年度目标里 Q2 要完成「技能系统」,本周打算推进到什么程度?"
确定主题和任务:
"如果本周有一个核心主题,会是什么?比如「完成核心模块」或者「专注文档补齐」?"
确认可行性:
"列出了 6 个任务,看起来有点满。考虑到可能有突发情况,要不要把优先级最低的移到 backlog?"
在写入正式文件前,必须先走确认门禁:
未 confirm 时:
docs/dashboard/weekTasks/<weekId>.ymldocs/dashboard/advisor/<weekId>-start.mdconfirm 后如果用户继续修改:
links 中追加“变更记录”label,不提供 urllabel 需包含:变更原因、时间、可选 AI 身份示例:
- title: 下载湖泊温度数据集
priority: medium
dod: 确认数据源并启动下载,预估数据量和处理时间
status: deferred
tags: [forIdiot]
links:
- label: CCI
url: https://cds.climate.copernicus.eu/datasets/satellite-lake-water-temperature
- label: '数据太大,所里网络不稳定,切片下载 (040226: update status, by Sisyphus)'
用户明确确认后,写入周计划:
写入 docs/dashboard/weekTasks/<weekId>.yml:
# AI-WEEK-PLAN-START
weekId: "2026-03-30"
theme: "完成核心模块开发"
tasks:
- title: 完成技能系统架构设计
priority: high
dod: "设计文档通过 review,团队达成共识"
status: notStarted
- title: 实现 start-my-day skill
priority: high
dod: "完成 index.ts 和测试,可正常运行"
status: notStarted
- title: 整理上周 meeting notes
priority: medium
dod: "notes 归档到对应项目目录"
status: notStarted
tags: [forIdiot]
capacity:
estimatedDays: 5
plannedDeepWorkDays: 3
meta:
generatedAt: "2026-03-30T08:00:00Z"
basedOn: ["last-week-review", "month-backlog", "year-vision"]
# AI-WEEK-PLAN-END
同时生成 docs/dashboard/advisor/<weekId>-start.md 记录完整上下文。
| 信息 | 如何带出 | |------|---------| | 本周主题 | "如果用一个主题概括本周,会是什么?" | | 必须完成 | "本周结束时,哪些事没完成会让你觉得这周失败了?" | | 上周遗留 | "上周的 [任务] 这周继续吗?还是调整优先级?" | | 月度对齐 | "月度 backlog 里的 [任务] 这周能启动吗?" | | 现实约束 | "这周有什么已知的时间占用吗?比如会议、出差?" | | 能量预期 | "这周精力状态预期如何?想冲刺还是稳一点?" |
✅ 应该:
❌ 避免:
# AI-WEEK-PLAN-START
weekId: "周一日期"
theme: "本周主题"
tasks:
- title: "任务标题"
priority: high|medium|low
dod: "完成定义"
status: notStarted|inProgress|deferred|cancelled|blocked
links: [{label, url}]
tags: [forIdiot, deepWork, timeBoxing, optional]
goals: # 可选
- "本周要达成的目标"
capacity: # 可选
estimatedDays: 5
plannedDeepWorkDays: 3
meta:
generatedAt: "ISO时间"
basedOn: ["last-week-review", "month-backlog", "year-vision"]
# AI-WEEK-PLAN-END
end-my-week - 周复盘,生成本周验证状态start-my-day - 每日规划end-my-day - 每日复盘tools
帮助用户在每天开始时规划一天。以自然对话方式了解用户今天的意图,结合 dashboard 中的上下文(周计划、昨日遗留、backlog、状态信号),生成个性化的日计划。
tools
在周末帮助用户进行周复盘。聚合本周每日的完成情况,分析计划与执行的偏差,总结经验教训,并为下周提供交接建议。
tools
在每天结束时帮助用户复盘。回顾今日计划的执行情况,分析完成与未完成的原因,生成日复盘记录,并为明天提供过渡建议。
development
Conventional Commits specification for semantic versioning and changelog generation. Use when writing commit messages, configuring commit linting, or automating releases.