Server Manager VSCode Extension
A powerful VSCode extension for managing remote servers with SSH terminal integration and advanced file management capabilities, designed to streamline your server administration tasks.
Features
🖥️ Server Management
- Server List Management: Organize your servers in a convenient TreeView panel
- SSH Terminal Integration: Connect to servers with one-click SSH terminal sessions
- Visual Connection Status: See server connection status at a glance
- Easy Server Configuration: Add, edit, and delete server configurations
- Secure Authentication: Support for password and private key authentication
📁 Advanced File Management
- File Explorer: Browse remote files with an intuitive tree view
- File Upload/Download: Upload multiple files via drag & drop or download individual files
- File Operations: Create folders, rename, copy, paste, and delete files/folders
- Cross-Server Operations: Copy and paste files between different servers
- Online File Editing: Edit remote files directly in VS Code with syntax highlighting
- File Search: Search for text within files across directories with advanced options
- Permission Management: View and modify file/folder permissions
- Terminal Integration: Open SSH terminal in any directory with right-click menu
🔍 Search Capabilities
- Full-Text Search: Search for text content within files
- Advanced Filters: Include/exclude file patterns, case sensitivity, whole word matching
- Search Results: View search results with line numbers and context
- Quick Navigation: Click search results to open files at specific lines
🛠️ Development Features
- Syntax Highlighting: Full Monaco Editor integration for file editing
- Auto-Save: Save files with Ctrl+S keyboard shortcut
- File Type Recognition: Automatic language detection based on file extensions
- Modern UI: VS Code theme integration with responsive design
Getting Started
Installation
- Open the Extensions view in VSCode (
Ctrl+Shift+X )
- Search for "Server Manager"
- Click Install
Usage
- View Server Manager Panel: The Server Manager panel will appear in the Explorer sidebar
- Add a Server: Click the "+" icon in the Server Manager panel
- Enter server details in the format:
name,host,port,username
- Example:
MyServer,192.168.1.100,22,admin
- Optionally enter a password when prompted
- Connect to Server: Click on any server in the list to open an SSH terminal
- Manage Servers: Right-click on servers to edit or delete them
Quick Start Guide
1. Setup Your First Server
- Click the Server Manager icon in the Activity Bar (left sidebar)
- Use the "Server Configuration" panel at the top to add a new server
- Fill in your server details:
- Name: A friendly name for your server
- Host: IP address or hostname
- Port: SSH port (usually 22)
- Username: Your SSH username
- Password/Private Key: Authentication method
- Click "Save Server" to add it to your server list
2. Connect and Explore
- In the "Servers" list, click the "Connect SSH" button next to your server
- Once connected, the File Explorer will become available
- Browse files and folders in the tree view
- Upload files by dragging and dropping or using the upload button
3. Advanced File Operations
- Edit Files: Right-click any file and select "Edit File" for online editing
- Search: Use the search button in the File Explorer to find text within files
- Permissions: Right-click files/folders and select "Change Permissions"
- Terminal: Right-click folders and select "Open Terminal Here"
- Cross-Server Copy: Copy files from one server and paste to another
4. File Editor Features
- Syntax Highlighting: Automatic language detection
- Save with Ctrl+S: Quick save functionality
- Monaco Editor: Full VS Code editor experience
- File Navigation: Jump to specific lines from search results
5. Permission Management
- Visual Editor: Easy checkbox interface for permissions
- Octal Mode: Direct octal input (755, 644, etc.)
- Common Presets: Quick buttons for common permission sets
- Real-time Preview: See permission string as you edit
Commands
Server Management
Server Manager: Add Server - Add a new server configuration
Server Manager: Refresh - Refresh the server list
Server Manager: Connect SSH - Connect to a server via SSH
Server Manager: Edit Server - Edit server configuration
Server Manager: Delete Server - Remove a server from the list
File Management
Server Manager: Upload File - Upload files to the remote server
Server Manager: Download File - Download files from the remote server
Server Manager: Create Folder - Create a new folder on the remote server
Server Manager: Delete File/Folder - Delete files or folders
Server Manager: Copy/Paste - Copy and paste files/folders (including cross-server)
Server Manager: Rename - Rename files or folders
Server Manager: Edit File - Open file in online editor
Server Manager: Search Files - Search for text within files
Server Manager: Change Permissions - Modify file/folder permissions
Server Manager: Open Terminal Here - Open SSH terminal in the current directory
Requirements
- VSCode 1.101.0 or higher
- Network access to your remote servers
- SSH access to target servers
Extension Settings
This extension contributes the following settings:
- Server configurations are stored in VSCode's workspace settings
Known Issues
- Password authentication requires manual input for each connection
- Private key authentication requires absolute file paths
Contributing
This extension is based on the original Electron application for server management.
Contributions are welcome! Please feel free to submit issues and enhancement requests.
Release Notes
0.0.1
Initial release of Server Manager VSCode Extension featuring:
- Server Management: Add, edit, delete, and connect to remote servers
- SSH Terminal Integration: One-click SSH terminal access
- Advanced File Management: Upload, download, copy, paste, rename, delete files and folders
- Online File Editor: Edit remote files with syntax highlighting and Monaco Editor
- File Search: Search for text within files with advanced filtering options
- Permission Management: Visual permission editor with octal and checkbox modes
- Cross-Server Operations: Copy files between different servers
- Terminal Integration: Open SSH terminal in any directory
- TreeView Interface: Intuitive file and server browsing
Interface Layout
When you open the Server Manager extension, you'll see three main panels:
1. Server Configuration (Top Panel)
- Purpose: Add and configure new servers
- Features: Form-based server setup with validation
- Usage: Fill in server details and click "Save Server"
2. Servers (Middle Panel)
- Purpose: Manage and connect to existing servers
- Features: Server list with connection status
- Actions: Connect SSH, Edit, Delete servers
3. File Explorer (Bottom Panel)
- Purpose: Browse and manage remote files
- Visibility: Only appears when connected to a server
- Features: Upload, download, edit files and folders
Enjoy managing your servers with ease!
| |