/toggl-cli

Manage your Toggl.com time entries from the familiarity of the nearby CLI.

Primary LanguageJavaScriptMIT LicenseMIT

toggl-cli

Build Status Codeship Status for meeDamian/toggl-cli Coverage Status codecov.io npm version XO code style Dependency Status devDependency Status

Manage your Toggl.com time entries from the familiarity of the nearby CLI.

Download (node v5.0+)

$ npm install -g toggl-cli

Usage (Simple)

Simple Mode demo

$ toggl --help

  Manage your Toggl.com time entries from the familiarity of the nearby CLI.

  Usage:
    Interactive mode:
      $ toggl

    Single request:
      $ toggl <cmd>

  Flags:
    -v --version     - output version
    -h --help        - output this help
    --examples       - show usage examples
    --no-colors      - disable colors
    --save-token     - save provided token and exit
    -t --token       - run with a custom token (will not be saved)
    --set-background - set color theme. Choose more readible: dark or light

  Commands:
    c current             - see details of currently running time entry (if any).
    l list [amount|when]  - list last <amount> of time entries (default: 8) or <when> (see below)
    s smart [name|number] - start or stop the entry, whatever makes more sense.
      start [name|number] - start new time entry with the given name, or resume if number is given.
      stop                - stop running entry.
    r rename <new-name>   - rename currently running entry to <new-name>.
    b browser             - open Toggl timer in default browser.


  Note:
    → Values in [square brackets] are optional.
    → <when> is one of:
        today, yesterday, last Monday, last tue, etc…


$ toggl --examples

  Set default token for all future launches:
    $ toggl --save-token d9db051bf06be16c2027d3cb08769451

  List last 17 time entries for a different account:
    $ toggl --token a1ad615af03be16c2027d3dc08291457 list 17

  Run interactive mode with a different token:
    $ toggl --token a1ad615af03be16c2027d3dc08291457

  Start a new task named "Writing toggl-cli docs":
    $ toggl start Writing toggl-cli docs

  Resume last running time entry:
    $ toggl start 1

  List entries from the last Friday:
    $ toggl list last friday

  Alias toggl for work:
    $ echo "toggl2='toggl --token <work-token>'" >> ~/.bashrc
    $ toggl list yesterday  # yesterday entries from your private account
    $ toggl2 list           # last 8 entries from your work account


$ toggl --logo

              NN
           .: NN :.
         cX0l NN l0Nc
        xM;   NN   ;Mx
        WK    OO    KW
        oMc        cMo
         ;0Xd:,,:dX0;
           .xNMMNx.

Usage (Interactive)

Interactive Mode demo

  Time entry
    c ⇾ current        1-9 ⇾ resume from the list
    s ⇾ start or stop    r ⇾ rename        l ⇾ list last 8
    d ⇾ discard          p ⇾ add project   L ⇾ list last 16

  Other
    x ⇾ clear         h, ? ⇾ help          v ⇾ version
    b ⇾ open in browser  q ⇾ quit

  What do you want to do [c,1-9,s,r,d,p,l,L,b,v,h,?,q]?

Notice

  • This module is in no way supported nor developed by Toggl.com .
  • It's still WIP, any and all PRs highly appreciated (esp. tests ☺)

Bugs and feedback

If you discover a bug please report it here.

Mail me at bugs@meedamian.com, or on twitter @meeDamian.

codecov.io

License

MIT @ Damian Mee