긴 빌드와 컴파일 중 Mac 절전 방지
긴 Xcode 아카이브, cargo build --release, Gradle이나 npm 설치, 로컬 CI 실행은 macOS가 기기를 유휴로 판단하기 쉬운 전형적인 순간입니다. 화면이 어두워지고 시스템이 잠들며 빌드가 멈추거나 죽습니다. Keepresso는 작업 동안 Mac을 깨어 있게 한 뒤, 일이 끝나면 쉬게 둡니다.
작업에 맞는 방식 고르기
1. 타이머 세션(가장 단순)
빌드가 보통 어느 정도 안에 끝난다는 것을 알 때:
- 메뉴 막대의 Keepresso 컵을 클릭합니다.
- 시간을 고릅니다(1시간, 4시간, 사용자 지정, 또는 Until a Time).
- 절전 방지를 시작하고 빌드를 시작합니다.
타이머가 끝나면 Keepresso는 시스템을 깨어 있게 유지하지 않습니다. 자세한 내용: 타이머 세션.
2. 프로세스 트리거(손을 떼도 됨)
빌드 도구가 실제로 실행 중일 때만 깨어 있게 둡니다.
- 환경설정 → 트리거를 엽니다.
- 트리거 게이팅을 켭니다.
- Process running 조건을 추가하고
xcodebuild,swift,cargo,rustc,gradle,java,node,npm,pnpm,make,ninja,cmake같은 명령에 맞춥니다. - 도구가 여러 개면 하나라도로 조합합니다.
프로세스가 종료되면(설정한 유예 시간 후) Keepresso가 세션을 내리고 Mac은 다시 잠들 수 있습니다. 스마트 트리거를 참고하세요.
3. CPU 부하 트리거(도구 이름에 의존하지 않음)
도구 이름은 바뀌지만 기기가 분명히 일하는 경우:
- CPU above a threshold 조건을 추가합니다(50% 또는 75%가 좋은 시작점입니다).
- 평활화는 유지하세요. 짧은 급증으로는 세션이 열리지 않고, 지속 부하에서는 열립니다.
섞인 툴체인이나 이름이 다른 자식 프로세스를 띄우는 IDE 빌드에 이상적입니다.
4. Media Render / AI Agent 프리셋
흔한 긴 작업을 위한 내장 프리셋:
- Media Render는
ffmpeg가 실행 중일 때 유지합니다. - AI Agent는 코딩 에이전트(
claude,codex,gemini등)가 단순히 열려 있는 것이 아니라 실제로 작업하는 동안 Mac을 깨어 있게 하므로, 노트북에서 밤새 실행한 에이전트 작업이 끝까지 완료되고, 작업이 끝나면 Mac은 그대로 잠듭니다.
조건 메뉴에서 프리셋을 적용하면 현재 규칙 세트를 대체하고 트리거를 켭니다.
작업이 끝나는 순간을 알고 싶나요? 환경설정, 자동화의 이벤트 훅은 세션이 끝나거나 에이전트가 유휴 상태가 될 때 단축어를 실행하거나, webhook에 POST하거나, 셸 명령을 실행할 수 있으며, 폰 푸시도 포함됩니다. 깨어나기 전에 작업이 시작된다면, 같은 탭의 예약 깨우기가 제때에 Mac을 깨웁니다.
선택 사항: 화면 끔, 덮개 닫힘
빌드에 켜진 패널은 필요 없습니다.
- 시스템만 켜져 있으면 되면 prevent display sleep을 끕니다. 가이드: Mac을 깨어 있게 유지하는 방법.
- MacBook에서는 클로즈드 디스플레이 모드를 켜 가방이나 선반에서도 컴파일이 이어지게 하고, 덮개를 닫으면 내장 패널이 잠들게 합니다. 가이드: 덮개 닫힘.
배터리 안전
노트북에서는 잊힌 세션이 배터리를 소진하지 않도록 절전 방지에 배터리 자동 일시 중지를 함께 쓰세요. 환경설정에서 하한(예: 20%)을 두면 충전량이 그 아래로 떨어질 때 Keepresso가 일시 중지합니다. 더 보기: 스마트 트리거.
스크립트와 CI 머신
헤드리스 빌드 머신이나 스크립트 파이프라인용:
# 빌드가 실행되는 동안만 Mac을 깨어 있게(앱 불필요)
your-build-command & keepresso -w $!
# 또는 실행 중인 앱을 제어
keepresso start --for 120
keepresso stop
무인 파이프라인에서는 자동화 리스가 start와 stop 쌍보다 안전합니다. 스크립트가 계속 갱신하는 한정된 권한이므로, 작업이 충돌해도 Mac을 깨어 있는 상태로 고정할 수 없고 리스는 그냥 만료됩니다.
ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool ci --task "release build" --ttl 600
# ... heartbeat on a loop while the build runs ...
keepresso lease release --id "$ID"
작업을 AI 에이전트가 주도한다면 이것을 직접 작성할 필요조차 없습니다. 함께 제공되는 스킬과 MCP 서버가 에이전트에게 전체 프로토콜을 가르쳐 줍니다. AI 에이전트가 Mac을 깨어 있게 하기를 참고하세요.
설치와 PATH 참고: keepresso CLI. 빌드 전용 Mac mini에서는 Headless Setup 체크리스트도 실행해 로그인과 절전 정책을 상시 가동 기기에 맞추세요.
관련
Keepresso 사용하기의 다른 가이드
