What's the reason behind writing automation tooling in C instead of higher level languages? The usual (portability, performance) don't seem to apply at first glance.
There are also expect clones in Python and Perl (probably others, but I know and have used those both) if TCL is an issue for you.
This looks nice, but I don't see if as very useful.