feat: add IRC channel support

Add comprehensive IRC over TLS channel implementation with:
- TLS support with optional certificate verification
- SASL PLAIN authentication (IRCv3)
- NickServ IDENTIFY authentication
- Server password support (for bouncers like ZNC)
- Channel and private message (DM) support
- Message splitting for IRC 512-byte line limit
- UTF-8 safe splitting at character boundaries
- Case-insensitive nickname allowlist
- IRC style prefix for LLM responses (plain text only)
- Configurable via TOML or onboard wizard

All 959 tests passing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Argenis 2026-02-15 10:00:15 -05:00 committed by GitHub
parent ef00cc9a66
commit b208cc940e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 1226 additions and 2 deletions

1002
src/channels/irc.rs Normal file

File diff suppressed because it is too large Load diff