Типичные проблемы и что делать. Каждый способ ниже — реальная команда или настройка, которая есть в zames.
Симптом: zames просит вход, окно браузера (с --headed) открывается, и
сайт показывает слайдер-капчу; или холодный вход в headless просто не удаётся.
Это антибот-защита на свежей сессии, а капчу нельзя набрать в терминале.
Запустите zames --headed один раз и войдите руками в окне; сессия сохранится
в профиле провайдера (~/.zames/profile, ~/.zames/qwen-profile,
~/.zames/glm-profile) и будет использоваться дальше. Сохранённые логин и
пароль пробуются первыми — удалить их можно командой
/config set browser.auth.password "". Для GLM headed-режим — практический
единственный: слайдер Aliyun гейтит и первую ОТПРАВКУ.
Симптом: zames --headed входит нормально, а обычный zames показывает
простую страницу 403 ERROR.
Headless Chromium сообщает в User-Agent HeadlessChrome/<v>, и CDN сайта
отклоняет такой UA до загрузки приложения. zames сам убирает маркер
(sanitizeHeadlessUA()). Если вы задали свой User-Agent — уберите из него
слово Headless: явный UA имеет приоритет и не патчится. Строку браузера
показывает /doctor.
Симптом: браузер показывает эту страницу вместо чата.
Два процесса Chromium были направлены на ОДИН и тот же --user-data-dir.
Классический случай — @playwright/mcp, запущенный без --isolated: по
умолчанию он берёт ~/.zames/profile, тот же профиль, что и у агента.
Закройте второй браузер, и в конфиге MCP всегда передавайте --isolated
(или отдельный --user-data-dir). См. MCP. Никогда не
удаляйте ~/.zames/profile, пока браузер может быть запущен.
Симптом: чат показывает «Messages too frequent. Try again later.», а агент ждёт, повторяет или останавливается с сообщением о рейт-лимите.
Веб-чат ограничивает частоту отправки с одного аккаунта, а долгие прогоны с
инструментами отправляют много. Увеличьте паузу между отправками:
/config set browser.minSendIntervalMs 20000 (у DeepSeek по умолчанию
15000; у Qwen — qwen.minSendIntervalMs, 4000). История отправок — в
/limits (тайминги, исход и ошибка сервера; сам промпт туда НЕ пишется),
сводка сессии — в /cost. Часто единственное реальное решение — подождать:
лимит считается на аккаунт.
Симптом: чат отказывает в КАЖДОМ следующем сообщении с этим уведомлением.
Контекстное окно чата исчерпано, и повтор в том же чате не сработает никогда.
zames обрабатывает это сам — компактит и открывает новый чат, либо
подсказывает. Вручную: /compact (если старый чат не принимает и промпт
суммаризации, сводка может быть построена из локальной истории) или /new и
повтор задачи. Заполнение видно на строке статуса и в /cost; порог
auto-compact — browser.autoCompactPct.
Симптом: Qwen отвечает RateLimited через несколько ходов; GLM показывает
капчу на первой отправке.
Гостевой режим даёт несколько ходов в день (Qwen), а GLM гейтит первое
сообщение слайдер-капчей, которую headless браузер не пройдёт. Войдите
(/provider qwen, затем /provider login; или
zames --headed --provider glm). Гость годится для быстрой пробы, но не для
долгой задачи.
Симптом: Chromium не стартует с ошибкой разделяемой библиотеки
(libnss3.so, libatk-1.0.so.0, …) — или об этом сообщает postinstall.
Что делать:
npx playwright install chromium
sudo npx playwright install-deps chromium
Шаг postinstall пробует то же самое, если есть sudo без пароля.
/config set сообщает об успехе, но после перезапуска значение прежнееСимптом: /config set ui.locale en применяется сразу, но следующий запуск
снова со старым значением.
Проектный .zamesrc.json важнее домашнего конфига, а /config пишет только
в ~/.zames/config.json. Найдите ключ в <проект>/.zamesrc.json и уберите
его там (файл в .gitignore, поэтому git status его не покажет). zames
предупреждает и при старте, и сразу после сохранения (cfg.shadowed).