📋 TODO Tracker (安全版本)
安全的跨会话任务追踪工具,带有输入验证和安全文件操作。
安全改进
相比原始版本,此版本包含以下安全增强:
- 1. 输入验证 - 所有用户输入经过
sanitize_input() 过滤 - 固定字符串匹配 - 使用
grep -F 避免正则注入 - 文件权限检查 - 验证 TODO 文件权限不过于宽松
- 无动态执行 - 不使用
eval 或命令替换执行用户输入 - 错误处理 - 使用
set -euo pipefail 严格模式 - 长度限制 - 输入限制为 200 字符
用法
CODEBLOCK0
配置
- -
TODO_FILE - 自定义 TODO 文件路径(默认:~/.openclaw/workspace/TODO.md)
触发条件
当用户说:
- - "添加到 TODO" / "add to TODO"
- "标记 X 完成" / "mark X done"
- "TODO 列表" / "TODO list"
- "还有什么任务" / "what's on the TODO"
- 心跳时自动显示摘要
安全审计
- - ✅ 无外部 API 调用
- ✅ 无网络请求
- ✅ 无环境变量读取(除 TODO_FILE)
- ✅ 无动态代码执行
- ✅ 输入经过严格过滤
- ✅ 文件操作有权限检查
📋 TODO 追踪器(安全版本)
安全的跨会话任务追踪工具,具备输入验证与安全文件操作功能。
安全改进
相较于原始版本,本版本包含以下安全增强措施:
- 1. 输入验证 — 所有用户输入均通过 sanitize_input() 进行过滤
- 固定字符串匹配 — 使用 grep -F 避免正则注入风险
- 文件权限检查 — 验证 TODO 文件权限不会过于宽松
- 无动态执行 — 不使用 eval 或命令替换来执行用户输入
- 错误处理 — 采用 set -euo pipefail 严格模式
- 长度限制 — 输入内容限制为 200 个字符
使用方法
bash
添加任务
todo.sh add high 完成项目报告
todo.sh add medium 回复邮件
todo.sh add low 整理文件
标记为已完成
todo.sh done 项目报告
删除任务
todo.sh remove 整理文件
列出任务
todo.sh list # 列出全部
todo.sh list high # 列出高优先级
todo.sh list done # 列出已完成
摘要(用于心跳检测)
todo.sh summary
配置
- - TODO_FILE — 自定义 TODO 文件路径(默认:~/.openclaw/workspace/TODO.md)
触发条件
当用户说出以下内容时:
- - 添加到待办事项 / add to TODO
- 将 X 标记为完成 / mark X done
- 待办事项列表 / TODO list
- 还有哪些任务 / whats on the TODO
- 心跳检测时自动显示摘要
安全审计
- - ✅ 无外部 API 调用
- ✅ 无网络请求
- ✅ 不读取环境变量(除 TODO_FILE 外)
- ✅ 无动态代码执行
- ✅ 输入经过严格过滤
- ✅ 文件操作具备权限检查