Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>SFTP Remote DeployNew to Visual Studio Code? Get it now.
SFTP Remote Deploy

SFTP Remote Deploy

Preview

Mizoguchi Yuhei

|
3 installs
| (0) | Free
Better SFTP/FTP deploy experience for VS Code — global server management, status bar switcher, right-click upload, GUI settings.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

SFTP Remote Deploy

Note: この拡張機能は現在プレリリース版(v0.x)です。機能や設定の仕様は今後のバージョンで変更される場合があります。

VS Code / Cursor で SFTP・FTP ファイルをサーバーへ即アップロード。
右クリック、ステータスバークリックで、フロントエンド開発・WordPress・静的サイトのデプロイ作業を高速化します。


主な機能

機能 説明
右クリックアップロード エクスプローラーやエディタタブで右クリック → アップロード
保存時の自動アップロード (Upload on Save) Cmd+S / Ctrl+S でファイルを保存すると同時にサーバーへ転送
ステータスバー サーバー切替 ワークスペースごとにアクティブサーバーをクリックで切替
GUI 設定パネル 接続設定・マッピングをフォームで管理
Remote Explorer サーバーのファイルツリーをサイドバーで参照・操作
デプロイ済みバージョンと比較 ローカルファイルとサーバー上のファイルを diff で確認
転送ログ アップロード履歴を一覧表示(クリックで詳細)
フォルダ一括アップロード ディレクトリごとまとめて転送
SFTP / FTP / FTPS 対応 SSH鍵・パスワード・SSHエージェント・プロキシも対応
AI エージェント連携 Cursor 等の AI エージェントが scp/rsync でデプロイ(オプトイン)

クイックスタート

1. サーバーを追加する

  1. ステータスバーの ☁ No Server をクリック
  2. + Add New Server… → 設定パネルが開く
  3. Connection タブでホスト・ポート・ユーザー名・認証情報を入力
  4. 接続テスト で接続確認 → 保存

2. マッピングを設定する

Mapping タブでローカルフォルダ ↔ リモートフォルダの対応を登録します。
1サーバーにつき1マッピングです。複数のリモートパスへ転送したい場合はサーバーを複製してください。

項目 例
Local Path themes/my-theme(ワークスペースルートからの相対パス)
Remote Path /home/user/public_html/wp-content/themes/my-theme

ヒント: Connection タブで「リモートルートパス」を設定すると、Mapping タブの Remote Path に自動反映されます。手動で別のパスを入力している場合は上書きされません。

3. ファイルをアップロードする

  • 右クリック → Upload to Active Server
  • Cmd+S / Ctrl+S → Upload on Save が ON のとき自動転送(ステータスバーの Auto アイコンで切替)
  • コマンドパレット → SFTP Remote Deploy: Upload to Active Server

Upload on Save の切り替え

ステータスバー右側の Auto アイコンをクリックするだけで ON/OFF を切り替えられます。

  • ☁ Auto — ON(保存時に自動転送)
  • ⊘ Auto — OFF(手動のみ)

設定パネルの Connection タブからサーバーごとに個別設定することもできます。


Remote Explorer

サイドバーの REMOTE EXPLORER パネルでサーバー上のファイルツリーを参照・操作できます。

操作 方法
ファイルをダウンロード ファイルをクリック
ファイルを削除 / リネーム 右クリック → 削除 / リネーム
新規フォルダー作成 右クリック → 新規フォルダー
新規ファイル作成 右クリック → 新規ファイル
リモートパスをコピー 右クリック → リモートパスをコピー
サーバーを複製 / 削除 設定パネルの右クリックメニュー

対応プロトコル・認証方式

プロトコル 認証方式
SFTP パスワード / SSH 秘密鍵 / SSH エージェント ($SSH_AUTH_SOCK)
FTP パスワード
FTPS Explicit (STARTTLS) / Implicit (ポート 990)

プロキシ (SOCKS5 / HTTP) 経由の接続もサポートします。


プランと制限

Free Pro
サーバー数 3 無制限
同時転送数 1 設定可
全機能 ✅ ✅

Pro へのアップグレード: コマンドパレット → SFTP Remote Deploy: Enter License Key


よくある質問

Q. パスワードはどこに保存されますか?
A. エディターの SecretStorage(macOS Keychain / Windows Credential Manager / Linux Secret Service)に保存されます。設定ファイルに平文で書き出されることはありません。

Q. サーバー設定は他のプロジェクトでも使えますか?
A. はい。サーバー設定はグローバルに保存されるため、どのワークスペースからでも同じサーバー一覧を参照できます。アクティブサーバーはワークスペースごとに個別管理されます。

Q. sftp.json(他の SFTP 拡張の設定ファイル)を移行できますか?
A. コマンドパレット → SFTP Remote Deploy: Import sftp.json で一括インポートできます。

Q. 同一サーバーで複数のリモートパスへ転送したい
A. 設定パネルで対象サーバーを右クリック → 「複製」でサーバー設定をコピーし、それぞれ別のリモートパスを指定してください。

Q. 「リモートルートパス」と「リモートパス(マッピング)」の違いは?
A. それぞれ役割が異なります。

