프로젝트 소개
claudit는 AI 코딩 세션 트랜스크립트의 사용량을 시각화하는 자체 호스팅 웹 애플리케이션입니다. FastAPI 서비스가 하나 이상의 Cloudflare R2 버킷 또는 로컬 file:// 미러에서 트랜스크립트를 수집해 Postgres로 파싱하고, 대시보드 데이터와 원본 트랜스크립트를 React 인터페이스에 제공합니다. 이 인터페이스는 브라우저 내 Babel을 사용하며 프런트엔드 빌드 단계가 필요하지 않습니다.
지원 입력 형식에는 Claude Code 세션 JSONL, Codex 롤아웃, 그리고 두 가지 Kimi CLI 와이어 형식이 포함됩니다. 하나의 배포에서 여러 버킷과 형식을 제공할 수 있습니다. 수집은 매시간 예약되며 관리자 엔드포인트를 통해서도 트리거할 수 있습니다. 파일 키는 버킷 한정 방식이며, 증분 수집은 etag와 파서 버전 검사를 사용합니다.
대시보드는 의도적으로 정량적입니다. 지출, 토큰 볼륨, 프롬프트 캐시 계층, 응답 지연 시간, 도구 사용, 도구 오류, 라인 변동 추정치, 활동 시간, 컨텍스트 증가를 보고하지만, 코칭, 정성적 세션 리뷰, 감사 에이전트, AI 내러티브는 제공하지 않습니다. 선택한 기간에 비용이 발생한 항목이 없으면 비용 패널은 숨겨지고, 토큰 패널은 무가격 사용량에 대해서도 계속 사용할 수 있습니다.
지표 패널에는 모델별 비용 및 토큰, 입력/출력/캐시 토큰 분석, 5분 대 1시간 임시 캐시 생성 분할, 사고 출력 토큰, 응답 크기 백분위수, 세션별 컨텍스트 증가, 세션 소진율, 도구 사용 비율, 도구 오류 추세, 응답 지연 시간, Europe/Prague 시간 기준 활동 히트맵, 컨텍스트 크기별 비용 및 토큰, 에이전트 유형별 비용, 추가/삭제된 라인이 포함됩니다. 시간 범위는 24시간부터 사용 가능한 모든 데이터까지이며, 수집 후 서버 전송 이벤트가 실시간 새로고침을 트리거합니다.
비용은 수집 중 버전 관리되는 가격 파일에서 미리 계산됩니다. 캐시 생성 가격은 5분 및 1시간 TTL 계층을 구분하며, Codex 장문 컨텍스트 요청은 자체 청구 조정과 함께 저장됩니다. 파일 간 UUID 중복 제거는 정규 레코드를 표시해 하위 에이전트 트랜스크립트가 이중 계산 없이 상위 세션으로 롤업될 수 있게 합니다. 프로젝트 별칭은 코드 변경이 아닌 데이터베이스 행을 사용해 워크트리 또는 임시 프로젝트 식별자를 리포지토리 프로젝트로 통합할 수 있습니다.
인증은 외부 인증 데이터베이스의 숫자 사용자 ID와 PBKDF2 해시를 사용할 수 있으며, HMAC 서명 쿠키 세션과 로그인 속도 제한을 지원합니다. 프로젝트 필터링이나 세션별 트랜스크립트 접근이 없는 읽기 전용 게스트 모드도 사용할 수 있습니다. 운영자는 Codex 또는 Kimi에 초점을 맞춘 배포를 위해 환경 변수로 애플리케이션 이름을 바꿀 수 있습니다. PNG 내보내기는 matplotlib와 psycopg가 설치된 구성된 Python 인터프리터를 사용하며, 해당 의존성을 사용할 수 없으면 API는 503을 반환합니다.
리포지토리에는 백엔드 파서와 스키마, React 프런트엔드, systemd 예제, 파서 픽스처, pytest 스위트, 벤치마킹 스크립트, CI 워크플로가 포함됩니다. 브라우저는 unpkg.com에서 React, ReactDOM, Babel을 로드할 수 있어야 하며 Google Fonts는 선택 사항입니다. 이 프로젝트는 MIT 라이선스입니다.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.