TimeTrap. It's simple and lightweight, and somewhat intuitive to use.
$ t switch World Domination Plan
$ t in --at "5 minutes ago" Research Volcano Islands
$ t out
$ t display
Timesheet World Domination Plan:
Day Start End Duration Notes
Mar 14, 2009 19:53:30 - 20:06:15 0:12:45 Research Volcano Islands
Total 0:12:45
It's written in ruby an available as a gem on gemcutter or on github:
http://github.com/samg/timetrap
A similar tool written in python is called TimeBook and available on bitbucket.