Inquirer78-year-old Piston member hospitalized while leading transport strikePunchMorning recap: Workers threaten October strike, Igbo traders urged to move beyond Chinese competition, Obi praised for supporting El-Rufai, other top storiesCNN Türkİsmail Kartal'dan yeni düzen: Fenerbahçe'de beklenen isim Marco AsensioESPNTransfer rumors, news: USMNT defender Richards to move to Inter?Bollywood HungamaVashu Bhagnani hospitalised in London amid Income Tax searches at 12 locations linked to him, Rakul Preet Singh, and Panorama Studios: ReportNOS SportDriehoek Alkmaar laat geen Israëlische uitsupporters toe in Europa League-duel bij AZNumeramaLe film d’horreur Kraken est-il le digne héritier de Vermines ?BBC عربيمكتب نتنياهو يستبعد اختطاف طائرة فلاي دبي المتجهة إلى تل أبيب، مع هبوطها في السعوديةRFIInfluences étrangères: « Nous allons amener ceux qui ne sont pas encore inscrits à s’inscrire », assure le président de la HATVPNOSGrote politie-actie in Duitsland tegen witwasnetwerk en leden Hells AngelsFootball ItaliaToday’s Papers – Juventus capital injection, generation KayodeOnetAtak Rosji na Ukrainę i kolejne alerty w Polsce. Jest komunikat wojska
The Daily Newsstand · Free, Always
Wednesday, September 30, 2026

SFTP-браузер в Windows Terminal

Translate

Хотелось бы поделиться новостью, что наконец-то Microsoft интегрировал SFTP браузер в Windows Terminal. Но, к сожалению, этого не произойдет, хотя функционал уже реализован и работает в форке terminal-sftp, мейнтейнер отклонил PR #20736 с сообщением:

Ответ мейнтейнера перед закрытием PR.

Ответ мейнтейнера перед закрытием PR.

Перевод:

"Простите, но это не соответствует нашему видению продукта. Мы - эмулятор терминала, и не намерены расширяться в сторону просмотра файлов. Хотя, это классная функция!"

Всем привет! Я использую Windows Terminal с переменным успехом на протяжении нескольких лет, где помимо оболочек PowerShell и Git Bash, у меня добавлены профили для подключения по SSH, настроенные через параметр commandline в settings.json. Доступ к хостам осуществляется по ключу, поэтому менеджер паролей мне не требуется. Такого решения хватает для 90% моих задач, но когда встает вопрос доступа к файлам на удаленных машинах (скачать, загрузить или изменить файл в привычном редакторе), приходится прибегать к сторонним инструментам. В поисках лучшего и удобного решения, перепробовал многие — начиная с WinSCP и заканчивая стеком sshfs (SSHFS-Win + Manager) и Code Server.

Логичный вопрос — зачем перегружать терминал? Тут все просто — использовать один привычный инструмент для решения связанных задач. Именно поэтому сообщество создало проект Tabby (ранее Terminus), который повторяет пользовательский опыт терминала от Microsoft, но при этом добавляет возможность хранения паролей и SFTP-браузер. Я им пользовался еще на ранних стадиях развития, ловил много багов и быстро от него отказался в пользу MobaXterm, который активно использовал на тот момент.

Запросы на SFTP, SCP и MODEM-передачу файлов начали появляться в репозитории microsoft/terminal начиная с 2019 года. Например, в Issue #1999 (который открыт по сей день и находится в бэклоге, ожидая внедрения плагинов), а также #1602, #4151, #11855 и многих других, которые были закрыты без реализации.

Реализация

Windows Terminal — это большой проект на C++, и без опыта с этим языком разбираться в нем та еще задачка. Только на анализ того, куда встраивать браузер, я потратил несколько недель, переписываясь с чат-ботами и делая наброски. Зная исход заранее, открывать очередной issue я не стал, а логику браузера решил делегировать ИИ, заодно давно хотел опробовать, на что способны агенты кодирования. Для реализации использовал OpenCode — открытый инструмент с бесплатной моделью Zen, и вот, что из этого получилось:

Менеджер управления профилями и подключения к SFTP сессиям.

Менеджер управления профилями и подключения к SFTP сессиям.

Браузер открывается отдельной вкладкой терминала при нажатии Ctrl+Shift+S или через палитру команд (Ctrl+Shift+P - Open SFTP browser). При первом запуске пользователя встречает менеджер профилей, которые управляются из интерфейса и сохраняются в конфигурационном файле %LOCALAPPDATA%\Microsoft\Windows Terminal\sftp-profiles.json. SSH/SFTP реализован на базе библиотеки libssh2, при первом соединении проверяется known_hosts и выводится диалог подтверждения отпечатка ключа. Пароли профилей хранятся в зашифрованном виде с помощью DPAPI (CryptProtectData), поэтому в открытом виде на диск они не утекают. Файлы можно просматривать, создавать, удалять, скачивать на локальную машину, загружать на сервер или открывать на редактирование в VSCode.

Файловый менеджер.

Файловый менеджер.

Код браузера открыт, а собранная версия опубликована на странице релизов, откуда ее может загрузить и попробовать любой желающий.

Итог

Пройдя путь от изучения до реализации и потратив недели на анализ внедрения, я сделал простой вывод — пока большой проект не готов расширять свое продуктовое видение, ничто не мешает воплотить любые собственные задумки и использовать их, вместо того чтобы годами ждать официальной поддержки. Особенно реальным это становится сегодня, с возможностями генеративного ИИ. Для меня это оказался интересный опыт, на генерацию логики понадобилось около двух тысяч токенов и 3 дня, а на отладку и тесты — еще столько же.

А какими решениями вы пользуетесь для доступа к файлам на удаленных машинах? Делитесь в комментариях!

View the original on Хабр →

KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.