For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegación principal

Crear habilidades

Agrega flujos de trabajo repetibles que utilicen las herramientas MCP de tu complemento.

Una habilidad complementa tu servidor MCP al enseñar a ChatGPT y Codex a usar sus herramientas en un flujo de trabajo repetible. Usa el servidor para obtener datos en tiempo real, gestionar la autenticación y la autorización, y realizar acciones controladas. Usa la habilidad para definir secuencias de herramientas, puntos de decisión, requisitos de los resultados, ejemplos, plantillas y otras instrucciones reutilizables.

Un complemento puede contener una habilidad o un grupo de habilidades relacionadas. Centra cada habilidad en un objetivo reconocible del usuario que figure en tu inventario de casos de uso. Una habilidad también puede funcionar sin un servidor MCP cuando el flujo de trabajo solo necesita instrucciones y recursos empaquetados.

Crear una habilidad

La forma más rápida de empezar es usar el creador de habilidades integrado. Describe el objetivo del usuario y las herramientas MCP que permiten alcanzarlo:

@skill-creator Create a skill named tabletop-dice that understands dice
notation such as 3d6, calls roll_dice once for each die, and reports every
roll and the total.

En Codex, invoca el mismo creador con $skill-creator.

También puedes crear los archivos manualmente. Cada habilidad reside en su propio directorio y requiere un archivo SKILL.md:

  • skills
    • tabletop-dice
      • SKILL.md Instrucciones y metadatos obligatorios
      • references Documentación opcional
      • scripts Código ejecutable opcional
      • assets Plantillas y recursos opcionales

Escribir SKILL.md

Comienza el archivo con un nombre y una descripción, seguidos de las instrucciones:

---
name: tabletop-dice
description: Roll one or more dice for tabletop games and report each result and the total.
---

Use this skill when the user asks to roll dice.

1. Parse requests written as `NdS` as N dice with S sides. For example, `3d6`
   means three six-sided dice.
2. Call `roll_dice` once for each requested die and pass S as `sides`.
3. Report each tool result in order.
4. When the user requests multiple dice, add the results and report the total.

Do not invent, replace, or reroll a result unless the user asks you to.

La descripción determina cuándo el modelo considera usar la habilidad. Indica el flujo de trabajo y las condiciones que deben activarla. Incluye en el cuerpo las instrucciones detalladas sobre el procedimiento, el formato y la seguridad.

Definir los límites del flujo de trabajo

Vincula cada habilidad con uno o más casos de uso. Las instrucciones deben dejar claro lo siguiente:

  • Qué datos de entrada espera el flujo de trabajo.
  • Qué pasos debe seguir el modelo.
  • Qué resultado debe recibir el usuario.
  • Qué hechos no debe inferir el modelo.
  • Cuándo el flujo de trabajo debe hacer una pregunta, detenerse o rechazar una solicitud.
  • Qué archivos de apoyo debe consultar el modelo.

Prioriza una habilidad enfocada sobre una gran colección de instrucciones poco relacionadas entre sí. Separa los flujos de trabajo cuando tengan distintas condiciones de activación, datos de entrada o criterios de éxito.

Revisar el seguimiento de instrucciones

Al escribir o importar habilidades para GPT-6 Astra, revisa las directrices sobre el seguimiento de instrucciones. Examina las habilidades y los archivos de apoyo para detectar instrucciones poco claras o contradictorias y deja claro que las instrucciones explícitas del usuario tienen prioridad sobre las directrices de las habilidades.

Agregar recursos de apoyo

Mantén SKILL.md conciso y coloca el material detallado junto a él:

  • Usa references/ para políticas, esquemas, ejemplos y material de contexto.
  • Usa assets/ para plantillas o archivos que el flujo de trabajo deba copiar o transformar.
  • Usa scripts/ cuando el flujo de trabajo necesite cálculos deterministas o procesamiento de archivos.

Incluye referencias a los archivos de apoyo en SKILL.md y explica cuándo cargarlos o ejecutarlos. No agregues un script cuando las instrucciones y las herramientas existentes permitan completar la tarea de forma confiable.

Conectar habilidades con herramientas MCP

Una habilidad puede guiar al modelo en el uso de las herramientas que expone el servidor MCP del complemento. Usa la habilidad para las instrucciones del flujo de trabajo y el servidor para obtener datos en tiempo real, gestionar la autorización y realizar acciones controladas.

Si una habilidad requiere un servidor MCP, declara la dependencia en agents/openai.yaml:

dependencies:
  tools:
    - type: "mcp"
      value: "dice-roller"
      description: "Roll an N-sided die"
      transport: "streamable_http"
      url: "https://tinymcp.dev/api/moldy-aloof-zettabyte/mcp"

Una dependencia hace que la herramienta necesaria esté disponible; no sustituye las instrucciones claras sobre el flujo de trabajo. Indica al modelo qué herramientas usar, en qué orden y cómo manejar los resultados ausentes o ambiguos.

Importar una habilidad desde MCP

Puedes cargar una habilidad empaquetada durante el envío del complemento o importarla desde su servidor MCP. La opción de MCP mantiene las instrucciones y los archivos de apoyo de la habilidad junto con la implementación del servidor.

OpenAI importa habilidades desde MCP cuando seleccionas Escanear herramientas en el portal de envío de complementos. Los archivos importados se guardan como una instantánea en el borrador; ChatGPT y Codex no los obtienen de tu servidor MCP durante la ejecución. Después de modificar la habilidad, implementa el servidor y vuelve a escanearlo antes de enviar una nueva versión del complemento.

Para obtener información sobre la declaración de capacidades, los métodos de descubrimiento, el archivo de manifiesto de recursos y los límites de importación, consulta Importar habilidades desde el servidor MCP.

Probar la habilidad

Haz pruebas con solicitudes representativas del inventario de casos de uso:

  1. Solicitudes directas que deberían activar la habilidad.
  2. Solicitudes indirectas que expresen el mismo objetivo.
  3. Datos de entrada incompletos que deberían dar lugar a una pregunta de seguimiento.
  4. Solicitudes que no deberían activar la habilidad.
  5. Casos límite en los que la habilidad debe evitar inventar información o realizar una acción no admitida.

Revisa tanto la activación como la calidad de los resultados. Ajusta la descripción cuando la habilidad se active en el momento equivocado. Ajusta las instrucciones cuando elija el flujo de trabajo correcto, pero produzca un resultado inconsistente.

Empaquetar la habilidad

Haz que el archivo de manifiesto del complemento apunte al directorio de habilidades:

{
  "name": "dice-roller",
  "version": "1.0.0",
  "description": "Roll dice for tabletop games",
  "skills": "./skills/",
  "apps": "./.app.json"
}

Consulta Empaquetar tu complemento para ver el archivo de manifiesto completo, la asignación de servidores MCP, las pruebas locales y el flujo de distribución.