Saltar al contenido
ImpulsoESTRATÉGICO CX & AIVer las clases →
← Todas las clases

Clase 9

Claude Code: del feedback a la app

De una carpeta vacía a una encuesta con QR publicada, con panel y aviso por correo — sin escribir una línea

Al terminar vas a tener: Tu encuesta publicada con su QR para imprimir, cada respuesta guardada en tu base de datos, un panel privado con el promedio y un correo automático cuando llega un 1 o un 2. Y el método —pedir, mirar, aprobar— para lo próximo que le pidas a Claude Code.

  • 33 pasos
  • 75 min
  • Claude Code (app de escritorio)
  • Vercel
  • Supabase
  • Resend
  • Composio

0 de 0 pasos

Capítulo 0

Antes de empezar

El plan, la app de escritorio, tres cuentas gratuitas y tus datos.

Entender2 min

Qué vas a hacer hoy

Esta clase se hace con Claude Code, la versión de Claude que trabaja sobre una carpeta de tu computador. Vas a construir, de principio a fin, una encuesta de satisfacción con un QR para tu negocio: tu cliente escanea el código, contesta «¿cómo te fue hoy?» con una nota de 1 a 5, y esa respuesta se guarda, aparece en un panel y, si fue mala, te llega por correo.

No vas a escribir código. Vas a pedir, mirar y aprobar. Lo que se construye lo escribe Claude; lo que se decide lo decides tú.

Hacer3 min

La app de escritorio, no la terminal

Si viste videos de Claude Code, viste una pantalla negra con letras. Hoy no la vamos a usar. Trabajamos en la aplicación de escritorio de Claude, cuya pestaña Code trae Claude Code puesto.

  1. Descarga la aplicación de escritorio en claude.com/download. Hay para Mac y para Windows.
  2. Ábrela e inicia sesión con tu cuenta de Claude.
  3. Haz clic en la pestaña Code, arriba al centro. Si te pide subir de plan, ya sabes qué falta.
  4. Solo en Windows: instala Git for Windows (gratuito, en git-scm.com) y reinicia la app. En Mac no hace falta.
Abrir la aplicación de escritorio de ClaudeGratis · el plan es aparte · Se abre en otra pestaña, esta guía no se cierra

Hacer5 min

Las tres cuentas gratuitas

El proyecto usa tres servicios. Los tres tienen una capa gratuita que alcanza de sobra, y los tres se crean con tu correo en cinco minutos. Créalos antes de empezar, con el mismo correo.

ServicioPara qué lo usamosQué dejar listo
Vercel · vercel.comPublicar la encuesta en una dirección pública y ejecutar la parte que trabaja por atrásLa cuenta, nada más. Entrar con Google es lo más rápido. El plan gratuito se llama Hobby.
Supabase · supabase.comGuardar cada respuesta en una base de datosLa cuenta y un proyecto creado con el nombre de tu negocio. Tarda un par de minutos y te pide inventar una contraseña: anótala en un lugar seguro.
Resend · resend.comMandarte un correo cuando llega una nota bajaLa cuenta y una llave: menú API Keys, crear una con un nombre descriptivo. Se muestra una sola vez: guárdala en un lugar seguro, no en el chat de Claude.
El formulario «Create a new project» de Supabase: organización, nombre del proyecto FEEDBACK CX, contraseña de la base de datos enmascarada con un aviso de que necesita una más fuerte, región Americas y las opciones de seguridad por defecto.
Crear el proyecto en Supabase es lo único que se hace a mano en toda la clase. El nombre que pongas acá es el que va en el Prompt 3.

Hacer2 min

Tus datos para esta clase

Cinco datos, y los cinco prompts salen ya con lo tuyo adentro. Los dos que más se prestan a error son el nombre del proyecto en Vercel (es tu dirección pública, y tiene que ser el mismo cada vez que publiques) y el nombre del proyecto en Supabase (tal cual lo escribiste al crearlo: en el vivo el único tropiezo fue justo ese).

Esto se guarda solo en tu navegador y se usa para completar los prompts de la guía. No lo enviamos a ninguna parte.

Capítulo 1

Claude con manos

Qué es Claude Code, qué no es, y por qué te pide permiso.

Entender2 min

Qué cambia respecto al chat

Hasta hoy, Claude vivía en una ventana de chat. Le pegabas cosas, te respondía cosas. Desde la Clase 6 además podía leer tu correo y tu calendario. Pero nunca había tocado tu computador.

En el chat de ClaudeEn Claude Code
Ve lo que tú le pegasVe la carpeta que tú le abres
Te responde con textoCrea archivos, los cambia, y los abre para que los veas
Tú haces lo que te diceÉl lo hace, y tú apruebas cada paso
Usa conectores para leer y escribir en tus appsUsa los mismos conectores, y además publica cosas en internet

En el vivo se dijo de otra forma: hagan de cuenta que tienen al mejor ingeniero de software del mundo al lado, y ustedes solo lo guían hacia lo que quieren conseguir.

Entender1 min

Los tres miedos, y qué los desarma

