Skills para agentes de IA en Delphi, C++Builder y .NET | eSeGeCe

Skills para agentes de IA en Delphi, C++Builder y .NET

Tu asistente de IA nunca ha leído el código fuente de eSeGeCe, así que inventa propiedades que no existen y coloca los componentes en la unit equivocada. Las skills para agentes le dan la API pública real de cada biblioteca. Gratuitas, con licencia MIT y se instalan en una línea.

Código escrito con aplomo que no compila

Pide a un asistente un cliente WebSocket en Delphi y obtendrás algo bien estructurado y sutilmente incorrecto. El motivo no es que el modelo sea descuidado, es que nunca ha visto esta biblioteca.

Estos modelos aprendieron de código público. Los componentes eSeGeCe son comerciales, así que su código fuente nunca ha formado parte de un conjunto de entrenamiento. El modelo reconoce la forma de una biblioteca de componentes Delphi y rellena el resto con otras bibliotecas que sí conoce. Eso produce cuatro modos de fallo, y los cuatro te cuestan los mismos veinte minutos de averiguar cuál de las líneas plausibles es la equivocada.

Miembros inventados

Una propiedad o un evento que suena exactamente a algo que habríamos escrito nosotros, y que no existe. El compilador es lo primero que te lo dice.

La unit equivocada

El componente es real, la cláusula uses no lo es. Este es, con diferencia, el motivo más frecuente de que el código generado para sgcWebSockets no compile.

Una API de hace tres versiones

Cuando un modelo ha visto un fragmento de un ejemplo antiguo, reproducirá tan tranquilo un método que renombramos o eliminamos.

Errores silenciosos de edición

Código que a nosotros nos compila y a ti no, porque el componente que utiliza necesita una edición que tu licencia no incluye.

Documentación que el agente lee bajo demanda

Una skill no es un plugin que se ejecuta, ni un modelo entrenado con nada. Es una carpeta de Markdown, y el mecanismo es deliberadamente sencillo.

1. El agente lee una descripción breve

Cada skill empieza con unas pocas líneas de frontmatter, y la única parte que el agente tiene siempre delante es la description. Indica, en términos sencillos, qué biblioteca y qué área temática cubre la skill.

Eso es lo que mantiene bajo el coste. Tu agente no va cargando con miles de líneas de referencia de API mientras le preguntas por algo que no tiene nada que ver.

SKILL.md
---
name: sgcwebsockets-mq
description: Use when connecting Delphi or
  C++Builder code to a message broker with
  sgcWebSockets: MQTT, STOMP including
  RabbitMQ and ActiveMQ, AMQP 0.9.1, AMQP
  1.0, Kafka and WAMP2.
compatibility: Requires Delphi 7 to Delphi
  13, or C++Builder 2007 to 13.
---

2. Tu pregunta decide qué se carga

Cuando preguntas por un broker MQTT, esa descripción encaja y el agente carga la skill de brokers de mensajería. No se abre nada más. Pregunta por WebRTC y se cargará otra distinta.

Dentro de la skill navega igual que lo harías tú: el índice de componentes para localizar el componente, después la página de API de ese componente y después la página del tipo de una clase de opciones cuyos valores necesita.

skill folder
sgcwebsockets-mq/
  SKILL.md
  reference/
    components-index.md
    api/TsgcWSPClient_MQTT.md
    types/TsgcWSMQTTLWT_Options.md
  examples/TsgcWSPClient_MQTT.md
  concepts/overview.md

3. El contenido se genera a partir de nuestro código fuente

Las páginas de API no se escriben a mano. Un generador analiza la biblioteca en cada versión y emite la superficie public y published: cada componente, sus propiedades, métodos y eventos, la unit en la que reside, la edición que lo incluye y los tipos que utilizan esos miembros.

Así que las skills describen la versión que realmente tienes. No pueden desviarse como lo hace un documento mantenido a mano, y un componente añadido el mes pasado está en ellas el mismo día en que se publica.

reference/api/TsgcWSPClient_MQTT.md
unit: sgcWebSocket_Protocols
Edition: Standard

| Delphi | Type |
| `Client: TsgcWebSocketClient` | ... |
| `MQTTVersion: TwsMQTTVersion` | ... |
| `LastWillTestament: ...`      | ... |

4. Una persona escribe la parte que un generador no puede

Las tablas generadas le dicen al agente qué existe. No le dicen que un componente de protocolo no posee ningún socket, que se conecta a un cliente de transporte, ni que un broker en el puerto 1883 necesita Specifications.RFC6455 a False.

Por eso cada skill empieza con un manual de uso escrito por quienes escribieron la biblioteca: cuándo utilizarla, qué preguntarte antes de escribir una sola línea de código y los errores que de verdad hacen tropezar.

the playbook
## Things that catch people out

- Setting Active = true on the protocol
  component does nothing useful. The
  transport client owns the connection.
- One transport carries one protocol.
- MQTT has two heartbeats, and they are
  different mechanisms with the same name.

Instálalas una vez y después solo pregunta

Tres agentes instalan plugins directamente. El resto leen una carpeta, así que basta con copiar una dentro. A partir de ahí no hay nada que invocar, el agente decide cuándo una skill es relevante.

/plugin marketplace add esegece-com/agent-skills
/plugin install sgcwebsockets-delphi@esegece

Añade el marketplace una vez y después instala tantos plugins como utilices. /skills muestra los que están activos. Instalar más adelante un segundo producto no requiere repetir el paso del marketplace.

codex plugin marketplace add esegece-com/agent-skills
codex plugin add sgcwebsockets-delphi@esegece
codex plugin list

