user 86832b8fe5 feat: stealth connect with random identity and probation window
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>
2026-02-19 18:05:54 +01:00

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
No description provided
Readme 403 KiB
Languages
Python 99.6%
Makefile 0.3%
Dockerfile 0.1%