El miedoLo que vas a ver hoy
«Es una pantalla negra de programador»La app de escritorio, pestaña Code. Un chat a la izquierda, tus archivos a la derecha. Sin terminal.
«Va a romper algo en mi computador»Todo vive en una carpeta que tú eliges, y solo ahí. La tarjeta de permiso antes de cada cambio, y el diff que muestra qué va a tocar. Si sale mal, borras la carpeta y no pasó nada.
«Cuando falle no voy a saber qué hacer»Un error real, pegado de vuelta en el chat, y Claude lo arregla. El error deja de ser tu problema.

Hacer3 min

La primera sesión, paso a paso

  1. Crea en tu computador una carpeta nueva y vacía para el proyecto. En el vivo se llamó FEEDBACK CX; puede llamarse encuesta. Lo que importa: una carpeta, un proyecto. No abras Documentos entero ni el Escritorio, porque Claude ve todo lo que hay ahí.
  2. En la pestaña Code, elige Local: Claude va a trabajar en tu computador, con tus archivos.
  3. Seleccionar carpeta y elige la que acabas de crear.
  4. El modelo: deja el que venga elegido. Para esto, Sonnet basta y sobra.
  5. En el selector junto al botón de enviar, elige el modo Manual. Es el que pregunta antes de todo.
El selector de modo abierto sobre la caja de mensaje de Claude Code, con cuatro opciones: Auto (Claude decide los permisos), Manual (siempre pregunta antes de cambiar algo), Accept edits (acepta todos los cambios de archivos) y Plan (arma un plan antes de tocar nada).
Los cuatro modos, en la esquina inferior izquierda de la caja de mensaje. Hoy, Manual.
ModoQué hace
ManualTe pregunta antes de crear o cambiar cada archivo y antes de ejecutar cada cosa. Mientras aprendes, este.
Aceptar edicionesAplica los cambios a los archivos sin preguntar, y te los muestra después. Para cuando ya confíes.
PlanSolo propone. No toca nada hasta que apruebes el plan. Para pedidos grandes: es como sentarse con un ingeniero senior a escribir la especificación antes de construir.
AutoUn revisor automático decide qué es seguro y frena lo que no. Es el que se usó en el vivo, para no parar la clase en cada tarjeta.

Entender2 min

Tres cosas que vas a ver, y una que puedes hacer

  • La tarjeta de permiso. Dice qué quiere hacer y espera. Aceptar o Rechazar. Si rechazas, no se enoja: te pregunta cómo prefieres seguir.
  • El diff. Un indicador como +12 −4: doce líneas nuevas, cuatro quitadas. Haz clic y lo ves en verde y rojo. No necesitas entenderlo línea por línea: necesitas ver qué archivo toca.
  • La vista previa. Un panel donde se abre lo que Claude construyó, como en un navegador. Haz clic en el nombre de cualquier archivo .html del chat y se abre ahí.

Y una cosa más: puedes interrumpirlo. Si va por mal camino, escribes la corrección y Enter, sin esperar a que termine. En el vivo pasó exactamente eso: el Prompt 3 salió con el nombre equivocado del proyecto, se paró a Claude a mitad de camino, se corrigió el nombre y siguió como si nada.

Capítulo 2

El proyecto: una encuesta con un QR

Qué construimos, archivo por archivo, y qué hace cada conector.

Entender1 min

Qué construimos

Al final de la Clase 8 salió la pregunta que importa: ¿y qué pasa cuando alguien hace clic en enviar? La respuesta era un proyecto de fin de semana: algo publicado, que guarda, y que avisa. Hoy lo hacemos en una hora.

Diagrama dibujado a mano en una pizarra digital: un QR con una flecha hacia la caja ENCUESTA CX (dos campos y un botón Enviar); de la encuesta salen flechas a GRACIAS POR RESPONDER, a BD SUPABASE (que baja a DASHBOARD) y a un rombo con la condición «menor o igual a 2» que lleva a Notificar. Abajo a la derecha, una caja con Claude Code, Vercel, Supabase y Resend.
La pizarra con la que abrió la clase. Es el mapa completo: todo lo que sigue es marcarle un check a cada caja.

Le sirve a un café, a un taller, a un consultorio, a una tienda y a una asesoría. Es anónima: no pide nombre, correo ni teléfono. Y cambia de escala sola: en el vivo, una alumna describió una suite de reclamos para centros comerciales, y la estructura era la misma — un QR, un formulario, una base de datos, un panel, una notificación.

Entender1 min

Archivo por archivo

Así quedó la carpeta al terminar. Claude puede ponerle otros nombres a los archivos; lo que importa es qué hace cada uno.

ArchivoQuién lo veQué hace
CLAUDE.mdClaude, al empezar cada sesiónLas instrucciones del proyecto: en qué idioma hablarte, qué no hacer, dónde cargar las llaves. Es el Prompt 0.
index.htmlTu cliente, en su celularLa encuesta: la pregunta, las cinco notas y el comentario. Al apretar Enviar, manda la respuesta a la función.
api/guardar.jsNadie. Corre en VercelRecibe la respuesta, la guarda en Supabase y, si la nota es baja, te manda el correo por Resend.
api/resultados.jsNadie. Corre en VercelLee las respuestas para el panel, solo si la dirección trae la clave.
resultados.htmlTú, con una claveEl panel: cuántas respuestas, el promedio, una barra por nota, los últimos comentarios.
qr.htmlTú, para imprimirEl QR con la dirección de la encuesta y el nombre de tu negocio.

