Pratik Bhujel ha presentado un RFC para Io\Terminal, una API propuesta para PHP 8.7. La interfaz compacta se incorporaría a ext/standard. Sus funciones previstas abarcan sesiones de terminal, consultas nativas del tamaño, un modo raw con restauración segura, entrada de teclas normalizada y entrada oculta.

La propuesta parte de una discusión anterior en php-internals sobre asistentes nativos para terminales. La integración con Symfony Console y TUI ayudó a concentrar el núcleo en las funciones que requieren soporte nativo multiplataforma. El RFC también reúne el historial previo, cuyas respuestas habían quedado repartidas en hilos de archivo separados.

Ya existe una implementación de referencia llamada ext-terminal. Se distribuye mediante PIE y Packagist como prateekbhujel/php-terminal. La implementación preliminar para php-src está disponible en la pull request 23941. Sigue la API central reducida y deja fuera la superficie completa de ext-terminal 1.x.

El diseño central emplea Time\Duration para los tiempos de espera. No expone un constructor público. La primera propuesta del núcleo excluye alias de compatibilidad, alternativas basadas en el entorno para obtener el tamaño del terminal y API de conveniencia. Bhujel pide comentarios antes de la votación.