Claude Code, Codex, Cursor를 같이 쓰다 보니 한도를 확인하려고 서비스마다 페이지를 열어야 하는 게 번거로워서 만든 Electron 위젯입니다. 서비스마다 도트 용사가 한 명씩 나오고, 남은 사용량이 곧 HP입니다. 에이전트가 일하면 용사가 싸우고, 쉬면 모닥불 앞에서 쉽니다. macOS와 Windows에서 무료로 쓸 수 있습니다.
사용량을 읽는 방법
- Codex: CLI가 ~/.codex/sessions에 남기는 rate_limits를 읽습니다. 이 기록은 그 컴퓨터에서 대화가 끝날 때만 갱신돼서 웹·클라우드·다른 기기에서 쓴 양이 빠집니다. 그래서 auth.json의 토큰으로 사용량도 서버에 물어봅니다(토큰은 읽기만 하고 갱신하지 않습니다). 서버 값을 못 쓰면 기록 값으로 돌아가고, 메뉴에서 끌 수도 있습니다.
- Claude: Claude Code 로그인(키체인/자격 파일) 또는 앱 안의 claude.ai 로그인으로 사용량만 조회합니다.
- Cursor: Cursor 설정 DB(state.vscdb)의 로그인 토큰으로 대시보드 사용량을 조회합니다.
- 용사가 싸우는지는 에이전트가 파일을 쓰는 시각만 보고, 내용은 읽지 않습니다. 제 서버는 없고, 앱은 아무것도 수집하지 않습니다.
만들면서 겪은 문제
- net.fetch의 공유 쿠키: Electron의 net.fetch는 앱 전체가 공유하는 쿠키 보관함을 같이 씁니다. 어느 날 Cursor 조회만 계속 401이었는데, 토큰은 60일 남아 있었고 같은 요청을 쿠키 없이 보내면 200이었습니다. 보관함에 쌓인 보안 쿠키(_vcrr_*)가 요청에 같이 실려 가던 것이 원인이었고, 이제 조회 요청은 credentials: 'omit'으로 보냅니다.
- 열려 있는 파일에 덧붙여 쓰는 로그: macOS에서 fs.watch는 이미 열린 파일에 계속 덧붙여 쓰는 경우 알림이 오지 않았습니다. 짧은 간격으로 stat을 보는 방식을 같이 써서 "지금 일하는 중"을 판단합니다.
- 서비스 쪽 변경이 잦아서, 조회 상태가 바뀔 때만 원인을 이 컴퓨터의 로그 파일에 남깁니다(토큰·이메일은 지우고 저장, 전송하지 않음).
한계
- Claude와 Cursor의 사용량 조회는 공식 공개 API가 아니라서 형식이 바뀌면 멈출 수 있습니다.
- 윈도우는 맥보다 덜 테스트했습니다.
기타
- 용사·배경·적은 JSON 팩 형식이라 직접 만들어 넣을 수 있습니다(12×12 문자 그리드 + 팔레트).
- 앱은 무료입니다. 꾸미기 팩은 레벨을 올리면 대부분 열리고, 바로 쓰려면 일회성 결제(₩6,900, 구독 없음)가 있습니다.
- 한국어/영어를 지원합니다.
받기: https://token-slayer.vercel.app (맥/윈도우, 설치 후 자동 업데이트)
써 보시고 이상한 동작이 있으면 알려 주세요. 특히 윈도우에서의 문제가 궁금합니다.