Capítulo IA de la guía Neblla — neblla.ai(), presets, rutas de pago y entrega diferida. El contrato base está en core.txt. # IA integrada Llamadas a Claude desde la app sin montar servidor propio, sin gestionar claves en backend, sin rate limiting manual. ```javascript const res = await neblla.ai({ prompt: 'Estoy en una sala oscura con una puerta cerrada. ¿Qué hago?', preset: 'pista' }); console.log(res.text); ``` Firma: `neblla.ai({ prompt, preset?, model?, userToken? })` **(CLIENT)** — devuelve `Promise<{ text, usage, quota }>`. ## Presets Los `preset` son prompts que el desarrollador configura en el dashboard (p. ej. el preset `pista` lleva el prefijo "Eres el narrador de una aventura. Da una pista sutil sin desvelar la solución..."). Editables en el dashboard sin redeploy. ```javascript // ❌ Mal — el prompt completo en cliente: neblla.ai({ prompt: 'Eres el narrador de una aventura. Da una pista... ' + userQuestion }); // ✅ Bien — preset en el dashboard, solo la pregunta del usuario: neblla.ai({ prompt: userQuestion, preset: 'pista' }); ``` El preset prefix se aplica server-side (en rutas con clave del dev) y queda privado. ## Las tres rutas Neblla elige la ruta según el ajuste `tokenMode` configurado en el dashboard de la app (no por cómo se llame a `neblla.ai()`): 1. **Browser-directo** (`tokenMode: 'browser'`) — el usuario aporta su propia clave; la llamada sale del navegador a Anthropic directamente, sin pasar por Neblla. El dev no paga tokens, no consume cuota de Neblla, no requiere login. El preset prefix queda visible en el bundle del cliente. 2. **Servidor con clave del dev** (`tokenMode: 'server'`, sin `userTokenMode`) — la llamada va por el servidor de Neblla con la clave de API del dev. Con límites activados, cada usuario tiene una cuota diaria de tokens. Requiere login. 3. **Servidor con clave del usuario** (`tokenMode: 'server'` + `userTokenMode: 'required'`) — el usuario aporta su clave (se pasa en el `userToken` del call), pero la llamada va por el servidor de Neblla para que el preset prefix quede privado. El dev no paga tokens. Requiere login. ## Coste en cuota Cada llamada por servidor consume 500 unidades de la cuota diaria de la app (los tokens de Claude se facturan aparte, contra la clave del dev o del usuario). El modo `browser` no consume cuota. Tabla completa de cuotas en publicar.txt. ## Entrega diferida Si la conexión se cae mientras Claude piensa, la respuesta se entrega cuando el usuario reconecta (dentro de 24h). El resultado llega por el evento `'ai'` **(CLIENT)**, sin código especial.