核心用法
task-father 是一款面向 OpenClaw 工作空间的文件级任务状态机管理工具,通过结构化的目录布局实现任务的持久化追踪。其核心架构包含三层:全局注册表 TASK_REGISTRY.md、任务级目录 tasks/<slug>/ 及其子组件(TASK.md 元数据文档、TODOS.md 待办清单、scripts/ 脚本目录、crons/ 定时任务配置、可选队列状态文件)。
初始化流程支持对话优先模式,用户通过 6 步交互定义任务元数据,随后由 Python 脚本生成标准化文件结构。生命周期管理涵盖状态迁移(active/paused/completed)、日志追加、队列启用及 cron 作业绑定四大操作,所有变更均通过幂等的 CLI 命令完成。
显著优点
1. 持久化与可恢复性:基于 JSONL 的队列文件(queue/done/failed/lock)天然支持断点续传,append-only 日志模式确保审计可追溯
2. 零外部依赖:纯文件系统实现,无需数据库或消息队列,降低基础设施复杂度
3. OpenClaw 原生集成:深度适配 workspace 概念,支持 agent 级权限隔离和 cron 调度
4. 声明式配置:通过 config.env 实现机器级参数分离,保证 SKILL.md 的可移植性
5. 版本控制友好:Markdown + JSONL 格式便于 Git 追踪变更,changelog 强制时间戳规范
潜在局限
- 并发控制粗粒度:依赖文件锁(
lock.json)而非数据库事务,高并发场景可能出现竞态条件 - 无内置监控:缺少任务执行指标采集,需自行集成外部观测系统
- Python 版本耦合:依赖
openclawCLI 可用性,跨平台部署受限于宿主环境 - 队列规模瓶颈:纯文件 I/O 在万级条目以上时性能衰减,不适合高频流式处理
适合人群
- 需要离线优先、可 Git 管理的任务编排的 OpenClaw 深度用户
- 构建周期性数据管道(爬虫、报表生成、批处理)的自动化工程师
- 追求基础设施极简化的个人开发者或小型团队
常规风险
1. 数据丢失:未配置备份策略时,workspace 目录损坏将导致任务状态不可逆丢失
2. 权限逃逸:scripts/ 目录可执行任意代码,需配合 OpenClaw 的 agent 沙箱机制
3. cron 堆积:未设置超时保护的定时任务可能形成僵尸进程队列
4. 配置漂移:多机器环境若 config.env 不同步,可能导致任务路径解析异常
安全建议
- 定期归档
done.jsonl并压缩历史 artifacts - 对
crons/目录设置只读权限,防止运行时注入 - 启用
openclaw的审计日志以追踪task_father.py的调用链