By selective searching of these forums, I gathered full info on this.
First thing to note - you might find NPCs who are multi-class have to stay multi-class. Experiment with this
Here's how I changed Imoen into an assassin:
1) Met for the first time in Spellhold, joined her in party, saved game.
2) Loaded the savedgame into Shadowkeeper
3) On Imoen tab:
Set her hp (max and current) to 1
Set her level to 0 / 0 / 0
Set her experience to 1
Erased all her proficiencies
(base AC seems to be 10 for everyone. Dont worry about Thac0 for now)
Set her single class to thief, kit to assassin
Erased her spellbook entirely.
4) Loaded the new file into SoA. Straight away heard the level up noise.
5) Levelled her up to 1, she will be given all the correct abilities, Thac0, saves etc for a level 1 assassin. Chose proficiencies
6) Use CLUA console to take her through the levels ( I did it one level at a time, but i guess you could just add 1million xp or whatever)
The command for this is CLUAConsole:SetCurrentXP(xxxx) with cursor on Imoen.
End result was a correctly rolled assassin, who I set to the same xp as the lowest xp party member at that time. Hope i didnt forget anything in that list!
In my game I had also previously remade Nalia as a Fighter dualled to mage at level 7 i think. Method was the same - I used shadowkeeper to make her a level 0 fighter (with 20 INT

, then did all the rest in-game, including hitting the DualClass button. In this case I may have had to return to SK later, to correct her avatar to female-mage-human.