I'd like to start off this post with two admissions: 1) I love the Force.com CLI 2) I don't know Go. Fact #2 makes it hard for me to extend the CLI for my own (selfish) purposes. However, I am fairly handy with JavaScript and Node.js so that's where I mostly work.
I've been using a node CLI for the past couple of months when prototyping new features with different Force.com APIs. It's been extremely useful when prototype/testing with the new Tooling API (here's the gist of the module I've been working on if you want to add the code). What's makes it so useful is that you just add your connected apps settings, authenticate using nforce (FTW!) and then go ahead making REST calls to Force.com. Super easy!
I thought other might get some use out of it so I ripped out all of my crap code and pushed it to github. There are a couple of sample commands to get you started but feel free to make enhancements. It's also Promise-based which should make life easier when dealing with Force.com APIs.
To get started from terminal, clone this repo and run npm install to install the dependencies. You may also have to run chmod 777 ./bin/cli to make the file executable on OS X.
You'll then need to enter your connection parameters into config.js for Force.com. To test you connection, simply run bin/cli login
which should return a connection object.
To see the available commands run bin/cli --help.
As of right now, each command initially authenticates to Force.com before running. You may want to cache the connection in redis to speed things up. I did not want to add this dependency which would have made it harder to get started.
The code for the CLI is rather small and should be easy to grok. The CLI "executable" uses commander, is self documenting and simply delegates calls to /lib/force.js.
The real guts of the CLI is the force.js module which uses nforce to talk to Force.com.