Manually tracking away/offline-time

As a user who frequently leaves their computer for meetings, phone calls, etc, it would be nice to be able to define manual AFK activities so I can also log in more detail what I was doing.

This way when I return to my computer, ActivityWatch can prompt me and ask “What were you doing for the last 42 minutes?” and I can select between defined afk activities. Meeting, Helping another person, phone call, etc.

This is something we’ve been wanting to do for a while, but your specific suggestion sounds really good. This is how the Toggl app on macOS app (at least used) to work, and would make it easy to log what you were doing. In fact, I remember liking it.

We added very simplistic manual logging in our recently released Stopwatch feature, and it has obvious need for improvement, which could include something like this.

Another thing I’d want, separate from the “What were you doing when you were AFK?” prompt: A proper bucket/event editor. Should be possible to build into our vis.js timeline, we could make gaps clickable and create events in them (by flooding an event into the selection). This would also help filling in the blanks, but would enable you to also do so after the fact.

I’m also imagining a more calendar-like timeline view in the future, somewhat similar to Google Calendar.


Would the timeline editing still be useful given you’re planning on a UI change to a Calendar view?

If no one is working on this, I can try to implement the bucket/event editor (no guarantees) for the timeline.

I looked into the vis library and it allows event adding/editing in the timeline, so it looks like it’s a matter of adding the right configuration, then linking to the API’s

Hello every one,
first of all, thank you @ErikBjare for the nice - useful and feature full project.
I would suggest to add a manual time tracking “start” or “stop” button for the users, so I can define a project for myself and see how much of the time that I have been using on that project, actually has been used for that.

Sure I would make a fork, add a feature and make a pull request, but there are 2 limitations:

  1. my python knowledge is more based on Datascience,(lack of web dev knowledge).

  2. time limitation,

please kindly inform me which way is more appropriate.
if it’s in near todo list I’ll simply wait.

Sure, you have the stopwatch for that. Grab the latest dev build here, at the bottom of the page you have the artifacts.

Hi all,

Thanks so much for your work so far. I would agree that it would be really helpful for the web UI to allow the user to drag and select a window of time in the timeline (e.g. a third bar in the timeline view) and give it a manual string label. Then on the summary page see the total time time used by that label on a given day.

My use case is for timesheeting in a separate app. I know there are heaps of apps that help with timesheeting but most of them rely on the user to start a timer. I don’t need to I am forgetful (and have ADHD) and never remember to start or stop timers, even physical timers. Some programs do this (e.g. manictime), but those are not cross platform. It seems like most of the requirements for this are here (and maybe someone is already working on this) and this may open the the user base substantially. This would also allow people to work around many of their own usecases manually.

I’m sorry to say my js is non-existant, but I may play around with a python based interface for my own purposes.

As promised, my pyqt based implementation of manual tagging is here:


Thanks for the amazing software! I will add my tiny use cases to the list as well.

When playing VR games via SteamVR, I get logged as AFK. I would like to return to my desk and label that afk time as “Games”, so at the end of day I feel guilty for playing too long :slight_smile:

Another use case is when I print a long PDF to read it. The reading session takes around 30mins, when I get logged as AFK, and it would be nice to log that as time spent working.

I realize the more I think about this that this request sounds like a “help me track how I have spent my day” rather than “help me track what apps were running on my computer”. The former is more abstract and far from the latter, which is where the project is at currently. But does the former abstract goal fit in the project developers’ vision? I am eager to know.

Thanks again for your software!

I like this popup idea because it could be really useful for many people. Any updates on this issue? Or a hint on how to implement this? Maybe I could give it a try.

In my opinion, this popup could be achieved in two ways:
1: add this feature to the aw-watcher-afk module
2: create a new watcher? which reacts on a new event from the watcher-afk and reacts on it

Which solution do you think is the best way to achive this?

1 Like

I wrote a watcher that creates a popup that asks you what you were doing while AFK. I have been using it for about a week and I like it. I don’t consider it finished yet, so I haven’t published it to PyPi. But I found this thread tonight and wanted to ping on it. If anyone decides to try it out I’d be interested in any additions you might have to the “roadmap” section of the README.