One solution is a bash script discussed here: https://www.maltheborch.com/2011/09/less-app-on-linux
And available as a gist here: https://gist.github.com/malthe/1234308
It requires node, lessc, and inotify-tools (a small library for watching changes to files.) Simply throw it in a file, make that file executable, then run it with a directory as the argument.
The downside is that while it will watch a directory recursively, it will only compile whichever file was modified--it doesn't have the ability to automatically compile the less files which import the one you're working on.
Update: A similar option is this slightly more complex bash script which adds a few features: http://code.krml.fr/less.app