LinuxCommandLibrary

irssi

Connect and chat on Internet Relay Chat

TLDR

Open Irssi and connect to a server with a nickname

$ irssi [[-n|--nick]] [nickname] [[-c|--connect]] [irc.example.com]
copy

Open Irssi and connect with a specific server on a given port
$ irssi [[-c|--connect]] [irc.example.com] [[-p|--port]] [port]
copy

Display help
$ irssi [[-?|--help]]
copy

Join a channel
$ /join [#channelname]
copy

Change active window (starts at 1)
$ /win [window_number]
copy

Exit the application cleanly and quitting any server(s)
$ /quit
copy

SYNOPSIS

irssi [options]
irssi [--help | --version]

PARAMETERS

-c file, --config file
    Specifies an alternative configuration file instead of the default (~/.irssi/config).

-h dir, --home dir
    Sets the home directory for Irssi, where it looks for its configuration and data files.

-f, --fork
    Forks Irssi into the background immediately after starting, detaching it from the current terminal.

-v, --version
    Displays the Irssi version information and exits.

--connect server
    Connects to the specified IRC server immediately upon startup.

--session name
    Connects to or manages an existing Irssi proxy session, allowing you to re-attach to a running instance.

DESCRIPTION

Irssi is a full-featured, modular Internet Relay Chat (IRC) client designed for the terminal. It provides a powerful and highly customizable interface for connecting to IRC networks, joining channels, and communicating with other users, all from the command line. Unlike graphical IRC clients, Irssi is lightweight and efficient, making it an ideal choice for users who prefer text-mode applications, work on remote servers, or want to maintain persistent IRC sessions using terminal multiplexers like screen or tmux.

Key features include extensive configurability, support for multiple server connections, SSL encryption for secure communication, powerful logging capabilities, auto-reconnect, and a robust plugin architecture primarily based on Perl scripting. This extensibility allows users to add new commands, customize behavior, integrate with other tools, and tailor Irssi precisely to their needs, ranging from simple notification systems to complex IRC bots. Its command-line nature also makes it highly scriptable and suitable for automated tasks.

CAVEATS

Irssi operates exclusively in a text-mode environment, meaning it does not offer a graphical user interface (GUI). Users accustomed to point-and-click interfaces may find its command-line driven interaction initially challenging. While powerful, its extensive configuration options and scripting capabilities can present a steep learning curve for new users. Maintaining a persistent IRC connection typically requires the use of terminal multiplexers like screen or tmux on a remote server, or careful management of your local machine's uptime, as closing the terminal window will terminate the Irssi process unless forked.

PERL SCRIPTING

Irssi's extensibility largely stems from its support for Perl scripts. Users can write or download scripts to add new commands, customize the UI, automate tasks, integrate with external services, or even create full-fledged bots within Irssi. A vast collection of community-contributed scripts is available.

CONFIGURATION

Configuration is handled via a plain text file, typically `~/.irssi/config`. This file allows for meticulous control over almost every aspect of the client, from server details, network settings, and channel auto-joins to themes, aliases, and keybindings. Changes can often be reloaded without restarting the client.

IRSSI PROXY

Irssi includes an experimental `irssi-proxy` feature which allows for detached sessions. You can run `irssi` on a server, connect to it via `irssi-proxy`, and then disconnect without losing your IRC session. This is an alternative to using `screen` or `tmux` for persistence.

HISTORY

Irssi was originally created by Timo Sirainen (known as `tss` on IRC) and first released in 1999. It quickly gained popularity among power users and system administrators due to its lightweight nature, robust feature set, and especially its highly extensible Perl scripting capabilities. This focus on modularity and user customization has been a defining characteristic throughout its development, allowing a vibrant community to contribute scripts and themes. Over the years, Irssi has consistently been updated and maintained, retaining its position as one of the most widely used and respected terminal-based IRC clients in the Linux and Unix-like ecosystems.

SEE ALSO

weechat(1), screen(1), tmux(1), hexchat(1)

Copied to clipboard