Need help with wakatime?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

1.0K Stars 83 Forks BSD 3-Clause "New" or "Revised" License 951 Commits 66 Opened issues


Command line interface used by all WakaTime text editor plugins.

Services available


Need anything else?

Contributors list

.. image:: :target: :alt: Tests

.. image:: :target: :alt: Windows Tests

.. image:: :target: :alt: Coverage

.. image:: :target: :alt: Version

.. image:: :target: :alt: Supported Python Versions

.. image:: :target: :alt: Code time tracker


Command line interface to

_ used by all WakaTime
text editor plugins 

Go to to install the plugin for your text editor or IDE.


Note: You shouldn't need to directly use this package unless you are

building your own plugin 
_ or your text editor's plugin asks you to install the WakaTime CLI manually.


_ installs the WakaTime CLI for you, except for the
Emacs WakaTime plugin 

Install the plugin for your IDE/editor:

Each plugin either comes pre-bundled with WakaTime CLI, or downloads the latest version from GitHub for you.


If you are building a plugin using the

WakaTime API 
_ then follow the
Creating a Plugin 
_ guide.

For command line options, run

wakatime --help

Some more usage information is available in the



Options can be passed via command line, or set in the

config file. Command line arguments take precedence over config file settings. The
file is in
_ format. An example config file with all available options::
debug = false
api_key = your-api-key
hide_file_names = false
hide_project_names = false
hide_branch_names =
exclude =
include =
include_only_with_project_file = false
status_bar_icon = true
status_bar_coding_activity = true
offline = true
proxy = https://user:[email protected]:8080
no_ssl_verify = false
ssl_certs_file =
timeout = 30
hostname = machinename
projects/foo = new project name
^/home/user/projects/bar(\d+)/ = project{0}
disable_submodules = false

For commonly used configuration options, see examples in the




How to debug the plugins 

Make sure to set

in your

Common log file location in your User


Each plugin also has its own log file:

  • Atom writes errors to the developer console (View -> Developer -> Toggle Developer Tools)
  • Brackets errors go to the developer console (Debug -> Show Developer Tools)
  • Cloud9 logs to the browser console (View -> Developer -> JavaScript Console)
  • Coda logs to
    so use
    sudo tail -f /var/log/system.log
    in Terminal to watch Coda 2 logs
  • Eclipse logs can be found in the Eclipse
    Error Log
    (Window -> Show View -> Error Log)
  • Emacs messages go to the messages buffer window
  • Jetbrains IDEs (IntelliJ IDEA, PyCharm, RubyMine, PhpStorm, AppCode, AndroidStudio, WebStorm) log to
    locating IDE log files 
  • Komodo logs are written to
    (Help -> Troubleshooting -> View Log File)
  • Netbeans logs to it's own log file (View -> IDE Log)
  • Notepad++ errors go to
    (this file is only created when an error occurs)
  • Sublime Text logs to the Sublime Console (View -> Show Console)
  • TextMate logs to stderr so run TextMate from Terminal to see any errors (
    enable logging 
  • Vim errors get displayed in the status line or inline (use
    to clear inline errors)
  • Visual Studio logs to the Output window, but uncaught exceptions go to ActivityLog.xml (
    more info... 
  • VS Code logs to the developer console (Help -> Toggle Developer Tools)
  • Xcode type
    sudo tail -f /var/log/system.log
    in a Terminal to view Xcode errors

Useful API Endpoints:

  • List of Plugins and when they were last heard from 
  • List of computers last sending coding activity 

Useful Resources:

  • More Troubleshooting Info 
  • Official API Docs 


To install the dev environment::

virtualenv venv
. venv/bin/activate
pip install -r dev-requirements.txt
pip install tox

Before contributing a pull request, make sure tests pass::


The above will run tests on all Python versions available on your machine. To just run all tests with your current Python version::


To run only a single test method, specify the test file location, test class, and test method. For example, to only run the Git project detection test::

nosetests tests.test_project:ProjectTestCase.test_git_project_detected

Many thanks to all


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.