Entender2 min

Qué hace cada conector

Un conector es una llave de tu cuenta que le prestas a Claude. En la Clase 6 le prestaste las de tu correo y tu calendario. Hoy le prestas tres más. Por dentro se llaman MCP, la forma estándar en que dos plataformas se hablan hoy; por fuera, para ti, son un botón que dice Conectar.

ConectorQué le permite hacer a ClaudeEn una frase
VercelPublicar la carpeta en internet, leer los registros cuando algo falla, y responder si un dominio está libre.La dirección pública y la parte que trabaja por atrás.
SupabaseCrear la tabla donde se guardan las respuestas y entregar la dirección de tu base de datos.El cuaderno: una fila por respuesta.
ResendMandar correos y probar que salen.El que te toca el hombro.

Entender3 minOpcional

Dos formas de conectar: los conectores oficiales, o Composio

Hay dos caminos, y los dos llegan al mismo lugar.

CaminoCómoCuándo conviene
A · Conectores oficialesEn el chat, botón + → Conectores, buscas Vercel, Supabase y Resend y autorizas cada uno. Si alguno no aparece en la lista, se agrega como conector personalizado con su dirección oficial: mcp.vercel.com, mcp.supabase.com/mcp y mcp.resend.com/mcp.Si es tu primera vez: son tres botones, y cada uno pide solo lo suyo.
B · ComposioUna sola cuenta gratuita en composio.dev donde conectas todas tus aplicaciones, y un solo conector de Composio dentro de Claude. Desde ahí Claude llega a Vercel, Supabase, Resend, Gmail, GitHub, Notion, Shopify, Power BI y cientos más.Si ya lo usas desde la Clase 6, o si vas a conectar muchas cosas: un llavero en vez de un manojo de llaves.
La pantalla de conectores de la app de Claude: arriba los populares (Slack, Microsoft 365, Atlassian) y debajo la lista de conectores de la cuenta, con Composio marcado como conector personalizado y conectado.
En el vivo, todo pasó por Composio: es el conector personalizado que aparece conectado en la lista. Los prompts dicen «usando el conector» y funcionan igual por los dos caminos.

Entender1 min

Por qué la función vive en Vercel y no en la página

Podríamos hacer que la página hablara directo con Supabase y con Resend. Sería más corto. Pero la página se descarga en el celular de cada cliente, y con ella se descargaría todo lo que tiene adentro — incluidas las llaves de tus cuentas. Cualquiera podría verlas.

Por eso hay una función: un archivo chico que corre en Vercel, del lado de adentro, donde nadie lo ve. La página le manda la respuesta; la función la guarda y avisa. Las llaves viven en Vercel, en un cajón que se llama variables de entorno, y nunca salen de ahí.

Las cuatro etapas, en el orden en que se hacen: la página → publicar → guardar y ver → avisar. Después de cada una hay algo que se puede mostrar. Si un día solo te da el tiempo para dos, las dos primeras ya son una encuesta publicada.

Capítulo 3

Paso 1 · La página

Prompt 0 · Prompt 1 · la vista previa.

Crear2 minOpcional

Antes de nada, opcional: el archivo que te ahorra explicaciones

Al empezar cada sesión, Claude Code lee un archivo de tu carpeta llamado CLAUDE.md, si existe. Es el Proyecto de la Clase 5 y la skill de la Clase 7 en su forma más simple: instrucciones en un archivo de texto. Pídele que lo cree él:

Prompt 0 · El archivo de instrucciones (opcional)Pégalo en: El primer mensaje del chat, con la carpeta recién abierta
Crea un archivo CLAUDE.md en esta carpeta con estas instrucciones para ti:
- Este proyecto es una encuesta de satisfacción con QR para [el nombre de tu negocio]. La contesta un cliente desde el
  celular y es anónima.
- Háblame siempre en español y sin jerga técnica; si usas una palabra técnica,
  explícamela en una línea.
- No instales nada en mi computador ni hagas un cambio grande sin decirme
  antes qué vas a hacer y para qué.
- Nunca me pidas que pegue llaves ni contraseñas en este chat: dime dónde
  cargarlas.
La caja de mensaje de Claude Code con el Prompt 0 pegado. Arriba de la caja, los chips «Local» y «FEEDBACK CX» indican dónde va a trabajar; abajo, el modo y el modelo Sonnet.
El Prompt 0 en la caja, antes de mandarlo. Los chips de arriba confirman la carpeta: si dicen otra, cámbiala antes de Enter.

Lo primero que hace es crear el archivo en tu carpeta. Es tu primera tarjeta de permiso: léela y acepta.

Crear5 min

La encuesta

Este es el mismo prompt que se usó en vivo, con tus datos adentro:

Prompt 1 · La página de la encuestaPégalo en: El mismo chat
Quiero una encuesta de satisfacción para mi negocio, [el nombre de tu negocio].
Un cliente la abre desde el celular escaneando un QR: una sola página,
liviana y pensada para el teléfono.

