Skip to content

CarterT27/ticktick-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ticktick-cli

ticktick-cli is a Rust command-line client for working with TickTick from your terminal.

What it does

  • Authenticate with TickTick via OAuth
  • List, create, update, complete, and delete tasks
  • List, create, inspect, update, and delete projects
  • Provide human-friendly and JSON output modes for many commands

Install

brew tap CarterT27/tap
brew install CarterT27/tap/ticktick-cli

First-time login

The default install path uses the shared brokered OAuth flow. You do not need to create your own TickTick app or set a client secret.

Run:

tt auth login

Top-level aliases also work:

tt login
tt status
tt logout

The browser-based login flow uses these defaults automatically:

  • TICKTICK_CLIENT_ID=Ul8jc7U2kv5DwjN6Uw
  • TICKTICK_OAUTH_BROKER_URL=https://ticktick-auth-broker.carter-tran.workers.dev
  • TICKTICK_REDIRECT_URI=http://localhost:8080/callback

You only need to set environment variables if you want to override those defaults.

After login, credentials are stored in the app config directory for your OS. The CLI prints the exact path after successful auth.

Quick start

Authenticate:

tt auth login

Then use it:

# add a task
tt add "Write release notes"

# list tasks
tt ls

# filter examples
tt ls --status open --limit 20
tt task list --when today

# complete or remove
tt done <task-id>
tt rm <task-id>

Project flows:

# list projects
tt projects

# create one
tt project add "Work"

# inspect one
tt project get <project-id>

Development

Developer setup, alternate OAuth modes, and broker deployment notes are in docs/development.md.

Run tests with:

cargo test

About

unix-compatible cli for the ticktick task manager

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages