Fetching metadata from the HF Docker repository...
May 18 20:43 chore: HF Spaces frontmatter (hf-space branch only) 20:41 docs: live demo URL, drop HF frontmatter 19:57 chore: Dockerfile /data perms + HF Spaces README frontmatter 19:48 feat: Vision Import (multimodal Gemini), autonomous watcher, GitHub agent actions - Vision Import: upload any billing screenshot → Gemini reads spend → agent
investigates connected GitHub repo → opens fix PR automatically
- Autonomous watcher: background loop detects anomalies, runs Gemini agent,
creates GitHub issues, enforces rate limits, ships remediation PRs
- GitHub action tools: fetch_pr_diff, fetch_file, open_fix_pr, list_recent_prs
- Real Anthropic reverse proxy with token/cost capture
- Provider-neutral ingest endpoint for external call recording
- Traffic generator for demo scenario seeding
- Demo app + scripts for reproducible demo scenario
- Cloud Run entrypoint with $PORT support and AUTONOMOUS flag May 12 07:00 docs: submission README and demo script README: full project description, architecture table, quickstart,
CLI reference, comparison table, demo transcript.
DEMO_SCRIPT: 3-4 min narrated script with section timings. 06:48 chore: Docker + Caddy deploy config for Vultr Multi-stage Dockerfile (golang:1.26-alpine → alpine:latest, 18MB
static binary). Entrypoint auto-seeds demo data on first run.
docker-compose.yml wires llmtrace + Caddy reverse proxy.
Caddyfile supports plain IP (HTTP) or domain (auto-TLS). 06:36 feat: cost trend chart, deploy marker, analyze CLI command - web: Chart.js line chart (30d daily spend per key) with amber
vertical annotation at each deploy timestamp; dark theme
- web: minor UI polish (logo, tighter spacing, pre-wrap stream box)
- storage: add ListDeploys query
- cmd: implement analyze — detect anomalies + agent investigation
from CLI; graceful degradation when GEMINI_API_KEY unset 06:31 feat: Gemini agent investigation loop with tool-calling - agent: Investigate() runs multi-turn agentic loop (max 6 rounds)
with 3 tools: query_model_distribution, get_deploys_in_window,
diff_prompt_model_mix; retry-with-backoff on 429/503 (3 attempts)
- storage: add ModelDistribution, DeploysInWindow, PromptModelMix
queries for agent tool dispatch
- web: investigateHandler wires real agent; GEMINI_API_KEY +
GEMINI_MODEL from env; streams tool status + attribution via SSE May 11 12:33 feat: SQLite ledger, anomaly detection, seed command, web dashboard - storage: implement Open/Wipe/InsertCalls (batched tx)/InsertDeploy/
InsertAPIKey/UpsertAnomaly/ListAnomalies/DailyCostByKey
- detect: rolling 7-day baseline + sigma threshold anomaly detection,
persists hits to anomalies table
- seed: deterministic demo scenario (30d window, Haiku→Sonnet model
swap on PR #129, 4.2× cost spike on prod-frontend)
- web: dashboard with anomaly cards + SSE /investigate endpoint
(placeholder; Gemini agent loop wires in next)
- cmd: wire serve (web), anomalies (detect+list), seed subcommands May 8 06:14 chore: remove Claude references from public files Per personal preference: no AI attribution anywhere in the repo. The
project-thesis file remains gitignored so future tooling can still use
it locally, but README and CLI error strings no longer name it. 06:06 scaffold: cobra CLI skeleton, package layout, project thesis Initial scaffolding for llmtrace — self-hosted LLM proxy with cost ledger
and deploy-to-spend causal attribution. Same architectural pattern as
costtrace (anomaly detection + GitHub Actions deploy correlation +
lineage scoring) applied to LLM provider APIs instead of AWS spend.
CLI commands stubbed: serve, keys, stats, tail, anomalies, analyze,
explain, report. All return notImplemented errors — real work begins
week 1 (proxy + Anthropic provider + ledger).
See CLAUDE.md (gitignored) for the 3-week MVP scope and differentiation
vs Helicone/Portkey/LiteLLM/Langfuse.