Keepresso
Keepresso
Использование Keepresso

ИИ-агенты держат Mac активным через аренду автоматизации

György
Проверил
György
Обновлено Aug 25, 2026 8 min

Агенту, который выполняет долгую задачу ночью, нужно, чтобы Mac был активным во время работы и уснул, когда всё сделано. Обычное «не засыпать, включено» справляется с первой половиной и проваливает вторую: если инструмент падает или забывает выключить режим, Mac навсегда остаётся прикованным к бодрствованию. Аренда для автоматизации это исправляет. Скрипт или ИИ-агент берёт аренду с ограничением по времени, продлевает её, пока идёт работа, и освобождает в конце. Если инструмент умирает посреди задачи, аренда просто истекает, и Mac снова может уснуть. Ничего не остаётся удерживать машину активной по случайности.

Keepresso поставляет весь набор для этого: команды keepresso lease, MCP-сервер, который может вызвать любой агент с поддержкой MCP, и встроенный навык агента, который устанавливается в один клик.

Обнаружение следит, аренда говорит

У Keepresso уже есть триггер ИИ-агента, который распознаёт, когда агент-программист действительно работает. Известные агенты включают Claude, Cursor, Codex, Gemini, Grok, Antigravity, Hermes Agent, Kilo Code, OpenCode, DeepSeek Harness, LM Studio Bionic, pi, Kimi Code, Qwen Code, Muse Code, Devin CLI и другие. Инструменты без более глубокого подключения оцениваются по данным их процесса или хранилища переписок, и эта сторона вообще не требует настройки в агенте.

Подключите Claude Code, Cursor, Codex, Antigravity или Grok к условию «ИИ-агент», если хотите точное состояние сессии. Переписки отслеживаются отдельно, в том числе чаты внутри настольных приложений, которые делят один процесс-хост, так что неактивная переписка не наследует работу другой, а пропущенная остановка не держит Mac активным на всё время жизни приложения. Предлагаются только инструменты, которые действительно установлены на вашем Mac, и Keepresso со временем перепроверяет каждое подключение, восстанавливая хук, который пропал или устарел.

Но обнаружение покрывает только тех агентов, которых Keepresso умеет распознавать, а новые появляются каждую неделю. Аренда переворачивает направление: вместо того чтобы Keepresso угадывал, агент сам сообщает Keepresso, когда ему нужен активный Mac, для чего и на какой срок, а затем продолжает доказывать, что он ещё жив. Это может сделать любой инструмент, способный выполнить команду или обратиться к MCP-серверу, независимо от названия и как бы ни работал внутри. Эти два подхода хорошо дополняют друг друга: обнаружение покрывает повседневные сессии, о которых вы не задумывались, а аренда покрывает намеренные долгие задачи и всё, чего обнаружение не видит.

Почему аренда, а не keepresso start

keepresso start это удобный ручной переключатель, но автоматизации нужны другие гарантии:

  • Ограниченность. У аренды есть TTL, который владелец должен продлевать, и максимальное время жизни (не более 7 дней), которое heartbeat никогда не сможет продлить сверх этого. Задача, вышедшая из-под контроля, не удержит Mac активным дольше своего потолка.
  • Самовосстановление. Нет heartbeat, нет удержания. Аренда упавшего скрипта истекает сама.
  • Аккуратное совместное использование. Несколько инструментов могут держать аренды одновременно. Keepresso объединяет их и даёт Mac уснуть после того, как завершится последняя, выполняя ваше действие по завершении сессии именно тогда, а не раньше.
  • Наглядность. Каждая активная аренда отображается в меню со своим обратным отсчётом, названная по инструменту и задаче, которые её взяли.

Жизненный цикл аренды

Возьмите аренду, когда задача начинается. Вы выбираете id (UUID), называете инструмент и задачу и задаёте TTL в секундах:

ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool my-script --task "nightly render" --ttl 600

Отправляйте heartbeat до того, как истечёт половина TTL, в цикле, пока идёт работа. Heartbeat также может изменить TTL:

