---
title: "Agentes"
description: "Un agente es un archivo Markdown que ejecuta el entorno de la sesión; el manifiesto solo regula su acceso."
---

Un agente es un archivo Markdown que define cómo actúa el entorno de ejecución en una
[sesión](/docs/es/work/sessions). Esta página describe los archivos de agente, las habilidades y
cómo una sesión elige un agente.

<a id="a-harness-runs-every-session"></a>

## Un entorno de ejecución se ejecuta en cada sesión

Una sesión ejecuta un entorno de agente: harness estándar (el predeterminado) o harness experimental.
[Entornos de ejecución](/docs/es/work/harnesses) explica cómo un proyecto selecciona uno y qué
admite cada uno.

Ambos leen los agentes del proyecto desde `agents/` y sus habilidades desde `skills/`.
harness estándar también lee los archivos que solo él usa desde `harnesses/opencode/`. harness experimental
lee los suyos desde `harnesses/pi/`.

Los proyectos creados antes de 2026-09 conservan los agentes y las habilidades en
`.beeuni/opencode/`. Beeuni admite ambas estructuras.

<a id="an-agent-is-two-files"></a>

## Un agente consta de dos archivos

Cada agente tiene dos partes:

- **Comportamiento** — un archivo Markdown, `agents/<name>.md` de forma predeterminada. Su
  frontmatter define el modelo, el modo y las reglas de permisos. El cuerpo es el
  prompt del sistema.
- **Gobernanza** — una entrada en el mapa `agents` de `beeuni.yaml`, con el nombre del agente como clave. Define a qué puede acceder el agente: conectores, secretos, habilidades, Apps,
  permisos de Beeuni y [herramientas](/docs/es/project/tools#who-may-use-which-tool).
  Su campo `file` indica el archivo de comportamiento.
  El mapa puede estar en un archivo que el manifiesto enumera en
  [`imports:`](/docs/es/project/manifest#imports); `default_agent` permanece en `beeuni.yaml`.

El manifiesto nunca define un prompt ni un modo. El archivo `.md` nunca define
el acceso a la plataforma. Consulta [la referencia del manifiesto](/docs/es/project/manifest) para ver
cada campo de gobernanza.

<a id="where-the-agent-file-lives"></a>

### Ubicación del archivo del agente

```yaml
agents:
  support:
    file: agents/support.md
```

- `file` es una ruta relativa al repositorio. Debe terminar en `.md`.
- No debe comenzar con `/`. No debe contener un segmento `.` ni `..`.
- Si no se especifica `file`, Beeuni lee `agents/<name>.md` y luego
  `.beeuni/opencode/agents/<name>.md`.
- Cuando el panel guarda un agente que tiene `.md`, escribe `file` con esa ruta.
- La API no permite cambiar `file`. Para mover un agente, mueve su `.md` y
  actualiza `file` en `beeuni.yaml` en la misma confirmación.

Las reglas completas de rutas están en
[la referencia del manifiesto](/docs/es/project/manifest#the-agent-file).

<a id="governance-is-deny-by-default"></a>

## La gobernanza deniega el acceso de forma predeterminada

Un agente sin la clave `connectors`, `secrets`, `skills`, `apps` o `beeuni_permissions` no obtiene
ninguno de esos accesos. `apps` enumera las [Apps de Beeuni](/docs/es/feature-flags/apps#agents-and-apps)
que el agente puede abrir cuando una App está restringida o es privada. Esta concesión es la segunda de las dos vinculaciones: el agente
también tiene un rol como principal de `service_account` —su límite máximo— y una
sesión solo puede hacer lo que ambas permiten. Consulta
[Permisos del agente](/docs/es/project/permissions) y
[Un vocabulario, dos vinculaciones](/docs/es/accounts#one-vocabulary-two-bindings). Define un campo como `all` para conceder acceso completo o enumera
nombres específicos. `default_agent` en `beeuni.yaml` indica el agente que inicia una sesión
cuando no se solicita ninguno.

Configura cada concesión desde el panel —Personalizar → Agentes → el agente, una página
por cada conjunto de concesiones en la sección Acceso: Habilidades, Conectores, Secretos, Apps, permisos de Beeuni— o desde la CLI con `beeuni agents scope <agent>`
(`--secrets`, `--connectors`, `--apps`). La página Apps solo aparece cuando la
marca de función [Apps](/docs/es/feature-flags/apps) está activada en el proyecto. Todas las vías
escriben el mismo bloque `agents.<name>` en `beeuni.yaml`.

Los proyectos heredados `beeuni.toml` (v1) enumeran los agentes en una matriz, no en un mapa, y
conceden acceso completo de forma predeterminada. Define concesiones específicas para restringir el acceso. Consulta
[la referencia del manifiesto](/docs/es/project/manifest).

<a id="skills-give-an-agent-know-how"></a>

## Las habilidades aportan conocimientos a un agente

Una habilidad es un archivo Markdown en `skills/<name>/SKILL.md`.
El entorno de ejecución carga las habilidades cuando se necesitan; Beeuni no inyecta el contenido de las habilidades
en cada prompt. En harness estándar, el agente llama a la herramienta `skill`. En harness experimental, el
prompt del sistema enumera el nombre y la descripción de cada habilidad, y el agente lee
el archivo. La concesión `skills` del agente en `beeuni.yaml`
controla qué habilidades puede cargar.

<a id="how-a-session-picks-its-agent"></a>

## Cómo una sesión elige su agente

Al crear una sesión, se acepta un `agent_name`. Beeuni inicia ese agente para la
sesión. Si omites `agent_name`, Beeuni usa el `default_agent` del proyecto.
Define el agente predeterminado desde el panel, la API o el SDK. Cada opción escribe
`default_agent` en `beeuni.yaml` y confirma el cambio en la rama
predeterminada del proyecto.

Un agente actúa como sí mismo: con sus permisos de Beeuni dentro de su rol límite,
independientemente de quién lo ejecute. Iniciar una sesión no le presta al agente tu propio rol.
Consulta [Permisos del agente](/docs/es/project/permissions).

Los agentes y las habilidades nuevos o modificados solo llegan a las sesiones futuras después de que una
[solicitud de cambio](/docs/es/work/change-requests) los incorpore a la rama predeterminada.
Conecta herramientas externas antes de que un agente pueda usarlas; consulta
[Conectores](/docs/es/connect/connectors).