Codex utiliza plugin add en lugar de plugin install, con el mismo nombre de marketplace.

Clona el repositorio y copia la carpeta de la skill que quieras desde plugins/<plugin>/skills/ al directorio que vigila tu agente. El nivel de proyecto tiene prioridad sobre el global, así que una skill colocada en un repositorio se aplica solo a ese proyecto.

AgenteEn un proyectoGlobal
Claude Code.claude/skills/%USERPROFILE%\.claude\skills\
GitHub Copilot.github/skills/%USERPROFILE%\.copilot\skills\
Cursor.cursor/skills/
Codex CLI.agents/skills/
JetBrains Junie.junie/skills/%USERPROFILE%\.junie\skills\

Las rutas de Copilot las leen por igual Visual Studio, VS Code y Copilot CLI. En VS Code, activa la opción "Chat: Use Agent Skills", o ejecuta "Chat: Install Plugin From Source" desde la paleta de comandos e introduce la URL del repositorio.

Qué cambia una vez instaladas

La diferencia no es que el asistente se vuelva más listo, es que deja de adivinar sobre nuestra biblioteca.

Código que compila

Los miembros salen de la API generada y no de un parecido, así que las propiedades y los eventos de la respuesta son los que el componente publica de verdad.

La cláusula uses correcta

Cada página de API indica la unit en la que reside el componente y, para .NET, el espacio de nombres único. Solo con esto desaparece el fallo de compilación más frecuente.

Las ediciones, resueltas de antemano

Cada componente lleva su edición mínima, de modo que el asistente puede decirte que un componente necesita Enterprise antes de que escribas código contra él.

Sabe lo que no sabe

Las skills dicen con claridad qué partes están documentadas. A un asistente que no encuentra una enumeración se le indica que pregunte en lugar de inventar una constante que suene bien.

Ejemplos reales, no esbozos

Cada ejemplo se destila de una demo que se distribuye con el producto, recortado a las partes que tocan el componente en lugar de un formulario entero.

Actualizadas por construcción

Se regeneran a partir del código fuente en cada versión. Un componente nuevo queda documentado el día en que se publica, y uno eliminado desaparece ese mismo día.

Solo aquello por lo que preguntas

La división por temas hace que una pregunta sobre MQTT cargue únicamente la skill de brokers de mensajería, así que el resto de una biblioteca de 222 componentes se queda fuera de la conversación.

Gratuitas y sin necesidad de licencia

Con licencia MIT y públicas. Puedes instalarlas para evaluar la biblioteca antes de comprar nada, y leerlas como documentación por derecho propio.

Seis plugins para todas las bibliotecas

Un plugin por producto y, en el caso de sgcWebSockets, un plugin que contiene muchas skills temáticas en lugar de una sola muy grande.

PluginSkillsContenido
sgcwebsockets-delphi18Núcleo WebSocket, brokers de mensajería, subprotocolos sgc, feeds de exchanges, IA y LLM, integraciones de servicios, HTTP y transportes, autenticación, P2P y WebRTC, IoT, y seis para los widgets de sgcHTML
sgcwebsockets-dotnet7La misma biblioteca desde C#, con la página de cobertura que se describe más abajo
sgcsign-delphi1XAdES, PAdES, CAdES, Authenticode, sellado de tiempo RFC 3161, OCSP y los proveedores de claves
sgcopenapi-delphi1El analizador de OpenAPI, el generador de SDK y el componente servidor
sgcindy-delphi1La implementación propia de Indy TCP/IP
sgcbiometrics-delphi1Windows Hello, autenticación por huella y facial

Por qué sgcWebSockets son dieciocho skills

La biblioteca registra 222 componentes. Una sola skill que los cubriera todos obligaría al agente a abrir la biblioteca entera para responder a una pregunta sobre un único protocolo, lo que resulta lento y empeora la respuesta en lugar de mejorarla.

Por eso está dividida por áreas. Cada skill es lo bastante pequeña como para leerse entera y lo bastante específica como para elegirse correctamente, y un índice general sigue respondiendo a "qué componente necesito" y encamina hacia el adecuado.

Una respuesta franca sobre .NET

El ensamblado .NET que se distribuye expone 70 de los 222 componentes que registra la biblioteca Delphi. Preferimos decirlo antes que dejar que un asistente improvise una API de C# que no existe.

Por eso el plugin de .NET incluye una página de cobertura generada que nombra los 152 que son solo para Delphi, con la unit en la que reside cada uno. Se produce comparando los dos productos en tiempo de compilación, así que describe la compilación que tienes y no una intención.

Documentación y nada más

Conviene ser precisos, porque "instala este plugin" hace que la gente se pregunte, con razón, qué hace.

No se ejecuta nada

Una skill es Markdown. No contiene código, no se ejecuta nada en tu máquina e instalarla no puede modificar tu proyecto.

No se nos envía nada

Sin telemetría, sin llamadas a casa, sin registro de lo que has preguntado. No sabemos que las has instalado, y los archivos funcionan sin conexión una vez copiados.

No se expone código fuente

Solo se incluye la superficie public y published. El generador excluye los cuerpos de los métodos, los campos privados y los miembros protegidos, así que instalar una skill no deja nuestra implementación en el disco de nadie.

Licencia MIT

El repositorio es MIT, así que puedes copiar, bifurcar y adaptar la estructura con libertad. Un archivo NOTICE reserva el contenido de la documentación en sí, que sigue siendo nuestro.

Preguntas habituales

Enseña a tu asistente la API

Gratuitas, con licencia MIT y una línea para instalarlas. Después hazle la pregunta que ibas a hacerle de todos modos.