How 010228lxz/xzssh works
xzSSH is an interactive SSH configuration manager whose main workflow is to load a structured JSON configuration, validate and manage hosts, then generate OpenSSH configuration for real connections and related operations. The map includes documented search, import/sync, security, key, profile, history, tunnel, and transfer capabilities. Several command implementations are unsampled, so their documented roles are shown without inferring internal call chains; the CLI dispatcher and core parse/validate/generate layers have source support.
Main entry points: main.py CLI dispatcher · json_parser.py JSON parser · types.py Config model · diff.py Drift comparison
Components 22
CLI Experience
- CLI dispatcher
xzssh/cli/main.py - Interactive dashboard
xzssh/cli/commands/menu.py - Host management
xzssh/cli/commands/add.py - Search and listing
xzssh/cli/commands/search.py - Profiles and themes
xzssh/cli/profiles.py
Configuration Lifecycle
- JSON parser
xzssh/parser/json_parser.py - OpenSSH importer
xzssh/parser/openssh_parser.py - Config model
xzssh/model/types.py - Config validation
xzssh/validator/validate.py - OpenSSH generator
xzssh/generator/openssh.py - Drift comparison
xzssh/sync/diff.py - JSON source config
SSH Operations
- OpenSSH config
- Connect and health checks
xzssh/cli/commands/connect.py - Tunnels and transfers
xzssh/cli/tunnels.py - Key lifecycle
xzssh/cli/commands/key.py - Connection history
xzssh/cli/eventlog.py
Security And Profiles
- Config encryption
xzssh/crypto/envelope.py - Paths and permissions
xzssh/platform/paths.py
Other components
- SSH administrator
- GPG or age
- OpenSSH tools
Connections 35
- SSH administrator → CLI dispatcher: runs commands
- CLI dispatcher → Interactive dashboard: dispatches
- CLI dispatcher → Host management: dispatches
- CLI dispatcher → Search and listing: dispatches
- CLI dispatcher → Connect and health checks: dispatches
- CLI dispatcher → Profiles and themes: resolves profile
- CLI dispatcher → Tunnels and transfers: dispatches
- CLI dispatcher → Key lifecycle: dispatches
- CLI dispatcher → Connection history: dispatches
- CLI dispatcher → Config encryption: dispatches
- CLI dispatcher → Drift comparison: dispatches
- Host management → JSON parser: loads config
- Search and listing → JSON parser: loads config
- Connect and health checks → JSON parser: loads config
- JSON parser → JSON source config: reads and writes
- JSON parser → Config encryption: decrypts envelope
- JSON parser → Config model: builds model
- OpenSSH importer → OpenSSH config: reads for import
- OpenSSH importer → Config model: creates hosts
- Host management → Config validation: validates changes
- Config validation → Config model: checks fields
- Config validation → Paths and permissions: checks paths
- OpenSSH generator → Config model: renders model
- OpenSSH generator → OpenSSH config: writes config
- Drift comparison → OpenSSH importer: compares parsed hosts
- Drift comparison → Config model: compares JSON hosts
- Drift comparison → OpenSSH config: checks drift
- Connect and health checks → OpenSSH tools: starts connections
- Tunnels and transfers → OpenSSH tools: opens forwards
- Tunnels and transfers → OpenSSH tools: runs transfer tools
- Key lifecycle → OpenSSH tools: invokes key tools
- Connection history → JSON source config: stores opt-in log
- Config encryption → GPG or age: encrypts or decrypts
- Config encryption → JSON source config: protects source file
- Paths and permissions → JSON source config: secures permissions