claudit: Claude Code, Codex 및 Kimi CLI 트랜스크립트를 위한 자체 호스팅 사용량 대시보드 (FastAPI +
요약
claudit는 AI 코딩 에이전트(Claude Code, Codex 등)의 사용량과 비용을 추적하기 위해 개발된 자체 호스팅 대시보드입니다. 이 도구는 세션 트랜스크립트를 Postgres에 수집하여 모델별 비용, 응답 지연 시간, 컨텍스트 성장률 등의 상세 분석 정보를 제공합니다.
핵심 포인트
- AI 코딩 에이전트의 토큰 및 비용 사용량을 자체 서버에서 추적 가능
- 모델별 비용, 활동 히트맵, 세션당 컨텍스트 성장률 등 상세 지표 제공
- R2 또는 로컬 파일 시스템을 데이터 소스로 활용하며 외부 호출 없음
- Docker Compose로 쉽게 설정할 수 있는 개발자 유틸리티
저는 AI 코딩 에이전트(AI coding agents)를 많이 사용하기 때문에, 지난 몇 달 동안 토큰과 비용이 어디로 쓰이는지 제 자신의 서버에서 확인하고 싶었습니다. 그래서 claudit를 만들었습니다. MIT 라이선스이며 약 6개월 전에 출시된 v0.5.0 버전입니다.
이 도구는 에이전트의 세션 트랜스크립트(Claude Code JSONLs, Codex rollouts, Kimi CLI 형식 모두)를 Postgres에 수집하고 하나의 대시보드를 제공합니다: 모델별 비용, 5분 vs 1시간 캐시 쓰기 분할을 포함한 토큰 상세 분석, 응답 지연 시간(reply latency), 도구 오류율(tool error rate), 활동 히트맵(activity heatmap), 세션당 컨텍스트 성장률 등입니다. 이 대시보드는 숫자를 보여줄 뿐, 사용자의 세션을 평가하지는 않습니다.
이유는 다음과 같습니다: 해당 폴더를 읽을 때 클라이언트가 아닌 claudit가 데이터를 읽기 때문입니다. Claude Code는 오래된 트랜스크립트를 로컬에서 정리(prune)하므로, 그 폴더에 대한 대시보드는 정리될 때마다 크기가 줄어듭니다. 따라서 claudit는 R2 또는 사용자가 보관하는 file:// 디렉토리에서 데이터를 읽습니다. 기록은 도구를 실행할 때만 증가합니다.
설정 방법: docker compose up을 실행하면, 번들된 샘플 데이터와 함께 Postgres가 부팅됩니다. .env 파일이 필요 없으며, 서버는 외부 호출(outbound calls)을 하지 않습니다. 실제 데이터를 사용하려면 CLAUDIT_R2_ENDPOINT를 R2 또는 file:///사용자/디렉토리로 지정하십시오. 트랜스크립트를 해당 위치에 가져오는 것은 사용자 책임입니다 (저장소에는 업로더가 없습니다).
Claude Code의 레이아웃은 <프로젝트>/<세션>/<세션>.jsonl 형식입니다. 데이터 수집(ingest)은 시간당 실행되며 증분적(incremental)으로 작동합니다. 로그인 기능은 사용자가 프로비저닝한 사용자 테이블(PBKDF2 해시)을 읽으며, claudit는 이 테이블에 절대 쓰지 않습니다.
게스트 모드(읽기 전용)는 별도의 설정 없이 바로 작동합니다. 대시보드는 Google Fonts를 가져오며, 로그인 페이지는 외부 리소스를 로드하지 않습니다.
문서: README, PRIVACY.md, backend/.env.example 패널은 nhz-io/ccusage-plot(오프라인 matplotlib)에서 포팅되었습니다. 히트맵, 라인 변화율(line churn), 컨텍스트 크기별 비용 분석은 여기서 새롭게 추가된 기능입니다.
실시간 데모: https://all.nitjsefni.eu
GitHub 저장소: https://github.com/Nitjsefnie/claudit
제출자: /u/Nitjsefnie [링크] [댓글]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/SelfHosted (AI filter)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기