核心用法
task-watcher 是一款专为 Agent 设计的异步任务监控与回调通知技能,采用插件化架构实现状态追踪自动化。其核心工作流程分为三步:注册任务 → 轮询检测 → 状态变更通知。
用户可通过 Python API 或 CLI 工具注册监控任务,指定目标系统(如小红书内容审核、GitHub PR 合并状态)、对象标识、通知渠道(Discord/Telegram/本地文件)及过期时间(默认6小时)。Watcher 以 3 分钟为周期轮询检测,当状态发生变化或进入终态时,自动触发通知策略。技能内置可扩展的 Adapter 机制,支持自定义状态检测逻辑;同时提供多种 Notifier 实现,满足不同场景的通知需求。
显著优点
架构设计优秀:采用抽象接口与注册表模式,Notifier、StateAdapter、TaskStore、CallbackPolicy 等组件职责清晰,便于二次开发与扩展。零外部依赖设计仅使用 Python 标准库(json、os、subprocess、fcntl),从根本上杜绝供应链攻击风险。
隐私安全合规:所有任务数据、审计日志、通知文件均存储于本地 ~/.openclaw/shared-context/ 目录,不上传远程服务器,符合 GDPR 数据最小化原则与 CCPA 透明度要求。
运维友好:内置文件锁机制保障并发安全,支持过期自动清理(expires_at 机制),配备 3 次失败重试与升级策略,适合长期稳定运行。
潜在缺点与局限性
平台适配有限:内置 Adapter 仅覆盖小红书、GitHub PR、Cron 作业三种场景,其他系统需自行开发适配器,存在一定技术门槛。
通知依赖 OpenClaw:Discord 通知通过本地 subprocess 调用 openclaw agent --deliver 实现,虽安全可控,但增加了对 OpenClaw 运行环境的依赖;Telegram 适配器当前为预留接口,尚未完整实现。
无内置监控面板:仅提供命令行与文件日志,缺乏可视化 Web 界面,大规模任务管理时体验受限。
适合的目标群体
- 内容运营团队:监控多平台内容审核状态,替代人工刷新等待
- DevOps/平台工程师:追踪 CI/CD 流水线、部署 rollouts 的异步执行结果
- 自动化工作流开发者:为复杂长时任务构建状态感知与通知闭环
- Agent 系统架构师:需要可靠、可扩展的任务编排基础设施
使用风险
性能风险:JSONL 文件存储在任务量激增(>10万条)时可能出现 I/O 瓶颈,建议定期归档过期任务。依赖风险:OpenClaw 运行环境必须保持可用,否则通知链路中断。并发风险:虽实现了文件锁,但极端并发场景下仍需观察锁竞争表现。