🚧 Work in Progress! 🚧
This project was greatly influenced by shazow/ssh-chat.
- Public and private one-on-one conversations
- Color themes
- Built-in chat commands
- Emacs-style key bindings
- Command history
- Configurable motd (message of the day)
- Automatically detect and handle idle users
- Option to allow connections from authorized users only
- Messaging rate-limit to prevent spam
- Special commands for operators (
/kick
,/ban
,/mute
, etc.)
- CLI for easy setup
- CI/CD (optional)
- Unit testing (optional)
- Benches and performance improvements (optional)
-
When the prompt text is long enough to wrap to the next line(s), the cursor may not behave as expected.
-
When the prompt contains emoji or other Unicode characters, the cursor may not behave as expected.
SSH Chat: Real-time communication over SSH
Usage: ssh-chat [OPTIONS]
Options:
--port <PORT> Port to listen on [default: 2222]
-i, --identity <KEY> Private key to identify server with. Defaults to a temporary ed25519 key
--oplist <FILE> Optional file of public keys who are operators
--whitelist <FILE> Optional file of public keys who are allowed to connect
--motd <FILE> Optional file with a message of the day or welcome message
--log <FILE> Write chat log to this file
-d, --debug... Turn debugging information on
-h, --help Print help
-V, --version Print version