keepresso lease heartbeat --id "$ID"            # renew with the same TTL
keepresso lease heartbeat --id "$ID" --ttl 300  # renew and shorten it

Освободите аренду, когда задача завершена, чтобы Mac не ждал остаток TTL:

keepresso lease release --id "$ID"

И выведите список активных, ваших и чужих:

keepresso lease list --json

Каждая команда принимает --json для машиночитаемого вывода, а коды выхода сделаны для скриптов: 0 всё в порядке, 2 приложение не запущено, 3 аренда не найдена или уже завершена, 4 аренда отключена в Настройках.

Аренда управляется переключателем в разделе Настройки, «Автоматизация», включена по умолчанию. Выключите её, и любой запрос на взятие аренды будет отклонён с кодом выхода 4, так что автоматизация никогда не сможет переопределить ваш выбор.

Смотрите и останавливайте их из меню

Активные аренды появляются в карточке статуса на панели меню, каждая со своим обратным отсчётом. Вы остаётесь у руля: Стоп завершает их все разом, и Mac снова волен уснуть.

Меню Keepresso с активными арендами автоматизации и отсчетом времени
Активные аренды в меню: задачи, инструменты и отсчет времени.

Обучите вашего агента в один клик

Вам не нужно объяснять всё это агенту вручную. В пакет приложения входит готовый навык поддержания активности, который обучает агента всему протоколу, и командной строке keepresso, и MCP-серверу, а также тому, когда его использовать: перед долгой сборкой, рендерингом, загрузкой или ночным запуском. В разделе Настройки, «Автоматизация» установите его прямо с диска в папку навыков вашего агента. Для агентов без такой папки Keepresso вместо этого копирует полный навык как готовые к вставке инструкции: вставьте их в агента один раз, и протокол выучен, либо сохраните их в глобальный файл конфигурации, который агент всегда читает, например CLAUDE.md или AGENTS.md, чтобы каждая будущая сессия уже знала, как и когда удерживать Mac активным. Навык также лежит в пакете по пути Keepresso.app/Contents/Resources/AgentSkill/keep-awake, если вы предпочитаете подключить его сами.

Настройки автоматизации Keepresso: включённый переключатель «Разрешить аренду для автоматизации», выключенный «Разрешить автоматизации менять расписание пробуждения», и кнопки скопировать инструкции для агента, скопировать настройку MCP и показать папку навыка
Настройки автоматизации: переключатель аренды, согласие на расписание пробуждения и настройка агента в один клик.

MCP-сервер

Для агентов, которые говорят на Model Context Protocol, в пакет входит keepresso-mcp:

/Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

Он предоставляет инструменты, чтобы взять, продлить, освободить и вывести список аренд, прочитать статус Keepresso и прочитать системное расписание пробуждения. MCP это открытый протокол, поэтому это не ограничено агентами-программистами: любое приложение с поддержкой MCP может держать собственную аренду и поддерживать Mac активным, пока идёт работа. В разделе Настройки, «Автоматизация» есть готовые к копированию фрагменты настройки для Claude Code, Gemini CLI, Grok и Codex. Для Claude Code всё сводится к одной команде:

claude mcp add keepresso -- /Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

Расписания пробуждения для автоматизации, по желанию

Автоматизация также может прочитать, когда система в следующий раз запланирована к пробуждению, и, если вы разрешите, изменить это расписание:

keepresso wake status                          # always allowed, for anyone
keepresso wake set --at "2026-07-24 07:30"     # one-shot wake
keepresso wake set --repeat MTWRF --time 07:30 # repeating wake
keepresso wake clear

Чтение разрешено всегда. Изменение расписания работает только пока в разделе Настройки, «Автоматизация» включена опция Разрешить автоматизации менять расписание пробуждения. По умолчанию она выключена, потому что запланированное пробуждение это общесистемное изменение, применяемое помощником администратора. MCP-сервер несёт соответствующие инструменты по тому же правилу.

Пробуждение Mac для запланированных запусков ИИ

