5편 Hammerspoon은 시작일 뿐이다. 맥북 자동화를 생활 속으로 가져오는 방법
이번 시리즈는 단순히 Hammerspoon이라는 프로그램을 소개하기 위해 시작한 것이 아니었습니다.
집에 홈서버를 구축하고, Docker 기반으로 서비스를 운영하고, 외부에서 Tailscale을 이용해 SSH로 접속하는 과정에서 아주 작은 불편함 하나를 발견했습니다. 집에서는 VPN을 끄고, 외출하면 다시 켜야 하는 반복적인 작업이었습니다. 그 작은 불편함 하나가 결국 Hammerspoon이라는 자동화 도구를 만나게 했고, 자동화에 대한 생각 자체를 바꾸는 계기가 되었습니다.
이번 마지막 편에서는 지금까지 만든 프로젝트를 다시 정리하고, 앞으로 Hammerspoon으로 무엇을 자동화할 수 있는지 이야기해 보려고 합니다.

- ① 맥북 자동화는 작은 불편함에서 시작됐다. Hammerspoon을 선택하게 된 진짜 이유
- ② Hammerspoon 설치부터 첫 자동화까지
- ③ 집에서는 Tailscale 자동 종료, 외출하면 자동 실행
- ④ Polling은 왜 버리고 Event 기반 자동화를 선택했을까?
- ⑤ Hammerspoon은 시작일 뿐이다. 맥북 자동화를 생활 속으로 가져오는 방법
우리가 만든 것은 VPN 자동화가 아니었다.
처음 목표는 단순했습니다. 집에서는 Tailscale을 자동으로 종료하고, 외출하면 자동으로 실행하는 것이었습니다. 하지만 프로젝트를 진행할수록 이 자동화는 단순한 VPN 제어가 아니라 ‘맥북이 현재 상황을 스스로 판단하는 시스템’으로 발전했습니다.
처음에는 Wi-Fi 이름을 이용하려 했고, 이후에는 GPS도 고려했습니다. 하지만 실제 테스트를 거치면서 두 방법 모두 장기적으로는 불안정할 수 있다는 결론을 내렸습니다. 결국 홈서버가 보이면 집이라는 아주 단순한 기준이 가장 안정적이라는 것을 확인했습니다.
그리고 Polling 방식에서 Event 기반 구조로 변경하면서 자동화는 한 단계 더 발전했습니다. 이제는 30초마다 확인하지 않아도, 필요한 순간에만 반응하는 훨씬 효율적인 구조가 되었습니다.
좋은 자동화는 사람보다 먼저 움직인다.
자동화를 처음 시작하면 대부분은 ‘버튼을 누르면 실행되는 기능’을 떠올립니다. 하지만 오래 사용할 자동화는 조금 다릅니다. 사용자가 버튼을 누르기 전에 먼저 상황을 판단하고 필요한 작업을 준비합니다.
이번 프로젝트가 바로 그런 사례였습니다. 사용자가 VPN을 켜야겠다고 생각하기 전에 맥북이 먼저 외부라는 사실을 판단하고 Tailscale을 실행합니다. 반대로 집에 돌아오면 VPN을 끄는 것도 사용자가 아니라 자동화가 먼저 처리합니다.
좋은 자동화는 존재감을 드러내지 않습니다. 사용자가 ‘언제 실행됐지?’라고 느낄 정도로 자연스럽게 동작할 때 가장 성공적인 자동화라고 생각합니다.

