mm is the muck/mush/mud/MU* equivalent of ii, the FIFO and filesystem based irc client.
Find a file
Renovate Bot 8ed1399340
All checks were successful
/ lint (push) Successful in 1m22s
/ test (push) Successful in 1m18s
chore(deps): update actions/setup-go action to v6 (#6)
Reviewed-on: #6
Co-authored-by: Renovate Bot <renovate@onlyhavecans.works>
Co-committed-by: Renovate Bot <renovate@onlyhavecans.works>
2025-09-04 15:26:07 -07:00
.forgejo/workflows chore(deps): update actions/setup-go action to v6 (#6) 2025-09-04 15:26:07 -07:00
.gitignore ci: inital 2024-02-16 12:42:54 -08:00
.goreleaser.yaml ci: goreleaser 2 2025-08-26 14:46:57 -07:00
CODEOWNERS ci: forgejo (#1) 2025-08-25 18:51:36 -07:00
go.mod refactor: rename package 2025-08-26 14:47:38 -07:00
LICENSE style: lint and support files 2024-02-16 11:24:50 -08:00
main.go style: lint and support files 2024-02-16 11:24:50 -08:00
README.md docs: clean up readme 2024-02-16 11:27:36 -08:00
renovate.json New Paths 2025-09-01 19:47:26 -07:00

mm

mm stands for Mu*Me

mm is the muck/mush/mud/Mu* equivalent of ii; the minimalist FIFO and filesystem-based IRC client.

This is a rewrite of the python version in go.

Install

Easy

  • Install Golang for your OS (brew install go for OS X)
  • go instal github.com/onlyhavecans/mm@latest

Easiest

  • Download binary for your OS from Releases
  • (Optional) rename from mm_<os> to mm
  • Place somewhere in your path

Usage

mm [--debug] [--nolog] [--ssl] [--insecure] <name> <server> <port>

When run it creates the ~/muck directory and a subdirectory based on the name

In this directory it creates an out file which has the output, and a FIFO in

write to in, get muck from out.

If your Mu* supports ssl you can use the --ssl flag. Disable strict checking with --insecure

When you disconnect the program quits and rotates out to a timestamped log. You can disable this with --nolog

Advanced usage tips

  • I wrote an vim plugin called mm.vim that uses vim as the input system. Check it out for more vim tips and usage.
  • Use screen or tmux to split your screen and then multitail to read out with all the coloring you need.
  • simple shell or perl scripts can be used to read from out and automate tasks
  • A simple shell script wrapper could set up your env and auto log you in
  • in fact, most all tips and tricks for ii will work for mm including now to handle multiple sessions with one screen