Keepresso
Keepresso
Keepresso 사용하기

자동화 리스로 AI 에이전트가 Mac을 깨어 있게 하기

György
감수
György
업데이트 Jul 28, 2026 6 min

밤새 긴 작업을 실행하는 에이전트는 작업 중에는 Mac이 깨어 있어야 하고, 작업이 끝나면 잠들어야 합니다. 단순한 "절전 방지 켜기"는 앞쪽 절반만 해결하고 뒤쪽 절반은 놓칩니다. 도구가 충돌하거나 끄는 것을 잊으면 Mac은 영원히 깨어 있는 상태로 고정됩니다. 자동화 리스가 이 문제를 해결합니다. 스크립트나 AI 에이전트가 시간 제한이 있는 리스를 획득하고, 작업이 진행되는 동안 계속 갱신하다가, 끝날 때 반납합니다. 도구가 작업 도중에 죽으면 리스는 그냥 만료되고 Mac은 다시 잠들 수 있습니다. 실수로 무언가가 Mac을 계속 깨워 두는 일이 없습니다.

Keepresso는 이를 위한 전체 스택을 제공합니다. keepresso lease 명령, MCP를 지원하는 모든 에이전트가 호출할 수 있는 MCP 서버, 그리고 클릭 한 번으로 설치할 수 있는 함께 제공되는 에이전트 스킬입니다.

감지는 지켜보고, 리스는 말한다

Keepresso에는 이미 코딩 에이전트가 실제로 작업 중인지 감지하는 AI 에이전트 트리거가 있습니다. 알려진 에이전트(claude, cursor, codex, gemini, pi 등)는 자체 프로세스의 활동으로 판단되며, 이쪽은 에이전트에서 아무 설정도 필요 없습니다. 정확한 세션 상태를 원한다면 AI 에이전트 조건에서 Claude Code, Cursor, Codex, Antigravity를 연결하세요. 여기에는 자체 프로세스가 없어 지켜볼 수 없는 Cursor와 Antigravity 앱의 내장 에이전트도 포함됩니다. 실제로 Mac에 설치된 도구만 제공되며, Keepresso는 시간이 지나면서 각 연결을 다시 확인해 사라지거나 오래된 후크를 복구합니다.

하지만 감지는 Keepresso가 알아볼 수 있는 에이전트만 다룰 수 있고, 새로운 에이전트는 매주 등장합니다. 리스는 방향을 뒤집습니다. Keepresso가 추측하는 대신, 에이전트 스스로가 언제, 무엇을 위해, 얼마 동안 Mac이 깨어 있어야 하는지 Keepresso에게 알려주고, 자신이 아직 살아 있음을 계속 증명합니다. 명령을 실행하거나 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 환경설정에서 리스가 꺼져 있음.

리스는 환경설정, Automation 아래의 스위치로 관리되며 기본값은 켜짐입니다. 이를 끄면 모든 획득이 종료 코드 4로 거부되므로, 자동화가 당신의 선택을 절대 무시할 수 없습니다.

메뉴에서 보고 멈추기

살아 있는 리스는 메뉴 패널의 상태 카드에 각각 카운트다운과 함께 나타납니다. 통제권은 당신에게 있습니다. Stop은 모두를 한 번에 종료하고, Mac은 다시 잠들 수 있습니다.

카운트다운이 포함된 활성 자동화 임대를 보여주는 Keepresso 메뉴
메뉴의 활성 임대: 작업, 도구 및 카운트다운.

클릭 한 번으로 에이전트 가르치기

이 모든 것을 에이전트에게 손수 설명할 필요는 없습니다. 앱 번들에는 keepresso 명령줄과 MCP 서버는 물론, 언제 사용해야 하는지(긴 빌드, 렌더링, 다운로드, 야간 실행 전)까지, 에이전트에게 전체 프로토콜을 가르쳐 주는 완성된 keep-awake 스킬이 들어 있습니다. 환경설정, Automation에서 이를 디스크에서 바로 에이전트의 스킬 폴더로 설치할 수 있습니다. 스킬 폴더가 없는 에이전트를 위해, Keepresso는 전체 스킬을 붙여 넣기 좋은 형태의 지침으로 대신 복사해 줍니다. 이를 에이전트에 한 번 붙여 넣으면 프로토콜을 익히거나, CLAUDE.mdAGENTS.md처럼 에이전트가 항상 읽는 전역 설정 파일에 저장해 두면 이후의 모든 세션이 언제 어떻게 Mac을 깨어 있게 할지 이미 알게 됩니다. 이 스킬은 직접 연결하고 싶다면 번들 안 Keepresso.app/Contents/Resources/AgentSkill/keep-awake에도 들어 있습니다.

Keepresso의 Automation 환경설정: Allow automation leases 스위치 켜짐, Allow automation to change the wake schedule 꺼짐, 에이전트 지침 복사·MCP 설정 복사·스킬 폴더 열기 버튼
Automation 환경설정: 리스 스위치, 깨우기 일정 선택 사항, 원클릭 에이전트 설정.

MCP 서버

Model Context Protocol을 사용하는 에이전트를 위해, 번들에는 keepresso-mcp가 들어 있습니다.

/Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

이는 리스를 획득, 하트비트, 반납, 나열하고, Keepresso의 상태를 읽고, 시스템 깨우기 일정을 읽는 도구를 노출합니다. MCP는 개방형 프로토콜이므로 코딩 에이전트에만 국한되지 않습니다. MCP를 지원하는 모든 앱이 자체 리스를 갖고 작업하는 동안 Mac을 깨어 있게 유지할 수 있습니다. 환경설정, Automation에는 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

