While a useful tool for education and simple tests, cassandra-cli is ultimately limted by the fact that column names and values are binary, (and eventually keys will be as well, see
The current approach when writing consists of encoding column names as UTF8, and passing the value as a byte of the String parsed from the command. When performing a read, the column names outputted are the result of the toString() method of the comparator (the result of which is not always meaningful), and values are again treated as raw strings. This is almost certainly broken anywhere that the CF comparator is not UTF8Type and values are anything but strings.
One possible approach would be to follow HBase's lead and simply allow binary values to be encoded as strings (see: http://wiki.apache.org/hadoop/Hbase/Shell).