Mesmo tendo um computador super rápido, eu me frustrava constantemente com a lentidão do meu computador, com o mouse e o teclado travando, porque certas tarefas iniciavam vários processos pesados ao mesmo tempo e levavam a utilização da CPU a quase 100%. Por exemplo, costumo ter 10 projetos abertos no Cursor em modo WSL no Windows 11. Quando o Cursor atualiza e reinicia, todos esses processos iniciando ao mesmo tempo travam meu computador. Ou então estou trabalhando em vários projetos ao mesmo tempo, e de repente um dos agentes tenta compilar um código Rust enorme, e, de repente, meu mouse começa a travar, o que me deixa louco. Finalmente, cansei disso e decidi fazer algo a respeito. Existem alguns pacotes que fazem muito do que eu quero, principalmente o ananicy, mas eu queria algo que simplesmente cuidasse de toda a configuração automaticamente para resolver os problemas específicos que eu estava enfrentando. Basicamente, o sistema funciona detectando um processo que está usando muita CPU e, em seguida, alterando o nível de prioridade (como se diz "bom" em termos Unix) para reduzi-lo e restaurar a capacidade de resposta da sua máquina. Ele também pode fazer o mesmo para processos que estão sobrecarregando sua E/S com um número enorme de descritores de arquivo abertos e uso excessivo de E/S, usando o "ionice". Eu realmente queria algo que fizesse tudo em termos de instalação, configuração, persistência, etc., com uma instalação de uma linha que "simplesmente funcionasse". Isso é ilustrado na primeira captura de tela abaixo. Enquanto fazia isso, decidi criar um monitor de sistema em Golang chamado sysmon, que possui uma interface de terminal muito elegante (veja a segunda e a terceira capturas de tela abaixo). Ironicamente, isso acabou se tornando um projeto muito maior por si só, mas mesmo assim vou mantê-lo como parte deste sistema integrado. É semelhante ao htop ou btop, mas focado exclusivamente na identificação de programas/processos com comportamento inadequado que estão prejudicando o desempenho do seu sistema. Ele mostra os piores infratores e também leva em consideração as operações de entrada/saída. Existem alguns minicomandos especiais para Cursor e Cargo, já que esses foram os que me causaram mais problemas. De qualquer forma, dê uma olhada e me diga o que você acha. Todo o projeto é totalmente de código aberto e licenciado sob a licença MIT, e pode ser encontrado aqui:
Carregando detalhes do thread
Buscando os tweets originais no X para montar uma leitura limpa.
Isso normalmente leva apenas alguns segundos.


