Skip to content

Edyalci/ClaudeTokenOptimizer

Repository files navigation

Claude Token Optimizer — Android App

App Android en Kotlin + Jetpack Compose que optimiza prompts para reducir tokens antes de enviarlos a Claude (Anthropic API).

✨ Funcionalidades

  • Optimización local en tiempo real: Elimina cortesía innecesaria, comprime términos técnicos, limpia relleno — sin red, instantáneo.
  • Estimación heurística de tokens: Muestra tokens estimados mientras escribes (ratio ajustado por idioma: español 3.5 chars/token).
  • Conteo exacto vía API: Usa el endpoint /v1/messages/count_tokens de Anthropic para validar antes de enviar.
  • Envío directo a Claude: Botón para enviar el prompt (original u optimizado) y ver la respuesta.
  • Historial persistente: Guarda los últimos 50 prompts con ahorro estimado y tokens exactos.
  • Multi-modelo: Selector de claude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5.
  • Multi-idioma: Heurística ajustada para ES, EN, FR, DE, PT, ZH, JA.

🚀 Setup

1. Requisitos

  • Android Studio Hedgehog (2023.1.1) o superior
  • JDK 11+
  • Android SDK 26+

2. Clonar / abrir proyecto

# Clona o extrae el ZIP en tu directorio de proyectos
# Abre en Android Studio: File → Open → selecciona la carpeta ClaudeTokenOptimizer

3. Obtener API Key de Anthropic

  1. Ve a console.anthropic.com
  2. Crea una API key (empieza con sk-ant-)
  3. Abre la app → ⚙️ Configuración → pega la clave

4. Build & Run

./gradlew assembleDebug
# o usa el botón ▶ Run de Android Studio

📁 Estructura

app/src/main/java/com/claude/tokenoptimizer/
├── MainActivity.kt                  # Entry point
├── api/
│   └── ClaudeApiService.kt          # OkHttp client para Anthropic API
├── data/
│   ├── Models.kt                    # Data classes
│   └── AppPreferences.kt            # DataStore (API key, historial, config)
├── optimizer/
│   └── SpanishPromptOptimizer.kt    # Motor de optimización local
└── ui/
    ├── Theme.kt                     # Colores y tipografía (paleta Claude)
    ├── MainViewModel.kt             # Estado y lógica de negocio
    ├── Navigation.kt                # NavHost
    ├── HomeScreen.kt                # Pantalla principal
    ├── SettingsScreen.kt            # Configuración
    └── HistoryScreen.kt             # Historial de prompts

🔧 Personalización

Agregar más compresiones

En SpanishPromptOptimizer.kt, añade entradas al mapa TECH_COMPRESSION:

"tu término largo" to "abreviación"

Ajustar ratio de tokens por idioma

En CHARS_PER_TOKEN:

"tu_idioma" to 3.7f

⚠️ Notas importantes

  • La API key se guarda en DataStore cifrado del dispositivo, nunca sale en logs.
  • La optimización local funciona sin conexión.
  • El conteo exacto y el envío requieren internet.
  • No se incluye tokenizer pesado en el APK (tiktoken/transformers no son compatibles con Android directamente).

📦 Dependencias clave

Librería Uso
Jetpack Compose + Material3 UI
Navigation Compose Navegación
DataStore Preferences Persistencia
OkHttp HTTP client para Anthropic API
Gson Serialización JSON
Kotlin Coroutines Async/IO

About

You can optimize your pront in claude

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages