Позвольте ИИ-агентам и скриптам держать Mac активным с помощью аренды для автоматизации
Агенту, который выполняет долгую задачу ночью, нужно, чтобы 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 1.17 или новее. Шаги установки: начало работы.
- Для CLI при установке из DMG свяжите команду один раз.
- Для изменения расписания пробуждения помощник администратора и опция выше.
Смотрите также
- Не давайте Mac засыпать из командной строки охватывает остальной CLI
keepresso. - Не давайте Mac засыпать во время долгих сборок показывает подходы на основе триггеров для задач, которые вы запускаете сами.
- Запускаете агентов на постоянно включённом Mac? MyAgens даёт ему команду агентов Claude Code, которыми вы управляете из Telegram.
Получите Keepresso
Бесплатно и с открытым исходным кодом, для macOS 14 и новее. Установите его и не давайте Mac засыпать на ваших условиях.
Ещё в Использование Keepresso
