I'd like to track how much time I spend interacting with various applications and files on OS X. I found SLife in my search, but it is a web / subscription service. Is there any other OS X application that does something similar or better?
Time Sink by Many Tricks does this. It records running and frontmost application names, as well as the window titles of each application's frontmost window.
One downside of this approach I've found is that I often read a document in a background window because I can scroll through it anyway. I don't think there's a way around that issue, other than discipline.
It's generally not possible to record file interaction otherwise, since many applications close their file handles even though the user is editing or viewing the file in the application, only opening it again to save it, or load more data.
I'd like to recommend my own app Timing (see the screenshot below). It automatically tracks which documents you edit and which websites you visit, so that you can later review what exactly you have done. You can also manually add offline activities so that they don't get lost. All data is stored locally and there is no subscription required.
As opposed to Time Sink, Timing also tracks file paths and website URLs rather than just window titles.
Qbserve tracks time for websites, applications and their windows (that are usually filenames), and also Skype chats and Slack teams.
It detects productivity for popular sites and apps automatically and stores your data privately on your machine.
There are no subscription fees since it's a traditional software that just works offline.
UPD: now the app also tracks project time automatically and generates invoices.
Disclaimer: I'm the developer of this app.