Skip to content

Conversation

@alwoodm
Copy link
Owner

@alwoodm alwoodm commented Dec 8, 2025

Summary

This PR introduces a comprehensive interactive menu system to My-SSH, making the CLI more intuitive and user-friendly. Users can now navigate through a global main menu and dedicated submenus for host and user management without leaving the application.

Key Features

🎯 Global Main Menu

  • Running myssh without arguments launches an interactive main menu
  • Quick access to Connect, Host Management, and User Management
  • Continuous loop design - no need to restart the command

📋 Interactive Submenus

  • myssh host (alias: hst): Host management menu with List, Add, Edit, Delete options
  • myssh user (alias: usr): User management menu with Add and Delete options
  • Smart navigation with "Back" buttons that return to parent menus
  • "Exit" option properly terminates at the top level

⚡ Command Aliases

Faster typing with short aliases:

  • connconnect
  • hsthost
  • usruser

🚀 Enhanced CLI Options

  • --force flag: Added to host:delete and user:delete for non-interactive deletion
    • Example: myssh host:delete production --force
    • Useful for scripts and automation
  • Improved help text: All command signatures now include clear, descriptive argument and option documentation

🔄 Navigation Improvements

  • Menus loop continuously instead of exiting after each action
  • "Back" option in submenus returns to parent menu
  • Proper exit flow prevents accidental application closure

@alwoodm alwoodm merged commit d5bc09a into main Dec 8, 2025
1 check passed
@alwoodm alwoodm deleted the interactive-menus-and-improvements branch December 8, 2025 13:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants