GOOGLETASKLIST="openclaw" # 可通过用户指令自定义TODODIR="archive/todos" # 相对于agent工作目录# YYYY-MM-DD 开始FILENAME="todos-{YYYYMMDD}.md" 其中 YYYYMMDD 是当周周一的日期,文件路径为 {TODODIR}/{FILENAME}```markdown
# YYYY-MM-DD
## ToDos
第二行notes(续)
第三行notes(续)
...
## Works
[一般由用户自己填写]
## Summary
[可由agent根据todo和works自动生成总结]
---
# YYYY-MM-DD+1
## ToDos
## Works
## Summary
---
# YYYY-MM-DD+2
...
```
模版注意事项:
# YYYY-MM-DD 开始todos-20260413.md解析规则:
- [ ] [{priority}] {title} 依次提取:完成状态:status
优先级:priority(p0 > p1 > p2,默认p1)如无则自动添加p1
任务标题:title
- taskId: xxx → 提取 taskId- due: YYYY-MM-DD → 提取 截止日期:due (默认当天)- xxx(非 taskId/due/priority)→ 归入 notestaskId:、due: 的行都属于该任务的 notes,直到下一个任务需要用户主动触发
在当天内容末尾添加完成情况小结,格式如下:
---
## Summary
**已完成(N/M)**:
1. ✅ 第一项任务
2. ✅ 第二项任务
**未完成(M/N)**:
1. ❌ 第一项任务
2. ❌ 第二项任务
格式参照上文的 todo 任务模版。
根据当天todo创建新的google task,仅针对本地todo中没有taskId的任务(无论是否已经标记完成),并将生成的taskId回写到本地todo文件中。
对于本地todo中没有任务id的任务(无论是否已经标记完成)执行如下:
```bash
gog task add {GOOGLETASKLIST} --title "[{priority}] {title}" --notes "$(printf notes)" --due {due}
```
注意:并发提起tool_use, notes 注意 $(printf ...) 语法
等待所有任务均创建完毕,更新todo文件对应内容,并按照priority排序, priority要用方括号包裹
根据当天todo完成情况,更新Google Task中对应任务的完成状态。仅针对本地todo中,当天的,有taskId的任务。
FUNC-00 确定目标md文件,提取当天的内容,当天任务中,有任务id且任务已完成的执行如下:
```bash
gog task update {GOOGLETASKLIST} {taskId} --notes "$(printf notes)" --due {due} --status "completed"
```
注意:并发提起tool_use, notes 注意 $(printf ...) 语法
需要用户主动触发
将目标文件上传到云端google drive, 默认转成Google Doc格式
gog drive upload {filePath} --convert-to doc
共 1 个版本