onllm-dev/onWatch
요약
onWatch는 개발자를 위한 무료 오픈 소스 AI API 할당량 모니터링 도구로, Anthropic, Gemini, GitHub Copilot 등 다양한 AI 서비스의 사용량과 지출을 한곳에서 추적할 수 있습니다. 로컬 웹 대시보드와 경량 백그라운드 에이전트를 통해 데이터 보안을 유지하며, API 통합을 통해 자체 워크플로우의 텔레메트리 수집도 지원합니다.
핵심 포인트
- Anthropic, Gemini, Cursor, GitHub Copilot 등 다수의 AI API 제공업체 통합 지원
- 로컬 SQLite 기반 저장 및 텔레메트리 전송 없는 개인정보 보호 중심 설계
- 50MB 미만의 낮은 RAM 사용량을 가진 경량 백그라운드 에이전트
- Material Design 3 기반의 로컬 웹 대시보드 제공
- macOS, Linux, Windows를 지원하는 단일 바이너리 설치 방식
개발자를 위한 무료 오픈 소스 AI API 할당량 모니터링 도구.
Synthetic, Z.ai, Anthropic, Codex, GitHub Copilot, MiniMax, Gemini CLI, Cursor, Antigravity의 사용량을 한곳에서 추적하세요. Throttling(속도 제한)에 걸리거나 예산을 초과하기 전에 사용 이력을 확인하고, 알림을 받으며, 로컬 웹 대시보드를 열어볼 수 있습니다. 또한, API Integrations(API 통합)를 통해 자체 API 기반 워크플로우의 로컬 텔레메트리(Telemetry)를 수집하여 여러 제공업체에 걸친 토큰 사용량과 지출을 추적할 수 있습니다.
링크: Website | Buy Me a Coffee
신뢰 및 품질
호환성 및 문서
onWatch는 "현재 사용량 스냅샷"과 개발자에게 실제로 필요한 "이력 기반의 사이클별, 교차 세션 뷰" 사이의 간극을 메워줍니다. 이 도구는 경량 백그라운드 에이전트(9개 제공업체를 병렬로 폴링할 때 RAM 사용량 50MB 미만)로 실행되며, SQLite에 이력 데이터를 저장하고, 다크/라이트 모드를 지원하는 Material Design 3 웹 대시보드를 제공합니다.
Cline, Roo Code, Kilo Code, Claude Code, Codex CLI, Cursor, GitHub Copilot, MiniMax Coding Plan, Antigravity 등을 포함하여 Synthetic, Z.ai, Anthropic, Codex, GitHub Copilot, MiniMax, Gemini CLI, Cursor 또는 Antigravity API 키를 사용하는 모든 도구와 함께 작동합니다.
텔레메트리 전송 없음. 단일 바이너리. 모든 데이터는 사용자의 기기에 머뭅니다.
베타: onWatch는 현재 활발히 개발 중입니다. 제품을 개선함에 따라 기능과 API가 변경될 수 있습니다.
onWatch가 AI 지출을 추적하는 데 도움이 되었다면, 별(Star)을 눌러주세요. 다른 사람들이 프로젝트를 발견하는 데 도움이 됩니다.
Powered by onllm.dev | Landing Page
한 줄 설치:
curl -fsSL https://raw.githubusercontent.com/onllm-dev/onwatch/main/install.sh | bash
이 명령은 바이너리를 ~/.onwatch/에 다운로드하고, .env 설정을 생성하며, systemd 서비스(Linux)를 설정하거나 자체 데몬화(macOS)를 수행하고, onwatch를 PATH에 추가합니다.
macOS의 경우, 설치 프로그램이 메뉴바 지원 기능이 포함된 표준 바이너리를 다운로드합니다.
brew install onllm-dev/tap/onwatch
onwatch setup # API 키 및 설정을 위한 대화형 설정 마법사
한 줄 설치 (PowerShell):
irm https://raw.githubusercontent.com/onllm-dev/onwatch/main/install.ps1 | iex
또는 Releases 페이지에서 install.bat를 다운로드하여 더블 클릭하세요.
이 과정은 바이너리 (binary)를 %USERPROFILE%\.onwatch\에 다운로드하고, API 키를 위한 대화형 설정 (interactive setup)을 실행하며, .env 설정 파일을 생성하고, onwatch를 PATH에 추가합니다.
수동 설정 또는 문제 해결을 원하시면 Windows 설정 가이드를 참조하세요.
바이너리 다운로드는 Releases 페이지에서 가능합니다. 바이너리는 macOS (ARM64, AMD64), Linux (AMD64, ARM64), 그리고 Windows (AMD64)용으로 제공됩니다.
또는 소스에서 빌드 (Go 1.25+ 필요):
git clone https://github.com/onllm-dev/onwatch.git && cd onwatch
cp .env.example .env # 그 다음 API 키를 추가하세요
./app.sh --build && ./onwatch --debug # 또는: make build && ./onwatch --debug
또는 Docker 사용 (Docker 또는 Docker Compose 필요):
cp .env.docker.example .env # API 키를 추가하세요
docker-compose up -d
또는 app.sh를 통해 실행:
./app.sh --docker --run
Docker 이미지(Docker image)는 distroless 베이스(~10-12 MB)를 사용하며 non-root 권한으로 실행됩니다. 셸 (shell) 접근이 가능한 Alpine 변체(ghcr.io/onllm-dev/onwatch:alpine)도 제공됩니다. 데이터는 /data 경로의 볼륨 마운트 (volume mount)를 통해 유지됩니다. 로그는 stdout으로 출력됩니다 (docker logs -f onwatch). 자세한 내용은 Docker 배포 (Docker Deployment)를 참조하세요.
~/.onwatch/.env를 편집하세요 (소스에서 빌드한 경우 프로젝트 디렉토리의 .env 편집):
SYNTHETIC_API_KEY=syn_your_key_here # https://synthetic.new/settings/api
ZAI_API_KEY=your_zai_key_here # https://www.z.ai/api-keys
ANTHROPIC_TOKEN=your_token_here # Claude Code 자격 증명에서 자동 감지됨
...
최소 하나 이상의 제공자 키 (provider key)가 필요합니다. 병렬로 추적하려면 원하는 조합으로 구성하세요. Anthropic 토큰은 Claude Code 자격 증명 (macOS Keychain, Linux keyring, 또는 ~/.claude/.credentials.json)에서 자동으로 감지됩니다. Codex 전용 설정의 경우, .env에 CODEX_TOKEN을 설정하세요. 실행 중 onWatch는 ~/.codex/auth.json (또는 CODEX_HOME/auth.json)에서 Codex 인증 상태를 다시 읽어옵니다.
) 및 토큰 변경 사항을 감지합니다. Copilot 토큰은 copilot 스코프(scope)가 포함된 GitHub Personal Access Token (classic)이 필요합니다.
프로바이더(Provider) 설정 가이드:
- Windows Setup Guide - 상세한 Windows 설치 및 수동 설정
- Codex Setup Guide
- Copilot Setup Guide
- MiniMax Setup Guide
- Antigravity Setup Guide
- Cursor Setup Guide
- API Integration Setup Guide
onwatch # 백그라운드에서 시작 (데몬화, ~/.onwatch/data/.onwatch.log에 로그 기록)
onwatch --debug # 포그라운드 모드, stdout에 로그 기록
onwatch stop # 실행 중인 인스턴스 중지
...
**http://localhost:9211**을 열고 .env 자격 증명으로 로그인하세요.
┌──────────────────────────────────────────────────────────────────┐
│ 프로바이더가 보여주는 항목 │ onWatch가 추가하는 항목 │
├───────────────────────────────────┼──────────────────────────────┤
...
대시보드 (Dashboard) -- 다크/라이트 모드(시스템 설정 자동 감지)를 지원하는 Material Design 3가 적용되었습니다. 설정된 각 프로바이더(Provider)에 대한 탭이 나타납니다:
Synthetic -- 구독(Subscription), 검색(Search), 및 도구 호출(Tool Call) 할당량 카드
Z.ai -- 토큰(Tokens), 시간(Time), 및 도구 호출(Tool Call) 할당량 카드
Anthropic -- 사용률(%)이 포함된 동적 할당량 카드(5시간, 7일, 7일 Sonnet, 월간 등), OAuth 토큰 자동 갱신, 그리고 토큰 로테이션(rotation)을 통한 자동 속도 제한(rate limit) 우회 기능
Codex -- OAuth 인증 상태 갱신, 이력 주기 분석(historical cycle analytics), 그리고 여러 ChatGPT 계정을 추적하기 위한 다중 계정 지원 (Beta) 기능이 포함된 동적 할당량 카드 (LLM, 리뷰 요청)
GitHub Copilot (Beta) -- 월간 초기화 추적 기능이 포함된 프리미엄 상호작용(Premium Interactions), 채팅(Chat), 및 완성(Completions) 할당량 카드
MiniMax Coding Plan -- 5시간 이동 창(rolling window) 초기화 주기를 가진 M2, M2.1, M2.5 모델의 공유 할당량 풀(quota pool) 추적, 그리고 대시보드 UI를 통해 여러 MiniMax 구독을 추적하기 위한 다중 계정 지원
Gemini CLI (Beta) -- 24시간 초기화 주기를 가진 Gemini 2.5/3.x Pro, Flash, 및 Flash Lite 모델에 대한 모델별 할당량 추적
Antigravity -- 그룹화된 할당량 풀(quota pools)을 포함한 멀티 모델 할당량 카드 (Claude, Gemini, GPT),
로깅 히스토리(logging history), 그리고 사이클 개요(cycle overview)Cursor-- Cursor Desktop SQLite 또는 macOS Keychain/Linux keyring에서 자동으로 감지된 자격 증명, OAuth 토큰 자동 갱신, 소진율(burn rate) 예측, 온디맨드 지출 추적을 통한 개인(Individual), 팀(Team), 엔터프라이즈(Enterprise) 계정 추적API Integrations-- 커스텀 API 기반 워크플로우 및 자동화를 위한 로컬 JSONL 인제스션(ingestion). 통합별 토큰 볼륨, 요청 횟수, 최근 활동, 비용, 트렌드, 그리고 별도의 API 키 및 제공업체(provider) 전반에 걸친 누적 사용량을 추적합니다.All-- 구성된 모든 제공업체의 나란히 보기(side-by-side view)Prometheus metrics endpoint (Beta)-- Prometheus/Grafana/Alertmanager 통합을 위해 /metrics를 노출하며, ONWATCH_METRICS_TOKEN을 통한 선택적 베어러 토큰(bearer token) 보호를 지원합니다.
PWA 설치 가능-- 네이티브 앱 경험을 위해 브라우저에서 onWatch를 설치할 수 있습니다 (Beta)
각 할당량 카드(quota card)에는 다음 항목이 표시됩니다: 진행률 표시줄과 함께 표시되는 한도 대비 사용량, 리셋까지의 실시간 카운트다운, 상태 배지(정상/경고/위험/심각), 그리고 예상 사용량이 포함된 소비율.
시계열 차트 (Time-series chart) -- 모든 할당량을 한도 대비 %로 보여주는 Chart.js 영역 차트(area chart). 시간 범위: 1시간, 6시간, 24시간, 7일, 30일.
API Integrations 차트 -- 커스텀 API 기반 스크립트를 위한 전용 텔레메트리(telemetry) 뷰. 요청당 토큰, 요청 횟수, 누적 토큰 사용량, 그리고 가능한 경우 비용 간의 전환이 가능합니다.
인사이트 (Insights) -- 소진율(burn rate) 예측, 청구 기간 평균, 사용량 변동, 트렌드 감지
) 및 일반 설정, 제공자 제어, 알림 임계값(thresholds), SMTP 이메일 설정 탭이 포함되어 있습니다.
커스텀 API 통합 (Custom API Integrations) 설정 -- 자체 API 호출을 감싸는 작은 래퍼(wrapper)를 사용하여 정규화된 JSONL 이벤트를 ~/.onwatch/api-integrations/에 추가합니다.
그 다음, API 통합(API Integrations) 탭을 열어 누적 및 최근 사용량을 모니터링하세요. 전체 설정 지침은 docs/API_INTEGRATIONS_SETUP.md에 있습니다.
메뉴바 (Menubar) (macOS, Beta) -- macOS 빌드에는 두 가지 사전 설정된 뷰를 포함하는 메뉴바 컴패니언(companion)이 포함되어 있습니다:
표준 (Standard) -- 원형 할당량 미터(quota meters)와 리셋 메타데이터가 포함된 제공자 카드
상세 (Detailed) -- 스파크라인(sparkline) 트렌드와 전체 할당량 세부 내역이 포함된 확장된 제공자 카드
Settings > Menubar에서 구성할 수 있습니다. 컴패니언을 활성화하거나 비활성화할 수 있으며, 기본 뷰를 선택하고, 새로고침 및 임계값 설정을 변경하고, 원하는 순서대로 제공자를 드래그할 수 있습니다.
메뉴바는 현재 베타 버전입니다. 피드백은 github.com/onllm-dev/onwatch/issues를 통해 적극적으로 환영합니다.
이메일 알림 (Email notifications) (Beta) -- 할당량이 경고 또는 임계값(critical thresholds)을 초과하거나 할당량이 리셋될 때 알림을 받도록 SMTP를 구성합니다. 세밀한 제어를 위해 할당량별 임계값 재정의(threshold overrides)가 가능합니다. SMTP 비밀번호는 AES-GCM으로 저장 시 암호화됩니다.
푸시 알림 (Push notifications) (Beta) -- 할당량이 임계값을 초과할 때 브라우저 푸시 알림을 받습니다. onWatch는 PWA (Progressive Web App)입니다. 네이티브 앱 경험을 위해 브라우저에서 설치하세요. 외부 의존성 없이 Web Push 프로토콜 (VAPID)을 사용합니다. 선호에 따라 전달 채널(이메일, 푸시 또는 둘 다)을 구성할 수 있습니다.
다크/라이트 모드 (Dark/Light mode) -- 헤더의 해/달 아이콘을 통해 전환합니다. 첫 방문 시 시스템 설정을 자동으로 감지하며 세션 전반에 걸쳐 선택 사항이 유지됩니다.
비밀번호 관리 (Password management) -- 대시보드에서 비밀번호를 변경할 수 있습니다. 해시(hash)는 SQLite에 저장되며 재시작 후에도 유지됩니다 (.env보다 우선순위가 높음).
강제 리셋을 하려면 users 테이블에서 해당 행을 삭제하세요.
Single binary (단일 바이너리) -- 런타임 의존성 없음. 모든 템플릿과 정적 자산은 embed.FS를 통해 내장됨.
. 순수 Go 드라이버를 통한 SQLite 사용 (CGO 미사용).
| 대상 | 페인 포인트 (Pain Point) | onWatch의 해결 방식 |
|---|---|---|
| Claude Code, Cline, Roo Code 또는 Kilo Code를 사용하며 Anthropic/Synthetic/Z.ai/Codex/Copilot/MiniMax/Gemini CLI/Antigravity를 활용하는 개인 개발자 및 프리랜서 | 예산 불안 -- 할당량 소모율(quota burn rate)을 파악할 수 없어 작업 도중 갑작스러운 스로틀링(throttling) 발생 | 실시간 속도 예측, 과거 트렌드, 라이브 카운트다운을 제공하여 예상치 못한 스로틀링을 방지 |
| API 키를 공유하는 소규모 개발 팀 (3~20명) | 누가 무엇을 소비하는지 공유된 가시성이 없으며, 다음 달 예산 수립이 불가능함 | 세션 추적 기능이 포함된 공유 대시보드 및 예산 계획을 위한 사이클 이력 제공 |
| DevOps 및 플랫폼 엔지니어 | 코딩 API 구독에 대한 FinOps(금융 운영)가 없는 섀도우 AI (Shadow AI) 사용 | 경량 사이드카 (<50 MB), Grafana를 위한 SQLite 데이터 소스, 모니터링 스택 통합을 위한 REST API 제공 |
| 규제 산업 분야의 개인정보 보호 중시 개발자 | 외부로 데이터를 전송하는 SaaS 분석 도구를 사용할 수 없음; 로컬에서 감사 가능한 모니터링 필요 | 단일 바이너리, 로컬 SQLite, 텔레메트리(telemetry) 제로, GPL-3.0 소스 코드, 에어갭(air-gapped) 환경에서 작동 |
| 보조금을 받는 연구자 및 교육자 | 보조금 보고서 및 논문 방법론을 위해 세션별 API 비용 귀속(attribution)이 필요함 | 세션별 사용량 추적, SQLite를 통한 과거 데이터 내보내기 |
| 월 $3~$60를 지불하는 예산 민감형 API 사용자 | 모든 요청이 중요함; 플랜이 저활용되고 있는지 또는 예산이 위험한지 알 방법이 없음 | 사용량 인사이트, 플랜 용량 분석, 데이터를 통한 업그레이드/다운그레이드 권장 사항 제공 |
onWatch를 설치하고, .env 파일에 SYNTHETIC_API_KEY를 설정한 후 ./onwatch를 실행하세요. 이 프로그램은 60초마다 Synthetic /v2/quotas 엔드포인트를 폴링(poll)하며, 과거 데이터를 SQLite에 저장하고, localhost:9211에서 구독, 검색, 도구 호출(tool call) 할당량을 실시간 카운트다운, 속도 예측 및 리셋 사이클 이력과 함께 보여주는 대시보드를 제공합니다.
.env 파일에 ZAI_API_KEY를 설정하세요. onWatch는 Z.ai /monitor/usage/quota/limit를 폴링합니다.
엔드포인트 (endpoint)를 폴링하며 토큰 제한 (token limits), 시간 제한 (time limits), 그리고 도구 호출 할당량 (tool call quotas)을 추적합니다. 모든 제공업체 (providers)를 동시에 실행할 수 있습니다.
onWatch는 시스템 키체인 (macOS) 또는 키링/파일 (Linux)에서 Claude Code 인증 정보를 자동으로 감지합니다. 설치 후 실행하기만 하면 됩니다. Claude Code가 설치되어 있다면 Anthropic 추적 기능이 자동으로 제공됩니다. 또한 .env 파일에 ANTHROPIC_TOKEN을 수동으로 설정할 수도 있습니다. Anthropic 할당량은 동적 (5시간, 7일, 월간 등)이며 사용률 백분율 (%)로 표시됩니다. OAuth 토큰은 만료 전에 자동으로 갱신되며, onWatch는 새로운 인증 정보가 감지되면 자동 재시도를 통해 인증 실패를 유연하게 처리합니다.
.env 파일에 CODEX_TOKEN을 설정하세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기