| Crates.io | soop |
| lib.rs | soop |
| version | 0.1.1 |
| created_at | 2025-10-26 09:09:48.847235+00 |
| updated_at | 2025-11-09 08:37:14.862537+00 |
| description | SSH cOnfig OPerator |
| homepage | |
| repository | https://github.com/currybab/soop |
| max_upload_size | |
| id | 1901113 |
| size | 45,720 |
A simple SSH config manager for the command line.
soop (SSH cOnfig OPerator) is a command-line tool that makes managing your SSH configurations easy and safe. Add, list, edit, and remove SSH hosts while preserving comments and formatting.
The name "soop" comes from the Korean word "숲" (forest). Just as trees grow and spread throughout a forest, your SSH hosts naturally accumulate and scatter across your config file over time. soop helps you navigate and tend to this forest of connections, keeping everything organized and accessible.
cargo install soop
git clone https://github.com/currybab/soop.git
cd soop
cargo build --release
The binary will be available at target/release/soop.
Coming soon.
soop add
Interactively prompts for host details and validates against existing hosts.
soop ls
Displays all configured hosts with their connection information:
myserver user@192.168.1.1
production admin@example.com:2222
testserver 10.0.0.1
# Interactive selection
soop connect
soop c # alias
soop ssh # alias
# Direct connection
soop connect myserver
# Interactive selection
soop edit
# Edit specific host
soop edit myserver
Opens your preferred editor (set via $EDITOR environment variable, defaults to vi). Validates changes and prevents duplicate host names.
# Interactive selection
soop remove
soop rm # alias
# Remove specific host
soop rm myserver
Prompts for confirmation before deletion.
soop operates on your SSH config file located at ~/.ssh/config.
Set your preferred editor:
export EDITOR=vim # or nano, emacs, etc.
This project is in active development. Currently, the codebase lacks comprehensive test coverage. Contributions to add unit tests and integration tests are highly encouraged and would be greatly appreciated.
MIT License - see LICENSE for details.
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
Areas where we especially need help:
Jun Park (@currybab)