Тримайте Mac активним з командного рядка
Keepresso постачає невеликий інструмент командного рядка, тож ви можете керувати ним із термінала, скрипта оболонки, Makefile чи завдання CI, не звертаючись до рядка меню. Команда це keepresso, і вона працює двома способами: вона може спілкуватися з застосунком у рядку меню, або сама тримати Mac активним, як вбудований caffeinate.
Встановіть команду
Якщо ви встановили Keepresso через Homebrew, команда keepresso вже на вашому PATH, нічого робити не треба:
brew install --cask gyorgysh/keepresso/keepresso
Якщо ви натомість встановили застосунок з DMG, інструмент лежить всередині пакета застосунку, і ваш PATH ще не знає про нього. Прив'яжіть його один раз:
sudo ln -s /Applications/Keepresso.app/Contents/Helpers/keepresso /usr/local/bin/keepresso
Перевірте, що все підключено:
keepresso version
Керуйте застосунком
Ці команди надсилаються до застосунку Keepresso, запускаючи його, якщо він ще не працює. Це скриптований двійник меню.
keepresso start # запустити сесію без обмеження часу
keepresso start --for 90 # запустити 90-хвилинну сесію
keepresso start --until 18:00 # працювати до визначеного часу
keepresso stop # завершити поточну сесію
keepresso toggle # увімкнути чи вимкнути
Тож довга задача може розбудити Mac на початку й дозволити йому заснути по завершенні:
keepresso start
make release
keepresso stop
Читайте статус
keepresso status повідомляє, чи запущена сесія, а її код завершення легко перевірити в скрипті:
0Mac тримається активним1не тримається2застосунок не запущено
keepresso status && echo "awake" || echo "asleep"
Додайте --json для машинозчитуваної відповіді:
keepresso status --json
Той самий стан сесії також відображається у файл, тож інструмент у рядку меню, рядок статусу чи віджет можуть прочитати його, нічого не запускаючи:
~/Library/Application Support/Keepresso/status.json
Він містить поточний стан і мітки часу ISO 8601.
Окреме утримання, без застосунку
Іноді ви взагалі не хочете залучати застосунок, ви просто хочете, щоб цей один процес оболонки тримав Mac активним, точнісінько як caffeinate. У цьому режимі сам процес keepresso утримує power assertion, і Mac вільний знову заснути тієї миті, коли процес завершується.
keepresso -i # тримати, поки ви не натиснете Ctrl-C
keepresso -t 3600 # тримати задану кількість секунд
keepresso -w 5123 # тримати, поки не завершиться процес 5123
keepresso -d # також тримати дисплей активним (поєднувати з вищим)
keepresso -u # оголосити активність користувача: розбудити дисплей зараз
Найкорисніший патерн, це прив'язати активність до життя команди чи оболонки:
keepresso -w $$ & # залишатися активним, поки живе ця оболонка
ffmpeg -i in.mov out.mp4 & keepresso -w $! # тримати, поки не завершиться кодування
Оскільки ці утримання це справжні power assertion macOS, вони показуються в pmset -g assertions і на власній панелі активності Keepresso, поряд з кожним іншим застосунком, що тримає Mac активним.
Оренди для автоматизації, для скриптів та агентів
start без stop може назавжди прикувати Mac до неспання, якщо скрипт аварійно завершиться. Для автоматизації без нагляду натомість візьміть оренду: обмежений дозвіл з лімітом часу, який власник мусить постійно поновлювати. Якщо інструмент помирає, оренда спливає, і Mac може знову заснути.
ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool my-script --task "nightly render" --ttl 600
keepresso lease heartbeat --id "$ID" # renew before half the TTL elapses, on a loop
keepresso lease release --id "$ID" # done, let the Mac rest
keepresso lease list --json # every live lease, machine-readable
Активні оренди показуються в меню зі зворотними відліками, Keepresso об'єднує їх усі, а максимальний час життя (не більше 7 днів) це стеля, яку серцебиття не можуть подовжити. Повний протокол, MCP-сервер і навичку для агента в один клік описано в дозвольте ШІ-агентам тримати Mac активним.
Розклад пробудження
CLI також може прочитати заплановані системні пробудження і, з вашого дозволу, змінити їх:
keepresso wake status # read the schedule, always allowed
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
status працює для будь-кого. set і clear застосовують загальносистемну зміну через допоміжний процес адміністратора, тож вони працюють лише поки в Налаштуваннях, Автоматизація увімкнено Дозволити автоматизації змінювати розклад пробудження. За замовчуванням це вимкнено.
Пов'язане
- Керуйте Keepresso зі Shortcuts, Raycast або скрипта охоплює дії Shortcuts і URL scheme
keepresso://для автоматизації без термінала. - Keepresso проти Amphetamine, KeepingYouAwake і caffeinate пояснює, як Keepresso співвідноситься зі вбудованою командою
caffeinate.
Отримайте Keepresso
Безкоштовно і з відкритим вихідним кодом, для macOS 14 і новіше. Встановіть його і не давайте Mac засинати на ваших умовах.
Ще в Використання Keepresso
