86832b8fe54f0cb3de4c46ba4d57c592d2a61ed9
Register with a fully random nick, user, and realname (no fixed pattern) to avoid fingerprinting. Enter a 15s probation period after registration -- if the server k-lines, reconnect with a fresh identity. Only after surviving probation: switch to the configured nick and join channels. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
bouncer
IRC bouncer with SOCKS5 proxy support and persistent message backlog.
Features
- Connect to multiple IRC networks simultaneously
- All outbound connections routed through SOCKS5 proxy
- Persistent message backlog (SQLite) with replay on reconnect
- Multiple clients can attach to the same network session
- Password authentication
- TLS support for IRC server connections
- Automatic reconnection with exponential backoff
- Nick collision handling
Quick Start
# Clone and install
cd ~/git/bouncer
make dev
# Copy and edit config
cp config/bouncer.example.toml config/bouncer.toml
$EDITOR config/bouncer.toml
# Run
bouncer -c config/bouncer.toml -v
Connect
From your IRC client, connect to 127.0.0.1:6667 with:
PASS networkname:yourpassword
Where networkname matches a [networks.NAME] section in your config.
Configuration
See config/bouncer.example.toml for a full example.
Documentation
| Document | Description |
|---|---|
| docs/INSTALL.md | Prerequisites and setup |
| docs/USAGE.md | Comprehensive guide |
| docs/CHEATSHEET.md | Quick reference |
| docs/DEBUG.md | Troubleshooting |
Development
make dev # Install with dev deps
make test # Run tests
make lint # Run linter
make fmt # Format code
License
MIT
Description
Languages
Python
99.6%
Makefile
0.3%
Dockerfile
0.1%