Возможности
- Просмотр папок и файлов на телефоне и на удалённых серверах — в одном и том же экране. Разница только в том, какой источник сейчас открыт.
- Свои корни: можно добавить в список любую папку, а не только домашнюю.
- Хлебные крошки — видно, где находишься, и в любую точку пути можно вернуться.
- Показ скрытых файлов — тех, что начинаются с точки.
- Поиск по подпапкам, а не только в текущей папке, с ограничением числа найденного.
- Сортировка по имени, размеру, дате и типу файла (картинка, текст, код, разметка, медиа, архив).
- Создание папок и файлов, переименование, удаление.
- Выделение нескольких файлов сразу и массовые действия над ними: копировать, переместить, удалить, скачать на телефон или загрузить на сервер.
- Размер папки целиком, с учётом всех вложенных файлов.
- Свойства файла: размер, дата, тип, права доступа.
- Передача файлов в обе стороны: загрузить с телефона на сервер или скачать обратно. Показывается прогресс, передачу можно отменить.
- Просмотр картинок с увеличением и сдвигом, если снимок не помещается в экран.
- Просмотр прямо в приложении: текст, код, разметка, картинки с увеличением. Медиа и архивы только опознаются по типу, но не открываются.
- Открыть файл другим приложением, поделиться им или скопировать текст в буфер.
- Ошибки показываются человеческими словами, а не кодом ошибки.
Технические данные
| Параметр | Значение |
|---|---|
| Источники | телефон (Termux) и удалённые серверы по SSH |
| Свои корни | добавляются пользователем, запоминаются |
| Поиск | рекурсивный по подпапкам, с ограничением числа результатов |
| Загрузка на устройство | папка «Загрузки» телефона |
| Запись в общие папки | через системный доступ к файлам |
| Защита | запись в системные пути блокируется |
| Позиция при повторном открытии | запоминается последняя папка |
Как устроен доступ
Файловый менеджер не ходит в файлы напрямую. Все операции — прочитать папку, создать файл, удалить — он спрашивает у служебной программы, которая отвечает списком, содержимым файла или выполняет запись. Для файлов на телефоне и для файлов на удалённых серверах используются одни и те же команды, поэтому экран один и тот же, меняется только адрес, куда уходит запрос.
Из этого следует важное: путь на телефоне и такой же путь на удалённом сервере — это разные файлы, даже если написаны одинаково. Переключая источник, нужно понимать, где вы находитесь.
Передача файлов
Файлы ходят через сервер целиком, а не кусками с докачкой. У передачи есть прогресс и отмена, но если связь оборвалась, передачу нужно начинать заново — частично скачанный файл не восстанавливается. Размер папки целиком считается долго: сначала обход всех вложенных файлов, потом сложение.
Что агент умеет с файлами
Чтение и запись
- Прочитать файл по пути — сразу, построчно или блоками. Можно указать, с какой строки начинать и сколько строк взять, чтобы не тянуть в чат файл целиком. Для больших файлов читается только нужный кусок.
- Записать файл по пути — файл перезаписывается целиком и за один шаг: если запись оборвалась, старое содержимое остаётся целым.
- Найти значение в JSON-файле — по пути внутрь файла, без чтения всего файла в чат. Достаточно указать файл и путь вида
свойство.вложенное— вернётся значение.
Ограничения агента на запись
Агент пишет не куда угодно, а только в разрешённые рабочие папки проекта и во временную папку. Попытка записать в системный путь будет отклонена — это сделано намеренно, чтобы агент не мог испортить настройки телефона или саму программу.
Работа через экран
Кроме прямого чтения и записи, агент может открыть экран файлов и работать с ним как человек: навигация по папкам, выбор файлов, действия через элементы интерфейса. Это нужно, когда требуется то, чего нет в прямых командах: например, сортировка или выбор из списка корней.
Ограничения
- Запись в общие папки телефона требует отдельно выданного доступа — на современных версиях Android приложение не получает его само.
- При обрыве связи во время передачи файл придётся передавать заново.
- Подсчёт размера большой папки занимает заметное время.
- Один и тот же путь на телефоне и на сервере — разные файлы.
- Файлы приходят на телефон в папку «Загрузки», а не в произвольное место.