Mail
История изменений
Заметки о выпусках Mail CLI: новые возможности, изменения и исправления.
Заметные изменения в @wirecat/mail-cli. По одному разделу на версию, новые сверху.
0.1.1 — 01.11.2026
Исправлено
- Документация ведёт от
syncк первому найденному письму и честно говорит, как хранится пароль. Установка, работа с инструментом и главная страница документации заканчиваются командойmemo search mail:mailнаполняет общее хранилище, а memo ищет в нём. Пароль хранится в связке ключей, при её сбое переходит в закрытый файл и может приходить изMAIL_PASSWORD; из stdin он никогда не читается.rate_limitedназывает обе причины: сервер ограничивает аккаунт, иsyncисчерпал собственный бюджет запросов. Документация также сообщает, чтоmemo mail deleteперемещает почту Gmail в корзину.
0.1.0 — 31.10.2026
Добавлено
mailчитает почтовый ящик по IMAP в общее хранилище WireCat и никогда не меняет сам ящик.memoи другие инструменты WireCat затем ищут и читают эту почту на вашем компьютере.mailне отправляет почту.session startвходит в профиль по паролю приложения. Новому профилю нужен--address, а в терминале адрес спросят сами. Сервер находится по встроенной таблице (Яндекс, Gmail, iCloud, Mail.ru, Fastmail), по записи MX, по ISPDB Thunderbird и по файлу autoconfig домена;--providerили--hostвместе с--portи--securityзадают его вручную и пропускают эти поиски. Команда показывает шаги подготовки ящика, спрашивает пароль приложения без эха (или читаетMAIL_PASSWORD), проверяет его на сервере и только потом сохраняет профиль, а пароль кладёт в связке ключей ОС. Без терминала она ничего не спрашивает и называет недостающий параметр или переменную. Пароль приложения, который Himalaya уже хранит в связке ключей, используется, если уmailсвоего нет. Шаги для каждого провайдера описаны на странице Подготовка почтового ящика. Outlook и Microsoft 365 принимают только OAuth, поэтомуsession startпока отказывается с ними работать.session status,session endиsession listуправляют входом.session status --checkвходит на сервер и доказывает, что пароль ещё работает;session endзабывает пароль и оставляет синхронизированную почту;session listне требует профиля и показывает профили на этом компьютере.account checkиfolders listвходят на сервер и показывают, что он поддерживает, а также папки с их ролью и числом писем.syncчитает новую почту в общее хранилище и пропускает то, что там уже есть. Если--folderили профиль не называют другие папки, читаются INBOX и Sent, сначала новые, начиная с--since-time(по умолчанию последние 30 дней). Одна дата начинается с местной полуночи, а в ответе указаны часовой пояс и окно в UTC.--limitограничивает число новых писем за один запуск,--rescanзаново перечисляет всё окно. Сохраняются текст и заголовки, вложения не сохраняются.- Большой ящик синхронизируется за несколько запусков.
syncтратит бюджет запросов, рассчитанный по сроку (15 минут в терминале, 45 секунд через MCP;--timeoutи--max-pagesменяют его), сохраняет после каждой части и отвечаетstate: partialс командой для продолжения.mail <profile> statusпоказывает, как далеко продвинулась синхронизация, в том числе пока она идёт. Если часть писем осталась непрочитанной или удаления не проверялись, ответ сообщает об этом вmeta.issues. syncпереживает ненадёжный сервер. Оборванное соединение открывается заново после короткой паузы, и запуск продолжается; письмо, на которое сервер сейчас не может ответить, запрашивается ещё раз в конце запуска и остаётся на следующий. На сервере без идентификаторов писем, например на Яндексе, каждое новое письмо скачивается один раз, а уже сохранённая почта не читается заново.- ИИ-агенты работают с
mailчерез MCP и навык.mail <profile> mcp serveпредлагает агенту команды профиля по stdio или по HTTP за вашим собственным туннелем с--http; что можно запускать, решают разрешения профиля, а--permissionлишь ужесточает их.mail skill installустанавливает инструкции инструмента для Claude Code, Codex, Gemini CLI и OpenClaw, а для Hermes — с--for hermes. - Если связка ключей не работает, пароль приложения попадает в закрытый файл, и об этом не спрашивают.
session startкладёт пароль вcredentials.json(режим 600) в папке настроек, один раз сообщает об этом в stderr и отвечаетcredential_storage.--credential-storage fileвыбирает файл сразу, но это не рекомендуется.session statusможет ответитьpassword_from: "file". - Запуск с перенесёнными папками никогда не удаляет пароль приложения владельца из связки ключей ОС. Такой запуск
читает пароль владельца, но не заменяет и не удаляет его, а новый пароль кладёт во временную запись.
session endдля пароля владельца ничего не удаляет и отвечаетkept: "owners-sign-in". wcat mailзапускает инструмент, аwcat --helpего перечисляет. Пакет устанавливаетwcat-mailрядом сmail, аwcat-mail --wcat-describeпечатает дляwcatимя, версию и описание инструмента.doctor --onlineсообщает, опубликована ли более новая версия. К почтовому серверу он не обращается.- Команды, общие для всех инструментов WireCat:
doctor,commands,config,skill,runsиupgrade.