Uso do Código Claude
Ferramentas abrangentes de monitoramento e análise do Uso do Código Claude para rastrear consumo de tokens, custos, métricas de desempenho e otimização de uso.
Visão Geral
As ferramentas de Uso do Código Claude fornecem recursos em tempo real de monitoramento, análise e otimização para consumo de tokens e uso de API do Código Claude. Essas ferramentas ajudam desenvolvedores a rastrear custos, monitorar desempenho, analisar padrões de uso e otimizar seus fluxos de trabalho do Código Claude através de métricas detalhadas, alertas e recursos de relatórios.
⚠️ Aviso de Uso: Ferramentas de monitoramento de uso requerem acesso a arquivos de sessão do Código Claude e logs de API. Assegure permissões adequadas e conformidade de privacidade de dados ao implementar soluções de monitoramento.
Ferramentas Principais
Monitor de Uso do Código Claude
# Install via npm
npm install -g claude-code-usage-monitor
# Install via pip
pip install claude-code-usage-monitor
# Clone from GitHub
git clone https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor.git
cd Claude-Code-Usage-Monitor
npm install
npm start
Ferramenta CLI ccusage
# Install ccusage
npm install -g ccusage
# Basic usage analysis
ccusage analyze
# Analyze specific session
ccusage analyze --session session-id
# Generate report
ccusage report --format json
# Real-time monitoring
ccusage monitor --live
Instalação e Configuração
Configuração do Monitor de Uso
# Start usage monitor
claude-usage-monitor --port 3000
# With configuration file
claude-usage-monitor --config config.json
# Docker deployment
docker run -p 3000:3000 -v ~/.claude:/data claude-usage-monitor
Extensão VS Code
# Install from marketplace
code --install-extension suzuki0430.ccusage-vscode
# Manual installation
git clone https://github.com/suzuki0430/ccusage-vscode.git
cd ccusage-vscode
npm install
npm run compile
code --install-extension ccusage-vscode-*.vsix
Extensão Raycast
# Install Raycast extension
raycast://extensions/nyatinte/ccusage
# Configure API access
raycast://preferences/extensions/ccusage
Comandos de Monitoramento
Monitoramento em Tempo Real
| Comando | Descrição |
|---|---|
ccusage monitor | Iniciar monitoramento em tempo real |
ccusage dashboard | Painel web aberto |
ccusage status | Verificar status de uso atual |
ccusage alerts | Visualizar alertas ativos |
ccusage live | Transmissão ao vivo de uso |
ccusage watch | Observar métricas específicas |
ccusage tail | Registros de uso do Tail |
Comandos de Análise
| Comando | Descrição |
|---|---|
ccusage analyze | Analisar padrões de uso |
ccusage report | Gerar relatório de uso |
ccusage summary | Resumo de uso |
ccusage trends | Análise de tendências de uso |
ccusage compare | Comparar períodos de tempo |
ccusage breakdown | Detalhamento |
ccusage optimize | Sugestões de otimização |
Configuração
Configuração do Monitor
{
"monitor": {
"port": 3000,
"host": "localhost",
"updateInterval": 1000,
"retentionDays": 30,
"enableAlerts": true
},
"claude": {
"sessionPath": "~/.claude/sessions",
"logPath": "~/.claude/logs",
"apiEndpoint": "https://api.anthropic.com",
"trackModels": ["claude-3-sonnet", "claude-3-haiku", "claude-3-opus"]
},
"metrics": {
"trackTokens": true,
"trackCosts": true,
"trackPerformance": true,
"trackErrors": true,
"granularity": "minute"
},
"alerts": {
"dailyLimit": 10000,
"costThreshold": 50.00,
"errorRate": 0.05,
"responseTime": 5000
}
}
Rastreamento de Custos
{
"costTracking": {
"enabled": true,
"currency": "USD",
"models": {
"claude-3-opus": {
"inputCost": 0.000015,
"outputCost": 0.000075
},
"claude-3-sonnet": {
"inputCost": 0.000003,
"outputCost": 0.000015
},
"claude-3-haiku": {
"inputCost": 0.00000025,
"outputCost": 0.00000125
}
},
"budgets": {
"daily": 25.00,
"weekly": 150.00,
"monthly": 500.00
}
}
}
Recursos do Painel
Painel Web
# Access dashboard
http://localhost:3000
# Dashboard sections
- Real-time metrics
- Usage graphs
- Cost analysis
- Session history
- Performance metrics
- Alert management
- Export options
Componentes do Painel
| Componente | Descrição |
|---|---|
Token Counter | Uso de tokens em tempo real |
Cost Tracker | Custos atuais e projetados |
Session Browser | Navegar pelo histórico de sessão |
Performance Graph | Métricas de tempo de resposta |
Error Monitor | Rastreamento de taxa de erro |
Usage Heatmap | Visualização de padrão de uso |
Alert Panel | Alertas ativos e notificações |
Exibição de Métricas
// Dashboard metrics configuration
const dashboardConfig = {
widgets: [
{
type: "counter",
metric: "tokens_today",
title: "Today's Tokens",
format: "number"
},
{
type: "gauge",
metric: "cost_today",
title: "Today's Cost",
format: "currency",
max: 50
},
{
type: "chart",
metric: "tokens_hourly",
title: "Hourly Usage",
timeRange: "24h"
},
{
type: "table",
metric: "top_sessions",
title: "Top Sessions",
limit: 10
}
],
refreshInterval: 5000,
theme: "dark"
};
Análise de Uso
Análise de Tokens
# Analyze token usage
ccusage tokens --period today
ccusage tokens --period week
ccusage tokens --period month
# Token breakdown by model
ccusage tokens --by-model
# Token efficiency analysis
ccusage tokens --efficiency
# Token usage trends
ccusage tokens --trends
Análise de Custos
# Cost breakdown
ccusage costs --breakdown
# Cost by time period
ccusage costs --period month
# Cost optimization suggestions
ccusage costs --optimize
# Budget tracking
ccusage costs --budget-status
# Cost projections
ccusage costs --forecast
Análise de Desempenho
# Response time analysis
ccusage performance --response-time
# Throughput analysis
ccusage performance --throughput
# Error rate analysis
ccusage performance --errors
# Performance trends
ccusage performance --trends
# Bottleneck identification
ccusage performance --bottlenecks
Relatórios
Geração de Relatórios
# Generate daily report
ccusage report --period today --format pdf
# Weekly summary
ccusage report --period week --format html
# Monthly analysis
ccusage report --period month --format json
# Custom date range
ccusage report --from 2025-07-01 --to 2025-07-15
# Detailed breakdown
ccusage report --detailed --include-sessions
Formatos de Relatórios
| Formatar | Descrição |
|---|---|
JSON | Dados legíveis por máquina |
CSV | Compatível com Spreadsheet |
HTML | Relatório visualizável na web |
PDF | Documento imprimível |
Markdown | Formato de documentação |
Excel | Planilha avançada |
Relatórios Automatizados
{
"automation": {
"reports": [
{
"name": "daily_summary",
"schedule": "0 9 * * *",
"format": "email",
"recipients": ["team@company.com"],
"template": "daily_template"
},
{
"name": "weekly_analysis",
"schedule": "0 9 * * 1",
"format": "pdf",
"storage": "s3://reports-bucket/weekly/",
"template": "weekly_template"
}
]
}
}
Sistema de Alertas
Configuração de Alertas
Would you like me to continue with the remaining numbered sections?```json { “alerts”: { “rules”: [ { “name”: “high_token_usage”, “condition”: “tokens_per_hour > 5000”, “severity”: “warning”, “actions”: [“email”, “slack”] }, { “name”: “budget_exceeded”, “condition”: “daily_cost > budget.daily * 0.9”, “severity”: “critical”, “actions”: [“email”, “sms”, “webhook”] }, { “name”: “high_error_rate”, “condition”: “error_rate > 0.05”, “severity”: “warning”, “actions”: [“slack”] } ], “channels”: { “email”: { “smtp”: “smtp.gmail.com”, “from”: “alerts@company.com”, “to”: [“admin@company.com”] }, “slack”: { “webhook”: “https://hooks.slack.com/…”, “channel”: “#claude-alerts” }, “webhook”: { “url”: “https://api.company.com/alerts”, “method”: “POST” } } } }
| Alerta | Trigger | Ação |
|---------|-------------|-------------|
| `Token Limit` | Limite diário de tokens | Notificação de e-mail |
| `Cost Threshold` | Percentual de orçamento | Alerta do Slack |
| `Error Rate` | Porcentagem de erro alta | Chamada de webhook |
| `Performance` | Tempo de resposta lento | Destaque do Dashboard |
| `Session Limit` | Limite máximo de sessões atingido | Limpeza automática |## Recursos de Otimização
### Otimização de Uso
```bash
# Analyze optimization opportunities
ccusage optimize --analyze
# Token efficiency suggestions
ccusage optimize --tokens
# Cost reduction recommendations
ccusage optimize --costs
# Performance improvements
ccusage optimize --performance
# Model selection optimization
ccusage optimize --models
```### Estratégias de Otimização
```json
{
"optimization": {
"strategies": [
{
"name": "model_selection",
"description": "Choose optimal model for task",
"rules": [
{
"condition": "task_complexity < 0.3",
"recommendation": "claude-3-haiku"
},
{
"condition": "task_complexity >= 0.7",
"recommendation": "claude-3-opus"
}
]
},
{
"name": "context_optimization",
"description": "Optimize context window usage",
"techniques": [
"context_compression",
"selective_history",
"smart_truncation"
]
}
]
}
}
```## Exemplos de Integração
### Integração CI/CD
```yaml
# GitHub Actions workflow
name: Claude Usage Monitoring
on:
schedule:
- cron: '0 */6 * * *'
jobs:
monitor:
runs-on: ubuntu-latest
steps:
- name: Check Usage
run: |
ccusage analyze --format json > usage.json
ccusage costs --budget-check
- name: Upload Report
uses: actions/upload-artifact@v2
with:
name: usage-report
path: usage.json
```### Integração com Slack
```javascript
// Slack bot for usage monitoring
const { App } = require('@slack/bolt');
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET
});
app.command('/claude-usage', async ({ command, ack, respond }) => {
await ack();
const usage = await getClaudeUsage();
await respond({
text: `Claude Usage Today:
Tokens: ${usage.tokens}
Cost: $${usage.cost}
Sessions: ${usage.sessions}`
});
});
```### Integração com Prometheus
```yaml
# Prometheus configuration
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'claude-usage'
static_configs:
- targets: ['localhost:3000']
metrics_path: '/metrics'
scrape_interval: 30s
```## Referência de API
### Endpoints da REST API
```bash
# Get current usage
GET /api/usage/current
# Get usage history
GET /api/usage/history?period=7d
# Get cost breakdown
GET /api/costs/breakdown
# Get performance metrics
GET /api/performance/metrics
# Get alerts
GET /api/alerts
# Export data
GET /api/export?format=json&period=month
```### WebSocket API
```javascript
// Real-time usage updates
const ws = new WebSocket('ws://localhost:3000/ws');
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
switch(data.type) {
case 'usage_update':
updateUsageDisplay(data.usage);
break;
case 'alert':
showAlert(data.alert);
break;
case 'cost_update':
updateCostDisplay(data.cost);
break;
}
};
```## Resolução de Problemas
### Problemas Comuns
```bash
# Monitor not starting
- Check port availability
- Verify session file permissions
- Check configuration file syntax
- Review log files
# Missing data
- Verify Claude Code session path
- Check file permissions
- Ensure proper API access
- Review data retention settings
# Performance issues
- Reduce monitoring frequency
- Optimize database queries
- Clear old data
- Check system resources
```### Comandos de Depuração
```bash
# Enable debug mode
DEBUG=ccusage:* ccusage monitor
# Verbose logging
ccusage --verbose analyze
# Test configuration
ccusage config --test
# Validate data sources
ccusage validate --sources
```## Recursos
- [Monitor de Uso de Código Claude GitHub](https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor)
- [Ferramenta CLI ccusage](https://github.com/ryoppippi/ccusage)
- [Extensão do VS Code](https://marketplace.visualstudio.com/items?itemName=suzuki0430.ccusage-vscode)
- [Extensão do Raycast](https://www.raycast.com/nyatinte/ccusage)
- [Documentação](https://docs.claude-usage.dev/)
Would you like me to elaborate on any of these translations or provide more context?