a597ea52912293427bef24c3753309859a552a08
Hostkeeper
Cross-platform SSH/SFTP management tool with secure credential storage
Features
- Secure Credential Management — Store SSH credentials with proper file permissions (0600)
- SSH Connection — Connect to hosts via native SSH or Go SSH client
- Host Management — Add, list, connect, edit, delete hosts
- Export/Import — Backup and transfer credentials across devices
- TUI Interface — Interactive terminal user interface for host management
- Cross-Platform — Works on Linux, macOS, Windows, and Termux (Android)
- Fast CLI — Quick commands for power users
- Tag-based Organization — Categorize hosts with custom tags and groups
Quick Start
Installation
# Build from source
git clone https://git.tukangketik.id/swanadiva/HostKeeper.git
cd hostkeeper
make build
# Or install directly
go install git.tukangketik.id/swanadiva/hostkeeper/cmd/hostkeeper@latest
Usage
# Add a host (interactive)
hostkeeper add
# Or with flags
hostkeeper add myserver --host 192.168.1.10 --user admin --password mypass
# List all hosts
hostkeeper list
# Connect to host
hostkeeper connect myserver
# Edit host
hostkeeper edit myserver
# Delete host
hostkeeper delete myserver
# Launch TUI
hostkeeper tui
Core Commands
| Command | Description |
|---|---|
hostkeeper add [name] |
Add a new SSH host |
hostkeeper list |
List all saved hosts |
hostkeeper connect <name> |
Connect to a host |
hostkeeper edit <name> |
Edit a host configuration |
hostkeeper delete <name> |
Delete a host |
hostkeeper export <file> |
Export data to JSON file |
hostkeeper import <file> |
Import data from JSON file |
hostkeeper tui |
Launch TUI interface |
hostkeeper completion [shell] |
Generate shell completion |
hostkeeper version |
Print version info |
Installation
See Installation Guide for detailed instructions for all platforms.
Usage
See Usage Guide for detailed command examples.
Architecture
See Architecture Overview for technical details.
Security
- All credential files use
0600permissions (owner read/write only) - Passwords and keys are never logged or displayed in error messages
- Encrypted storage planned for Phase 2
Development
Prerequisites
- Go 1.21+
- Make (optional, for build automation)
Setup
git clone https://git.tukangketik.id/swanadiva/HostKeeper.git
cd hostkeeper
make deps
make build
Testing
# All tests
make test
# With coverage
make test-coverage
Build
# Current platform
make build
# All platforms
make release
Tech Stack
- Language: Go 1.21+
- CLI Framework: Cobra
- TUI Framework: Bubble Tea
- SSH Library: golang.org/x/crypto/ssh
Project Status
Project is in active development. See PROJECT_STATE.md for current progress.
License
MIT
Description
Languages
Go
46.2%
TypeScript
20.5%
HTML
19.6%
CSS
12%
JavaScript
1.1%
Other
0.6%