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
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 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
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
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
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
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 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.