I like it. Some suggestions:
- I would change "Currently she is ..." to "She tends to..." because I think that makes more sense and is more broadly applicable. Like, the thing the NPC is doing presently may vary wildly based on context. But if you tell me their tendencies, that's a great thing that I can roleplay to make the NPC memorable.
- I would have a mode to generate any gender, in case I want an NPC and I don't really know or care what gender they should be.
- Some of the Personality entries are weak. I want the personality to tell me how to role-play the character and how they approach others. Instead of skills, I'd list preferences. For example, instead of "a skilled dancer" something like "loves dancing," or instead of "a skilled sailor" maybe "she loves the sea. This is also more flexible in terms of how I insert the NPC into the campaign. Some skills work better than others -- for example, a "expert charlatan" says something about their personality, that I can use right away. I have really mixed feelings on putting alignments in there, since alignment typically tells me very little about the character, but sometimes it is quite useful.