ClickUp
Tracking work across clients
A project management tool. Work is organised into spaces, folders and lists of tasks, each with its own statuses and custom fields, all reachable over an API.
ClickUp is where the work across several clients is tracked. The interesting part is not the tool, it is that I mostly do not open it. I talk to an agent in plain words and it maps that onto the right list, the right status and the right fields. The tool is the store. The conversation is the interface.
How I use it
Same shape for every client. Each client gets a folder, and each folder holds the same kinds of list: setting up, ongoing work, recurring habits, and one list per campaign segment. Once the shape repeats, a new client is a copy rather than a design decision, and I can find anything without remembering where it was put.
Plain sentences instead of forms. “What is on my plate”, “add this, due Friday”, “I finished that one”. Each maps to a command that resolves the name to an id first and then acts. The friction in a task tracker is not the thinking, it is the clicking, and that is the part worth removing.
The metadata is not optional. Every task carries which client it belongs to, which kind of work it is, and which role does it. Those fields are what the views filter on, so a task created without them exists and is invisible, which is worse than not existing.
Cleanup runs as a preview first. The tool that closes duplicate recurring tasks shows the plan and does nothing until I approve it. Then it closes, never deletes.
What I have learned the hard way
“Closed” is not one value. Each list defines its own statuses, so the finished state is called one thing in most lists and something else in others. Any code that hardcodes the word works everywhere until the first list that disagrees, and then it fails by setting nothing. Ask the list which of its statuses means closed.
Not every task is a to do. In the campaign lists the task is the campaign, and its status mirrors whether that campaign is really sending. Closing one of those because it looks stale is destroying a status record, not tidying up. Those never get closed automatically, and they are hidden from the “what should I do today” view entirely, because a mirror in a to do list is noise.
A shared workspace has other people’s experiments in it. A list of duplicate looking tasks is sometimes somebody’s test data, and a cleanup script that cannot tell the difference will helpfully destroy it. Anything that closes tasks in bulk carries a list of places it must not touch.
Task management tools reward being boring. Every custom automation I have been tempted to add would have been another thing to explain to whoever joins next. The value here came from one consistent structure and a fast way to talk to it, not from features.
Resources
This is one part of a stack. The rest is on the tools page, and what I build with it is on work.