---
title: Manifiesto del plugin
description: Define la identidad y los metadatos portátiles del plugin en el archivo plugin.json del directorio raíz.
---

# Manifiesto del plugin



Cada Agent Plugin contiene exactamente un manifiesto portátil llamado `plugin.json` en la raíz del plugin. El documento debe ser un objeto JSON y debe declarar el identificador de schema canónico y el nombre del plugin.

## Manifiesto mínimo [#manifiesto-mínimo]

```json title="plugin.json"
{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "deployment.tools"
}
```

El schema del manifiesto es cerrado. Los campos portátiles de nivel superior se limitan a los siguientes:

| Campo         | Obligatorio | Finalidad                                                                                             |
| ------------- | :---------: | ----------------------------------------------------------------------------------------------------- |
| `$schema`     |      Sí     | Selecciona el contrato completo de validación e interpretación de Agent Plugins.                      |
| `name`        |      Sí     | Nombre del plugin legible por personas e identificador del paquete.                                   |
| `version`     |      No     | Versión del plugin; se recomienda el versionado semántico.                                            |
| `description` |      No     | Descripción breve del plugin.                                                                         |
| `author`      |      No     | Objeto que contiene las cadenas opcionales `name`, `email` y `url`.                                   |
| `homepage`    |      No     | Cadena de la documentación o página de inicio.                                                        |
| `repository`  |      No     | Cadena del repositorio de código fuente.                                                              |
| `license`     |      No     | Cadena de la licencia; se recomienda un [identificador de licencia SPDX](https://spdx.org/licenses/). |
| `keywords`    |      No     | Matriz de cadenas para búsqueda y descubrimiento.                                                     |
| `extensions`  |      No     | Datos propiedad del cliente, con espacios de nombres de dominio inverso como claves.                  |

Las cadenas de metadatos no se rechazan solo por incumplir la sintaxis de URL, correo electrónico, versionado semántico o SPDX. Sus tipos JSON siguen siendo obligatorios.

## Restricciones del nombre [#restricciones-del-nombre]

Los nombres de plugin tienen entre 1 y 64 caracteres y solo usan letras ASCII minúsculas, dígitos, guiones y puntos. Empiezan y terminan con un carácter alfanumérico y no pueden contener `--` ni `..`.

**Válidos:** `my-plugin`, `acme.tools`, `lint3r`

**No válidos:** `My-Plugin`, `-start`, `has--double`, `too.many..dots`

## Campos desconocidos y no válidos [#campos-desconocidos-y-no-válidos]

Un campo desconocido de nivel superior infringe el schema, pero no invalida un plugin que sea válido en los demás aspectos: el cliente informa del campo y lo ignora. Los datos específicos del cliente deben estar bajo `extensions`.

Las demás infracciones del schema del manifiesto son fatales. El cliente rechaza el plugin sin descubrir ni ejecutar sus componentes.

## Schema canónico [#schema-canónico]

Descarga [`plugin.schema.json`](/schemas/1.0.0/plugin.schema.json). Si el texto de la especificación entra en conflicto con el schema legible por máquinas, prevalece el texto de la especificación.


---

Source: [content/docs/plugin-authors/manifest.mdx](https://github.com/agentplugins/agent-plugins-site/blob/237bbf575f5843214923419f9d0933852662f4f3/content/docs/plugin-authors/manifest.mdx)
Source commit: 237bbf575f5843214923419f9d0933852662f4f3

---

For a semantic overview of all documentation, see [/es/sitemap.md](/es/sitemap.md)

For an index of all available documentation, see [/es/llms.txt](/es/llms.txt)