diff --git a/docs/my-website/docs/tutorials/cost_tracking_coding.md b/docs/my-website/docs/tutorials/cost_tracking_coding.md new file mode 100644 index 00000000000..69b4de6c07b --- /dev/null +++ b/docs/my-website/docs/tutorials/cost_tracking_coding.md @@ -0,0 +1,53 @@ +# Track Usage for Coding Tools + +This tutorial shows how to track usage and costs for AI-powered coding tools like Claude Code, Roo Code, Gemini CLI, and OpenAI Codex through LiteLLM. + +Track requests, total costs, and user engagement metrics for each coding tool via User-Agent headers. + +## Who This Is For + +Central AI Platform teams providing developers access to coding tools through LiteLLM. Use this to monitor tool engagement and track individual user usage patterns. + +## What LiteLLM Tracks + +### Summary Metrics +- Cost per coding tool +- Successful requests and token usage per tool + +### User Engagement Metrics +- Daily, weekly, and monthly active users for each User-Agent + +## Quick Start + +### 1. Connect Your Coding Tool to LiteLLM + +Configure your coding tool to send requests through LiteLLM proxy with appropriate User-Agent headers. + +### 2. Send Requests with User-Agent Headers + +Ensure your coding tool includes identifying User-Agent headers in API requests. + +### 3. Verify Tracking in LiteLLM Logs + +Confirm that LiteLLM is properly tracking requests by checking logs for the expected User-Agent values. + +### 4. View Usage Dashboard + +Access the LiteLLM dashboard to view aggregated usage metrics and user engagement data. + +## How LiteLLM Identifies Coding Tools + +LiteLLM tracks coding tools by monitoring the `User-Agent` header in incoming API requests (`/chat/completions`, `/responses`, etc.). Each unique User-Agent is tracked separately for usage analytics. + +### Example Request + +Here's an example using `claude-cli` as the User-Agent: + +```shell +curl -X POST \ +-H "Content-Type: application/json" \ +-H "Authorization: Bearer sk-1234" \ +-H "User-Agent: claude-cli/1.0" \ +-d '{"model": "claude-3-5-sonnet-latest", "messages": [{"role": "user", "content": "Hello, how are you?"}]}' \ +http://localhost:4000/chat/completions +``` diff --git a/docs/my-website/sidebars.js b/docs/my-website/sidebars.js index 2b0ba226fe9..83ebfe29dc4 100644 --- a/docs/my-website/sidebars.js +++ b/docs/my-website/sidebars.js @@ -78,6 +78,7 @@ const sidebars = { "tutorials/litellm_qwen_code_cli", "tutorials/github_copilot_integration", "tutorials/claude_responses_api", + "tutorials/cost_tracking_coding", ] },