Taskwarrior 3.5.0 介绍与选型指南
Taskwarrior 3.5.0 是 MIT 开源、本地优先的命令行任务管理工具(Rust 引擎 TaskChampion)。本文基于官方与社区公开信息完成版本取证、架构与功能梳理,并给出与 todo.txt-cli、Vikunja、Kanboard 的量化选型对比与选型建议。
Taskwarrior 3.5.0 介绍与选型指南
目标:本文基于官方与权威社区公开信息(全部标注来源与查询日期 2026-10-24)完成 Taskwarrior 3.5.0 的版本取证、定位解读、核心架构与功能梳理,并给出与同类任务管理工具的量化选型对比,帮助读者判断是否将 Taskwarrior 引入为个人或团队的命令行任务管理底座。安装、配置、命令的逐条实测见本系列部署、配置与命令篇。
一、环境信息(信息取证环境说明)
本篇为认知与选型篇,只做联网溯源,不做本地运行实测:文中全部版本号、日期、星数、许可证、依赖要求均来自下列官方与权威渠道,每项均标注来源与查询日期;涉及真实环境逐条实测的内容(安装、配置项、命令回显)由本系列其余三篇承担。
| 取证项 | 结果 | 来源 | 查询日期 |
|---|---|---|---|
| 最新稳定版 | 3.5.0 | taskwarrior.org 官网首页版本展示;GitHub Releases(GothenburgBitFactory/taskwarrior) | 2026-10-24 |
| v3.5.0 发布日期 | 2026-08-16 | GitHub Releases 页面(Release v3.5.0) | 2026-10-24 |
| 历史版本节奏 | 见 2.3 节 | GitHub releases.atom 订阅源 | 2026-10-24 |
| 累计发布数 | 22 个 release | GitHub 仓库页 Releases 计数 | 2026-10-24 |
| GitHub 星数 | 6.1k | shields.io GitHub stars 徽章(img.shields.io/github/stars/GothenburgBitFactory/taskwarrior) | 2026-10-24 |
| 许可证 | MIT | 官方源码包 LICENSE 文件(Copyright 2006-2021, Tomas Babej, Paul Beckingham, Federico Hernandez) | 2026-10-24 |
| 官方构建要求 | CMake ≥3.24、支持 C++17 的 gcc ≥7.1、libuuid、Rust(源码包 INSTALL 标注 MSRV 1.88.0) | 官方源码包 task-3.5.0 的 INSTALL 与 CMakeLists.txt 文件 | 2026-10-24 |
| Debian 稳定版收录 | Debian 12 (bookworm) 官方仓库收录 task 2.6.2 | Debian bookworm 官方 APT 仓库(packages.debian.org/bookworm/task) | 2026-10-24 |
💡 说明:版本口径以官方 GitHub Releases 为准——官网首页与 releases.atom 在查询当日均指向 v3.5.0,无更新的稳定版;本系列其余各篇的实测环境均基于该版本。
二、软件概述
2.1 定位与身份
Taskwarrior 是一款免费开源的命令行任务管理软件(CLI task manager),官网 taskwarrior.org,源码托管于 GitHub 组织 GothenburgBitFactory,MIT 许可(来源:官方源码包 LICENSE 文件,查询日期 2026-10-24)。项目自 2006 年起由 Paul Beckingham 等人持续维护至今(来源:LICENSE 版权声明),是开源世界「终端 GTD」事实上的标杆项目:6.1k GitHub 星数(shields.io,2026-10-24),累计 22 个 release。
它解决的核心问题是:在不依赖任何网页、任何云端账号的前提下,用一条命令完成任务的记录、组织、过滤、汇报与归档。任务数据完全保存在用户本机,适合开发者、运维工程师以及所有「终日与终端为伴」的用户;同时它提供代数式过滤查询语言与可定制报表,使任务清单可以被当作小型数据库来查询。
2.2 版本沿革:2.x 与 3.x 的分界
Taskwarrior 的发展存在两代明显不同的体系(来源:官方仓库 README 与官方文档 docs.taskwarrior.org,查询日期 2026-10-24):
- 2.x 时代:数据保存在
~/.task目录下的 JSON 文件(pending.data、completed.data等),多设备同步依赖配套的 C++ 守护进程 taskd(task server)。 - 3.x 时代:核心存储引擎整体替换为用 Rust 编写的 TaskChampion,本地数据落为
~/.task目录下的库文件;同步协议随之更新,配套同步服务端为 Rust 编写的 taskchampion-sync-server(仓库 GothenburgBitFactory/taskserver,shields.io 星数 224,2026-10-24)。2.x 的数据可通过 JSON 导出/导入方式迁移进 3.x(官方文档 docs.taskwarrior.org「升级」主题)。
当前最新稳定版 3.5.0(2026-08-16 发布,来源:GitHub Releases,查询日期 2026-10-24)属于 3.x 体系。⚠️ 注意:主流发行版仓库收录的往往是 2.x 旧版(如 Debian 12 bookworm 收录 2.6.2),两者的数据格式与同步协议不互通,选型与安装时务必区分——这一点在本系列安装篇中有双线实测。
2.3 版本节奏(量化)
来源:GitHub releases.atom 订阅源(查询日期 2026-10-24):
| 版本 | 发布日期(UTC) | 距上一稳定版间隔 |
|---|---|---|
| v3.5.0 | 2026-08-16 | 约 10 个月 |
| v3.4.2 | 2025-10-21 | 约 7 个月 |
| v3.4.1 | 2025-03-12 | 约 3 个月 |
| v3.4.0 | 2024-12-19 | 约 1 个月 |
| v3.3.0 | 2024-11-14 | — |
解读:3.x 体系保持每年 1~2 个稳定大版、期间穿插补丁版的节奏,最近 22 个月内连续发布了 3.3.0 → 3.4.0 → 3.4.1 → 3.4.2 → 3.5.0 共 5 个稳定版,社区处于活跃维护期(累计 release 数 22,来源:GitHub 仓库页,2026-10-24)。对生产使用者而言,这个节奏意味着升级压力小、版本生命周期长,适合「装一次用一年」的场景。
三、核心架构
3.1 组件构成
Taskwarrior 3.x 由三部分构成(来源:官方仓库 README、源码包目录结构与官方文档,查询日期 2026-10-24):
- task 主程序(C++):用户直接调用的命令行工具,负责过滤器解析、报表渲染、导入导出与 hooks 调度;构建要求支持 C++17 的编译器(gcc ≥7.1)。
- TaskChampion 存储引擎(Rust):3.x 起的数据模型核心,负责任务数据的操作日志、快照与多端复制;这也是官方构建要求中出现 Rust 工具链(源码包 INSTALL 标注 MSRV 1.88.0)的原因。
- 可选同步服务端 taskchampion-sync-server(Rust,独立仓库 GothenburgBitFactory/taskserver):仅在需要多设备同步时部署;不部署时 Taskwarrior 是纯单机工具,无常驻进程。
3.2 数据模型与存储形态
任务数据默认保存在当前用户主目录的 ~/.task 下(来源:官方文档 docs.taskwarrior.org 数据存储主题,查询日期 2026-10-24)。3.5.0 实测数据落为单个 SQLite 库文件 ~/.task/taskchampion.sqlite3,由 TaskChampion 引擎统一管理(逐字节实测回显见《Taskwarrior 3.5.0 安装指南(发行版包与源码构建双线实测)》第七章)。关键设计特征:
- 本地优先(local-first):所有读写都发生本机文件系统,断网完全可用,无账号、无云端依赖;
- 无常驻服务:task 命令执行完即退出,不监听端口、不占后台内存,天然适合脚本化与自动化集成;
- 单文件数据、易备份:任务库为单文件落盘,备份即复制文件,且可用标准 SQLite 工具直接查询核对。
💡 技术拓展:「任务管理工具」的数据存储形态不止 Taskwarrior 这种「本地 SQLite 库」一种,常见形态对比——
存储形态 代表 特点 适用场景 本地 SQLite/结构化文件 Taskwarrior 3.x 可脚本化、离线优先、同步需独立服务端 终端用户、自动化集成 单一纯文本文件 todo.txt-cli 极简、可任意网盘同步、查询能力弱 轻量个人清单 服务端关系数据库 Vikunja、Kanboard 多用户协作、Web 访问、需运维数据库 团队共享任务/看板 云端托管存储 Todoist 等商业 SaaS 免运维、数据在他方、按月付费 不介意云依赖的个人用户 Taskwarrior 3.x 实际采用「本地 SQLite 库(TaskChampion 引擎)」形态,理由是在保留结构化查询能力的同时兼顾离线可用与数据自持。
3.3 同步架构
当任务需要跨设备同步时,官方路线是部署 taskchampion-sync-server(Rust 编写,来源:GothenburgBitFactory/taskserver 仓库 README,查询日期 2026-10-24):各端 task 配置同一同步凭据后,通过客户端之间经由该服务端转发增量实现多端一致。该服务端同时支持将存储后端对接 S3 兼容对象存储(来源:taskchampion 依赖清单中的 aws-sdk-s3 组件,2026-10-24),便于以「存算分离」的方式托管在云上。同步是多端复制而非多人协作:数据模型围绕「同一用户的多台设备」设计,不提供共享列表、指派、评论等团队协作语义——需要后者时应选择 Web 形态工具(见第七章对比)。
四、功能特性
以下特性均引自官方文档 docs.taskwarrior.org 与官方仓库 README(查询日期 2026-10-24),其中查询与报表能力在本系列命令篇中有逐命令实测:
- 任务模型完整:项目(project)、标签(tag)、优先级(priority)、截止/等待/计划日期(due/wait/scheduled)、任务依赖(depends)、周期任务(recur)、UDA(用户自定义属性,可扩展任意字段);
- 代数式过滤查询:
task +work due.before:eom priority.not:L一类的组合过滤表达式,可将任务清单当数据库查询,这是 Taskwarrior 区别于普通清单工具的核心能力; - 可定制报表:内置
list、next、long等报表,且允许用户在.taskrc中定义新报表(列、排序、过滤均可配); - hooks 钩子机制:在任务新增、修改、完成等事件点执行外部脚本,实现与外部系统的联动(如自动加标签、写入审计日志);
- 导入导出:原生支持 JSON/CSV 导出与 JSON 导入,既是数据迁移通道,也是与 2.x 老数据、外部系统的集成界面;
- 生态联动:与时间追踪工具 Timewarrior 同门联动(来源:GothenburgBitFactory 组织项目列表);社区维护着 Rust TUI 前端 taskwarrior-tui(shields.io 星数 2.2k,2026-10-24)等第三方界面;
- 离线与隐私:无账号体系、数据不出本机(不部署同步时),符合合规敏感环境的私有化诉求。
五、快速开始(最小可用示例)
官方文档给出的最小上手路径只有三步:新增任务、列出任务、完成任务(来源:taskwarrior.org 官方文档 Quick Start 主题,taskwarrior.org/docs,查询日期 2026-10-24)。命令序列如下:
task add Select and buy a birthday gift for Lisa # 新增一条任务
task list # 查看待办列表
task 1 done # 将编号 1 的任务标记完成
说明(引自官方文档):
task add <描述>会创建任务并分配自增编号(ID),描述后可直接携带project:、due:、+标签等修饰属性;task list渲染默认待办报表,未到期任务按日期排序展示;task <ID> done将指定任务标记完成并移入完成历史。
⚠️ 本篇为认知篇,上述命令的逐条真实回显、属性组合与过滤表达式的实测输出由本系列 CLI 命令详解篇完整承担(见《Taskwarrior 3.5.0 常用 CLI 命令与工具详解》),此处仅给出官方文档的最小命令序列。安装方式(发行版包与官方源码构建双线)见《Taskwarrior 3.5.0 安装指南(发行版包与源码构建双线实测)》,
.taskrc配置体系见《Taskwarrior 3.5.0 配置参数详解(.taskrc 逐项实测)》。
六、适用场景与限制
6.1 适用场景
- 个人 GTD / 待办管理:开发者与运维人员的日常任务清单,配合 shell 别名与终端工作流,录入成本极低;
- 脚本与自动化集成:无常驻进程、退出码规范、JSON 导出原生可用,可嵌入 CI 通知、工单桥接、日志化审计等自动化链路;
- 离线与隐私优先环境:内网、离线笔记本、合规敏感场景——数据完全自持,不依赖任何第三方云;
- 多设备个人同步:自部署 taskchampion-sync-server 后,办公室与家中终端、笔记本之间保持同一份任务库;
- 重型查询型清单管理:任务量大、需要按项目/优先级/日期/自定义属性反复切片检索的重度用户。
6.2 限制
- 无官方图形界面与移动端:官方仅提供 CLI;图形化依赖第三方(如 taskwarrior-tui),移动端无官方 App(来源:官方仓库与官网项目列表,2026-10-24);
- 非多人协作工具:同步面向「同一用户多设备」,无共享列表、指派、评论语义,团队协作场景应选 Web 工具;
- 发行版版本滞后:Debian 12 bookworm 收录 2.6.2,与 3.x 数据格式不互通;使用 3.x 需源码构建或第三方包源(双线实测见《Taskwarrior 3.5.0 安装指南(发行版包与源码构建双线实测)》);
- 构建门槛:3.x 引入 Rust 引擎后,源码构建需要 CMake ≥3.24、C++17 编译器与较新 Rust 工具链(官方 INSTALL 标注 MSRV 1.88.0;实测其锁定的 AWS SDK 传递依赖已要求更高版本,完整排障见《Taskwarrior 3.5.0 安装指南(发行版包与源码构建双线实测)》5.8 节)。
七、同类选型对比(量化)
7.1 对比对象与口径
选取三类代表性同类:同为命令行的 todo.txt-cli、Web 自托管任务/看板 Vikunja 与 Kanboard,以及 Taskwarrior 的官方 TUI 前端 taskwarrior-tui。星数统一取自 shields.io GitHub stars 徽章(查询日期 2026-10-24),形态与存储方式取自各项目官方仓库 README。
7.2 量化对比表
| 维度 | Taskwarrior 3.5.0 | todo.txt-cli | Vikunja | Kanboard | taskwarrior-tui |
|---|---|---|---|---|---|
| 形态 | CLI | CLI(POSIX shell 脚本) | Web 服务(Go 后端) | Web 服务(PHP) | TUI(Rust) |
| GitHub 星数(2026-10-24) | 6.1k | 6.2k | 5.8k | 9.9k | 2.2k |
| 数据存储 | 本机 ~/.task JSONL 日志 | 单个 todo.txt 文本文件 | 服务端数据库 | 服务端 SQLite/MySQL/PostgreSQL | 复用 Taskwarrior 本机数据 |
| 多设备同步 | 官方 sync server(可自建) | 无内置(靠网盘同步文件) | Web 中心化,天然多端 | Web 中心化,天然多端 | 随宿主 task 配置 |
| 多人协作 | 不支持(多端复制语义) | 不支持 | 支持(项目/成员/分享) | 支持(看板/泳道/成员) | 不支持 |
| 无常驻进程 | 是 | 是 | 否(Web+DB 常驻) | 否(Web+DB 常驻) | 是 |
| 许可证 | MIT | MIT | AGPL-3.0 | MIT | MIT |
| 脚本化/自动化能力 | 强(过滤 DSL + JSON 导出 + hooks) | 中(文本处理工具即可读) | 弱中(REST API) | 弱中(REST API) | 无(交互工具) |
关键差异解读:星数层面 Taskwarrior(6.1k)与 todo.txt-cli(6.2k)处于同一量级,且二者是表中仅有的两个「无常驻进程」纯 CLI 形态;差异在数据模型——todo.txt 只有一行行文本,查询靠 grep,Taskwarrior 有结构化属性与代数过滤 DSL,任务量大、查询需求重时后者优势显著。Vikunja(5.8k)与 Kanboard(9.9k)星数更高但形态是「Web 服务 + 数据库」,换来的是多人协作与浏览器访问,代价是必须持续运维一套 Web 栈。
7.3 选型建议(如果…则…)
- 如果你是个人用户、终日生活在终端里、重视离线与数据自持 → Taskwarrior(本组件),查询语言与自动化能力在纯 CLI 阵营最强;
- 如果只需要一张极简清单、不想学任何语法 → todo.txt-cli;
- 如果要给团队(≥2 人)共享任务、看板泳道、浏览器访问 → Kanboard(轻量看板)或 Vikunja(功能更全面的待办/项目组合);
- 如果已确定使用 Taskwarrior 但想要全屏交互界面 → 在其之上叠加 taskwarrior-tui;
- 如果既要用 Taskwarrior 的数据层又要移动端入口 → Taskwarrior(CLI + sync server)搭配社区移动客户端,或接受「终端为主 + 临时网页查看」的现实取舍。
八、参考链接
- 官网:https://taskwarrior.org/
- 源码仓库(含 README、LICENSE、INSTALL、Releases):https://github.com/GothenburgBitFactory/taskwarrior
- 官方文档站:https://docs.taskwarrior.org/
- 版本订阅源:https://github.com/GothenburgBitFactory/taskwarrior/releases.atom
- 官方同步服务端:https://github.com/GothenburgBitFactory/taskserver
- Debian 软件包收录页:https://packages.debian.org/bookworm/task
- 星数取证徽章服务:https://shields.io/
- 本系列姊妹篇(同专栏 Taskwarrior):