No description
Find a file
Vadym Samoilenko 327deed1dd feat: budgets scope picker with live dropdowns
Workspace/team/project selects are populated from API on mount.
Falls back to source_apps when projects collection is empty.
Table now shows resolved name + truncated ID hint.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 16:25:17 +01:00
.claude feat: dev login + optical-dev deploy setup 2026-04-27 12:05:42 +01:00
backend feat: add google_tts generic model pricing + video-accessibility backfill script 2026-04-27 14:59:42 +01:00
frontend feat: budgets scope picker with live dropdowns 2026-04-27 16:25:17 +01:00
infra feat: add server-side update.sh script for in-place deploys 2026-04-27 12:30:50 +01:00
scripts feat: add google_tts generic model pricing + video-accessibility backfill script 2026-04-27 14:59:42 +01:00
sdk feat: initial implementation of Oliver AI Cost Tracker 2026-04-27 11:26:08 +01:00
.env.example feat: dev login + optical-dev deploy setup 2026-04-27 12:05:42 +01:00
.gitignore feat: initial implementation of Oliver AI Cost Tracker 2026-04-27 11:26:08 +01:00
README.md fix: remove readme field from pyproject.toml, add README.md 2026-04-27 12:20:50 +01:00

AI Cost Tracker

Shared AI cost tracking service for Oliver Agency projects.

Tracks LLM usage costs across workspaces, teams, and projects. Provides a REST API for recording AI calls and an admin dashboard for analytics.

Stack

  • Backend: FastAPI, MongoDB, Redis, Celery
  • Frontend: React, Vite, TypeScript
  • Auth: Azure AD SSO (+ dev login for local testing)
  • Deploy: Docker Compose on optical-dev

Quick start

cp .env.example .env
# Fill in Azure AD credentials and secrets
docker compose -f infra/docker-compose.yml up -d

Admin UI: http://localhost:5174 API docs: http://localhost:8001/docs