libxi é uma biblioteca que fornece um protocolo de extensão de entrada X11. Ele permite que os clientes enviassem eventos de entrada para o servidor X, que então pode ser processado pelo servidor e passado para outros clientes. A biblioteca também fornece uma maneira para os clientes receberem eventos  de entrada do servidor. Isso é útil para criar programas que precisam interagir com os dispositivos de entrada do usuário, como um mouse ou teclado. 