Qué tiene que tener:
- Arriba, el nombre del negocio y la pregunta «¿Cómo te fue hoy?».
- Una nota de 1 a 5, con cinco botones grandes para tocar con el dedo.
- Un campo de comentario, opcional, de una o dos líneas.
- Un botón que diga «Enviar».
- Después de enviar, un mensaje de agradecimiento en lugar del formulario.
- Es anónima: no pide nombre, correo ni teléfono.

Cómo hacerlo:
- Un solo archivo index.html, con el estilo adentro. Sin instalar nada en
  mi computador.
- Textos en español, cortos y cálidos. Colores: [el color de tu encuesta].
- Por ahora el botón Enviar solo muestra el agradecimiento. Guardar y
  avisar lo agregamos después, en este mismo chat.

Cuando termines, dime cómo la abro en la vista previa.

En el vivo el color fue «sobrios y profesionales para la industria zapatera», y Claude eligió el resto. Si tienes el sistema de diseño de la Clase 8, este es el momento de pegarlo: la encuesta sale con tu marca desde el primer minuto.

Comprobar2 min

Qué vas a ver

  1. Aparece la tarjeta de permiso: quiere crear index.html. Léela. Aceptar.
  2. El archivo aparece en tu carpeta y su nombre en el chat. Haz clic: se abre en la vista previa.
  3. Pruébala como si fueras el cliente: toca una nota, escribe algo, Enviar. Tiene que agradecerte.
La encuesta en la vista previa: el nombre Zapaterías Impulso, la pregunta «¿Cómo te fue hoy?», cinco botones del 1 al 5 con las etiquetas «Muy mal» y «Excelente», un campo de comentario opcional, el botón Enviar y la nota de que es anónima.
La encuesta tal como salió del Prompt 1, abierta en la vista previa. Un mensaje, una página.

Capítulo 4

Paso 2 · Publicar con Vercel

Prompt 2 · por qué la dirección no cambia · el QR para imprimir.

Hacer2 min

Conectar Vercel

Camino A: en el chat, botón + → Conectores, busca Vercel, inicia sesión y Autorizar. Si no aparece en la lista, agrégalo como conector personalizado con la dirección oficial https://mcp.vercel.com — esa y no otra. Camino B: si ya tienes Composio conectado, en Composio conecta tu cuenta de Vercel y listo. Se hace una sola vez.

Crear5 min

Publicar, y el QR

El nombre del proyecto va a ser tu dirección: encuesta-cafe-luna se convierte en encuesta-cafe-luna.vercel.app. Y vas a usar el mismo nombre cada vez que vuelvas a publicar: es lo que hace que la dirección no cambie y que el QR impreso siga sirviendo.

Prompt 2 · Publicar en Vercel y generar el QRPégalo en: El mismo chat, con Vercel conectado
Publica esta encuesta en Vercel usando el conector, en producción, con el
nombre de proyecto [el nombre de tu proyecto en vercel]. Cuando esté publicada, dame la
dirección pública.

Después agrega una página qr.html que muestre un código QR grande apuntando
a esa dirección, con el nombre del negocio arriba y la frase «Cuéntanos cómo
te fue» abajo, lista para imprimir en una hoja carta. Genera el QR dentro de
la misma página, sin instalar nada en mi computador, y vuelve a publicar en
el mismo proyecto.

Comprobar2 min

Qué vas a ver — y el momento de la clase

  1. Una tarjeta de permiso distinta: esta vez es el conector el que pide actuar, y dice que va a publicar en Vercel. Aceptar.
  2. Claude te devuelve la dirección. Ábrela en tu computador y después en tu celular.
  3. Segunda publicación, y ahora existe tu-direccion/qr.html. Ábrela: ahí está tu QR.
  4. Escanéalo con la cámara del celular. Se abre tu encuesta.
A la izquierda, el chat de Claude Code confirmando que la encuesta ya está publicada en producción, con la tarjeta «Zapaterías Impulso — Encuesta, zapaterias-impulso.vercel.app» y el detalle de cómo armó qr.html; a la derecha, la página del QR: el nombre del negocio arriba, un código QR grande al centro y «Cuéntanos cómo te fue» abajo.
Publicada y con QR. En el vivo, los asistentes lo escanearon desde sus celulares y entraron: llevábamos cuarenta minutos y ya había una encuesta pública.

Capítulo 5

Paso 3 · Guardar con Supabase y ver los resultados

Prompts 3 y 4 · las llaves van en Vercel, nunca en el chat.

Hacer2 min

Conectar Supabase

Camino A: botón + → Conectores, busca Supabase; si no aparece, la dirección oficial es https://mcp.supabase.com/mcp. Te manda a iniciar sesión y a autorizar. Si te deja elegir, acota el acceso al proyecto de la encuesta: Claude no necesita ver ningún otro. Camino B: en Composio, conecta tu cuenta de Supabase.

Crear5 min

Guardar cada respuesta

Prompt 3 · Guardar las respuestas en SupabasePégalo en: El mismo chat, con Supabase conectado y el proyecto creado
Ahora quiero que cada respuesta quede guardada. Usa el conector de Supabase
con mi proyecto [el nombre de tu proyecto en supabase].

- Crea una tabla llamada respuestas con la nota, el comentario y la fecha y
  hora.
