The last CLI I wrote in my current position used Node.js/Typescript with the Commander.js library. that was a pretty good experience, and there are a lot of JS libraries available. Kotlin / Clikt has the benefit of running a bit faster and being able to share models with the backend