When I thought about this idea some months ago it would be within UI3 but i'm not too sure about writing .c files it can't do a pure check given that ease...
If you're talking about an in-game editor, then you could skip the .c files and send the bot characteristics directly from client to the server via some new command(s) implemented in the game qvm.
In order to make the tool simple and easy to use, it should request only two values per attribute, one expected when skill=1 (the "minimum", which in some cases would be the "maximum") and another expected when skill=5 (vice-versa).
The current bots already skip skills 2 and 3, they don't exist in the .c files, they are interpolated from skills 1 and 4. You could in theory skip skill 4 too and just interpolate between 1 and 5 -- see BotLoadCharacter() function in
game/ai_char.c