Skill per agenti IA per Delphi, C++Builder e .NET | eSeGeCe

Skill per agenti IA per Delphi, C++Builder e .NET

Il vostro assistente IA non ha mai letto i sorgenti eSeGeCe, perciò inventa proprietà che non esistono e colloca i componenti nella unit sbagliata. Le skill per agenti gli danno l'API pubblica reale di ogni libreria. Gratuite, con licenza MIT e installabili con una sola riga.

Codice sicuro di sé che non compila

Chiedete a un assistente un client WebSocket in Delphi e ottenete qualcosa di ben strutturato e sottilmente sbagliato. Il motivo non è che il modello sia sbadato. È che il modello non ha mai visto questa libreria.

Questi modelli hanno imparato da codice pubblico. I componenti eSeGeCe sono commerciali, perciò i loro sorgenti non sono mai finiti in un set di addestramento. Il modello riconosce la forma di una libreria di componenti Delphi e completa il resto attingendo ad altre librerie che invece conosce. Ne derivano quattro modalità di errore, e tutte e quattro vi costano gli stessi venti minuti passati a scoprire quale riga plausibile sia quella sbagliata.

Membri inventati

Una proprietà o un evento che suona esattamente come qualcosa che avremmo scritto noi, e che non esiste. Il compilatore è la prima cosa che ve lo dice.

La unit sbagliata

Il componente è reale, la clausola uses no. Questo è di gran lunga il motivo più frequente per cui il codice sgcWebSockets generato non compila.

Un'API di tre release fa

Quando un modello ha visto il frammento di un vecchio esempio, riproduce senza esitazione un metodo che abbiamo rinominato o rimosso.

Errori silenziosi di edizione

Codice che compila da noi e non da voi, perché il componente che usa richiede un'edizione che la vostra licenza non comprende.

Documentazione che l'agente legge su richiesta

Una skill non è un plugin che viene eseguito, e non è un modello addestrato su qualcosa. È una cartella di Markdown, e il meccanismo è volutamente semplice.

1. L'agente legge una sola breve descrizione

Ogni skill si apre con poche righe di frontmatter, e l'unica parte che l'agente ha sempre davanti è la description. Dice, in parole semplici, quale libreria e quale area tematica copre la skill.

È questo che tiene basso il costo. Il vostro agente non si porta dietro migliaia di righe di riferimento API mentre gli chiedete di tutt'altro.

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. La vostra domanda decide cosa viene caricato

Quando chiedete di un broker MQTT, quella descrizione corrisponde e l'agente carica la skill sui broker di messaggi. Nient'altro si apre. Chiedete invece di WebRTC e si carica una skill diversa.

Dentro la skill naviga come fareste voi: l'indice dei componenti per trovare il componente, poi la pagina API di quel componente, poi la pagina del tipo per una classe di opzioni di cui gli servono i valori.

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. Il contenuto è generato dai nostri sorgenti

Le pagine API non le scriviamo a mano. Un generatore analizza la libreria a ogni release ed emette la superficie public e published: ogni componente, le sue proprietà, i suoi metodi e i suoi eventi, la unit in cui si trova, l'edizione che lo include e i tipi usati da quei membri.

Le skill descrivono quindi la versione che avete davvero. Non possono divergere come succede a un documento mantenuto a mano, e un componente aggiunto il mese scorso è già presente dal giorno in cui viene distribuito.

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

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

4. Una persona scrive la parte che un generatore non può scrivere

Le tabelle generate dicono a un agente cosa esiste. Non gli dicono che un componente di protocollo non possiede alcun socket, che si aggancia a un client di trasporto, o che un broker sulla porta 1883 richiede Specifications.RFC6455 impostato a False.

Perciò ogni skill si apre con un playbook scritto da chi ha scritto la libreria: quando usarla, cosa chiedervi prima di scrivere qualsiasi riga di codice e gli errori in cui si incappa davvero.

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.

Installatele una volta, poi limitatevi a chiedere

Tre agenti installano i plugin direttamente. Gli altri leggono una cartella, perciò ne copiate una dentro. Dopodiché non c'è nulla da invocare: è l'agente a decidere quando una skill è pertinente.

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

Aggiungete il marketplace una volta sola, poi installate tutti i plugin che usate. /skills elenca quelli attivi. Installare in seguito un secondo prodotto non richiede di ripetere il passaggio del marketplace.

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

Codex usa plugin add anziché plugin install, con lo stesso nome di marketplace.

Clonate il repository, poi copiate la cartella della skill che vi interessa da plugins/<plugin>/skills/ nella directory che il vostro agente controlla. Il livello di progetto prevale su quello globale, perciò una skill collocata in un repository vale soltanto per quel progetto.

AgenteIn un progettoA livello globale
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\

I percorsi di Copilot sono letti indifferentemente da Visual Studio, VS Code e Copilot CLI. In VS Code, abilitate l'impostazione "Chat: Use Agent Skills", oppure eseguite "Chat: Install Plugin From Source" dalla Command Palette e indicate l'URL del repository.

Cosa cambia una volta installate

La differenza non è che l'assistente diventa più intelligente. È che smette di tirare a indovinare sulla nostra libreria.

Codice che compila

I membri arrivano dall'API generata anziché da una somiglianza, perciò le proprietà e gli eventi presenti nella risposta sono quelli che il componente pubblica davvero.

La clausola uses giusta

Ogni pagina API indica la unit in cui si trova il componente e, per .NET, l'unico namespace. Solo questo elimina l'errore di compilazione più frequente.

Edizioni chiarite subito

Ogni componente porta con sé la propria edizione minima, perciò l'assistente può dirvi che un componente richiede Enterprise prima che scriviate codice che lo usa.

Sa quello che non sa

Le skill dicono chiaramente quali parti sono documentate. A un assistente che non trova un'enumerazione viene detto di chiedere anziché inventare una costante dall'aspetto convincente.

Esempi reali, non abbozzi

Ogni esempio è distillato da una demo distribuita con il prodotto, ridotto alle parti che toccano il componente anziché a un'intera form.

Aggiornate per costruzione

Rigenerate dai sorgenti a ogni release. Un nuovo componente è documentato il giorno stesso in cui viene distribuito, e uno rimosso sparisce lo stesso giorno.

Solo ciò che avete chiesto

La suddivisione per argomenti fa sì che una domanda su MQTT carichi soltanto la skill sui broker di messaggi, così il resto di una libreria da 222 componenti resta fuori dalla conversazione.

Gratuite, e senza licenza

Pubbliche e con licenza MIT. Potete installarle per valutare la libreria prima di acquistare qualsiasi cosa, e leggerle come documentazione a sé stante.

Sei plugin per tutte le librerie

Un plugin per prodotto e, per sgcWebSockets, un plugin che contiene molte skill tematiche anziché una sola molto grande.

PluginSkillCopre
sgcwebsockets-delphi18Nucleo WebSocket, broker di messaggi, sottoprotocolli sgc, feed degli exchange, IA e LLM, integrazioni di servizi, HTTP e trasporti, autenticazione, P2P e WebRTC, IoT, e sei per i widget sgcHTML
sgcwebsockets-dotnet7La stessa libreria vista da C#, con la pagina di copertura descritta qui sotto
sgcsign-delphi1XAdES, PAdES, CAdES, Authenticode, marcatura temporale RFC 3161, OCSP e i provider di chiavi
sgcopenapi-delphi1Il parser OpenAPI, il generatore di SDK e il componente server
sgcindy-delphi1L'implementazione Indy TCP/IP personalizzata
sgcbiometrics-delphi1Windows Hello, autenticazione tramite impronta digitale e riconoscimento facciale

Perché sgcWebSockets sono diciotto skill

La libreria registra 222 componenti. Una skill unica che li coprisse tutti costringerebbe l'agente ad aprire l'intera libreria per rispondere a una domanda su un solo protocollo, il che è lento e peggiora la risposta anziché migliorarla.

Perciò è suddivisa per aree. Ogni skill è abbastanza piccola da essere letta per intero e abbastanza specifica da essere scelta correttamente, e un indice generale risponde comunque alla domanda "quale componente mi serve" e indirizza a quella giusta.

Una risposta chiara su .NET

L'assembly .NET distribuito espone 70 dei 222 componenti che la libreria Delphi registra. Preferiamo dirlo, piuttosto che lasciare che un assistente improvvisi un'API C# che non esiste.

Perciò il plugin .NET include una pagina di copertura generata che elenca i 152 disponibili solo in Delphi, con la unit in cui si trova ciascuno. È prodotta confrontando i due prodotti in fase di build, perciò descrive la build che avete e non un'intenzione.

Documentazione, e nient'altro

Vale la pena essere precisi, perché "installate questo plugin" fa giustamente chiedere alle persone che cosa faccia.

Non viene eseguito nulla

Una skill è Markdown. Non contiene codice, non gira nulla sulla vostra macchina e installarne una non può modificare il vostro progetto.

Non ci viene inviato nulla

Nessuna telemetria, nessuna chiamata a casa, nessuna traccia di ciò che avete chiesto. Non sappiamo che le avete installate, e i file funzionano offline una volta copiati.

Nessun sorgente viene esposto

È inclusa soltanto la superficie public e published. I corpi dei metodi, i campi privati e i membri protetti sono esclusi dal generatore, perciò installare una skill non mette la nostra implementazione sul disco di nessuno.

Licenza MIT

Il repository è MIT, perciò potete copiare, forkare e adattare liberamente la struttura. Un file NOTICE riserva il contenuto della documentazione in sé, che resta nostro.

Le domande che ci vengono poste

Insegnate l'API al vostro assistente

Gratuite, con licenza MIT e installabili con una riga. Poi fategli la domanda che stavate comunque per fare.