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

Позвольте ИИ-агентам и скриптам держать Mac активным с помощью аренды для автоматизации

György
Проверил
György
Обновлено Jul 23, 2026 5 min

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

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

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

У Keepresso уже есть триггер ИИ-агента, который распознаёт, когда агент-программист действительно работает: Claude Code может сообщать своё истинное состояние через необязательный хук, а известные агенты (claude, codex, gemini и другие) оцениваются по активности их собственных процессов. Эта сторона вообще не требует настройки в агенте, 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, и MCP-серверу, а также тому, когда его использовать: перед долгой сборкой, рендерингом, загрузкой или ночным запуском. В разделе Настройки, «Автоматизация» установите его прямо с диска в папку навыков вашего агента. Для агентов без такой папки Keepresso вместо этого копирует полный навык как готовые к вставке инструкции: вставьте их в агента один раз, и протокол выучен, либо сохраните их в глобальный файл конфигурации, который агент всегда читает, например CLAUDE.md или AGENTS.md, чтобы каждая будущая сессия уже знала, как и когда удерживать Mac активным. Навык также лежит в пакете по пути Keepresso.app/Contents/Resources/AgentSkill/keep-awake, если вы предпочитаете подключить его сами.

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-сервер несёт соответствующие инструменты по тому же правилу.

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

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

Получите Keepresso

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

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

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