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 днів), який серцебиття ніколи не можуть подовжити. Задача, що вийшла з-під контролю, не може тримати Mac активним понад цю межу.
  • Самовідновлення. Немає серцебиття, немає утримання. Оренда скрипта, що аварійно завершився, спливає сама.
  • Чистий спільний доступ. Кілька інструментів можуть тримати оренди одночасно. Keepresso об'єднує їх і дає Mac заснути після завершення останньої, виконуючи вашу дію наприкінці сесії саме тоді, а не раніше.
  • Помітна. Кожна активна оренда показується в меню зі своїм зворотним відліком, названа за інструментом і задачею, які її взяли.

Життєвий цикл оренди

Отримайте оренду, коли задача починається. Ви обираєте id (UUID), називаєте інструмент і задачу та задаєте TTL у секундах:

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

Надсилайте серцебиття, перш ніж мине половина TTL, у циклі, поки триває робота. Серцебиття також може змінити 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 знову вільний заснути.

Навчіть свого агента в один клік

Вам не доведеться пояснювати все це агентові вручну. Пакет застосунку постачає готову навичку keep-awake, яка навчає агента всього протоколу, і командного рядка 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 активним під час відеодзвінків автоматично, тож він ніколи не засинає посеред зустрічі, у будь-якому застосунку, включно з дзвінками у вкладці браузера.