Uso de Código Claude
Herramientas integrales de monitoreo y análisis de Uso de Código Claude para rastrear el consumo de tokens, costos, métricas de rendimiento y optimización de uso.
Descripción general
Las herramientas de Uso de Código Claude proporcionan capacidades de monitoreo, análisis y optimización en tiempo real para el consumo de tokens de Claude Code y el uso de API. Estas herramientas ayudan a los desarrolladores a rastrear costos, monitorear el rendimiento, analizar patrones de uso y optimizar sus flujos de trabajo de Claude Code a través de métricas detalladas, alertas y funciones de informes.
⚠️ Aviso de Uso: Las herramientas de monitoreo de uso requieren acceso a archivos de sesión de Claude Code y registros de API. Asegúrese de cumplir con los permisos adecuados y la privacidad de datos al implementar soluciones de monitoreo.
Herramientas Principales
Monitor de Uso de 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
Herramienta 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
Instalación y Configuración
Configuración del 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
Extensión de 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
Extensión de Raycast
# Install Raycast extension
raycast://extensions/nyatinte/ccusage
# Configure API access
raycast://preferences/extensions/ccusage
Comandos de Monitoreo
Monitoreo en Tiempo Real
| Comando | Descripción |
|---|---|
ccusage monitor | Iniciar monitoreo en tiempo real |
ccusage dashboard | Panel web abierto |
ccusage status | Verificar estado de uso actual |
ccusage alerts | Ver alertas activas |
ccusage live | Transmisión en vivo de uso |
ccusage watch | Ver métricas específicas |
ccusage tail | Registros de uso de Tail |
Comandos de Análisis
| Comando | Descripción |
|---|---|
ccusage analyze | Analizar patrones de uso |
ccusage report | Generar informe de uso |
ccusage summary | Resumen de uso |
ccusage trends | Análisis de tendencias de uso |
ccusage compare | Comparar períodos de tiempo |
ccusage breakdown | Desglose detallado |
ccusage optimize | Sugerencias de optimización |
Configuración
Configuración del 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
}
}
Seguimiento de Costos
{
"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
}
}
}
Características del Panel
Panel Web
# Access dashboard
http://localhost:3000
# Dashboard sections
- Real-time metrics
- Usage graphs
- Cost analysis
- Session history
- Performance metrics
- Alert management
- Export options
Componentes del Panel
| Componente | Descripción |
|---|---|
Token Counter | Uso de tokens en tiempo real |
Cost Tracker | Costos actuales y proyectados |
Session Browser | Examinar historial de sesión |
Performance Graph | Métricas de tiempo de respuesta |
Error Monitor | Seguimiento de tasa de errores |
Usage Heatmap | Visualización de patrón de uso |
Alert Panel | Alertas y notificaciones activas |
Visualización 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álisis de Uso
Análisis 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álisis de Costos
# 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álisis de Rendimiento
# 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
Informes
Generación de Informes
# 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 Informes
| Formato | Descripción |
|---|---|
JSON | Datos legibles por máquina |
CSV | Compatible con spreadsheet |
HTML | Informe visible en web |
PDF | Documento imprimible |
Markdown | Formato de documentación |
Excel | Hoja de cálculo avanzada |
Informes 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
Configuración de Alertas
Note: For sections 3-20, which were left blank in the original text, I’ve maintained the blank spaces in the Spanish translation. If you’d like me to fill those in with placeholder text or translations, please let me know.```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 | Acción |
|---------|-------------|-------------|
| `Token Limit` | Umbral diario de tokens | Notificación por correo electrónico |
| `Cost Threshold` | Porcentaje de presupuesto | Alerta de Slack |
| `Error Rate` | Porcentaje de error alto | Llamada webhook |
| `Performance` | Tiempo de respuesta lento | Resaltado del panel de control |
| `Session Limit` | Límite máximo de sesiones alcanzado | Limpieza automática |## Características de Optimización
```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
```### Optimización de Uso
```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"
]
}
]
}
}
```### Estrategias de Optimización
```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
```## Ejemplos de Integración
```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}`
});
});
```### Integración de CI/CD
```yaml
# Prometheus configuration
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'claude-usage'
static_configs:
- targets: ['localhost:3000']
metrics_path: '/metrics'
scrape_interval: 30s
```### Integración de Slack
```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
```### Integración de Prometheus
```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;
}
};
```## Referencia de API
```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
```### Endpoints de REST API
```bash
# Enable debug mode
DEBUG=ccusage:* ccusage monitor
# Verbose logging
ccusage --verbose analyze
# Test configuration
ccusage config --test
# Validate data sources
ccusage validate --sources
```### API WebSocket
https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor## Resolución de Problemas
https://github.com/ryoppippi/ccusage### Problemas Comunes
https://marketplace.visualstudio.com/items?itemName=suzuki0430.ccusage-vscode### Comandos de Depuración
https://www.raycast.com/nyatinte/ccusage## Recursos
https://docs.claude-usage.dev/- [Monitor de Uso de Código de Claude GitHub](