- Haz que al apretar Enviar la encuesta le mande la respuesta a una función
  del propio sitio en Vercel, y que esa función la guarde en Supabase.
- Las llaves de Supabase van en las variables de entorno del proyecto en
  Vercel, nunca dentro de la página ni en este chat.
- Hazlo de la forma más simple posible, sin instalar nada en mi computador.
- Cuando esté listo, vuelve a publicar en el mismo proyecto y dime cómo
  pruebo que se guardó.
El chat de Claude Code con el Prompt 3 enviado dos veces: la primera con el proyecto «zapaterias impulso» y la segunda con «FEEDBACK CX». Debajo, Claude cuenta que encontró el proyecto, listó sus tablas, creó la tabla respuestas con una migración, obtuvo la dirección y la llave pública, y creó la función api/guardar.js.
El único tropiezo del vivo: el prompt salió con el nombre del proyecto de Vercel en vez del de Supabase. Se interrumpió a Claude, se mandó de nuevo con el nombre correcto, y siguió.

Entender2 min

Las llaves: dónde salen y dónde van

Con el conector puesto, Claude resuelve las llaves de Supabase él solo: las obtiene y las deja en Vercel sin que las copies. En el vivo fue exactamente así, y las variables quedaron con los nombres SUPABASE_URL y SUPABASE_ANON_KEY. Si en algún momento te pide cargar una a mano, el camino es siempre el mismo:

De dónde saleCómo
SupabaseEn tu proyecto, Settings → API Keys. Hay dos tipos: la publishable, que puede andar por ahí, y la secret, que nunca va en una página ni en un navegador. Claude te dice cuál necesita.
A dónde vaEn Vercel, entra a tu proyecto → Settings → Environment Variables. Agregas cada una con su nombre y su valor, marcas Production, y guardas.
Y despuésVuelves al chat: «Ya cargué las variables. Vuelve a publicar en el mismo proyecto.» Vercel solo aplica las variables nuevas a las publicaciones nuevas: si no republicas, no cambió nada.

Comprobar2 min

Qué vas a ver — la fila en la tabla

  1. Una tarjeta del conector de Supabase: va a crear la tabla. Aceptar.
  2. Una tarjeta para crear la función y otra para cambiar index.html. Aceptar las dos.
  3. Escaneas el QR, contestas con un 4 y un comentario. En Supabase, Table Editor → respuestas: ahí está tu fila, con la hora.
El Table Editor de Supabase con la tabla respuestas abierta: columnas id, nota, comentario y creado_en, y dos filas con nota 4 y los comentarios «buen servicio» y «Una locura !!».
Las primeras dos filas del vivo. Mientras se armaba el panel, los asistentes siguieron contestando desde el QR y la tabla se fue llenando sola.

Crear5 min

Ver los resultados

Mirar la tabla en Supabase sirve para comprobar. Para el día a día quieres un panel.

Prompt 4 · El panel de resultadosPégalo en: El mismo chat, después de ver la primera fila en Supabase
Agrega una página privada resultados.html con un panel simple: cuántas
respuestas hay, el promedio, cuántas de cada nota (una barra por nota) y
los últimos diez comentarios con su fecha.

- Los datos los lee una función del sitio en Vercel, no la página
  directamente, para que las llaves no salgan a la luz.
- Protege el panel con una clave que vaya en la dirección, guardada también
  como variable de entorno en Vercel. Dime qué nombre le pusiste y cómo
  queda la dirección completa.
- Mismo estilo que la encuesta. Vuelve a publicar en el mismo proyecto.
El panel de resultados en el navegador, con el estilo de la encuesta: 15 respuestas, promedio 3.8, una barra horizontal por cada nota del 5 al 1 con su cantidad, y la lista de últimos comentarios con la nota y la fecha de cada uno.
El panel tal como salió del Prompt 4, con quince respuestas reales de los asistentes. Es tu primer dashboard de experiencia de cliente, y lo pediste en cuatro líneas.

En el vivo la clave quedó en una variable llamada PANEL_CLAVE y la dirección terminó en resultados.html?clave=…. Sin la clave, la página dice que es privada y no muestra nada. Esa dirección completa es tuya: no la pegues en un chat grupal.

Capítulo 6

Paso 4 · Avisar con Resend

Prompt 5 · la regla escrita en español · el 5 que no avisa y el 1 que sí.

Hacer2 min

Conectar Resend

El mismo gesto de los otros dos. Camino A: botón + → Conectores, busca Resend; si no aparece, conector personalizado con la dirección oficial https://mcp.resend.com/mcp. Camino B: Composio. Resend tiene además un plugin oficial (+ → Plugins) con buenas prácticas de correo; es opcional.

Crear5 min

La regla, escrita en español

Prompt 5 · Avisar cuando llega una nota bajaPégalo en: El mismo chat, con Resend conectado y la llave creada
Última cosa: quiero enterarme cuando a alguien le fue mal. Usa Resend.

- Cada vez que llegue una respuesta con nota 1 o 2, mándame un correo a
  [el correo donde quieres el aviso] con la nota, el comentario y
  la hora. Las notas 3, 4 y 5 no avisan.
- El correo lo manda la misma función que guarda, desde
  onboarding@resend.dev, porque todavía no tengo dominio verificado.
