/clickup_cli

Simple unofficial CLI for ClickUp

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

ClickUp CLI

This is a simple app to display tasks from ClickUp service. It is in early stages of development, so use with care and nothing is set in stone yet.

Dependencies

It is written in JavaScript. So it requires Node.js to run. Apart from that, it combines two packages cli-table and clickup.js.

You can install it using the following command:

yarn install

Usage

To be able to use it, you need to obtain a personal token from ClickUp (User settings → My Apps → Apps) and put it into a configuration file ~/.config/clickup/config. This configuration file is json and you can see the example one bellow.

{
    "token": "pk_12345678_1234567890ABCDEFGHIJKLMNOPQRSTUV",
    "sync_always": true,
    "style": {
        "head": ["yellow"],
        "border": ["cyan"],
        "tasks": ["green", "bgBlack"]
    }
}

Configuration options

token

Your personal token to access ClickUp API.

sync_always

With every call update local cache first. Slower, but you don’t risk being out of date.

style

Style to apply to the table. For more options see documentation of cli-table and colors.js. Typical setup is color styling of header using text colors and background colors. Except of head you can also similarly style border using border key and tasks using tasks key.

CLI Usage

Simplest usage is simply calling the application.

tasks

This will output the list of all your tasks in a nice ascii table.

You can use additional commands and filters to modify the behaviour.

Commands

sync

Calling the application with sync command will cause it to always download latest version of tasks from the web.

Filters

Apart from commands, you can append filters to the command line. Syntax is filter value. Filter can be one of the following keywords:

  • team

  • space

  • folder

  • list

  • task

The value argument is the case-insensitively compared to the name of the appropriate structure in task hierarchy and only tasks that belong to the matching structures are printed. If multiple filters of the same type are specified the result is union of all matching tasks.

Example usage would be:

tasks space Home Folder IT list Infrastructure

This will output all tasks that are in space Home in folder IT and in the list Infrastructure.

tasks space Home space Work

This will output all tasks from both Home and Work spaces.