Hammerspoon으로 할 수 있는 일은 훨씬 많다.
이번 시리즈에서는 Tailscale만 다뤘지만 Hammerspoon은 그보다 훨씬 다양한 자동화를 만들 수 있습니다.
- 집 Wi-Fi 연결 시 NAS 자동 마운트
- 외장 모니터 연결 시 창 위치 자동 정렬
- 배터리 부족 시 특정 프로그램 자동 종료
- 출근 시간에 업무 프로그램 자동 실행
- 퇴근 후 개발 환경 자동 실행
- 절전 해제 시 Docker Desktop 실행
- Obsidian과 VS Code 자동 실행
- 회의 시작 전 마이크와 카메라 설정 변경
- 특정 시간 방해 금지 모드 활성화
- 백업 스크립트 자동 실행
중요한 것은 기능의 개수가 아닙니다. 자신이 반복하는 작업을 하나씩 줄여 나가는 것이 핵심입니다. 처음에는 하루 5초를 절약하는 수준일 수 있습니다. 하지만 그런 자동화가 10개, 20개가 되면 맥북을 사용하는 방식 자체가 달라집니다.
홈서버를 운영한다면 Hammerspoon은 더욱 가치가 있다.
이번 프로젝트를 진행하면서 가장 크게 느낀 점은 홈서버와 Hammerspoon의 궁합이 매우 좋다는 것이었습니다.
홈서버를 운영하면 SSH 접속, Docker 관리, 로그 확인, 백업, 업데이트처럼 반복적인 작업이 계속 생깁니다. 대부분은 터미널 명령 몇 줄이면 끝나는 일이지만, 반복된다는 점에서는 모두 자동화 대상입니다.
예를 들어 앞으로는 다음과 같은 자동화도 계획하고 있습니다.
- 맥북을 켜면 개발 환경 자동 준비
- SSH 접속 전 필요한 프로그램 자동 실행
- Docker 상태 자동 점검
- 백업 완료 알림
- n8n 테스트 환경 자동 구성
- Git 저장소 자동 업데이트
이런 자동화는 각각은 작은 기능이지만, 모두 합쳐지면 개발과 서버 운영에 사용하는 시간을 크게 줄여 줍니다.

이 시리즈를 시작하며 세운 원칙
이번 시리즈를 작성하면서 한 가지 원칙을 세웠습니다.
자동화는 화려한 기능보다 오래 사용할 수 있는 구조가 중요하다.
그래서 완성된 코드만 보여주지 않았습니다. 처음에 어떤 방법을 시도했고, 왜 실패했는지, 그리고 왜 다른 방법을 선택했는지까지 모두 기록했습니다.
실제 프로젝트에서는 정답만 배우는 것보다 실패한 이유를 이해하는 것이 훨씬 중요합니다. 그래야 비슷한 상황을 만났을 때 스스로 해결할 수 있기 때문입니다.
다음 프로젝트는 이미 시작됐다.
이 시리즈는 끝났지만 자동화는 이제 시작입니다.
앞으로는 Hammerspoon을 이용해 홈서버 운영 환경 전체를 조금씩 자동화할 계획입니다. Docker를 실행하고, 개발 환경을 준비하고, SSH 작업을 줄이고, 반복되는 관리 업무를 하나씩 없애는 과정도 계속 기록하려고 합니다.
궁극적인 목표는 단순히 ‘자동화 프로그램을 사용하는 것’이 아니라, 맥북이 사용자의 작업 패턴을 이해하고 먼저 준비하는 환경을 만드는 것입니다. Hammerspoon은 그 목표를 실현하기 위한 가장 강력한 도구 중 하나였습니다.

시리즈를 마치며
이번 시리즈는 Hammerspoon 사용법을 배우는 강좌가 아니라 하나의 프로젝트를 기록한 개발 일지였습니다. 작은 불편함 하나에서 출발해 문제를 분석하고, 여러 방법을 비교하고, 실패를 반복하면서 더 나은 구조를 찾아가는 과정 자체가 이번 시리즈의 핵심이었습니다.
혹시 지금 맥북을 사용하면서 반복적으로 하는 작업이 하나라도 있다면, 그것이 바로 다음 자동화 프로젝트가 될 수 있습니다. 거창한 목표를 세우지 않아도 괜찮습니다. 하루에 한 번 하는 반복 작업 하나만 자동화해도 충분합니다. 그 작은 변화가 결국 더 큰 자동화로 이어지고, 언젠가는 컴퓨터가 사용자를 먼저 이해하는 환경을 만들게 될 것입니다.
시리즈 요약
- 1편 : 왜 Hammerspoon을 사용하게 되었는가
- 2편 : 설치와 첫 번째 자동화 설계
- 3편 : Tailscale 자동화 프로젝트 구축
- 4편 : Polling에서 Event 기반으로 개선
- 5편 : 자동화를 생활 속으로 확장하는 방법
참고할 만한 공식 자료
- Apple Developer – Automating Your Mac – 맥북 자동화와 관련된 공식 애플 개발자 문서로, Hammerspoon과 같은 도구를 활용한 Mac 자동화에 대한 신뢰성 높은 정보를 제공하기 때문입니다.
- Tailscale 공식 문서 – 본문에서 다루는 Tailscale VPN 자동화에 관한 공식 자료로, Tailscale의 기능과 사용법을 정확하게 이해하는 데 도움이 되기 때문입니다.
더 많은 프로그램 활용법은 Program 카테고리에서 확인할 수 있습니다.




