It’s not but it’s the simplest model to just add in to get the other core pieces first. Which no one really understands a lot of internal client mechanics hence why every issue in the repository is pretty much research+implementation. Pretty much it currently stands as a test platform, and most of the commands that I use to do certain functions are actually client sided.
Did you know you can actually animate individual models of a player/npc. And in models, there are flags which are used in coordination with these animations to act on certain vertices. Did you know there are animation priorities? Did you know there are 3 movement speeds? Run, walk, crawl. Did you know animations can actually block walking, or specify if an animate is playing how the behavior works for that?
All of this is fairly undocumented. Your server doesn’t mean anything if you don’t know this information to try and emulate things in a manner that’s effective.
That coupled with the fact there aren’t many CS2 (Client Script V2) decompilers which the scripts pretty much define how the game is executed and ran in the first place make it kind of hard to just implement content freely.
So trying to say that you need to come up with a new design doesn’t matter when first you need to try and paint a picture of what you’re dealing with. You can engineer to network pipeline and everything else after the fact, and just use what works for now. It doesn’t have to be perfect. It has to fit your specifications.