명령줄에서 Mac 깨어 있게 하기
Keepresso에는 작은 명령줄 도구가 딸려 있어서, 메뉴 막대에 손을 뻗지 않고도 터미널, 셸 스크립트, Makefile, CI 작업에서 제어할 수 있습니다. 명령어는 keepresso이며, 두 가지 방식으로 동작합니다. 메뉴 막대 앱과 통신하거나, 기본 내장 caffeinate처럼 그 자체로 Mac을 깨어 있게 할 수 있습니다.
명령어 설치하기
Homebrew로 Keepresso를 설치했다면 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 # start an open-ended session
keepresso start --for 90 # start a 90 minute session
keepresso start --until 18:00 # run until a wall-clock time
keepresso stop # end the current session
keepresso toggle # flip it on or off
그래서 긴 작업은 시작할 때 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 프로세스 자체가 파워 어서션을 유지하며, 프로세스가 종료되는 순간 Mac은 다시 자유롭게 잠들 수 있습니다.
keepresso -i # hold until you press Ctrl-C
keepresso -t 3600 # hold for a number of seconds
keepresso -w 5123 # hold until process 5123 exits
keepresso -d # also keep the display awake (combine with the above)
keepresso -u # declare user activity: wake the display now
가장 유용한 패턴은 깨어 있는 상태를 명령이나 셸의 수명에 묶는 것입니다.
keepresso -w $$ & # stay awake as long as this shell lives
ffmpeg -i in.mov out.mp4 & keepresso -w $! # 인코딩이 끝날 때까지 깨어 있게
이 유지 상태는 실제 macOS 파워 어서션이므로, pmset -g assertions에도, Keepresso 자체의 활동 탭에도 Mac을 깨어 있게 하는 다른 모든 앱과 나란히 나타납니다.
스크립트와 에이전트를 위한 자동화 리스
stop 없는 start는 스크립트가 충돌하면 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 서버, 원클릭 에이전트 스킬은 AI 에이전트가 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는 관리자 헬퍼를 통해 시스템 전체의 변경을 적용하므로, 환경설정, Automation 아래의 자동화가 깨우기 일정을 변경하도록 허용이 켜져 있을 때만 동작합니다. 기본값은 꺼짐입니다.
관련 문서
- 단축어, Raycast, 스크립트로 Keepresso 제어하기는 단축어 액션과 터미널 없는 자동화를 위한
keepresso://URL scheme을 다룹니다. - Keepresso vs Amphetamine, KeepingYouAwake, caffeinate는 Keepresso가 기본 내장
caffeinate명령과 어떻게 관련되는지 설명합니다.
Keepresso 사용하기의 다른 가이드
