sigi 🌴

sigi (Chamorro) -- verb. To keep on, continue, advance

The Big Idea

sigi is an organizing tool for terminal lovers who hate organizing.

Use sigi as extra memory. Use it to toss your tasks, groceries, or the next board games you want to play onto a "stack." Shell aliases are encouraged to organize your various stacks.

The original idea from J.R. Hill:

I hope sigi will help you to get on with your life, by helping you prioritize better, forget less, get some stuff done, and relax. 🌴

There's a limit to human memory, and remembering things uses up willpower. I like working at a command line, and wanted a tool to free me up from trying to juggle tasks and ideas.

On a more personal level, while I love beauty and craftsmanship and accomplishing things... I absolutely despise spending time organizing. A five factor personality evaluation rated me at 7% in the orderliness aspect of conscientousness, which (among other things) means I am both less disturbed by chaos and more disturbed by order than 92% of humankind.

sigi intends to be far more flexible and messy, and far less rigid and tidy, when compared to the plethora of personal and professional organizational tools that exist. It will let you write stuff down and look at that stuff when you want to. It's less like a Google/Outlook/Apple Calendar application and more like a pen-and-paper notebook.

I also just find that stacks, and stack-based languages like Forth and Factor are a joy to play with. Also, they're a good fit for organization. Usually older things that aren't "done" or "deletable" are things that can wait more than whatever things are actively being juggled.


sigi as a to-do list

sigi can understand the subcommands do (add something) and done (mark the current something completed).

$ alias todo='sigi --stack todo'

$ todo do Write some code
Creating: Write some code

$ todo do Get a drink
Creating: Get a drink

$ todo do Take a nap
Creating: Take a nap

$ todo list
Now: Take a nap
  1: Get a drink
  2: Write some code

$ sleep 20m

$ todo done
Completed: Take a nap

It's best to use sigi behind a few saved aliases with unique "stacks". These stacks do not get shared. You should save these aliases in your ~/.bashrc or ~/.zshrc or whatever your shell uses for aliases or abbreviations. sigi accepts a --stack option, and you can have as many stacks as you can think of names.

Forgot what to do next?

$ todo
Now: Get a drink

Not going to do it?

$ todo delete
Deleted: Get a drink

sigi as a to-do list

sigi can also serve as a save-anything list.

Extending the alias idea, you can use sigi to store anything you want to remember later.

$ alias watch-later='sigi --stack watch-later'

$ watch-later add One Punch Man
Creating: One Punch Man

$ alias story-ideas='sigi --stack=story-ideas'

$ story-ideas add Alien race lives backwards through time.
Creating: Alien race lives backwards through time.


If available, install with your OS's package manager.

Packaging statuses

If your packaging system doesn't have it yet, the best way to install sigi is through the Rust language package manager, cargo:

cargo install sigi

Instructions on installing cargo can be found in the Cargo book.

Please package it up for your Linux/BSD/etc distribution.