Capsomnia는 MacBook의 Caps Lock 키를 닫힌 상태 작업 유지 스위치로 바꾸는 macOS 메뉴바 앱이다. Caps Lock이 켜져 있으면 MacBook 뚜껑을 닫아도 AI 에이전트, SSH 세션, 빌드, 다운로드, 장기 실행 스크립트가 계속 돌고, Caps Lock LED가 현재 상태를 물리적으로 보여준다.
동작 방식
| 상태 | 동작 |
|---|---|
| Caps Lock 켜짐 | 시스템 sleep을 막아 닫힌 MacBook에서도 작업 유지 |
| Caps Lock 꺼짐 | 정상 sleep 동작 복구 |
| 뚜껑 닫힘 + 외부 디스플레이 없음 | 필요 시 display만 sleep 처리 |
| 앱 종료 | 정상 sleep 동작으로 복구 |
Codex Mobile이나 원격 SSH로 로컬 Mac에서 돌아가는 에이전트를 계속 두고 싶을 때 유용하다. caffeinate는 일반적인 idle sleep 방지에는 좋지만, MacBook 뚜껑을 닫는 상황에서는 충분하지 않을 수 있다는 문제의식에서 나온 도구다.
설치
공식 릴리스의 Capsomnia.pkg는 Apple Developer ID로 서명되고 notarize된 패키지다. 설치하면 /Applications/Capsomnia.app, sleep 제어용 privileged helper, 좁은 sudoers rule, LaunchAgent가 구성된다.
소스 설치도 가능하다.
git clone https://github.com/fuji-mak/Capsomnia.git
cd Capsomnia
./scripts/install.sh요구 사항은 Apple Silicon Mac, macOS 14 이상, 설치 중 관리자 권한이다.
보안 모델
Capsomnia 메뉴바 앱 자체는 root로 실행되지 않는다. sleep 설정 변경에는 권한이 필요하므로, 앱은 제한된 native helper를 passwordless sudo로 호출한다. 허용된 명령은 on, off, display-sleep 세 가지이고, 내부적으로 pmset의 sleep disable/enable과 display sleep만 실행한다.
앱은 네트워크 요청, telemetry, 계정 요구가 없다고 설명한다. Input Monitoring 권한도 필요하지 않으며, 로컬 Caps Lock 상태를 250ms 간격으로 확인한다.
주의할 점
닫힌 MacBook에서 작업을 계속 돌리면 발열과 배터리 사용량이 늘 수 있다. 장시간 작업에는 전원과 통풍을 확보해야 하고, 중요한 작업의 백업이나 재시작 전략을 Capsomnia가 대신해주지는 않는다.
관련 문서
- codex — OpenAI Codex
- claude-code — Claude Code
- ai-code-understanding-tips — 에이전트가 쓴 코드를 이해하는 병목
참고 자료
- Capsomnia — 공식 사이트 (2026-07-16 확인)
- fuji-mak/Capsomnia — GitHub 공식 저장소