The Stack

Workwarrior doesn't compete with these tools. It depends on them. Each one does exactly one thing well, has years of active development behind it, and is trusted by people who take their work seriously. Here's what they are and what they bring.

TaskWarrior

TaskWarrior Göteborg Bit Factory · taskwarrior.org

The core. TaskWarrior is a command-line task manager with a data model sophisticated enough to run a business on: projects, tags, priorities, due dates, scheduled dates, urgency scoring, dependency chains, recurring tasks, and a User Defined Attributes system that lets you add arbitrary typed fields to every task.

The urgency engine scores every task by combining due date proximity, priority, age, project weight, tag coefficients, and UDA values into a single urgency number. The most urgent task floats to the top of every list. You can tune the coefficients per-profile.

The hooks system is what makes Workwarrior's integration possible. on-modify hooks fire when any task changes — that's how time tracking auto-starts when you task start. The hooks interface is stable, documented, and designed for this kind of extension.

TimeWarrior

TimeWarrior Göteborg Bit Factory · timewarrior.net

TimeWarrior tracks time intervals with tags. You start a tracking interval with timew start tag1 tag2 and stop it with timew stop. The data is a flat file of intervals that you can query, filter, and report on. Reports include daily totals, weekly summaries, filtered breakdowns by tag.

From the same team as TaskWarrior, so the data models are designed to work together. The task on-modify hook bridges them: start a task, time tracking starts. Stop or complete the task, time tracking stops.

JRNL

JRNL jrnl.sh · open source

A command-line journal. Entries are timestamped, searchable, filterable by date and tag, and stored as plain text. You can maintain multiple named journals in one installation.

The multi-journal support is exactly what Workwarrior's per-profile journal system uses. One profile can have a strategy journal and an engineering journal and a standup journal, each mapping to a different file, each searchable independently. The j shell function selects the right journal based on what's active.

Hledger

Hledger Simon Michael · hledger.org

Double-entry accounting for the command line. Hledger implements the plain text accounting format — transactions are written in a human-readable ledger file, and the tool produces balance sheets, income statements, register reports, and account trees.

It's overkill for tracking coffee expenses and exactly right for running a small business or freelance operation. Per-profile ledger files mean your business finances never mix with your personal accounts. Multiple named ledgers per profile let you separate by entity or purpose.

Bugwarrior

Bugwarrior GothenburgBitFactory · GitHub

One-way pull from 20+ issue tracking services into TaskWarrior. GitHub, GitLab, Jira, Trello, Bitbucket, Taiga, Pagure — configure it once per profile and run i pull to bring all your open issues into your local task list.

Combined with the two-way ww github-sync engine, you get a complete picture: Bugwarrior pulls everything from all services, github-sync keeps the individual tasks you've explicitly linked in sync in both directions.

taskgun

taskgun hamzamohdzubair · GitHub · written in Rust

Bulk task series generator. Give it a series definition and it creates multiple related tasks with deadline spacing. Workwarrior wraps this as the ww gun weapon — the only weapon that delegates to an external binary rather than being native to ww.

taskcheck / taskwarrior-tui

taskcheck + taskwarrior-tui Community projects

taskcheck powers the ww schedule weapon — auto-assignment of time blocks to tasks. taskwarrior-tui is a full-screen terminal UI for TaskWarrior, installable via ww tui install as an optional complement to the browser UI for people who live in the terminal.


The Philosophy

Every tool in this stack has a community, a changelog, and maintainers who care about it. TaskWarrior is approaching its 20th year. Hledger is over 15 years old. These are not projects that will disappear next year.

Workwarrior's bet is that wrapping stable, excellent tools is better than rebuilding them. The wrapper adds value at the layer where the tools don't talk to each other: profile isolation, unified command surface, natural language translation, browser UI, sync engines. Everything else comes from the tools themselves.

When a tool improves — new TaskWarrior report format, new TimeWarrior extension API — Workwarrior benefits automatically. The integration layer gets to stay thin.

← home  ·  read: the story →