Edición de línea python servidor telnet

Estoy creando un servidor en python (lo que está haciendo es irrelevante), pero me gustaría que acepte conexiones telnet y proporcione una interfaz de línea de comandos con capacidades de edición de línea (tabcompletion, emacs / vi-mode, etc.) e historial por sesión . He creado con éxito la sesión de telnet, el modo de línea deshabilitado y el servidor activado.

Mis pensamientos iniciales usaban readline pero el módulo readth de python parece funcionar solo para una sesión en stdin; y examinando la biblioteca de readline subyacente que parece ser la forma en que funciona.

Sin embargo, lo que me gustaría hacer es crear una instancia (llámela si lo desea) para cada cliente y, a medida que se reciban, los caracteres se alimentan del estado. Una vez que se ha generado una línea completa, la pasaría al servidor, que puede analizarla.

Así que mi pregunta es si hay una biblioteca que maneja este tipo de cosas, incluso una biblioteca-c sería suficiente.

EDITAR : Para aclarar, ya tengo un servidor completamente funcional, pero quiero que la interfaz de telnet como complemento reconfigure, obtenga información, etc.

Parece que tienes la parte TELNET ordenada, y ahora quieres proporcionar características que se encuentran comúnmente en shells como BASH, KSH, etc. No lo he intentado yo mismo, pero echa un vistazo a timón : “un shell versátil con características tanto de bash como de python “.

Tal vez la biblioteca de cmd podría ser de interés / ayuda?