- La llave de Resend va como variable de entorno en Vercel. Dime exactamente
  cómo agregar el apikey dentro del proyecto en vercel.
- Vuelve a publicar en el mismo proyecto y dime cómo lo pruebo: una
  respuesta con 5 y una con 1.
La respuesta de Claude Code al Prompt 5: actualizó la función que guarda para que también avise por correo, publicó, y explica paso a paso cómo agregar la llave en Vercel: entrar a vercel.com, abrir el proyecto, Settings → Environment Variables, Add New con Key RESEND_API_KEY, el valor de la llave, marcar Production y Save. Advierte que Vercel no aplica variables nuevas a lo ya publicado.
Claude no pide la llave: dice exactamente dónde cargarla y con qué nombre. Eso es lo que pedía la última línea del Prompt 5.

Hacer3 min

Cargar la llave en Vercel y republicar

Esta es la única llave que cargas a mano en toda la clase, porque Resend no se la entrega a Claude.

  1. En vercel.com, abre tu proyecto → Settings → Environment Variables → Add New.
  2. Key: el nombre que te dijo Claude (en el vivo, RESEND_API_KEY). Value: la llave que creaste en Resend antes de la clase. Environment: Production. Save.
  3. Vuelve al chat y escríbele que ya está:
La página Environment Variables del proyecto en Vercel con el diálogo «Add Environment Variable» abierto: tipo Secret, Key RESEND_API_KEY, el campo Value vacío, Environments en Production. Detrás, desenfocadas, las variables que Claude ya había creado: PANEL_CLAVE, SUPABASE_URL y SUPABASE_ANON_KEY.
El cajón de las llaves. Las tres de atrás las dejó Claude solo; la de Resend la cargas tú, y el valor no se ve nunca más después de guardar.
Ya cargué la llavePégalo en: El mismo chat, después de guardar en Vercel
Ya agregué la llave en Vercel, vuelve a publicar.

Comprobar2 min

El 5 que no avisa y el 1 que sí

  1. Escaneas el QR y pones un 5. No llega nada. Correcto.
  2. Pones un 1 o un 2 con un comentario. Revisa tu correo — y la carpeta de spam la primera vez. Ahí está.
Un correo abierto en Gmail con el asunto «Respuesta negativa en la encuesta (nota 2)», enviado por Zapaterías Impulso desde onboarding@resend.dev, con tres líneas: Nota 2, Comentario «correo de notificación por mal servicio» y la hora.
El correo que llegó en la prueba final, pasada la medianoche. Nota, comentario y hora, en tu bandeja, sin que nadie lo haya escrito.
Lo que pasó en el vivo con este paso

Este paso no alcanzó a hacerse en la hora y media del vivo, porque el bonus del capítulo siguiente se comió el tiempo. Se terminó esa misma noche en dos grabaciones cortas que están al final de la grabación de la clase: en la primera se manda el Prompt 5 y se carga la llave; en la segunda se prueba con un 2 y con un 1 y llegan los dos correos. La primera publicación falló porque la función respondía antes de que el correo saliera; Claude lo detectó solo al revisar los registros de Vercel y lo corrigió sin que nadie le pidiera nada.

Capítulo 7

Bonus del vivo · Ponle tu marca

Lo que pasó cuando una alumna pidió mejorar el look & feel: el logo, la iteración, y lo que salió mal.

Crear5 minOpcional

El pedido, tal como se hizo en vivo

Con el panel recién publicado, una alumna preguntó si el look & feel se podía mejorar, y pidió el logo de la marca. Este no estaba en el guion: se escribió en el momento, y por eso vale la pena verlo tal cual. Primero el pedido general, y un segundo mensaje con el logo adjunto:

Bonus · Ponle tu marcaPégalo en: El mismo chat, con el logo adjunto en el segundo mensaje
me gusta todo como está, pero lo encuentro muy plano, haz un diseño más atractivo tanto
para la encuesta del cliente como para el dashboard, al dashboard ponle barras de colores
coherentes para lo bueno y lo malo.

usa el logo de mi marca que está en el archivo adjunto y usa esos colores como branding
Dos mensajes del usuario en el chat de Claude Code: el pedido de un diseño más atractivo para la encuesta y el panel, con barras de colores coherentes para lo bueno y lo malo; luego el logo de la zapatería adjunto (una zapatilla negra y roja) y la instrucción de usar ese logo y sus colores como branding.
El pedido en vivo, con el logo adjunto en JPG. Nada de esto es técnico: es lo que le dirías a un diseñador.

Entender3 minOpcional

Lo que salió mal, y qué aprender de eso

Un cambio que debía tomar cinco minutos tomó casi media hora, y la clase terminó con Claude todavía publicando. Lo que había pasado, en palabras del propio Claude cuando terminó: el logo llegó en JPG, lo convirtió a PNG con fondo transparente (para eso escribió una pequeña función en Python), y al incrustarlo en las páginas como texto larguísimo se corrompía cada vez que lo copiaba a mano. Lo resolvió achicándolo y verificándolo con una huella antes de darlo por bueno.

