Python CLI for using an Eisenhower Decision Matrix with Trello

todo list todolist trello developer cli eisenhower decision matrix box productivity method
pip install yodoit==1.1.2



YoDoIt (or yodoit) is a Python-based CLI to help you be more productive.

It uses your Trello account to manage an Eisenhower Decision Matrix, a tool used to evaluate tasks using the criteria important/unimportant and urgent/not urgent.

The idea is to categorize and handle your tasks as follows:

  1. Important Urgent tasks are deadlines, problems, and crises. They should be handled immediately and personally.
    • Coding project deadlines
    • Business-related emails (interviews, job offers)
    • Add/drop classes
  2. Important Not Urgent tasks are activities that help you achieve personal and professional goals. There should be plenty of time to do these so they don't become urgent.
    • Exercising
    • Read enriching books
    • Keeping up with hobbies
  3. Unimportant Urgent tasks are things that don't help you achieve your goals. These aren't necessarily bad, as they often do help others. However, it's important that they are balanced with Important tasks.
    • Social media notifications
    • Phone calls and texts
    • Some club meetings
  4. Unimportant Not Urgent tasks are primarily distractions. Instead of completely removing these tasks, a very limited amount of tiem should be spent doing these; they're perfect to do after a busy and hectic day.
    • Mindlessly browsing the web
    • Scrolling through social media
    • Watching random YouTube videos

Getting Started

Install using

$ pip install yodoit

You're also going to need a Trello account if you don't already have one.

Begin setting up YoDoIt by running

$ yodoit

First, YoDoIt will prompt you for your Trello app key and authorization token (the authorization token is found under Developer API Keys -> Token).

Then, you can set a new Trello board with the Eisenhower Decision Matrix categories as lists (Important Urgent, Important Not Urgent, Unimportant Urgent, Unimportant Not Urgent, and Done). If you already have a Trello board using this productivity method, make sure your board has the 5 lists as mentioned above.

$ yodoit
Yo, welcome to YoDoIt!
Yo, enter your Trello app key: ...
Yo, enter your Trello auth token: ...
Yo, your Trello account is hooked up with YoDoIt!
Yo, do you wanna use a new board or an existing board? (new/existing):

Now you're ready to start using your board on the command line! The interface abbreviates the categories as follows:

  • Important Urgent is iu
  • Important Not Urgent is inu
  • Unimportant Urgent is uu
  • Unimportant Not Urgent is unu
  • Done is just done


Adding a card:

$ yodoit <card-name> [--desc <desc>] (--iu | --inu | --uu | --unu | --done)

List cards in a category ( is an optional argument. If it's not used, then all lists will be shown):

$ yodoit -l [<list-names>...]

Open Trello board in browser:

$ yodoit -o


$ yodoit "respond to recruiter for scheduling an interview" --iu
$ yodoit "finish memory mapping interface for VM by 8/30/16" --desc "test new module with cache support" --iu
$ yodoit "read Predictably Irrational" --desc "chapter a night" --inu
$ yodoit "text John about planning dinner tonight with the boiz" --uu
$ yodoit "watch super smash bros Shine 2016" --desc "Jim said the final match was hella hype" --unu
$ yodoit -l iu inu # Shows cards in lists Important Urgent and Important Not Urgent
$ yodoit -l        # Shows cards in all lists

Coming soon...

  • Moving cards between lists
  • Set due dates when adding a card

I want to hear from you!

If you have any feedback, questions, or concerns about YoDoIt! feel free to reach out to me at