Anatomía y flujo

Anatomía de un agente: los bloques

system, config, access, variables, language, connection, start_agent y subagent.

Fuente: ascript-blocks.md

Un script se organiza en bloques. Cada bloque agrupa propiedades que describen datos o procedimientos. Los bloques de nivel superior definen el agente; los bloques subagent definen lo que sabe hacer.

system

Instrucciones globales y mensajes del sistema: la persona del agente, el mensaje de bienvenida y el de error.

System Block
system:
    instructions: "You are an AI Agent."
    messages:
        welcome: Hi, I'm an AI service assistant. How can I help you?
        error: "Sorry, it looks like something has gone wrong."

config

Identidad del agente: nombre de API, etiqueta visible y descripción.

Config Block
config:
    developer_name: "Demo_Agent_1"
    agent_label: "Demo Agent"
    description: "This is my demo agent"

variables

Estado global del agente. Se comparte entre subagentes y persiste a lo largo de la conversación.

Variables Block
variables:
    member_name: mutable string
        description: "The name of the member for personalized greetings"
    verified: mutable boolean = False
        description: "Whether the user's identity has been verified"

language y connection

  • language: idiomas soportados por el agente.
  • connection: conexiones externas, como Enhanced Chat en canal de mensajería.

start_agent

El punto de entrada. Todo mensaje del usuario pasa primero por aquí. Da la bienvenida, clasifica la intención y enruta al subagente adecuado.

subagent

Un trabajo concreto: gestión de pedidos, devoluciones, verificación de identidad. Cada subagente tiene su description (clave para que el router acierte) y su bloque reasoning.

Subagent Block
subagent Order_Management:
    description: "Handles order lookup, refunds, and order updates."

    reasoning:
        instructions: ->
            | Help the user with their order {!@variables.order_id}.
Temas relacionados