TaskFlow

📋 Markdown 原生 · SQLite 索引 · 双向同步

面向 OpenClaw 代理的结构化项目与任务管理系统,以 Markdown 为单一信源,SQLite 为索引层,支持双向同步与 CLI 操作,可选 Apple Notes 集成。

收藏
7.2k
安装
3.1k
版本
1.1.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

TaskFlow 为 OpenClaw 代理提供了一套 Markdown-first 的项目/任务管理体系。核心设计原则是 Markdown 为信源(canonical),SQLite 仅为派生索引。用户或代理直接编辑 tasks/*.md 文件,通过 taskflow sync 或后台守护进程(60 秒周期)将变更同步至 SQLite 数据库。

主要功能模块

  • 项目创建:通过 PROJECTS.md 注册项目,生成 tasks/<slug>-tasks.md(任务清单)与可选的 plans/<slug>-plan.md(架构文档)
  • 任务管理:严格格式 - [ ] (task:<id>) [<priority>] [<owner>] <title>,支持 P0-P3/P9 优先级与代理标签
  • 状态流转:通过移动任务行至不同章节(In Progress / Backlog / Blocked / Done 等)驱动状态变更
  • 双向同步files-to-db(Markdown → SQLite)与 db-to-files(SQLite → Markdown)两种方向
  • 查询能力:直接读 Markdown 文件,或使用 Node.js node:sqlite API 进行参数化 SQL 查询
  • Apple Notes 集成(macOS):将项目状态导出为富文本笔记,支持自动刷新

CLI 快速入口

taskflow setup              # 交互式初始化向导
taskflow add <project> "..." --priority P1 --owner codex
taskflow list <project>
taskflow status

显著优点

1. 人机共用格式:Markdown 既是机器可读的数据层,也是人类可读的文档,避免"配置漂移"
2. 去中心化信源:不依赖外部 SaaS,数据完全本地可控,适合隐私敏感场景

3. 代理原生设计:任务 ID、优先级标签、所有者标记均为 AI 工作流优化

4. 安全默认:文档强制要求参数化 SQL、路径校验、环境变量隔离,降低注入与遍历风险

5. 可选后台同步:LaunchAgent(macOS)/ systemd timer(Linux)实现准实时同步,无需手动触发

潜在缺点与局限性

  • v1 限制:Note 单向同步(Markdown → DB,删除不生效)、每项目仅支持单一任务文件、db-to-files 会重写全部文件
  • Node.js 强依赖:要求 Node.js 22.5+,无 Python 降级方案
  • 平台限制:Apple Notes 集成仅限 macOS;systemd 用户单元需登录会话或启用 lingering
  • 学习成本:严格的标签顺序规则(优先级必须在所有者之前)、固定的五个章节标题,对格式错误容错低
  • 无协作机制:本地 SQLite 与 Markdown 文件,天然不支持多用户并发编辑

适合人群

  • AI 代理开发者:需要为 OpenClaw 或其他代理框架提供结构化任务追踪能力
  • Markdown 原生用户:习惯以文本文件管理项目,排斥 Jira/Trello 等 Web 工具
  • 隐私优先的开发者:不希望任务数据上传至第三方云服务
  • macOS/Linux 终端用户:具备 shell 环境配置能力,能处理 LaunchAgent/systemd 单元

常规风险

| 风险类别 | 说明 | 缓解措施 |
|---------|------|---------|
| 路径遍历 | `OPENCLAW_WORKSPACE` 若被恶意注入,可能导致文件系统越权访问 | 严格从受控来源(shell profile、systemd 模板)设置;使用 `path.resolve()` 与前缀校验 |
| SQL 注入 | 查询时若将变量直接拼入 SQL 字符串,存在注入风险 | **强制使用** `db.prepare()` 与命名/位置参数,文档中明确禁止字符串插值 |
| 竞态条件 | 后台同步与手动编辑可能并发,存在 TOCTOU 风险 | 60 秒 TTL 锁机制;建议避免在同步周期内高频手动编辑 |
| 数据丢失 | `db-to-files` 会重写整个任务文件,若进程崩溃可能导致文件损坏 | 依赖文件系统/版本控制备份;该流程设计为幂等但非原子 |
| 配置泄露 | `taskflow.config.json` 包含 Apple Notes Core Data ID,虽非敏感但具用户标识性 | 建议纳入 `.gitignore` 或权限保护 |

安全等级判定依据

文档对 OPENCLAW_WORKSPACE 设置了明确的信任边界(Trust Boundary),强制要求路径存在性校验、绝对化解析、参数化 SQL 查询,并显式警告 TOCTOU 与路径遍历风险。虽未提供自动化安全扫描报告,但设计文档本身体现了 S 级 的安全意识与防御性编程实践。

TaskFlow 内容

examples文件夹
schema文件夹
scripts文件夹
system文件夹
templates文件夹
手动下载zip · 45.0 kB
DASHBOARD-HOWTO.mdtext/markdown
请选择文件