Konubinix' opinionated web of thoughts

Clk 101


clk is born out of the need for its authors to automate some boring stuffs. Its authors have a very opinionated idea (inspired from other CLI) of what makes a good CLI. In particular, the authors, following the dogfooding state of mind, won’t implement “best practices” until they are convinced those practices are actually good.

It is mostly about typing the least possible and let the machine guess what it can guess.

  1. provide meaningful completion
  2. provide sensible default
  3. allow to record often used parameters
  4. provide aliasing to shorten commands
  5. allow to run several commands at once (–flow)
  6. provide a bunch of everyday usage lib (call, table, log…)

But it is also having nice outputs.

  1. nice colors
  2. built in table formatter
  3. ready to use log levels

And also easy to extend.

  1. create easily new commands
  2. change its behavior using plugins
    • obviously not used often, for the default behavior is so awesome
  3. publish and install scripts from a package manager (ongoing, still unsure how we want to do that)

Notes linking here