Show GN: AI 에이전트 돌려놓고 버스나 지하철에서 노트북 덮고 내리고 싶어서 만든 프로그램 LidGuard 제작기
(github.com/airtaxi)이동 중에 노트북으로 코딩을 자주 합니다. 특히 요즘은 Codex 같은 AI 코딩 에이전트에 시간이 좀 걸릴 일을 맡겨두는 경우가 많아졌습니다.
문제는 버스나 지하철에서 내릴 때였습니다.
프롬프트는 이미 던져뒀고, 에이전트는 아직 처리 중인데, 노트북 덮개를 닫으면 절전으로 들어가 작업이 끊길 수 있습니다. 그래서 종종 노트북을 반쯤만 접고 화면을 켠 채로 들고 내리거나, 잠깐 더 기다리거나, 그냥 작업을 끊고 다시 이어가곤 했습니다.
별것 아닌 불편처럼 보이지만, 반복되니 꽤 거슬리더라고요.
그래서 만든 것
LidGuard는 로컬 AI 코딩 에이전트가 작업 중일 때 노트북이 잠들지 않도록 막고, 작업이 끝나면 다시 원래 전원 정책으로 되돌리는 전원 관리 도구입니다.
대략 이런 흐름을 목표로 만들었습니다.
- 에이전트에게 오래 걸릴 작업을 맡깁니다.
- 이동해야 하면 노트북 덮개를 닫습니다.
- 에이전트 작업 중에는 절전과 덮개 닫힘 절전을 임시로 막습니다.
- 작업이 끝나면 원래 전원 설정을 복원합니다.
- 설정에 따라 절전 모드나 최대 절전 모드로 들어갑니다.
개인적으로는 마지막 부분이 제일 마음에 듭니다. 단순히 “덮개를 닫아도 계속 실행”에서 끝나면 결국 사용자가 나중에 다시 신경 써야 하는데, LidGuard는 에이전트 작업이 끝난 뒤 노트북도 같이 쉬게 만드는 쪽을 목표로 했습니다.
왜 따로 만들었나
기존 절전 방지 프로그램도 찾아봤습니다.
제가 찾아본 범위에서는 대부분 다음 중 하나에 가까웠습니다.
- 특정 프로세스가 실행 중이면 절전을 막는 방식
- 타이머를 켜두는 방식
- 사용자가 직접 켜고 끄는 방식
- 노트북 덮개가 열려 있을 때의 절전만 막는 방식
제가 원했던 건 조금 달랐습니다.
- 덮개를 닫았을 때의 절전 동작까지 임시로 바꾸기
- AI 에이전트 세션이 실제로 끝나는 타이밍을 알기
- 끝나면 원래 전원 정책으로 복원하기
- 필요하면 자동으로 절전 또는 최대 절전으로 보내기
그래서 지원되는 에이전트에서는 hook을 기반으로 작업 시작과 종료를 추적하도록 만들었습니다. “컴퓨터를 무조건 계속 켜두는 도구”라기보다는 “에이전트가 일하는 동안만 깨워두는 도구”에 가깝습니다.
넣어둔 기능들
처음에는 Windows에서 Codex만 잘 되면 충분하다고 생각했습니다. 제가 주로 쓰는 환경이 Windows이고, 에이전트도 거의 Codex라서요.
그런데 만들다 보니 이 문제가 꽤 일반적일 것 같아서 기능을 조금씩 더 붙였습니다.
- Windows, systemd/logind 기반 Linux, macOS 전원 제어
- Codex, Claude Code, GitHub Copilot CLI 연결
- 작업 종료 후 자동 절전 또는 최대 절전
- 닫힌 덮개 상태의 권한 요청 처리 설정
- 일정 시간 활동이 없는 세션의 절전 방지 해제
- 온도 센서 기준 긴급 최대 절전
제 노트북은 Windows on ARM이라 에이전트 작업 정도로는 가방 안에서 크게 뜨거워지지 않는 편입니다. 그래도 닫힌 노트북을 켜둔 채 이동하는 일은 조심해야 한다고 생각해서, 지원되는 환경에서는 온도가 일정 수준을 넘으면 즉시 최대 절전이나 절전을 시도하는 기능도 넣었습니다.
주의할 점
LidGuard가 “노트북을 아무렇게나 가방에 넣어도 된다”는 뜻은 아닙니다.
전원 관리, 온도 센서, 권한, 펌웨어, 운영체제 정책은 환경마다 다르게 동작할 수 있습니다. 긴급 최대 절전도 어디까지나 보조 안전장치에 가깝습니다.
덮개가 닫힌 상태에서 권한 요청을 자동 처리하는 설정도 사용할 수 있지만, 화면을 보지 않는 동안 작업이 진행될 수 있으니 신중하게 쓰는 쪽이 좋습니다.
현재 테스트 범위
가장 많이 테스트한 환경은 Windows + Codex입니다.
Linux, macOS, Claude Code, GitHub Copilot CLI 지원도 구현해두긴 했지만, 제가 모든 조합을 충분히 실사용해본 것은 아닙니다. 다른 운영체제나 다른 에이전트에서 써보다가 이상한 점을 발견하시면, 한국어로 작성해주셔도 괜찮으니 이슈로 남겨주시면 최대한 고쳐보겠습니다.
결국 LidGuard는 제가 이동하면서 AI 에이전트를 조금 더 편하게 쓰고 싶어서 만든 작은 도구입니다. 비슷하게 버스나 지하철, 카페, 회의실 이동 중에 “이 작업만 끝날 때까지 노트북이 잠들지 않았으면 좋겠다”는 상황을 겪어보신 분께도 도움이 되면 좋겠습니다.