XYZircd is the network IRCd for XYZnet. It is based on
Solanum (itself from charybdis/ircd-ratbox lineage) with
XYZnet branding, cloaking style, and network-tuned defaults. Servers link with
the modern TS6 protocol and expose standard CAPABs for SASL,
account tags, and multi-prefix.
Connecting
- Primary:
irc.XYZnet.org (round-robin of all client servers)
- Servers:
hashbury.ca.us.XYZnet.org (hub, California US), terry.on.ca.XYZnet.org (Ontario CA)
- Plain: port
6667 (6665–6669 on the hub only)
- TLS: port
6697 (preferred) — client URI: ircs://irc.xyznet.org:6697
- Lobby:
#XYZ
After connect, register and identify with services (see Rustic below), or use
SASL if your client supports it.
User modes
| Mode | Name | Description | Who |
| +i | Invisible | Hidden from WHO/NAMES unless sharing a channel | Any (self) |
| +x | Cloak | Host cloak via ip_cloaking_4.0 (XYZ- / .XYZ.IP) | Any (self); often default |
| +w | Wallops | Receive WALLOPS broadcasts | Any (self) |
| +g | Caller ID | Only users on your /ACCEPT list may message or invite you | Any (self) |
| +G | Soft caller ID | Like +g, but users sharing a channel with you may still message you | Any (self) |
| +R | Registered only | Refuse private messages from unidentified users you have not accepted | Any (self) |
| +D | Deaf | Do not receive channel messages | Any (self) |
| +Q | No forward | Not affected by channel forwarding (+f) | Any (self) |
| +C | No CTCP | Block CTCPs other than ACTION | Any (self) |
| +I | Hide idle | Hide your WHOIS idle time (and you cannot see others') | Any (self) |
| +B | Bot | Marks you as a bot (IRCv3), shown in WHO/WHOIS; no flood exemption | Any (self) |
| +u | Unfiltered | Receive messages the server would otherwise filter by content | Any (self) |
| +Z | Secure | Connected via TLS — set automatically, cannot be changed | Server |
Typical connect defaults include +i (and often +x).
The operator user-mode reference is oper-only. Oper login
Channel modes
List modes (type A)
| Mode | Description |
| +b | Ban — nick!user@host |
| +e | Exempt — bypasses +b and +Z |
| +I | Invite exception — join a +i channel without an invite |
| +Z | Zipit (the old quiet) — can stay, cannot speak or change nick; halfops and up |
Parameter modes (type B / C)
| Mode | Description |
| +k | Channel key (password) |
| +f | Forward target when a join fails (+i, +j, +l, +r) |
| +j | Join throttle count:seconds (e.g. 5:10) |
| +l | User limit |
Flag modes (type D)
| Mode | Description |
| +i | Invite only (or match a +I) |
| +m | Moderated (need voice or higher to speak) |
| +n | No external messages |
| +t | Topic protection (halfops and up) |
| +s / +p | Secret (hidden from /whois, /list) / private (no /knock) |
| +r | Registered (identified) users only may join |
| +R | Only identified users may talk |
| +c | No colour — colours and formatting are stripped |
| +C | No CTCP (except ACTION) |
| +T | No NOTICEs to the channel |
| +S | TLS-only — only users connected via TLS may join |
| +z | Op moderated — messages blocked by +m, +b and +Z go to halfops and up |
| +g | Free invite — any member may INVITE |
| +F | Free target — anyone may forward (+f) to this channel |
| +Q | Disable forward — users cannot be forwarded here |
| +O | IRC operators only |
| +A | Server administrators only |
Membership prefixes
| Mode | Prefix | Role |
| +q | ~ | Founder (500) / co-owner (400) — set by services only |
| +a | & | Admin (ADMIN/SOP, 300) — protected from ops and halfops; only +q can give or take it |
| +o | @ | Operator (AOP, 50) |
| +h | % | Halfop (HOP, 30) — cannot kick, ban or de-status ops and up |
| +v | + | Voice (VOP, 10) |
Nobody can act on an equal or higher rank, except the founder. The old +q quiet is now +Z (zipit).
ISUPPORT: PREFIX=(qaohv)~&@%+ · CHANMODES=eIbZ,k,flj,ACFLMOPQRSTcgimnprstz · STATUSMSG=~&@%+
Host cloaking
Module ip_cloaking_4.0 provides user mode +x.
XYZnet cloaks use a distinctive brand style:
- Hostname cloaks: prefix style
XYZ-…
- IP cloaks: include
.XYZ.IP (or related .XYZ. forms)
Cloaking protects real hosts from casual exposure. Do not attempt to de-anonymize users for harassment — see the charter.
wiki · services
Rustic IRC Services
Rust · TS6 · PostgreSQL
Rustic is XYZnet’s services package: nickname and channel registration,
notes, vhosts, operator tools, weather, LastFM, and a browser portal at
services.XYZnet.org.
It links to XYZircd over TS6 as services.XYZnet.org.
Classic names (NickServ, ChanServ, …) may appear as reserved stubs
that point users to X / Y / Z and #XYZ. Prefer the real agents below.
Quick start
/msg Y REGISTER <password> [email]
/msg Y IDENTIFY <password>
# or: /IDENTIFY <password>
/msg X REGISTER #mychannel # you must be op
/join #XYZ
SASL PLAIN is supported for clients that authenticate before join.
X — Channel Services (ChanServ) only
X is ChanServ only. Nick commands are on Y (see below); the nickname table under X in older docs was wrong.
Registration
| Command | Description |
| REGISTER #<channel> | Register a channel (you must be op) |
Nickname commands
| Command | Description |
| IDENTIFY [nick] <password> | Identify (aliases: ID) |
| LOGOUT | Clear identification |
| STATUS [nick] | Identify status 0–3 |
| INFO <nick> | Nickname information |
| SET <option> <value> | PASSWORD, ENFORCE, EMAIL, ACTION, … |
| DROP <password> | Drop nick registration |
| GHOST / RECOVER / RELEASE | Reclaim or free a held nick |
| GROUP / UNGROUP / GLIST | Account nick grouping |
| NACCESS ADD|DEL|LIST | Auto-recognize hostmasks |
| ALIST | Channels you have access on |
| RESETPASS / CONFIRM | Password reset flow |
| TRANSFER #chan <nick> | Transfer channel founder |
ENFORCE: OFF | ON | QUICK | IMMED | WARN ·
ACTION: KILL | NICK
Channel commands
| Command | Description |
| DROP / INFO #channel | Drop registration / view info |
| ACCESS #chan ADD|DEL|LIST | Access list with levels |
| AKICK #chan … | Auto-kick list (ADD|DEL|LIST|ENFORCE|CLEAR) |
| OP / DEOP / HALFOP / VOICE … | Status modes |
| UP / DOWN / SYNC | Restore or strip / re-apply access |
| ENFORCE #chan <what> | SECUREOPS | RESTRICTED | REGONLY | BANS |
| CSET #chan <opt> [val] | MLOCK, ENTRYMSG, KEEPTOPIC, … |
| INVITE / KICK / BAN / TOPIC / GETKEY | Channel management helpers |
| SEEK #channel | Notify & invite access list |
Channel triggers (in-channel):
!op !deop !halfop !voice !kick !ban !unban !topic !invite !seek
Y — Nickname Services (NickServ) only · Z — Note Services (NoteServ) only
| Command | Description |
| /msg Y REGISTER / IDENTIFY / SET / DROP / GHOST / RECOVER / RELEASE / ALIST | Nickname commands on Y |
| /msg Z SEND <nick> <message> · LIST / READ / DEL | Notes on Z (NoteServ) |
| /msg InfoServ INFO [key] / NEWS | Network info & all news on InfoServ |
| /msg HostServ REQUEST <vhost> · ON / OFF | Vhosts on HostServ |
| /msg GroupServ GROUP / UNGROUP / GLIST | Nick grouping on GroupServ |
Notes require identification to Y first.
BotServ · XYZ · GameServ
BotServ is the channel bot (/msg BotServ HELP); GameServ runs the games; XYZ (Global) carries network-wide notices from the operators; news lives on InfoServ.
The operator services reference is oper-only. Oper login
- Weather — real-time weather via geocoding + forecast APIs; channel triggers such as
!w, !weather, !forecast.
- LastFM — now playing / recent / top tracks; channel trigger
!np.
Message the agents directly for HELP, or use configured channel triggers where enabled.
Nitter — X / Twitter bridge
The Nitter leaf (nitter.XYZnet.org) shows X/Twitter posts and profiles in channels
that turn it on. Where it is on, it answers x.com / twitter.com links
instead of Snarf, with a public Nitter link alongside. Type !x help in the channel.
| Command | Description |
| /msg BotServ NITTER #chan ON|OFF | Bring the Nitter leaf into the channel, or remove it |
| /msg BotServ NITTER #chan STATUS | On/off, whether the leaf is present, and the search state (anyone) |
| /msg BotServ NITTER #chan SEARCH REQUEST|CANCEL|STATUS | Ask for !x search in the channel, withdraw the request, or check it (3 requests per 10 minutes) |
| !x <x.com link | @handle | post id> | Show a post or profile |
| !x thread <x.com link | post id> | Unroll the author's thread (up to 5 posts; one per 2 minutes per channel) |
| !x follow @handle [noreplies] [norts] [media] | Post new posts from an account here (media = only posts with media); !x unfollow, !x follows |
| !x alert <keywords> | Keyword alerts (needs approved search); !x unalert, !x alerts |
| !x block <term> | Channel blocklist; !x unblock, !x blocks |
| !x search <query> | Recent posts, only in channels whose search request was approved |
| !x status · !x help | Leaf health / command list |
Turning Nitter on/off and search requests: the founder, users with FLAGS +P, the
NITTERCONFIG level (default 300, admin), or an IRCop. follow, alert and
block need +P / NITTERCONFIG; using !x is the NITTER level (default 0, everyone).
Founders can also do this on the portal under the channel's settings.
Search is reviewed by the network staff, and stays off until it is approved.
Web portal
The Rustic web UI is published at
https://services.xyznet.org
(proxied to the services HTTP listener). Use the same credentials as your
registered IRC nick. The site header Login / Members
buttons open this portal.
- Profile and account overview
- Channel and notes summary
- In-app service documentation
wiki · security
Proxy & DNSBL scanner
TS6 · Monitor · Python
scanner.XYZnet.org is a linked TS6 server that introduces
Monitor!Proxy@scanner.XYZnet.org. On each new client connection, Monitor checks the IP against:
- The EFnet DNSBL (
rbl.efnetrbl.org)
- XYZnet local ban list (oper-managed)
- XYZnet exempt list (oper-managed — allows EFnet-listed hosts when needed)
Listed hosts (unless exempt) receive a temporary network KLINE and disconnect.
Clean hosts are unaffected. Light open-port probes may be noted in
#scanner without automatic bans.
What users see
- Notices from Monitor explaining the security check
- Lobby force-join to
#XYZ still applies as usual
- Public policy lists at scanner.XYZnet.org (IPs / reasons only — no nicknames)
Public lists
| Tab | Contents |
| EFnet RBL | Unique IPs confirmed listed, with category & totals (searchable) |
| Local bans | Oper-added hosts/IPs and reasons |
| Exempts | Hosts allowed despite EFnet listing |
Connection scan logs (nicks, user hosts) are not published on the website.
The Monitor oper command reference is oper-only. Oper login
Open scanner.XYZnet.org →