매일 Claude 5시간 제한을 채우고도 매주 할당량을 낭비하던 중, 잠자는 동안 이를 소진해 주는 도구를 만들었습니다
요약
Claude Code의 일일 및 주간 사용량 제한을 효율적으로 활용하기 위해, 밤사이에 질문을 자동으로 처리해 주는 'claude-overnight' 도구를 소개합니다. 사용자가 낮 동안 쌓아둔 질문 큐를 스케줄러가 밤에 실행하여 아침에 요약 보고서로 제공합니다.
핵심 포인트
- Claude Code의 사용량 제한을 최적화하는 자동화 도구 개발
- 밤사이에 질문을 실행하고 아침에 마크다운 보고서로 결과 제공
- Git 워크트리를 활용하여 안전한 코딩 작업 수행 가능
- 문서화되지 않은 OAuth 토큰을 활용해 사용량 및 초기화 시간 확인
- 할당량 소진을 방지하기 위한 지능적인 실행 제어 로직 포함
여러분 중 많은 분들처럼 저도 대부분의 날에 5시간 제한(5-hour cap)에 도달합니다. 실제로 저를 짜증 나게 했던 점은 주간 제한(weekly limit)이 그와 일치하지 않는다는 사실을 깨달은 것이었습니다. 매일 제한에 걸림에도 불구하고, 매주 할당량이 남은 채로 한 주를 마쳤습니다. 비용을 지불했음에도 불구하고 할당량은 밤사이에 만료되어 버립니다.
그래서 저는 claude-overnight를 만들었습니다. 낮 동안 질문을 큐(queue)에 쌓아둡니다. 예를 들어 Claude Code 내에서 바로 /queue how do sqlite WAL checkpoints work?라고 입력하면, 제 제한이 초기화되는 밤에 스케줄러가 구독 중인 claude -p를 통해 질문들을 실행합니다. 아침이 되면 실행된 내용과 결과에 대한 마크다운(markdown) 보고서와 요약본이 제공됩니다.
모든 작업은 Claude 세션을 저장하므로, overnight resume <id>를 통해 보고서를 작성한 대화를 다시 열 수 있습니다. 커피를 마시며 그 결론에 대해 AI와 논쟁할 수도 있습니다. 또는 overnight followup <id> "go deeper on X"라고 입력하면 다음 날 밤에 작업을 계속합니다.
코딩 작업도 가능합니다. 이 작업들은 제가 명시적으로 신뢰한 저장소(repo)에 대해서만 overnight/* 브랜치의 일회용 git 워크트리(worktree)에서 실행되므로, 에이전트(agent)가 저의 작업 트리(working tree)를 건드리는 일은 절대 없습니다. 아침에 검토할 때는 그저 git diff main..overnight/whatever만 확인하면 됩니다.
공식 API가 없는데 어떻게 제한량을 읽어오는지 궁금해하실 분들이 있을 것입니다. Claude Code는 OAuth 토큰을 로컬에 저장하며(Mac의 경우 Keychain, 그 외에는 ~/.claude/.credentials.json), 해당 토큰과 anthropic-beta: oauth-2025-04-20 헤더를 사용하여 GET https://api.anthropic.com/api/oauth/usage를 호출하면 5시간 제한 및 주간 사용량과 초기화 시간을 반환받을 수 있습니다. 메뉴바 트래커들이 사용하는 것과 동일한 트릭입니다. 이는 문서화되지 않은 방식이며, 제가 이것을 만드는 동안 응답 형태(response shape)가 이미 한 번 바뀌었기 때문에, 도구는 이 방식 없이도 작동할 수 있도록 설계되었습니다.
제가 가장 신경 쓴 설계 제약 조건은 '내 아침 할당량을 잡아먹지 않는 것'이었습니다. 이 도구는 5시간 윈도우(window)의 20%를 초과할 때는 시작하지 않으며, 60%에 도달하면 중단하고, 주간 할당량이 80%를 넘어가면 아예 건너뛰며, 작업 사이에 다시 확인 과정을 거칩니다.
아침이 되면 브라우저에 전체 배치(batch) 작업 내역이 담긴 페이지가 열립니다. 어떤 작업이 실행되었는지, 얼마나 걸렸는지, 각 작업에 대한 재개(resume) 명령어가 무엇인지, 그리고 모든 보고서가 인라인(inline)으로 렌더링되어 있어 잠이 덜 깬 상태에서 파일을 일일이 클릭하며 확인할 필요가 없습니다.
https://github.com/rohanprichard/claude-overnight에서 확인해 보세요.
솔직히 여러분은 밤새 어떤 작업들을 대기열(queue)에 쌓아두실지 궁금하네요. 알려주세요!
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기