Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions src/getting-started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,53 @@ If you want more advanced ways to run ActivityWatch (including running it withou
.. note::
If you are using a proxy ActivityWatch might not work out of the box. To fix this you can set the environment variable ``NO_PROXY`` to include ``127.0.0.1`` before starting aw-qt. How to set an environment variable depends on your operating system; use Google if you are unsure how to do this.

Next steps after installing
===========================

Once ActivityWatch is running and you can see your tray icon, there are a few extra things worth doing to get useful data right away.

Install the browser extension
-----------------------------

The default :doc:`watchers` track the active *application* (e.g. ``Firefox``, ``Slack``), but the browser extension — :gh-aw:`aw-watcher-web` — adds the **title and URL of the active tab**. Without it, your browsing history inside the browser shows up as plain ``Firefox`` with no further detail.

The extension is available for the major browsers:

- `Chrome / Edge / Brave <https://chromewebstore.google.com/detail/activitywatch-web-watcher/nglaklfkpbjkhcdbgdkkfkgnjjlfpjcg>`_
- `Firefox <https://addons.mozilla.org/en-US/firefox/addon/aw-watcher-web/>`_

After installing, pin the extension and reload any tabs you have open so it can start logging.

.. note::
The browser extension only runs while its toolbar icon is enabled. If you don't see events from it, click the extension's icon to confirm it is on (its badge colour tells you whether it is currently logging).

Install an editor watcher
-------------------------

If you spend a meaningful amount of time in a code or text editor, install the matching editor watcher. Without one, every "coding" minute shows up as the editor's binary name only, with no file, project or language breakdown.

See the *Editor watchers* section in :doc:`watchers` for the full list (VS Code, Vim/Neovim, JetBrains, Emacs, Sublime, Zed, Obsidian, …).

Set up categories
-----------------

ActivityWatch records *what* you were doing but doesn't know what to call it. Categories let you map raw app or window titles onto your own labels (e.g. ``github.com → Coding``, ``Slack → Communication``) so the dashboard can roll activity up by purpose.

There are two ways to set them up:

- From the web UI: open ``http://localhost:5600`` → **Settings → Categories** and create a rule.
- From the config file: edit ``categories.yaml`` in your user data directory (see :doc:`directories`); the schema is documented in :doc:`configuration`.

A useful starter set covers the apps you spend most of your day in; you can always refine later.

Where your data lives
----------------------

Everything ActivityWatch has recorded lives in a per-user directory and survives reinstalls and updates. See :doc:`directories` for the exact paths on Windows, macOS and Linux, and where to find the logs if something goes wrong.

.. note::
To back up your data, copy that directory. To start fresh, stop ActivityWatch, delete the directory, and start ActivityWatch again — all your watchers will begin logging from a clean slate.

Autostart
=========

Expand Down
42 changes: 42 additions & 0 deletions src/updating.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,48 @@ If you've installed by extracting a folder (Windows/Linux) or ``.app`` bundle (o

You do not need to worry about your data disappearing, as it's stored in a separate location (see the :doc:`directories`).

Stop ActivityWatch before updating
----------------------------------

Always quit ActivityWatch **before** replacing any files. The bundled ``aw-server`` is a running process that holds the SQLite database open; overwriting its binary or library files while it is running will, on most operating systems, fail silently (or worse, leave you with a half-updated install that crashes on next start).

How to stop it depends on how you started it:

.. tabs::

.. group-tab:: aw-qt (default)

Right-click the ActivityWatch tray icon and choose **Quit** (on macOS the tray lives in the menu bar). This stops ``aw-qt`` and the ``aw-server`` it launched.

.. group-tab:: Linux / systemd --user

If you started ActivityWatch as a systemd user service, stop it with::

systemctl --user stop activitywatch.target

(or whatever unit name you used; ``systemctl --user list-units | grep activitywatch`` will list them).

.. group-tab:: Linux / manual

From a terminal::

pkill -f aw-qt
pkill -f aw-server

Both should exit within a second or two; ``pgrep -f aw-server`` returning nothing confirms the server is stopped.

.. group-tab:: macOS

Click the ActivityWatch menu bar icon and choose **Quit**. If the menu bar icon is missing (or you started it from a terminal), run::

killall ActivityWatch
killall aw-qt

.. group-tab:: Windows

Right-click the ActivityWatch tray icon and choose **Quit**. If the tray icon is not visible, open **Task Manager** (``Ctrl+Shift+Esc``), find the ``aw-qt`` and ``aw-server`` processes, and **End task** each of them before replacing the files.

After the update, just start ``aw-qt`` (or your usual autostart entry) again — your existing data and buckets are picked up automatically because they live in the standard user data directory (see :doc:`directories`).

macOS
-----
Expand Down
Loading