phosphor-duotone:seedling Ejemplo: un agente mínimo

Construye el proyecto BxAgents completo más pequeño posible - un agente, una tool, una skill.

En esta página

Ejemplo: un agente mínimo

El proyecto BxAgents completo más pequeño es examples/minimal-agent/ - tres archivos que muestran la forma completa de un proyecto: un Agent.bx, unas instrucciones, una tool y una skill. Todos los demás ejemplos de esta serie de guías parten exactamente de esta forma.

El proyecto

minimal-agent/
├── Agent.bx
├── instructions.md
├── tools/
│   └── Greeter.bx
└── skills/
    └── greeting/
        └── SKILL.md

Agent.bx extiende el propio AiAgent de bx-ai y declara un nombre, una descripción y un modelo en init():

class extends="bxModules.bxai.models.runnables.AiAgent" {

	function init() {
		super.init(
			name        : "minimal-agent",
			description : "The smallest complete BX Agents project: one tool, one skill.",
			model       : aiModel( provider: "mock", params: { model: "mock-model" } )
		)
		return this
	}

}

instructions.md es el system prompt - un archivo Markdown plano, copiado tal cual en tiempo de build:

## Minimal Agent

You are a friendly assistant. When someone tells you their name, use the
`sayHello` tool to greet them, and follow the greeting skill's guidance
on tone.

La tool

Cualquier class bajo tools/ con una función anotada con @AITool se convierte automáticamente en una tool invocable - sin paso de registro, sin entrada de configuración. tools/Greeter.bx:

class {

	@AITool( "Say hello to someone by name." )
	function sayHello( name ) {
		return "Hello, " & arguments.name & "!";
	}

}

La cadena que se pasa a @AITool es la descripción de la tool, y se envía al modelo exactamente tal como está escrita - consulta Tools para ver cómo los tipos de argumento de BoxLang se traducen al esquema JSON que ve el modelo.

La skill

Una skill en skills/<nombre>/SKILL.md es orientación que el modelo puede incorporar cuando decide que es relevante - no está siempre activa como instructions.md. skills/greeting/SKILL.md:

---
name: greeting
description: How to greet people warmly.
---

Always greet the user warmly and use their name if known.

Consulta Skills para ver cómo description determina cuándo se usa realmente una skill.

Construir y ejecutar

cd examples/minimal-agent
bxAgents build
bxAgents chat

build ensambla todo lo anterior en una aplicación ColdBox normal bajo .build/app (consulta El pipeline de build); chat arranca el agente generado en el mismo proceso y te deja en un REPL de terminal contra él. Prueba con:

> My name is Ada.

El modelo debería recurrir a la tool sayHello y responder con calidez, siguiendo la orientación de la skill - todo ello a partir de una sola frase de instrucciones más una tool de dos líneas y una skill de dos líneas.

Dónde ir a continuación

Editar esta página Descargar Markdown Última actualización Sep 17, 2026, 5:15:06 PM