关于 task-tracker
task-tracker 是面向 ADHD 模式的任务跟踪技能,通过状态管理任务、检测可能的中断,并采用干预策略和记录完成 streak。
主要功能
- 01按定义的状态跟踪任务
- 02检测话题切换和停滞任务
- 03采用微小承诺与分块策略
- 04记录完成 streak 和任务模式
适用场景
- 01跟踪任务从提出到完成
- 02发现切换话题后停滞的工作
- 03管理受外部依赖阻塞的任务
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ breverdbidder/ life-os --skill task-tracker安装后在 Claude Code 中输入/task-tracker确认已加载。
详细介绍
任务追踪器 - ADHD 状态机
概述
专为 ADHD 行为模式设计的系统化任务追踪。通过主动干预防止任务被放弃,同时在不评判的前提下保持责任意识。
状态机
┌──────────────────────────────────────────┐
│ │
▼ │
┌──────────┐ ┌──────────────────┐ ┌─────────────┐ │
│ INITIATED│──▶│ SOLUTION_PROVIDED│──▶│ IN_PROGRESS │─────────┤
└──────────┘ └──────────────────┘ └─────────────┘ │
│ │ │ │
│ │ ▼ │
│ │ ┌───────────┐ │
│ │ │ COMPLETED │ │
│ │ └───────────┘ │
│ │ │
│ ├─────────────────┐ │
│ │ │ │
│ ▼ ▼ │
│ ┌───────────┐ ┌──────────┐ │
└──────────▶│ ABANDONED │ │ BLOCKED │ │
└───────────┘ └──────────┘ │
│ │ │
▼ ▼ │
┌───────────┐ ┌──────────┐ │
│ DEFERRED │◀────│ (Retry) │───────────────┘
└───────────┘ └──────────┘
状态定义
| 状态 | 触发条件 | 后续操作 |
|---|---|---|
| INITIATED | 收到任务请求 | 评估复杂度,提供解决方案 |
| SOLUTION_PROVIDED | 已提供解决方案 | 等待执行信号 |
| IN_PROGRESS | 用户确认正在处理 | 监控是否完成 |
| COMPLETED | 用户确认已完成 | 记录成功,更新连续完成记录 |
| ABANDONED | 无响应且切换了上下文 | 记录模式,进行干预 |
| BLOCKED | 存在外部依赖 | 找出阻碍因素,安排重试 |
| DEFERRED | 主动推迟 | 设置提醒,记录原因 |
任务元数据
每项任务都会追踪:
task = {
"id": "task_20251219_001",
"description": "Review Q4 insurance renewals",
"state": "INITIATED",
"domain": "BUSINESS", # BUSINESS | MICHAEL | FAMILY | PERSONAL
"complexity": 6, # 1-10 scale
"clarity": 8, # 1-10 scale (how clear were instructions)
"estimated_minutes": 45,
"actual_minutes": None,
"initiated_at": "2025-12-19T10:30:00Z",
"solution_provided_at": None,
"completed_at": None,
"abandonment_count": 0,
"intervention_level": 0
}
放弃检测触发条件
监控以下模式:
- 上下文切换 - 未结束当前任务就转向新话题
- 会话结束 - 聊天结束时,任务处于 SOLUTION_PROVIDED 或 IN_PROGRESS 状态
- 时间衰减 - 提供解决方案后超过 30 分钟仍无更新
- 话题偏离 - 任务待处理期间,用户询问无关问题
检测算法
def check_abandonment(task, current_message, elapsed_minutes):
if task["state"] not in ["SOLUTION_PROVIDED", "IN_PROGRESS"]:
return False
# Time-based trigger
if elapsed_minutes > 30:
return True
# Context switch detection
if not is_related_to_task(current_message, task):
return True
return False
干预协议
级别 1:温和确认(0-30 分钟)
📌 Quick check: [task description] - still on it?
级别 2:观察模式(30-60 分钟)
🔄 I notice [task] from earlier. This is pattern #[N] this week.
Continue or consciously defer?
级别 3:直接追责(超过 60 分钟)
⚠️ ACCOUNTABILITY: [task] started [time] ago.
Current status? Be honest - no judgment, just facts.
ADHD 干预策略
检测到放弃行为时,应用以下技巧:
微承诺
拆分成最小的可行行动:
Just step 1? [tiny specific action] That's it.
Nothing else required right now.
身体陪伴
营造虚拟的共同工作氛围:
Let's do this together. You: [specific action]
Me: ⏱️ Waiting... (I'll check back in 5 minutes)
分块
集中注意力:
Step 1 only. Confirm when done.
Don't think about step 2 yet.
匹配精力
与每日规律保持一致:
It's [time] - your [peak/dip] period.
[Suggest appropriate task complexity]
工作流:创建任务
触发条件: 任何隐含需要完成工作的请求
- 从消息中提取任务描述
- 根据以下因素评估复杂度(1-10):
- 步骤数量
- 外部依赖
- 所需决策
- 时间估算
- 根据以下因素评估清晰度(1-10):
- 请求的具体程度
- 已知与未知要素
- 模糊程度
- 指定领域(BUSINESS/MICHAEL/FAMILY/PERSONAL)
- 将状态设为 INITIATED
- 提供解决方案 → 将状态设为 SOLUTION_PROVIDED
工作流:状态转换
INITIATED → SOLUTION_PROVIDED
# After providing solution
task["state"] = "SOLUTION_PROVIDED"
task["solution_provided_at"] = now()
SOLUTION_PROVIDED → IN_PROGRESS
触发条件: 用户说“正在处理”“现在开始”“正在做”
task["state"] = "IN_PROGRESS"
IN_PROGRESS → COMPLETED
触发条件: 用户说“完成了”“做完了”“已完成”
task["state"] = "COMPLETED"
task["completed_at"] = now()
task["actual_minutes"] = elapsed_time()
update_streak()
任意状态 → ABANDONED
触发条件: 检测到放弃行为,且用户未回应干预
task["state"] = "ABANDONED"
task["abandonment_count"] += 1
log_pattern()
任意状态 → BLOCKED
触发条件: 用户指出存在外部依赖
task["state"] = "BLOCKED"
task["blocker"] = identified_dependency
schedule_retry()
任意状态 → DEFERRED
触发条件: 有意识地推迟并说明原因
task["state"] = "DEFERRED"
task["defer_reason"] = reason
task["defer_until"] = scheduled_time
连续完成记录
维护连续完成记录以提供动力:
streak = {
"current": 5, # Days with at least 1 completion
"longest": 12,
"total_completions": 47,
"abandonment_rate": 0.23 # 23% tasks abandoned
}
# On completion
"✅ Done. Streak: 5 days. Total: 47 tasks."
# On first task of day
"Day 6 starts now. Keep the streak alive."
特定领域行为
BUSINESS(Everest Capital)
- 提高紧急程度权重
- 关注截止日期
- 评估对收入的影响
MICHAEL(D1 Swimming)
- 与游泳日程关联
- 与营养和训练安排协调
- 关注招募截止日期
FAMILY(Orthodox Observance)
- 关注安息日和节日
- 晚间不施加工作压力
- 优先考虑家庭活动
PERSONAL(健康/学习)
- 考虑精力水平
- 整合学习记录
- 关联健康指标
LangGraph 集成
状态架构
class TaskState(TypedDict):
task_id: str
description: str
state: str
domain: str
complexity: int
clarity: int
elapsed_minutes: int
intervention_level: int
streak_current: int
节点
create_task- 根据用户消息初始化provide_solution- 生成回复并更新状态check_abandonment- 定期检查是否放弃intervene- 应用干预策略complete_task- 记录完成情况并更新连续完成记录
脚本
scripts/task_state_machine.py- 状态转换逻辑scripts/abandonment_detector.py- 模式检测scripts/streak_calculator.py- 连续完成记录维护
参考资料
references/intervention_templates.md- 完整的干预脚本references/adhd_patterns.md- 常见模式和应对方式
评论
支持 Markdown