安装与下载
1 ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install automate-todo
2 手动安装
将技能文件夹复制到以下位置之一
~/.openclaw/skills/
{'/skills/'}
优先级:工作区 › 全局 › 内置
3 提示词安装
将此提示词复制到 Openclaw 即可自动安装。
请帮我使用 Clawhub 安装 skill-automate-todo。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
基本信息
automate-todo
安装指南
- ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install automate-todo - 手动安装
将技能文件夹复制到以下位置之一
全局模式
~/.openclaw/skills/
工作区
/skills/
优先级:工作区 > 本地 > 内置 - 提示词安装
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 automate-todo。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
下载技能 (.zip)
什么是
Automate TODO 是一个 Openclaw Skills 工作流,用于处理代码仓库 TODO.md 中二级 Current 部分的内容。它会解析每项任务可选的 From 引用,确定适用的下一次版本更新,实施所要求的工作,并协调更新文档、清单和 CHANGELOG.md。
此技能还会管理路线图的生命周期:它可以创建或刷新 .github/current.roadmap.md,选取最多五项彼此兼容的任务,并将已勾选的顶层 TODO 项归档到 ## Complete 下。其测试与重试流程旨在保留可正常工作的更改,同时还原失败的工作,或将未完成的任务退回路线图。
应用场景
自动处理
TODO.md
Current
下列出的下一批实施任务。
根据任务嵌套的
From
条目或路线图部分所指示的内容,应用下一次 major、minor 或 patch 版本更新。
让项目文档、
CHANGELOG.md
和现有清单与已完成的更改保持一致。
根据最新变更日志和代码仓库当前源代码,生成或更新
.github/current.roadmap.md
。
测试一批更新、重试失败项,并还原或重新排入无法成功完成的工作。
将已勾选的路线图事项移至文件末尾的
Complete
归档,并记录其来源部分。
工作原理
读取代码仓库根目录中的 TODO.md,查找二级 ## Current 部分;如果不存在,则创建该部分。
检查每项当前任务及其可选的嵌套 From 条目,以确定相关路线图部分和下一次版本更新。如果多个任务指定了不同的版本级别,则优先级依次为 major、minor、patch。
如果 Current 中没有任务,则保持工作区不变,并使用当前路线图工作流。否则,实施选定的更新,并修改相关文档、变更日志以及任何适用的清单。
编写并运行测试。如果测试失败,则调试并最多重试三次;之后撤销失败的更新,并将对应 TODO 项以未勾选状态放回 Current。
在适当情况下,读取最新变更日志和源代码,为彼此兼容的后续任务排序,最多五项,并更新 .github/current.roadmap.md。
根据结果完成收尾:保留已应用的更改;部分完成时保留通过的工作;若没有任何更改可以应用,则还原所有更改。运行随附脚本,归档已勾选的顶层 TODO 项。
配置指南
从目标工作区或代码仓库运行此技能,以便检查和更新其中的文件。随附的维护脚本需要 Node.js。
确认代码仓库根目录中存在 TODO.md;如果缺少 ## Current,工作流会创建该部分。
为了更可靠地选择版本,请为每个当前 TODO 项添加嵌套的 From 条目,并在适用时引用二级路线图标题。如果没有此条目,技能会自行确定下一次版本更新。
完成并测试任务后,从代码仓库根目录运行随附的归档脚本:
node
/scripts/todo.mjs
若要处理指定路径下的 TODO 文件,将其作为第一个参数传入:
node
/scripts/todo.mjs path/to/TODO.md
脚本默认处理当前工作目录中的 TODO.md。提交前,请检查生成的 TODO 归档、文档、变更日志以及任何更新过的清单。
数据架构
此技能直接操作代码仓库文件,不定义单独的数据库或生成的数据格式。
文件或结构 用途
TODO.md → ## Current 存放工作流要处理的活跃顶层任务。每项任务可以包含嵌套的 From 条目,用于标识匹配的二级路线图标题。
TODO.md → 二级路线图标题 提供 From 所引用的上下文和版本更新说明。
TODO.md → ## Complete 首次使用时创建,并由 scripts/todo.mjs 保持在文件底部的归档部分。已勾选的顶层任务会移至此处。
已归档任务 → 嵌套的 From 记录来源路线图部分。现有 From 备注会予以保留;否则脚本会添加一条。
.github/current.roadmap.md 按顺序列出彼此兼容的后续任务,最多五项。按需创建或更新。
CHANGELOG.md 根据任务确定的版本优先级和 alpha 或 beta 等现有预发布后缀,为已完成的工作更新此文件。
文档和清单 更新相关文档及现有清单(例如 package.json 或 tsconfig.json),以反映所做更改。
归档脚本会移动已勾选的顶层条目,包括换行续行和嵌套子项。未勾选父项下已勾选的子项会留在原处。## Complete 下已有的条目会保留,因此重复运行具有幂等性。
高级特性
感知版本的任务处理:
支持 major、minor 和 patch 更新优先级,同时保留
alpha
beta
等变更日志后缀。
任务兼容性规划:
根据源代码状态排列后续 TODO 项,并逐步缩短不兼容的任务序列,直至可一起应用;最多处理五项任务。
有次数限制的测试与重试工作流:
最多重新调试和测试三次,之后还原失败的更新,并将受影响任务以未勾选状态重新排入队列。
部分完成处理:
将通过的更改与失败的工作区分开,并要求未完成的任务返回
Current
。
幂等的 TODO 归档:
随附的 Node.js 脚本会保留现有
From
备注、记录路线图来源,并避免将嵌套的已勾选项从未勾选的父项下移出。
代码仓库整洁度检查:
收尾步骤会验证相关文档、
CHANGELOG.md
和适用的清单是否反映了处理结果。
name: automate-todo description: 'Complete TODO.md items nested under the level 2 header "Current", then update documentation, CHANGELOG.md, and manifest files according to the version update each item indicates. Use when asked to automate TODO items, work through the Current section of TODO.md, apply the next version update, maintain a current road map, or archive completed TODO items to a Complete section. Bundles scripts/todo.mjs for moving checked items.'
Automate TODO
Complete all items listed under the level 2 header Current in the TODO.md file at the root of the workspace or repository.
If level 2 header Current does not exist:
Create level 2 header in TODO.md
Resolve to Else if no TODO condition of CHANGELOG.md Updating section of this skill
Once completed, update:
Relevant documentation files
The repository or workspace CHANGELOG.md according to the nested From list item of a current TODO item
If manifest file exists (e.g., package.json, tsconfig.json, etc.), then:
Update manifest file according to:
Version update applied
Any newly introduced items from the update
Testing: Write and test the updates, and:
If pass, then:
Resolve to Closing section of this skill as applied
Else:
While update and test attempts are less than 3, then:
Debug failing items from test, and resolve back to Testing parent list item (recurse)
Else if update and test attempts are 3 or more, then:
Undo failing updates, and add the corresponding TODO items back to the Current TODO.md section as incomplete, then:
Note completed TODO items and resolve to CHANGELOG.md Updating section of this skill
Resolve to Closing section of this skill as either:
Updates partially applied, and:
Revert relevant files according to failing and passing updates
Updates not applied, and:
Restore all relevant files, so essentially:
In the terminal run: git restore .
Nested From List Items or Property
A current TODO item should have a nested From list item, which will be followed by text that either fully or partially matches another level 2 header in the TODO.md file. In regards to the matching level 2 header:
Applying Next Version Update
The text of the level 2 header that matches the nested From list item of a TODO in the Current section will include instructions or specific text specifying the next version update to apply
If the TODO item in the Current section does not have a corresponding nested list item starting with From, then apply the next version update accordingly
CHANGELOG.md Updating
Resolve to the Applying Next Version Update section of this skill, then:
If 1 list item is in the Current section of the TODO, then:
Resolve to Constant CHANGELOG Conditions section of this skill
Else if multiple TODO items are in the Current section, then:
If nested From exists in all Current TODO items:
Resolve to the Priority Version Updates section of this skill
Resolve to Constant CHANGELOG Conditions section of this skill
Else if nested From does not exist in any Current TODO items:
Indicate the next version update accordingly for each
Resolve to the Priority Version Updates section of this skill
Resolve to Constant CHANGELOG Conditions section of this skill
Else if nested From exists in some of the Current TODO items:
Indicate the next version update accordingly for each list item missing the nested From property
Resolve to the Priority Version Updates section of this skill
Resolve to Constant CHANGELOG Conditions section of this skill
Else if no TODO items are in the Current section, then:
Do not update the current workspace or repository
Instead:
Resolve to Current Road Map Document section of this skill with no updates applied
Priority Version Updates
Highest: Major version update indicated
Example: 1.0.0 to 2.0.0
Moderate: Minor version update indicated
Example: 1.1.0 to 1.2.0
Lowest: Patch version update indicated
Example: 1.0.0 to 1.0.1
Constant CHANGELOG Conditions
If CHANGELOG.md current version is using append text like alpha, beta, etc., then:
Continue to use the appended version text
For each TODO list item in the Current section:
Resolve next version priority
Next version remains the same
Once all Current TODO items have been completed, then:
Resolve to Current Road Map Document section of this skill with updates applied
Current Road Map Document
Read the CHANGELOG.md at the latest version, then read the workspace or repository source code
Add a set of existing TODO items to the Current section of the TODO in regards to:
Relative to the current source code state, determine the best order of TODO items to apply in sequential order
If the file current.roadmap.md does not exist in the workspace or repository .github (create if not exist) folder, then:
Create current.roadmap.md in the workspace or repository .github folder (create if not exist)
Write the determined sequence of updates to current.roadmap.md
Else:
Update and write the determined sequence of updates to current.roadmap.md
If updates applied, then:
Resolve to top-level Testing list item
Add a sequence of TODO items to the Current section
Max Items: 5 (initial last item value)
Evaluate compatibility: use the next sequence of TODO items compatibility to each other, then:
If next 5 determined TODO items are not compatible, then:
From sequentially 1st item to sequentially last item, remove the sequentially last item
Re-evaluate compatibility: resolve back to Evaluate compatibility parent list item (recurse)
Move Completed TODO items
Run the bundled maintenance script scripts/todo.mjs from the workspace or repository root:
node
/scripts/todo.mjs
The script:
Defaults to TODO.md in the current working directory; an explicit path may be passed as the first argument (node scripts/todo.mjs path/to/TODO.md)
Moves every checked top-level item (- [x] ..., with its wrapped continuation lines and nested sub-items) out of its roadmap section and into a ## Complete section, created on first use and always kept at the bottom of the file
Stamps each archived item with a nested - From: line recording the roadmap section it came from, unless the item already carries its own - From: note, which is preserved
Is idempotent: items already under ## Complete stay where they are, so running the script repeatedly is a no-op
Leaves nested checked items under an unchecked parent in place; the parent keeps its context until it is checked off as a whole
Closing
Before finishing, ensure that:
Changes have been tested and applied correctly
Based on the status of applied changes, ensure that:
Relevant Files:
Relevant documentation files have been updated
CHANGELOG.md has been updated
Manifest file has been updated
If closing was called after testing as:
applied: then resolve to Move Completed TODO items section of this skill
partially applied: then ensure:
Failing Current TODO items have been moved back, and are unchecked
Resolve to Move Completed TODO items section of this skill
not applied: then restore all changes, reverting workspace or repository back to its prior state
打乱 JSON 数据
创建技能模板