Overview Version History Q & A Rating & Review
FTP/SFTP VS Code Extension
A Visual Studio Code extension for managing remote files over FTP or SFTP .
It allows you to browse remote servers , upload/download files , copy, rename, delete , and change file permissions directly from VS Code.
Features
Installation
Clone this repository:
git clone https://github.com/quocdoan419/vndes-file-manager.git
cd vndes-file-manager
Open the folder in Visual Studio Code.
Install dependencies:
npm install
Compile TypeScript:
npm run compile
Press F5
in VS Code to launch the extension in a new Extension Development Host window.
Usage
Adding a Connection
Open the FTP/SFTP view in the Activity Bar.
Click Add Connection .
Fill in the required fields:
ID (unique name)
Type : FTP or SFTP
Host , Port
Username , Password
Root path (optional)
Click Save .
Editing a Connection
Right-click a connection in TreeView.
Click the Edit icon (pencil).
Modify details and click Save .
Removing a Connection
Right-click a connection.
Click the Remove icon (trash).
Confirm Yes or No .
Upload Files
Right-click a folder in TreeView.
Select Upload File .
Choose one or multiple files from your computer.
The extension automatically handles duplicate file names.
Copy File
Right-click a file.
Click Copy File .
The file is duplicated in the same folder, automatically renaming if needed (-copy
, -copy-1
, ...).
Chmod
Right-click a file or folder.
Click Chmod .
Enter a 3-digit permission code (e.g., 644
, 755
) in the popup.
Permissions are applied on the server.
Open File
Double-click a file in TreeView.
It will download and open in VS Code editor.
Changes are automatically uploaded on save.
Action
Icon/Command
Context
Edit Connection
✏️ / ftpSsh.editConnection
connection (TreeView)
Remove Connection
🗑 / ftpSsh.removeConnection
connection (TreeView)
Upload File
📤 / ftpSsh.uploadFile
folder (TreeView)
Copy File
📄 / ftpSsh.copyFile
file (TreeView)
Chmod
🔧 / ftpSsh.chmod
file/folder (TreeView)
Open File
↗️ / ftpSsh.openFile
file (TreeView)
Settings
globalState : Stores connection IDs.
Secrets : Stores connection details securely.
Temporary storage : Downloads files to globalStorageUri
for editing.
Development
npm run compile
→ compile TypeScript to JavaScript.
F5
→ run in Extension Development Host.
src/
contains main extension code:
connectionManager.ts
→ manage connections.
treeView.ts
→ TreeView and TreeItem.
fileEditing.ts
→ upload/download logic.
extension.ts
→ register commands and events.
License
MIT License
Notes
FTP servers may not support chmod
. The extension uses SITE CHMOD
for FTP.
Multi-file upload is supported. Duplicate file names are automatically renamed.
Works on Windows, macOS, and Linux with VS Code 1.70+.