읽기는 언제나 허용됩니다. 일정 변경은 환경설정, Automation 아래의 자동화가 깨우기 일정을 변경하도록 허용이 켜져 있을 때만 동작합니다. 예약 깨우기는 관리자 헬퍼가 적용하는 시스템 전체의 변경이므로 기본값은 꺼짐입니다. MCP 서버는 같은 규칙 아래 대응하는 도구를 제공합니다.

예약된 AI 실행을 위해 Mac 깨우기

리스와 CLI는 이미 실행 중인 작업을 다룹니다. 하지만 일부 에이전트 작업은 나중에 실행되도록 예약되어 있습니다. 새벽 3시에 실행하도록 설정된 Claude Desktop 루틴이나, 매일 밤 주기로 도는 Codex 자동화 같은 것입니다. 그 시간까지 Mac이 잠들어 버렸다면 실행은 그냥 건너뛰어집니다.

Scheduled AI runs는 스크립트 작성 없이 이 공백을 메웁니다. 환경설정, Automation, Scheduled AI runs에서 켠 다음, 깨우고 싶은 각 도구의 스위치를 켜세요. Keepresso는 해당 도구가 예약한 반복 작업을 읽어, 각 작업 몇 분 전에 Mac을 깨우고, 덮개가 닫혀 있어도 실행이 이루어지도록 짧은 시간 동안 깨어 있게 유지합니다.

Keepresso의 Scheduled AI runs 환경설정에 나열된 발견된 루틴들: Claude Desktop 작업 2개와 Codex 작업 1개, 각각 다음 실행 시간과 자체 스위치가 있으며, 그 위로 다음 깨우기 시간과 깨어 있는 시간 창이 표시됨
Keepresso가 찾은 루틴들, 각각 자체 스위치와 다음 실행 시간을 갖는다.

도구를 켜기 전까지는 아무것도 가져오지 않으며, 모든 루틴은 자체 스위치를 유지하므로 야간 보고서를 위해서만 깨우고 나머지는 무시할 수 있습니다. 목록이 비어 있다면 해당 도구에 아직 로컬 반복 작업이 없는 것입니다.

  • 도구별로 선택해서 켭니다. Claude Desktop과 Codex는 각각 기본적으로 꺼져 있으므로, 사용하지 않는 것이 깨워지는 일은 없습니다. 읽어 들이는 것은 일정과 작업 이름뿐이며, 프롬프트는 절대 읽지 않습니다.
  • 로컬 일정만 해당합니다. 클라우드 루틴은 Mac이 깨어 있든 아니든 공급자의 서버에서 실행되므로 무시됩니다. 이 기능은 당신의 Mac이 켜져 있어야 하는 실행을 위한 것입니다.
  • 더 긴 실행이라면 리스와 함께 사용하세요. 깨우기 시간 창이 실행을 시작시키고, 에이전트가 리스를 유지해 작업이 실제로 끝날 때까지 Mac을 깨어 있게 합니다.
루틴을 찾지 못한 Scheduled AI runs 화면. Claude Desktop의 Routines, New routine, Local에서 추가하거나 Codex에서 추가하라고 안내하며, 클라우드 루틴에는 깨우기가 필요 없다고 설명함
아직 깨울 대상이 없습니다. 로컬 루틴을 추가할 위치를 알려줍니다.

내부적으로는 위의 CLI keepresso wake 명령과 동일한 예약 깨우기 체계를 사용하므로 관리자 헬퍼가 필요하며, AC 전원에서는 안정적으로 동작합니다(배터리에서는 펌웨어가 깨우기를 건너뛸 수 있습니다).

필요한 것

  • 리스, MCP 서버, CLI 깨우기 명령에는 Keepresso 1.17 이상, Scheduled AI runs에는 1.18 이상이 필요합니다. 설치 방법: 시작하기.
  • DMG로 설치한 경우 CLI를 쓰려면 명령어를 한 번 링크하세요.
  • 깨우기 일정 변경과 Scheduled AI runs를 위해서는 관리자 헬퍼와 위의 선택적 스위치가 필요합니다.

관련 문서

Keepresso 받기

macOS 14 이상에서 무료로 사용할 수 있는 오픈소스 앱입니다. 설치하고 당신의 방식대로 Mac을 깨어 있게 하세요.

Keepresso 사용하기의 다른 가이드

정해진 시간 동안 Mac 깨어 있게 하기
타이머 절전 방지 세션을 시작해 다운로드나 렌더링을 위해 Mac을 깨어 있게 하고, 끝나면 스스로 잠들게 하세요.
덮개를 닫은 채로 MacBook 깨어 있게 하기
무료 오픈소스 앱으로, 외부 디스플레이도 전원 케이블도 없이 배터리로, 덮개를 닫아도 MacBook이 잠들지 않게 하세요.
스마트 트리거로 필요할 때만 깨어 있게 하기
앱이 실행 중일 때, 통화가 진행 중일 때, 전원이 연결되어 있을 때 등 조건을 설정해 Keepresso가 Mac을 깨어 있게 하도록 하세요. 필요 없을 때는 절대 켜지지 않습니다.
Zoom, Teams, Meet 통화 중 Mac이 잠들지 않게 하기
화상 통화 중에는 자동으로 Mac을 깨어 있게 해서, 브라우저 탭에서 하는 통화를 포함해 어떤 앱에서든 회의 도중 절대 잠들지 않게 하세요.