Some years ago I wrote one (cleverly named Tracuala) for trac. It was good enough most of the time for my needs. Trouble was, Trac didn't have a real Web API at the time, so I was hacking around cookies and authentication and what not. And when I upgraded a Trac instance, stuff broke.
Nowadays I use Pivotal Tracker, which has a very nice Web API. That allowed me to write yet another CLI tool (cleverly named Pivotal Slacker) which works quite nicely for fetching lists of stories, adding new stories, doing bulk updates or additions from yaml files, and the like.
The upshot is that all Web-based tools should try to offer a decent RESTful API as well so that folks who want additional tools can add them without having to worry about coding to the quirks of Web page scrapping.
It syncs with various online bug trackers and supports full offline manipulation of the bugs. I would use it if I didn't just make a list of stuff to do in a text file.
So, something that's not immediatelly apparent upon reading this. How do I use it? Do I init it in an existing GIT repository and will the added bugs be synced along with my other changes? That would be awesome to replace my current method of light-weight bug tracking: a todo.txt in the git repo.
When you init it, it creates a .later directory to store the issues. You could revision this along with code, so yes it seems like a nice replacement to the todo.txt.
Playing a bit more, what would be really nice would be to be able to do later -r list to recurse through subdirectories listing issues in those too. At present it only looks upwards.
I'm just wondering: is using a command-line bug editor actually a good idea? Seems like the perfect way to stay out of touch with how normal people experience your software.
A CLI bug tracker client is attractive if the data model is super simple and/or pure text. Once you need or want to start attaching files, especially screenshots or other media, to each issue, then the CLI doesn't fit as well. Very appealing idea, however.
What I'd love to have is a command line interface to existing bug trackers.