Time Tracking with Plain Text and Drafts - Summary

I track my time using plain text and Drafts. Detail about how I do this can be found in my prior posts:

You can download the actions I use to make this easier from the Drafts Action Directory here. Below is a very brief explanation of the included actions. After downloading, you may want to move these to different groups. The actions included in the download are:

insert date - Just inserts the date in a format I like. The key part here is that it includes the date in iso format (i.e. 2020-02-14).

insert time - Inserts the current time rounded to the nearest 6-minute increment. Feel free to modify this for different time increments, or to get rid of the rounding entirely.

start timeslip - Just a convenience action that creates a new timeslip with the date and the current time and a “time” tag. I call this action via a Shortcut that triggers when I get to my office, thereby reminding me to start time tracking.

get client number - A very useful front end for the getClient action. This takes any selected text and looks for a corresponding client. If no text is selected, you get a box where you can type in a client name or alias. Handy for looking up that billing number quickly.

process timeslip - This is the big action that takes the plain text time slip format and turns it into useful bits of information, including a nicely formatted email and some bits to append to tracking files.

PLEASE NOTE that you’ll need to manually add headers to the the tracking files. This only needs to be done once, and is probably easiest after you run process timeslip for the first time. After you’ve done that, find the time.txt file in the root level of the Drafts iCloud folder, and add the following as the first line of the text in that file using whatever text editor you prefer:


Do the same thing with the time.txt file in the root level of your Dropbox.

And finally, open the time.csv file in the root level of your OneDrive with a text editor (don’t use Excel) and add the following as the first line:


If you don’t plan on using OneDrive or Dropbox, you can go ahead and delete those steps from the process timeslip action.

time report - This action reads the time.txt file from the Drafts folder in iCloud, and creates a summary, showing totals for your billable, non-billable, and overall time for the current and prior week, month, and year as a nice HTML preview.

getClient - This is the function described in detail here, that is relied on by the process timeslip and get client number actions. There’s no reason to activate this action directly. It just needs to be available for those other actions to call.

dumbify - Just a utility function to get rid of curly quotes and em and en dashes since some of the ASCII functions don’t play nice with those characters. Again, there’s no need to activate this action directly. Just keep it somewhere.

Ciaran Connelly @ciaran