O Irssi não é apenas um cliente IRC: é o canivete suíço do chat no terminal. Modular, leve, eternamente customizável, sobreviveu a modas, GUIs e ao próprio declínio do IRC. Se passas a vida no terminal, o Irssi é a tua casa.
Criado por Timo Sirainen em 1999, o Irssi é um dos clientes IRC mais icónicos do mundo UNIX. Escrito em C, modular, com suporte para scripts em Perl, é conhecido pela sua estabilidade, segurança e capacidade de gerir múltiplas redes em simultâneo. Mais de 25 anos depois, continua ativamente mantido: a versão estável atual é a 1.4.5 (Outubro de 2023), com suporte para IRCv3, SASL SCRAM-SHA, true colour e muito mais.
Vou mostrar-te:
- Como instalar o Irssi em Debian, macOS e Windows
- Primeiros passos: conectar a redes, entrar em canais, navegar no interface
- Configurar redes e canais com auto-join e SASL
- Uma wiki de referência com todos os comandos core e de moderação
- Settings essenciais para o dia-a-dia
- Temas, scripts e personalização
- Dicas e boas práticas para uses como um pro
⬆ Irssi a correr no terminal com múltiplas janelas e temas personalizados
Instalação
O Irssi está disponível em praticamente todas as distribuições Linux, macOS (via Homebrew/MacPorts) e até em Windows (via WSL ou Cygwin). Vamos a isso.
Debian / Ubuntu
Nos repositórios oficiais do Debian e Ubuntu encontras o Irssi estável. Instala com:
No Debian 12 (Bookworm) e Ubuntu 24.04, a versão nos repositórios é a 1.4.5. Se preferires compilar do source (para teres as últimas alterações ou patches específicos), usa o meson:
Verifica a instalação com:
macOS
No macOS, a forma mais prática é via Homebrew:
Alternativa com MacPorts:
Nota importante para utilizadores de macOS: A tecla Meta (Alt) é essencial no Irssi para navegação entre janelas. No Terminal.app, vai a Preferences > Profiles > Keyboard e ativa "Use Option as Meta key". No iTerm2, vai a Preferences > Profiles > Keys e em Left Option Key escolhe "Esc+".
Windows
No Windows tens três abordagens possíveis:
1. WSL (recomendado): Instala o Windows Subsystem for Linux com Ubuntu ou Debian, depois:
2. Cygwin: Instala o Cygwin com os pacotes irssi e ncurses a partir do setup.exe.
3. SSH remoto: Usa o Irssi num servidor Linux remoto via SSH. Basta ssh servidor e depois irssi. É a abordagem mais leve: não precisas de instalar nada no Windows.
Tabela comparativa dos métodos no Windows:
| Método | Setup | Performance | Integração | Recomendado |
|---|---|---|---|---|
| WSL | Médio (instalar WSL + distro) | Excelente | Total (sistema de ficheiros) | Sim |
| Cygwin | Médio (setup + pacotes) | Boa | Parcial (camada POSIX) | Alternativa |
| SSH remoto | Mínimo (só SSH) | Depende da rede | Nenhuma (terminal remoto) | Sim (leve) |
Primeiros passos
Depois de instalado, abre o terminal e escreve irssi. Estás dentro. O interface é dividido em janelas: cada canal, conversa privada ou painel de estado ocupa a sua própria janela, e navegas entre elas com combinações de teclas.
Comandos de sobrevivência:
Navegação entre janelas:
| Tecla | Ação |
|---|---|
| Alt+1 a Alt+0 | Ir para a janela 1 a 10 |
| Ctrl+N / Ctrl+P | Janela seguinte / anterior |
| Ctrl+X | Alternar entre as duas últimas janelas ativas |
| Alt+→ / Alt+← | Próxima / janela anterior (se configurado) |
Configuração de redes e canais
O verdadeiro poder do Irssi está na configuração persistente: defines redes, servidores e canais uma vez, e ele conecta-se automaticamente da próxima vez que iniciares.
Adicionar uma rede e servidor com SSL:
O parâmetro -auto faz com que o servidor e o canal sejam conectados automaticamente ao iniciares o Irssi.
Autenticação via NickServ (método tradicional):
Autenticação via SASL (recomendado: mais seguro):
Nota: O SASL autentica-te antes de qualquer comando ser processado pelo servidor, ao contrário do /msg nickserv que pode falhar se a rede estiver lenta. Desde o Irssi 1.4.5, também há suporte para SASL SCRAM-SHA, ainda mais seguro.
Guardar configuração:
WIKI de comandos: core commands
Estes são os comandos base do Irssi: desde conectar a servidores até gerir janelas e scripts. Usa esta tabela como referência rápida.
| Comando | Descrição |
|---|---|
| /connect [rede] | Liga a uma rede ou servidor específico |
| /disconnect [rede] | Desliga de uma rede ou servidor |
| /join #canal | Entra num canal |
| /part #canal | Sai de um canal |
| /msg nick msg | Envia mensagem privada a um utilizador |
| /query nick | Inicia uma conversa privada (abre nova janela) |
| /unquery nick | Fecha a janela de conversa privada |
| /quit [msg] | Sai do Irssi (com mensagem opcional) |
| /server | Lista ou configura servidores |
| /network | Lista ou configura redes |
| /channel | Lista ou configura canais |
| /cycle #canal | Sai e volta a entrar num canal (útil para resetar) |
| /names #canal | Lista os utilizadores num canal |
| /whois nick | Mostra informação detalhada sobre um utilizador |
| /topic #canal | Vê ou altera o tópico de um canal |
| /help comando | Ajuda inline sobre qualquer comando |
| /version | Mostra a versão do Irssi |
| /set | Vê ou altera definições (settings) |
| /save | Guarda a configuração atual para disco |
| /layout save | Guarda o layout das janelas |
| /script load | Carrega um script Perl |
| /statusbar | Configura a barra de estado |
| /bind | Configura atalhos de teclado |
| /lastlog palavra | Pesquisa no histórico de scrollback |
| /scrollback / /sb | Navega e gere o histórico de scrollback |
| /window | Gere janelas (criar, fechar, dividir, etc.) |
| /hilight nick | Destaca mensagens de um nick (muda de cor/som) |
| /notice nick msg | Envia uma notice a um utilizador |
| /action acao | Envia uma ação / emote para o canal ou nick |
| /me acao | Envia uma ação / emote no canal atual |
WIKI de comandos: IRC commands (moderação)
Comandos para moderar canais, gerir utilizadores e controlar o teu ambiente IRC. Muitos requerem privilégios de operador (@) ou voz (+) no canal.
| Comando | Descrição |
|---|---|
| /op nick | Dá privilégios de operador a um utilizador |
| /deop nick | Remove privilégios de operador |
| /voice nick | Dá direito a falar (voz) num canal moderado |
| /devoice nick | Remove o direito a falar |
| /kick nick | Expulsa um utilizador do canal |
| /kickban nick | Expulsa e bane o utilizador ao mesmo tempo |
| /ban nick | Adiciona um ban a um utilizador no canal |
| /unban nick | Remove um ban do canal |
| /mode #canal +modo | Altera os modos do canal (ex: +m para moderado, +t para topic locked) |
| /invite nick #canal | Convida um utilizador para um canal |
| /away motivo | Marca-te como ausente (com motivo opcional) |
| /nick novo_nick | Altera o teu nickname |
| /who #canal | Mostra quem está no canal (com informação detalhada) |
| /list | Lista os canais disponíveis na rede atual |
| /dcc chat nick | Inicia uma conversa DCC direta (peer-to-peer) |
| /ctcp nick comando | Envia um pedido CTCP (ex: /ctcp nick version) |
| /ping nick | Mede a latência até ao utilizador |
| /notify nick | Notifica quando o utilizador ficar online/offline |
| /ignore nick | Ignora mensagens de um utilizador (client-side) |
| /silence nick | Ignora um utilizador no servidor (server-side ignore) |
Settings essenciais
O Irssi é altamente configurável através do comando /set. Aqui estão as settings mais úteis para o dia-a-dia, com valores recomendados:
| Setting | Descrição | Valor Default |
|---|---|---|
| nick | O teu nickname na rede | user |
| alternate_nick | Nick alternativo se o principal estiver ocupado | user_ |
| real_name | O teu "real name": visível no whois | user |
| user_name | Username (ident): usado para identificação no servidor | user |
| skip_motd | Omite a mensagem MOTD do servidor ao conectar | OFF |
| timestamps | Mostra timestamps nas mensagens | ON |
| autolog | Guarda logs automaticamente para ficheiro | OFF |
| autolog_path | Caminho e formato dos ficheiros de log | ~/irclogs/$tag/$0.log |
| autocreate_windows | Cria automaticamente uma janela por cada novo canal | ON |
| autoclose_windows | Fecha automaticamente janelas vazias (após sair do canal) | ON |
| use_status_window | Mensagens de estado do servidor vão para janela própria | ON |
| use_msgs_window | Mensagens privadas vão para janela de msgs em vez de janela ativa | OFF |
| window_auto_change | Muda automaticamente para janela com nova atividade | OFF |
| beep_msg_level | Níveis de mensagem que disparam beep (terminal bell) | NONE |
| completion_auto | Autocomplete automático de nicks (perigoso: usar com cuidado) | OFF |
| show_nickmode | Mostra o modo do nick ( @ para op, + para voice ) na lista | ON |
| hide_text_style | Esconde formatação IRC (bold, color, underline) | OFF |
| print_active_channel | Mostra o nome do canal ativo na linha de input | OFF |
| server_reconnect_time | Tempo (segundos) até tentar reconexão automática | 300s |
| lag_min_show | Lag mínimo (ms) para mostrar o indicador de lag | 100ms |
| autoclose_query | Fecha automaticamente janelas de query após inatividade (0 = OFF) | 0 (OFF) |
Para alterar uma setting, usa: /set setting_name valor. Exemplo:
Temas, scripts e personalização
O Irssi é completamente temável: cada mensagem pode ter a sua própria cor, estilo e formato.
Temas:
Os temas do Irssi são ficheiros de texto que defines onde quiseres, mas por convenção guardam-se em ~/.irssi/ ou em /usr/share/irssi/themes/. Para mudar de tema:
Podes encontrar dezenas de temas em themes.irssi.org: do clássico "dark" ao "solarized" e "nord".
Scripts Perl:
A comunidade do Irssi produziu centenas de scripts em Perl que estendem o cliente: desde notificações no desktop a advanced hilighting, pastebins, tracking de nicks, etc. O repositório oficial é o scripts.irssi.org.
Para carregar um script:
Para carregar automaticamente ao iniciar, coloca o script em ~/.irssi/scripts/autorun/ ou adiciona o comando /script load ao ficheiro ~/.irssi/startup.
O ficheiro ~/.irssi/startup é executado sempre que o Irssi arranca: útil para carregar scripts, definir aliases, ou aplicar settings temporárias:
Dicas e boas práticas
Ao longo de anos a usar Irssi, aprendi alguns truques que fazem toda a diferença. Aqui ficam:
1. Usa screen ou tmux para manter a sessão IRC sempre ativa
O Irssi não precisa de estar sempre visível. Abre uma sessão tmux ou screen, inicia o Irssi lá dentro, e quando fechares o terminal ele continua a correr em segundo plano. No dia seguinte, é só reatar:
2. Esconde joins, parts e quits
Se estás num canal movimentado, o ruído de joins/parts pode tornar o scrollback impossível de ler. Filtra esses eventos com:
3. Navega no histórico por hora
Queres ver o que se disse às 14:30? Usa o scrollback com hora específica:
4. Exporta logs do scrollback
Precisas de guardar uma conversa? Pesquisa no lastlog e exporta para ficheiro:
5. Ativa o autologging
Para registar automaticamente todas as mensagens para ficheiro:
6. Conhece o ficheiro de configuração
O ~/.irssi/config é o coração do Irssi. É um ficheiro em formato XML-like que podes editar manualmente quando precisas de fazer alterações em massa (mas usa sempre /save para evitar erros de sintaxe).
7. Usa um bouncer / proxy
Se estás sempre a mudar de máquina, configura um bouncer como ZNC. Ou usa o proxy embutido do Irssi:
8. Segurança: usa SSL sempre
Nunca conectes a um servidor IRC sem encriptação. Usa a porta 6697 (SSL/TLS) sempre que possível. Desde o Irssi 1.4.1, a verificação TLS está ativada por default, o que impede ataques man-in-the-middle.
9. Prefere SASL em vez de /msg nickserv
O SASL autentica-te antes de qualquer comando ser enviado, o que é mais seguro (não expõe a password no comando) e mais fiável (não depende de timings). Usa /network add -sasl_mechanism PLAIN ou SCRAM-SHA-256 (disponível desde o Irssi 1.4.5) sempre que a rede suportar.
Conclusão
O Irssi continua vivo e relevante em 2026. Leve, rápido, scriptável e funciona em qualquer lado: do Raspberry Pi ao servidor de produção, do macOS ao Windows via WSL. É a ferramenta perfeita para developers que vivem no terminal e precisam de um cliente IRC que não atrapalhe.
Com este guia, tens tudo para instalar, configurar e dominar o Irssi. Experimenta num projeto pessoal, explora os scripts da comunidade, e vais perceber porque é que 25 anos depois o Irssi continua a ser o cliente IRC de eleição para quem leva o terminal a sério.
Tens dúvidas, sugestões ou encontraste um erro? Deixa um comentário ou contribui para o guia no GitHub. O IRC também não morreu: encontra-me na LiberaChat ou na OFTC.
Comentários (0)
Nenhum comentário ainda. Seja o primeiro!
Deixar comentário