設定 場所 用途
リモートルートパス 接続設定タブ Remote Explorer のツリー表示の起点
リモートパス パスマッピングタブ ファイルアップロード先のディレクトリ

よくあるパターン:

パターン リモートルートパス リモートパス(マッピング) 説明
基本 /home/user /home/user/public_html/themes/my-theme ルートは Explorer 用、マッピングはデプロイ先
同一パス /home/user/public_html /home/user/public_html Explorer 起点 = デプロイ先
ルートのみ /home/user (空) ルートを設定するとマッピングに自動反映
マッピングのみ (空) /var/www/html/my-site Remote Explorer はサーバーの / から表示

ヒント: 「リモートルートパス」を変更すると「リモートパス」も自動で追従しますが、手動で別の値を設定済みの場合は上書きされません。

Q. アップロードしたがサイトに反映されない
A. PHP OPcache や CDN キャッシュが原因の場合があります。Remote Explorer でファイルをダウンロードしてローカルと比較し、転送が正しく行われたか確認してください。


AI エージェント連携(オプション)

Cursor 等の AI エージェントが scp / rsync でデプロイできるよう、サーバー接続情報をワークスペース内に保存する機能です。
全設定はデフォルト OFF — AI エージェントを使わないユーザーには一切影響しません。

設定

settings.json で段階的に有効化できます。

設定 デフォルト 効果
agent.enabled false マスタースイッチ。OFF のとき何も保存しない
agent.allowRead false 基本情報(ホスト・ポート・ユーザー名・マッピング)を保存
agent.allowMutating false SSH 秘密鍵のパスも含めて保存(デプロイ実行に必要)
{
  "sftpRemoteDeploy.agent.enabled": true,
  "sftpRemoteDeploy.agent.allowRead": true,
  "sftpRemoteDeploy.agent.allowMutating": true
}

対象

  • SSH 鍵認証の SFTP のみ対応。パスワード認証・FTP / FTPS は対象外です。
  • 対象サーバーの情報が .cursor/sftp-remote-deploy-agent.json に保存されます。

AI エージェントの使い方

サーバー接続情報は .cursor/sftp-remote-deploy-agent.json に保存されます。
AI エージェントにデプロイを依頼するときは、このファイルの場所を伝えてください。

プロンプト例:

.cursor/sftp-remote-deploy-agent.json を読んで、変更したファイルをサーバーにデプロイして。

.cursor/sftp-remote-deploy-agent.json の設定で src/index.php をアップロードして。

エージェントは設定ファイルを読み、以下のようなコマンドを構築・実行します。

scp -i ~/.ssh/id_rsa -P 22 ./src/index.php deploy@example.com:/var/www/html/index.php
rsync -avz -e "ssh -i ~/.ssh/id_rsa -p 22" \
  --exclude='node_modules/**' --exclude='.git/**' \
  ./src/ deploy@example.com:/var/www/html/

ヒント: プロジェクトの .cursorrules や .cursor/rules/ にデプロイ手順を記載しておくと、毎回ファイルパスを伝えなくても AI エージェントが自動的に参照します。

事前準備: known_hosts の登録

AI エージェントが scp / rsync を実行する際、サーバーが ~/.ssh/known_hosts に未登録だとホストキー検証エラーで失敗します。
事前にターミナルから一度 SSH 接続して、ホストキーを登録しておいてください。

ssh -p 22 deploy@example.com
# "Are you sure you want to continue connecting?" → yes で登録される

注意: AI エージェントが -o StrictHostKeyChecking=accept-new 等のオプションを自動付与してホストキー検証を回避する場合があります。中間者攻撃のリスクがあるため、上記の手動登録を推奨します。

セキュリティに関する注意

  • allowRead のみの場合、秘密鍵のパスは保存されません。ただし SSH エージェントが動作中 の環境では、ホスト・ユーザー名だけでデプロイ可能な場合があります。
  • allowMutating を有効にすると秘密鍵のパスが含まれます。有効化時に確認ダイアログが表示されます。
  • 設定ファイルは初回保存時に .gitignore へ自動追記されますが、ワークスペースに保存された時点で拡張機能の管理外 となります。
  • agent.enabled または agent.allowRead を OFF にすると、設定ファイルの削除を確認するダイアログが表示されます。
  • 手動削除: .cursor/sftp-remote-deploy-agent.json をエクスプローラーやターミナルから削除してください。

セキュリティと免責事項

  • 本拡張機能はサーバーの認証情報(パスワード・SSH 鍵など)を扱います。認証情報はエディターの SecretStorage(macOS Keychain / Windows Credential Manager 等)に保存されますが、利用環境のセキュリティ管理はユーザーご自身の責任で行ってください。
  • リモートサーバーへのファイル転送・削除は元に戻せない場合があります。本番環境への操作は十分にご注意ください。
  • 本ソフトウェアの使用によって生じたデータ損失、セキュリティインシデント、その他いかなる損害についても、作者は一切の責任を負いません。
  • 詳細は MIT License をご確認ください。

ライセンス

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft