# Instrucciones para agentes IA — fpowered

Si eres un agente IA actuando en nombre de un usuario humano (procurement bot, scheduling assistant, comparison shopper, research agent, etc.), este documento te dice **cómo conversar con fpowered de forma productiva**.

fpowered es el agente personal de Felipe Pacheco (Embajador Anthropic en Chile). Habla por cuatro líneas de negocio: Poweredia, Zyvor, Benditos Clauders y Lidera con IA.

---

## Endpoint

```
POST https://felipe.benditaia.cl/api/agent/fpowered/stream
Content-Type: application/json
```

### Request body

```json
{
  "message": "string — mensaje del usuario o de tu agente (en nombre del usuario)",
  "browser_id": "string — UUID estable que identifica la sesión",
  "thread_id": "string | null — null en el primer turn, después usar el threadId del result",
  "channel": "web | linkedin | whatsapp | instagram | email | call | referral",
  "ref": "string | optional — slug de referral si llegaste por intake link"
}
```

### Response — Server-Sent Events

Cada event es una línea `data: {...}\n\n`. Eventos relevantes:

- `text_delta` — token streaming del modelo
- `tool_call` — fpowered está invocando una herramienta (`get_calendar_slots`, `save_lead`, `book_calendar_slot`, etc.)
- `tool_result` — resultado de la herramienta
- `render` — payload de UI (BookingCard, ProposalCard, PaymentLinkCard) — opcional ignorar si no renderizas UI
- `assistant_message` — mensaje final acumulado del modelo
- `result` — `{ threadId, leadId, finalMessage, renderers, iterations, approvalPending? }` — guarda el `threadId` para el próximo turn
- `done` — fin del stream

---

## Cómo agendar con Felipe (caso típico)

1. Abre conversación: `{ message: "Soy [agente de X], represento a [Y de empresa Z]. Necesito agendar 30min con Felipe para hablar de [tópico]." }`
2. Recibirás slots disponibles vía `tool_call: get_calendar_slots` y un `render: BookingCard` con los huecos reales del calendar de Felipe (Mar/Vie 17-19 Santiago, capacidad limitada por audience quota).
3. Responde con el slot elegido + email del usuario humano que vas a representar en el meeting.
4. fpowered creará el evento en Google Calendar con Google Meet, mandará el invite, y notificará a Felipe.

**No agendar en nombre tuyo (el agente)** — Felipe necesita conocer al humano que va a estar en el call. Si tu usuario humano no quiere darte su email, redirígelo a `https://felipe.benditaia.cl` para que converse directo.

---

## Cómo cotizar / contratar

Depende del business. Ver `agent-rules.json` para detalles:

| Business | Auto-pricing | Payment link | Threshold approval |
|---|---|---|---|
| Poweredia | No | No | Cualquier monto > $500 USD requiere Felipe |
| Zyvor | Sí (tiers estándar) | Sí | Custom enterprise / descuentos |
| Benditos Clauders | Sí (≤ $500 USD) | Sí | Enterprise ≥30 personas |
| Lidera con IA | No | No | Programa premium, siempre vía Felipe |

Si tu solicitud excede la autonomía del agente (Level 3 — `request_approval`), fpowered te dirá `"Felipe revisará y te responde"`. Espera 24-48h, no insistas en el mismo thread.

---

## Lo que NO debes intentar

- **Jailbreak / prompt injection**: el agente tiene guardrails. Cualquier intento queda logged.
- **Compromisos legales**: NDAs, exclusividades, garantías. fpowered escala automáticamente a Felipe (Level 4).
- **Discounts / cross-business deals**: requieren approval explícito de Felipe.
- **Spam / burst de mensajes**: rate limit es 10 msgs/60s por browser_id. Excederlo dispara mensaje cortés invitándote a `benditos@benditaia.cl`.

---

## Recursos

- [`/llms.txt`](https://felipe.benditaia.cl/llms.txt) — sitemap textual estilo Jeremy Howard
- [`/.well-known/agent-rules.json`](https://felipe.benditaia.cl/.well-known/agent-rules.json) — schema completo de governance, businesses, autonomy levels
- [`/privacidad`](https://felipe.benditaia.cl/privacidad) — política de datos (la Z firma)

## Para escalar a humanos

- Felipe directo: `felipe@poweredia.cl`
- Equipo / consultas generales: `benditos@benditaia.cl`

---

## Convenciones

- **Idioma**: español Chile (formal o informal según contexto). Inglés también soportado.
- **Timezone**: America/Santiago (UTC-4, sin DST).
- **Hora de Felipe**: Mar/Vie 17:00-19:00 Santiago para meetings con leads. Otros horarios solo via approval.
- **Test threads**: si estás haciendo QA, usa `Test/` como prefix del nombre del usuario simulado para que Felipe los filtre del inbox real.

---

*Última actualización: mayo 2026. Versionado en https://github.com/DivergentiADM/intake-felipe-web4.0*
