NPC's are useful in the Metaverse for various tasks. Today there supported "out of the box" by open simulator, and for most users it's not a huge task to get one operational. When you want to make it do stuff, things become a lot harder and more tedious. Especially if you want it to do a lot of complex things. Or simple stuff like putting on the pants you just gave it.
I used to have a "Pikkubot" in secondlife, which was very nice and feature rich. Not free, but a very nice tool which i had a lot of fun with. I know its supports opensimulator, as i had it running sometime around 0.6.7. Realizing i have a lifetime license, (read, i was browsing some old bookmarks and "re-discovered it", i found there still operational, since 2007). i hooked it up to my region in metropolis, and find much of its library (560 commands!) still work nicely. It's loaded onto Red Dragon Club attached to a pandora chatbot (mind i still need to "train" it) so you can interact with her in chat or IM as well.
If you need an NPC with advanced "control", the ability to log, patrol, follow you around, run scripts & macro's, be a rent, camp, dance, and/or chat or greeter bot, and a lot more by simply sending it IM commands, or control it from a small GUI; you can play with it's trial version to see if its worth a license. You need to jump some hoops to get it working in Opensimulator, so i will post a small tutorial below the break later this week. If you would just like a "normal" unlicensed NPC you can check this URL or this one for more info.