Аренда и CLI покрывают работу, которая уже идёт. Но часть работы агентов запланирована на потом: рутина Claude Desktop, настроенная на запуск в 3 часа ночи, автоматизация Codex по ночному расписанию или задача tokenstat.ai, которой нужен этот Mac. Если к этому времени Mac успел уснуть, запуск просто пропускается.

Запланированные запуски ИИ закрывают этот пробел без какого-либо скриптования. Включите это в разделе Настройки, «Автоматизация», Запланированные запуски ИИ, а затем включите каждый инструмент, для которого хотите пробуждение. Keepresso считывает повторяющиеся задачи, запланированные этим инструментом, будит Mac за несколько минут до каждой из них и удерживает его активным короткое время, чтобы запуск состоялся даже при закрытой крышке.

Настройки Запланированных запусков ИИ в Keepresso со списком найденных рутин: две задачи Claude Desktop и одна задача Codex, каждая со временем следующего запуска и собственным переключателем, над временем следующего пробуждения и окном поддержания активности
Рутины, найденные Keepresso, каждая со своим переключателем и временем следующего запуска.

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

  • Вы включаете это по каждой платформе отдельно. Claude Desktop, Codex и tokenstat.ai по умолчанию выключены, так что ничего из того, чем вы не пользуетесь, никогда не будит Mac. Keepresso считывает только расписание и название задачи, но не её промпт.
  • Только локальные расписания. Облачные рутины выполняются на серверах поставщика, даже если ваш Mac спит, поэтому они игнорируются. Это решение для запусков, которым нужен активным именно ваш Mac.
  • Для более долгого запуска сочетайте это с арендой: окно пробуждения запускает задачу, а агент удерживает аренду, чтобы Mac оставался активным, пока работа действительно не завершится.
Панель Запланированных запусков ИИ без найденных рутин, предлагающая добавить одну в Claude Desktop в разделе «Рутины», «Новая рутина», «Локальная», либо в Codex, и отмечающая, что облачные рутины пробуждения не требуют
Пока некуда просыпаться: панель подсказывает, где добавить локальную рутину.

Под капотом это использует тот же механизм запланированного пробуждения, что и команды keepresso wake из CLI, описанные выше, поэтому требует помощника администратора и надёжно работает при питании от сети (на батарее прошивка может пропустить пробуждение).

Что вам понадобится

  • Keepresso 1.17 или новее для аренды, MCP-сервера и команд пробуждения CLI; 1.18 или новее для Запланированных запусков ИИ Claude Desktop и Codex; 1.21 или новее для задач tokenstat.ai и расширенного обнаружения агентов. Шаги установки: начало работы.
  • Для CLI при установке из DMG свяжите команду один раз.
  • Для изменения расписания пробуждения и Запланированных запусков ИИ нужны помощник администратора и переключатели согласия выше.

Смотрите также

Получите Keepresso

Бесплатно и с открытым исходным кодом, для macOS 14 и новее. Установите его и не давайте Mac засыпать на ваших условиях.

Ещё в Использование Keepresso

Держите Mac активным заданное время
Запустите сессию поддержания активности по таймеру, чтобы Mac оставался активным во время загрузки или рендеринга, а затем засыпал сам.
Не давайте MacBook засыпать с закрытой крышкой
Не давайте MacBook засыпать при закрытии крышки, от батареи, без внешнего дисплея и без кабеля питания, с помощью бесплатного приложения с открытым исходным кодом.
Умные триггеры держат Mac активным, только когда нужно
Задайте условия, чтобы Keepresso не давал Mac засыпать только пока работает приложение, идёт звонок, вы на питании от сети и не только. Никогда не активен там, где не нужно.
Не давайте Mac засыпать во время звонков в Zoom и Teams
Не давайте Mac засыпать во время видеозвонков автоматически, чтобы он никогда не засыпал посреди встречи, в любом приложении, включая звонки во вкладке браузера.

Создано под руководством и проверено человеком · При поддержке ИИ · Инструменты ИИ могут помогать с черновиками, редактированием, поддержкой, грамматикой и ясностью. Ничто не публикуется автоматически; каждое изменение проверяет человек, сопровождающий проект.