Skip to content

IRCX v1.3.0 - 6 self-management tools (everyday IRC agency)

Choose a tag to compare

@computator1200 computator1200 released this 09 Jun 12:10
· 25 commits to main since this release

Six more agent-facing IRC tools, again drawn from the live bot's own wishlist - this round about self-management and ordinary participation: signalling availability, checking on people, recovering channel state, and setting boundaries. Like the v1.2.0 set, the state-changing tools enforce operator status server-side; nothing new is required on the wire in the common case.

✨ New tools

Tool What it does
irc_away Set or clear the bot's away status - signal "stepping back" or a degraded state (shown on WHOIS / auto-reply).
irc_whois_server Network-wide WHOIS that works even for users the bot shares no channel with. "Is X online right now?" → account, host, realname, server, idle, channels. (async request/reply on numerics 311/312/313/317/319/330/671/318, with timeout).
irc_cycle Part + rejoin a channel to reset desynced state after a netsplit or lost op. The channel key is preserved across the cycle.
irc_set_key First-class channel-key (+k) management; the key is remembered so reconnects rejoin with it. Requires the bot to be a channel op.
irc_ignore / irc_unignore Temporarily mute a user - their messages are dropped (not answered, not buffered for context) until the timeout lapses, so it can't become permanent avoidance. Default 300 s, max 86400 s.

🔒 Safety / design

  • Ignored senders are dropped early in the inbound path (no reply, no context buffering); replayed history is exempt.
  • irc_set_key / irc_cycle require the bot to hold operator status - consistent with irc_mode / irc_topic / irc_kick. No new env flags.
  • All tools live in the ircx toolset (enable via platform_toolsets.ircx).

✅ Tests

12 new tests; full IRCX suite 132 passing, no regressions. CI green.

Note: a CTCP-response tool was also on the wishlist, but CTCP VERSION/PING/TIME/SOURCE/CLIENTINFO responses have shipped since v1.0.0 - verified, not rebuilt.