El resumen de Claude Code al terminar el rebranding: encuesta y panel rediseñados con el logo y los colores de marca, barras por color según la nota, QR actualizado, el logo verificado con un hash, y una disculpa: la causa real de la demora fue que el logo, en un formato de texto larguísimo, se corrompía cada vez que había que copiarlo a mano.
Claude explica qué pasó cuando por fin termina. Preguntarle «¿qué está pasando?» a los diez minutos habría ahorrado los otros quince.
Lo que se hizoLo que conviene hacer
Pedir el cambio en medio de la clase y esperarPedirlo al final, o en otra sesión. Un cambio visual grande no es un ajuste: es una tarea.
Esperar en silencio mientras tardabaPreguntarle qué está haciendo y por qué tarda. Responde, y muchas veces se destraba solo.
Entregar el logo en JPG sin másEntregarlo en PNG con fondo transparente o en SVG, y decirle que lo guarde como archivo, no que lo incruste.
No tener un punto de retornoPedir versiones base antes de un cambio grande, y usar rewind si hay que volver (siguiente paso).

Entender2 minOpcional

Checkpoints y rewind: cómo volver atrás

Una alumna preguntó lo que todos pensaban: ¿y si esto pasara en la vida real, se puede parar y hacerlo de otra forma? Sí. Puedes interrumpirlo en cualquier momento. Pero la buena práctica es otra: antes de un cambio grande, pídele que deje una versión base — un punto al que volver — y si el cambio sale mal, usas /rewind para regresar a un mensaje anterior de la conversación y tomar otro camino desde ahí.

El chat de Claude Code con dos mensajes cortos del usuario, «ya te falta poco?» y «terminalo rapido», la respuesta de Claude listando lo que le falta, y en la caja de mensaje el comando /rewind escrito, con la descripción «Rewind the session to an earlier message».
Preguntarle «¿ya te falta poco?» es un mensaje legítimo, y /rewind es la salida de emergencia: vuelve la sesión a un mensaje anterior.

En el vivo no se usó, porque el cambio ya iba avanzado y detenerlo habría perdido el progreso. Pero la lección quedó dicha: checkpoints antes, rewind después.

Comprobar2 minOpcional

Cómo quedó

Cuando terminó, terminó bien: la encuesta, el QR y el panel con el logo y sus colores, y las barras del panel en verde para las notas buenas y en rojo para las malas.

La encuesta con la marca aplicada: fondo oscuro con un degradado rojo, el logo de la zapatilla arriba, la pregunta «¿Cómo te fue hoy?», los cinco botones con el 4 seleccionado en rojo, el comentario a medio escribir y el botón Enviar en rojo.
La encuesta después del bonus. Mismo contenido, otra cara: es lo que pide un logo y dos colores.
El panel de resultados con la marca: fondo oscuro, logo, 19 respuestas, promedio 3.84 en rojo, y una barra por nota con colores según la nota (verde para 5 y 4, amarillo para 3, naranja para 2, rojo para 1). Debajo, los últimos comentarios con un borde del color de su nota.
El panel con las barras de colores «coherentes para lo bueno y lo malo», tal como se pidió. Diecinueve respuestas reales de la clase.

Capítulo 8

Cuando algo falla, y cómo cuidarte

El error se pega · los tropiezos que más se repiten · seguridad en cuatro reglas.

Entender1 min

El error se pega

El error se pegaPégalo en: El mismo chat
Me salió este error: [pega aquí el mensaje completo, tal cual]

Explícame en una línea qué pasó y arréglalo. Si necesitas algo de mí, dime qué.

Entender2 min

Los tropiezos que más se repiten

Lo que vesLo que casi siempre es
«No veo el conector»Vuelve a + → Conectores y comprueba que está conectado. Si vas por Composio, revisa en Composio que la cuenta de ese servicio esté conectada.
Claude fue a buscar un proyecto que no existeEl nombre del prompt no es el del servicio. Interrúmpelo, corrige el nombre y manda de nuevo. Pasó en el vivo con Supabase.
Publicó, pero no cambió nadaLas variables de entorno nuevas solo aplican a publicaciones nuevas. «Vuelve a publicar en el mismo proyecto.»
La fila no aparece en SupabaseUna variable mal escrita, casi siempre. «Revisa los registros de Vercel con el conector y dime qué falló.»
El correo no llegaRevisa spam. Confirma que la nota fue 1 o 2, y que el correo de destino es el de tu cuenta de Resend: sin dominio verificado no llega a ningún otro. En el vivo, además, la función respondía antes de mandar el correo; Claude lo vio en los registros y lo arregló.
Lleva demasiado tiempo en algoPregúntale qué está haciendo. Si es un cambio grande que salió mal, /rewind a un mensaje anterior y pídelo de otra forma.
Me pide instalar algo, o pegar una llave«Hazlo sin instalar nada.» · «Dime dónde cargarla; no la voy a pegar acá.»
«Llegaste al límite de uso»No es un error: Claude Code comparte el límite con el chat de Claude. Espera a que se reinicie y sigue en el mismo chat; no se pierde nada.

Entender1 min

