Skip to content
a way to do irc over ssh; you need server support, like from spikyirc
Emacs Lisp
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This is an extension for rcirc, the Emacs IRC client, to allow it to establish IRC connections over SSH sessions.

SpikyIRC is an IRCd that sits behind SSH. You can either connect directly to the IRC there via SSH or connect with SSH and port forward to the local IRCd.

So this is an extension for rcirc that automates that for Emacs.

To use this install from marmalade:

M-x package-install rcirc-ssh

Bootstrap the rcirc-ssh service:

M-x rcirc-ssh-bootstrap

and then configure the irc servers that sit behind ssh:

M-x customize-variable rcirc-ssh-servers

Here's the customize screen:

Hide Rcirc Ssh Servers:
INS DEL String:
    State : SAVED and set.
   List of rcirc servers that require an SSH connection first. Hide   
   A server in this list will have the connection to it made through
   an SSH session proxy.  The ssh connection is made with a port
   forward to the relevant port (using a randomized local port) and
   then the rcirc connection is made to that.
Groups: Rcirc

Then connect to your IRC server:

C-u M-x rcirc
IRC Server:
IRC Port: 6667
IRC Nick: me
IRC Username: me
IRC Password: *****
IRC Channels: #myteam

Using straight M-x rcirc will connect to all the servers you have in your rcirc-server-alist and will also do the SSH establishment first.

If you want to kill the SSH session you can with:

M-x rcirc-ssh-kill

completion will help you find the right one.

One final command lists the current SSH sessions for rcirc:

M-x rcirc-ssh-list

You can't do anything with them yet, having a mode that allows interactive management (delete mainly) is the next thing.

You can’t perform that action at this time.