Claude Code를 사용하여 시계 옆에 클로드 사용량(5시간 및 주간)을 표시하는 작은 Windows 작업 표시줄 위젯 제작
요약
작성자는 Claude 사용량을 Windows 작업 표시줄에 표시하는 경량 위젯을 제작했습니다. 이 위젯은 Rust와 네이티브 Windows API를 사용하여 구현되었으며, Claude Code의 도움으로 계획 수립부터 코드 작성까지 진행되었습니다. 5시간 및 주간 사용량을 실시간으로 보여주며, 남은 양과 색상 경고 기능을 제공합니다.
핵심 포인트
- Windows 작업 표시줄에 네이티브 위젯을 구현하기 위해 Rust와 Windows API를 활용했습니다.
- Claude Code가 최적의 개발 방식을 결정하고 코드 작성 과정에서 핵심적인 역할을 수행했습니다.
- 사용량 초과 임계치(80%, 95%)에 따라 색상 경고 기능을 제공합니다.
- 설치 프로그램 없이 작동하며, 매우 가볍게 설계되었습니다 (~300 KB exe).
웹에서 계속해서 사용량을 확인하고 있었기 때문에, 저는 이를 Windows 작업 표시줄에 보이도록 하는 작은 위젯을 만들었습니다(~300 KB exe, ~3 MB RAM, 설치 프로그램 없음).
작동 방식:
- 시계 바로 옆에 5시간 및 주간 사용량을 표시합니다.
- 80%에서 주황색으로, 95%에서 빨간색으로 변합니다.
- 마우스를 올리면 초기화 시간을 보여줍니다.
- 업데이트 간격을 30초에서 30분으로 설정할 수 있으며, 사용량을 표시하는 대신 남은 양을 보여주는 옵션도 있습니다.
- 밝은 작업 표시줄과 어두운 작업 표시줄 모두 지원합니다.
- 간단 요약: ~300 KB exe, ~3 MB RAM, 설치 프로그램 없음
Claude Code가 도움을 준 방식:
저는 Claude Code (Opus)를 사용하여 이 모든 것을 만들었습니다.
- 계획: Windows 11 작업 표시줄에 텍스트를 넣는 가장 가볍고 네이티브한 방법을 요청했습니다. Windows 11은 작업 표시줄에 무언가를 추가하는 이전 공식적인 방법(deskbands)을 제거했습니다. Claude Code는 대안들을 비교했고, 내장된 Windows API만을 사용하여 Rust로 작성된 작고 투명한 창을 작업 표시줄 안에 배치하는 방식을 결정했습니다.
- 데이터: 사용량 숫자가 Claude Code의
/usage명령어가 사용하는 것과 동일한 엔드포인트에서 나온다는 것이 밝혀졌고, 테스트 호출을 통해 응답 형식이 확인되었습니다. - 로그인 공유: Claude Code가 자체 로그인을 갱신하는 방식을 살펴보고, 위젯도 같은 방식으로 갱신하고 같은 잠금(lock)을 사용하도록 했습니다. 이렇게 하면 두 애플리케이션이 충돌하지 않습니다.
- 코드 및 테스트: Rust 코드를 작성한 다음, 작업 표시줄의 스크린샷을 찍어 어떻게 보이는지 확인했습니다. 이를 통해 작은 크기에서 로고가 흐릿하게 보이는 문제 등을 수정했고, 마우스 오버(hover), 툴팁(tooltip), 메뉴도 테스트했습니다.
- 배포: README와 GitHub 저장소, 그리고 릴리스를 설정했습니다. 제가 한 부분은 디자인을 제공하고, 기능을 결정하며, 검토하는 것이었습니다.
무료 사용:
이것은 무료이며 오픈 소스(MIT)입니다. 최신 릴리스에서 exe를 다운로드하여 더블클릭하세요: https://github.com/AbdoSarmini/claude-usage-widget-for-windows-taskbar
기존 Claude Code 로그인 정보를 사용하므로 별도의 설정이 필요하지 않습니다. Pro 또는 Max 플랜으로 Claude Code에 로그인만 되어 있으면 됩니다.
Windows는 exe가 서명되지 않았기 때문에 첫 실행 시 "PC 보호" 경고를 표시할 수 있습니다. '추가 정보(More info)' → '어쨌든 실행(Run anyway)'을 클릭하거나 소스에서 직접 빌드하세요. 별점을 주시면 감사하겠습니다.
피드백과 아이디어를 환영합니다! 제출자: /u/abdosarmini92 [link] [comments]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/ClaudeAI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기