← Todas las guías
Método Esclusa Agentes y automatización

Tu primer agente, paso a paso: sin código y con código

Qué es realmente un agente, cómo diseñarlo en una hoja de papel y cómo construir uno sencillo con herramientas, primero sin programar y después con unas líneas de Python.

3 min de lecturaRevisada en octubre de 20262 fuentes

Qué es un agente, sin humo

Un agente es un modelo de IA que trabaja en bucle: decide qué hacer, usa una herramienta (buscar, leer un archivo, consultar un sistema), mira el resultado y decide el siguiente paso, hasta terminar la tarea. La diferencia con un chat es que actúa y encadena pasos por sí mismo.

Antes de construir un agentePregúntate si basta con un buen prompt o con un flujo fijo de pasos. Si sabes de antemano los pasos, no necesitas un agente: necesitas un flujo. Los agentes compensan cuando el camino cambia según lo que se encuentra.

Diséñalo en papel con cinco preguntas

  1. Objetivo: ¿qué tarea completa y cuándo está terminada?
  2. Herramientas: ¿qué necesita consultar o hacer? Cuantas menos, mejor.
  3. Límites: ¿qué no puede hacer nunca sin aprobación humana?
  4. Parada: ¿cuántos pasos como máximo? ¿Qué hace si se atasca?
  5. Medida: ¿cómo sabrás si lo hace bien? Diez casos reales con su resultado esperado.

Versión sin código

Los asistentes actuales ya funcionan como agentes cuando les das herramientas: búsqueda web, conectores a tu correo, calendario o documentos, y ejecución de código. Un ejemplo con un asistente que tenga búsqueda y conector de documentos:

Agente de investigación de proveedoresObjetivo: encontrar tres proveedores alternativos de [producto] en [países] para sustituir a nuestro proveedor actual. Trabaja así: 1. Lee el documento "Requisitos de compra" de mi carpeta para saber qué exigimos. 2. Busca en internet proveedores que cumplan esos requisitos. Usa solo sus webs oficiales y registros públicos. 3. Para cada candidato, comprueba: certificaciones, ubicación de fábrica, tamaño y si tiene clientes en nuestro sector. 4. Descarta los que no cumplan algún requisito obligatorio y explica por qué. Límites: - No contactes con nadie ni envíes nada. - Si una información no aparece en una fuente fiable, márcala como "no verificado". - Para en cuanto tengas tres candidatos sólidos o después de revisar 15. Entrega: una tabla con candidato, web, cumplimiento de cada requisito, fuente de cada dato y un comentario de riesgo.

Versión con código: un agente en 40 líneas

Con la API de un modelo, un agente es un bucle: envías la conversación y la lista de herramientas, el modelo pide usar una, tu código la ejecuta y le devuelve el resultado. Este ejemplo en Python usa la API de Claude con una herramienta de consulta de pedidos simulada.

agente.pyimport json import anthropic client = anthropic.Anthropic() # lee la clave de la variable ANTHROPIC_API_KEY tools = [{ "name": "buscar_pedido", "description": "Busca un pedido por su número y devuelve su estado y la fecha de entrega prevista. Úsala cuando el cliente pregunte por un pedido concreto.", "input_schema": { "type": "object", "properties": {"numero": {"type": "string", "description": "Número de pedido, por ejemplo PED-1042"}}, "required": ["numero"] } }] PEDIDOS = {"PED-1042": {"estado": "En reparto", "entrega": "15/10"}} def buscar_pedido(numero): return PEDIDOS.get(numero, {"error": "No existe ese pedido"}) mensajes = [{"role": "user", "content": "Hola, ¿dónde está mi pedido PED-1042?"}] for paso in range(5): # límite de pasos: el agente nunca da vueltas sin fin r = client.messages.create( model="claude-sonnet-5-5", max_tokens=1024, system="Eres el asistente de pedidos de una tienda. Responde en español y en dos frases. Si no encuentras el pedido, pide que revisen el número.", tools=tools, messages=mensajes, ) mensajes.append({"role": "assistant", "content": r.content}) if r.stop_reason != "tool_use": print("".join(b.text for b in r.content if b.type == "text")) break resultados = [] for b in r.content: if b.type == "tool_use": salida = buscar_pedido(**b.input) resultados.append({"type": "tool_result", "tool_use_id": b.id, "content": json.dumps(salida, ensure_ascii=False)}) mensajes.append({"role": "user", "content": resultados})

Para ejecutarlo: instala la librería con pip install anthropic, guarda tu clave en la variable de entorno ANTHROPIC_API_KEY y ejecuta python agente.py. Para conectarlo a tus sistemas, sustituye la función buscar_pedido por una consulta real a tu base de datos.

Lo que marca la diferencia

  • Descripciones de herramientas claras: qué hace, cuándo usarla y qué significa cada parámetro, como si se lo explicaras a alguien nuevo.
  • Límite de pasos y de gasto: siempre.
  • Aprobación humana para lo irreversible: enviar, pagar, borrar, modificar datos de clientes.
  • Registro de cada paso: para entender por qué hizo lo que hizo.
  • Evaluación con casos reales antes de soltarlo. Consulta la guía de evaluación.

Ponlo en práctica

Fuentes

Contenido redactado por Esclusa a partir de la documentación oficial citada. Los modelos, precios y funciones cambian a menudo: comprueba la fuente antes de tomar decisiones.

@esclusa.ia