Seguridad, en cuatro reglas

  1. Modo Manual hasta que confíes, y leer las tarjetas: la que habla de comprar, borrar o pagar se rechaza.
  2. Un conector es tu cuenta. Supabase acotado a un proyecto; nunca la base de un cliente ni la de producción.
  3. Las llaves viven en Vercel. No en el chat, no en la página, no en WhatsApp. La secret, nunca en un navegador. Y si una llave se vio en una pantalla compartida, se elimina y se crea otra — es lo que se hizo después del vivo.
  4. La encuesta es anónima a propósito. Si algún día pides nombre o correo, di para qué lo usas.

Y si todo sale mal: borras la carpeta del proyecto y el proyecto en Vercel, y empiezas de nuevo con el Prompt 1. Nada de esto toca el resto de tu computador. Por eso trabajamos en una carpeta.

Capítulo 9

Qué hacer con esto la próxima semana

La tarea · qué más pedirle · los micro-prompts · el cierre.

Hacer1 min

La tarea

Tu encuesta, con tu nombre y tu pregunta, publicada. El QR impreso donde lo vea un cliente. Antes, una prueba tuya con un 1, para ver que el correo llega. Si te trabas, para eso está el grupo de WhatsApp: se contesta, y si hace falta se abre un Meet de diez minutos para destrabar.

Entender1 min

Qué más puedes pedirle, en el mismo chat

  • Una segunda pregunta: «¿Qué podríamos mejorar?», con tres opciones para tocar.
  • Una encuesta por sucursal o por mesa: el mismo QR con un número al final de la dirección, y el panel separado por ese número.
  • Que se vea como tu marca: el Capítulo 7, pero desde el principio y con calma.
  • Un resumen semanal por correo: «todos los lunes, cuántas respuestas, el promedio y los tres comentarios más largos». Te va a proponer una tarea programada en Vercel.
  • Respuestas por voz, como pidieron dos alumnos en el vivo: el cliente deja un audio en vez de escribir, un transcriptor (Deepgram regala créditos al crear la cuenta) lo pasa a texto y el análisis sigue igual. Es totalmente factible; es un paso más que el de hoy.
  • Al revés: una entrada de reclamos. La misma estructura sirve para recibir peticiones, quejas y reclamos, clasificarlas y seguirlas en el panel.
  • Enlazarla desde tu landing de la Clase 8, o desde la firma de tu correo.

Entender1 min

Micro-prompts para el día a día

Guárdalos: son los que más se repiten después del primer resultado.

Qué hay aquíPégalo en: Cualquier chat de Claude Code
Explícame qué hace cada archivo de esta carpeta, en dos líneas cada uno,
sin tecnicismos.
Antes de hacerloPégalo en: Antes de un pedido grande
Antes de hacerlo, dime qué archivos vas a tocar y qué va a cambiar para el
cliente. Espera mi ok.
Un cambio a la vezPégalo en: Cuando algo no te gustó
Cambia solo esto: [el cambio]. No toques nada más.
DeshacerPégalo en: Cuando el cambio salió peor
Deshaz el último cambio y déjalo como estaba antes.
Qué conectores tienesPégalo en: Al empezar una sesión nueva
¿Qué conectores tienes disponibles en esta sesión y qué puedes hacer con
cada uno?

Entender1 min

Los cinco errores que más se repiten

El errorQué pasa
Pedir las cuatro etapas en un mensajeClaude lo intenta, y cuando algo falla no sabes en cuál. Una etapa, una prueba, la siguiente.
Aceptar sin leer la tarjetaLa tarjeta es tu cinturón de seguridad. Cinco segundos de lectura por tarjeta, todo el día.
Abrir Documentos enteroClaude ve todo lo que hay ahí. Una carpeta nueva por proyecto, siempre.
Pegar una llave «solo esta vez»Queda en el historial del chat. Las llaves van a Vercel, y se rotan si se filtran.
Abandonar al primer errorEl primer error es parte del proceso, no una señal de que no es para ti. Se pega y se sigue.
La misma pizarra del principio, ahora con un check dibujado a mano sobre cada caja: QR, Encuesta CX, Gracias por responder, BD Supabase, Dashboard y la notificación cuando la nota es menor o igual a 2.
La pizarra al final de la última grabación: todas las capas con su check. Lo que se dibujó al principio es exactamente lo que se construyó.
La carpeta FEEDBACK CX en el Finder al terminar: la carpeta api, CLAUDE.md, index.html, logo zapateria.jpg, logo.png, qr.html y resultados.html.
La carpeta que se creó vacía al empezar, al final. Todo lo que hay adentro lo escribió Claude; tú pediste, miraste y aprobaste.

Para cerrar

En la Clase 1 le aprendiste a hablar. En la 2 construiste con ella. En la 5 le ordenaste el contexto, en la 6 le diste las llaves de tu día, en la 7 le enseñaste tus procesos y en la 8 le diste tu criterio visual. Hoy le diste manos. Nos vemos en la próxima.

La grabación es un solo video de 55 minutos: el vivo, sin las esperas ni las tangentes, y a continuación las tres grabaciones cortas de esa misma noche donde se terminó el Paso 4 y se probó el correo.

Abrir la grabación de la claseGratis · Se abre en otra pestaña, esta guía no se cierraAbrir la encuesta que se construyó en vivo, publicada y funcionandoGratis · Se abre en otra pestaña, esta guía no se cierraAbrir su QR para imprimirGratis · Se abre en otra pestaña, esta guía no se cierra