Delphi, C++Builder ve .NET için Yapay zeka ajan becerileri | eSeGeCe

Yapay zeka ajan becerileri: Delphi, C++Builder ve .NET

Yapay zeka asistanınız eSeGeCe kaynak kodunu hiç okumadı, bu yüzden var olmayan özellikler uydurur ve bileşenleri yanlış birimin içine koyar. Ajan becerileri ona her kitaplığın gerçek genel API'sini verir. Ücretsizdir, MIT lisanslıdır ve tek satırda kurulur.

Kendinden emin, ama derlenmeyen kod

Bir asistandan Delphi'de WebSocket istemcisi isteyin, iyi yapılandırılmış ama ince biçimde yanlış bir şey alırsınız. Bunun nedeni modelin özensiz olması değildir. Modelin bu kitaplığı hiç görmemiş olmasıdır.

Bu modeller genel koddan öğrendi. eSeGeCe bileşenleri ticaridir, dolayısıyla kaynak kodları hiçbir eğitim kümesinde yer almadı. Model bir Delphi bileşen kitaplığının biçimini tanır ve gerisini bildiği başka kitaplıklardan tamamlar. Bu da dört ayrı hata biçimi üretir ve dördü de size aynı yirmi dakikaya mal olur: makul görünen satırlardan hangisinin yanlış olduğunu bulmak.

Uydurulmuş üyeler

Tam bizim yazacağımız gibi görünen, ama var olmayan bir özellik ya da olay. Bunu size ilk söyleyen şey derleyici olur.

Yanlış birim

Bileşen gerçektir, uses yan tümcesi değildir. Üretilen sgcWebSockets kodunun derlenememesinin en yaygın tek nedeni budur.

Üç sürüm önceki bir API

Model eski bir örnekten bir parça görmüşse, adını değiştirdiğimiz ya da kaldırdığımız bir yöntemi gönül rahatlığıyla yeniden üretir.

Sessiz sürüm türü hataları

Bizde derlenen, sizde derlenmeyen kod. Çünkü kullandığı bileşen, lisansınızın kapsamadığı bir sürüm türünü gerektirir.

Ajanın gerektiğinde okuduğu belgeler

Bir beceri, çalışan bir eklenti değildir; herhangi bir şey üzerinde eğitilmiş bir model de değildir. Bir Markdown klasörüdür ve mekanizması bilinçli olarak basittir.

1. Ajan kısa bir açıklama okur

Her beceri birkaç satırlık frontmatter ile başlar ve ajanın her zaman önünde bulunan tek bölüm description alanıdır. Bu alan, becerinin hangi kitaplığı ve hangi konu alanını kapsadığını sade bir dille söyler.

Maliyeti düşük tutan şey budur. Siz ilgisiz bir konu sorarken ajanınız binlerce satırlık API başvurusunu yanında taşımaz.

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. Neyin yükleneceğine sorunuz karar verir

Bir MQTT broker'ı hakkında soru sorduğunuzda o açıklama eşleşir ve ajan mesaj broker'ı becerisini içeri alır. Başka hiçbir şey açılmaz. Bunun yerine WebRTC sorarsanız başka bir beceri yüklenir.

Becerinin içinde sizin gezineceğiniz gibi gezinir: bileşeni bulmak için bileşen dizini, ardından o bileşenin API sayfası, ardından değerlerine ihtiyaç duyduğu bir seçenek sınıfının tür sayfası.

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. İçerik kendi kaynak kodumuzdan üretilir

API sayfalarını elle yazmıyoruz. Bir üreteç her sürümde kitaplığı ayrıştırır ve genel ile yayımlanan yüzeyi çıkarır: her bileşeni, özelliklerini, yöntemlerini ve olaylarını, bulunduğu birimi, onu içeren sürüm türünü ve bu üyelerin kullandığı türleri.

Böylece beceriler elinizde gerçekten bulunan sürümü anlatır. Elle bakımı yapılan bir belgenin kaydığı gibi kayamazlar ve geçen ay eklenen bir bileşen, yayımlandığı gün içlerinde yer alır.

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

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

4. Bir üretecin yazamadığı bölümü bir insan yazar

Üretilmiş tablolar bir ajana neyin var olduğunu söyler. Bir protokol bileşeninin soket sahibi olmadığını, bir taşıma istemcisine bağlandığını ya da 1883 numaralı bağlantı noktasındaki bir broker için Specifications.RFC6455 değerinin False yapılması gerektiğini söylemez.

Bu yüzden her beceri, kitaplığı yazan kişilerin kaleme aldığı bir uygulama kılavuzuyla başlar: ne zaman kullanılacağı, kod yazmadan önce size ne sorulacağı ve insanların gerçekten takıldığı hatalar.

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.

Bir kez kurun, sonra yalnızca sorun

Üç ajan eklentileri doğrudan kurar. Geri kalanlar bir klasör okur, dolayısıyla klasörü siz kopyalarsınız. Bundan sonra çağırmanız gereken bir şey yoktur: bir becerinin ne zaman ilgili olduğuna ajan karar verir.

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

Marketplace'i bir kez ekleyin, ardından kullandığınız kadar eklenti kurun. /skills etkin olanları listeler. Daha sonra ikinci bir ürün kurarken marketplace adımını yeniden yapmanız gerekmez.

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

Codex, plugin install yerine plugin add kullanır, marketplace adı ise aynıdır.

Depoyu klonlayın, ardından istediğiniz beceri klasörünü plugins/<plugin>/skills/ içinden ajanınızın izlediği dizine kopyalayın. Proje düzeyi genel düzeye göre önceliklidir, dolayısıyla bir depoya bırakılan beceri yalnızca o proje için geçerli olur.

AjanProje düzeyiGenel
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\

Copilot yolları Visual Studio, VS Code ve Copilot CLI tarafından aynı biçimde okunur. VS Code'da "Chat: Use Agent Skills" ayarını etkinleştirin ya da Komut Paleti'nden "Chat: Install Plugin From Source" komutunu çalıştırıp deponun URL'sini verin.

Kurulduktan sonra ne değişir

Fark, asistanın daha zeki hale gelmesi değildir. Kitaplığımız hakkında tahmin yürütmeyi bırakmasıdır.

Derlenen kod

Üyeler benzerlikten değil, üretilmiş API'den gelir; böylece yanıttaki özellikler ve olaylar bileşenin gerçekten yayımladığı üyelerdir.

Doğru uses yan tümcesi

Her API sayfası bileşenin bulunduğu birimi, .NET için ise tek ad alanını belirtir. Tek başına bu bile en sık görülen derleme hatasını ortadan kaldırır.

Sürüm türleri baştan yanıtlanır

Her bileşen asgari sürüm türünü taşır, böylece asistan bir bileşenin Enterprise gerektirdiğini siz o bileşen için kod yazmadan önce söyleyebilir.

Neyi bilmediğini bilir

Beceriler hangi bölümlerin belgelendiğini açıkça söyler. Bir numaralandırmayı bulamayan asistana, doğru görünen bir sabit uydurmak yerine soru sorması söylenir.

Taslak değil, gerçek örnekler

Her örnek, ürünle birlikte gelen bir demodan damıtılmıştır ve tüm bir form yerine bileşene dokunan bölümlere indirgenmiştir.

Yapısı gereği güncel

Her sürümde kaynak koddan yeniden üretilir. Yeni bir bileşen yayımlandığı gün belgelenir, kaldırılan bir bileşen de aynı gün kaybolur.

Yalnızca sorduğunuz konu

Konu bazlı bölünme sayesinde bir MQTT sorusu yalnızca mesaj broker'ı becerisini yükler, böylece 222 bileşenlik kitaplığın geri kalanı konuşmanın dışında kalır.

Ücretsiz ve lisans gerektirmez

MIT lisanslı ve herkese açıktır. Herhangi bir şey satın almadan önce kitaplığı değerlendirmek için kurabilir ve başlı başına birer belge olarak okuyabilirsiniz.

Kitaplıklar genelinde altı eklenti

Her ürün için bir eklenti, sgcWebSockets için ise tek bir büyük beceri yerine çok sayıda konu becerisi içeren bir eklenti.

EklentiBeceriKapsamı
sgcwebsockets-delphi18WebSocket çekirdeği, mesaj broker'ları, sgc alt protokolleri, borsa akışları, yapay zeka ve LLM, servis entegrasyonları, HTTP ve taşıma katmanları, kimlik doğrulama, P2P ve WebRTC, IoT ve sgcHTML widget'ları için altı beceri
sgcwebsockets-dotnet7Aynı kitaplığın C# tarafı, aşağıda anlatılan kapsam sayfasıyla birlikte
sgcsign-delphi1XAdES, PAdES, CAdES, Authenticode, RFC 3161 zaman damgalama, OCSP ve anahtar sağlayıcıları
sgcopenapi-delphi1OpenAPI ayrıştırıcısı, SDK üreteci ve sunucu bileşeni
sgcindy-delphi1Özel Indy TCP/IP uygulaması
sgcbiometrics-delphi1Windows Hello, parmak izi ve yüz ile kimlik doğrulama

sgcWebSockets neden on sekiz beceri

Kitaplık 222 bileşen kaydeder. Hepsini kapsayan tek bir beceri, tek bir protokole ilişkin soruyu yanıtlamak için ajanı kitaplığın tamamını açmaya zorlardı; bu hem yavaştır hem de yanıtı iyileştirmek yerine kötüleştirir.

Bu yüzden alanlara bölünmüştür. Her beceri tümüyle okunacak kadar küçük ve doğru seçilecek kadar özeldir; şemsiye bir dizin ise "hangi bileşene ihtiyacım var" sorusunu yine yanıtlar ve sizi doğru olana yönlendirir.

.NET hakkında dürüst bir yanıt

Yayımlanan .NET derlemesi, Delphi kitaplığının kaydettiği 222 bileşenin 70'ini sunar. Bir asistanın var olmayan bir C# API'sini doğaçlamasına izin vermektense bunu açıkça söylemeyi tercih ederiz.

Bu nedenle .NET eklentisi, yalnızca Delphi'de bulunan 152 bileşeni ve her birinin bulunduğu birimi adlarıyla veren, üretilmiş bir kapsam sayfası içerir. Bu sayfa iki ürünün derleme sırasında karşılaştırılmasıyla oluşturulur, dolayısıyla bir niyeti değil elinizdeki yapıyı anlatır.

Yalnızca belge, başka hiçbir şey

Bu konuda kesin konuşmakta yarar var, çünkü "şu eklentiyi kurun" demek insanların haklı olarak eklentinin ne yaptığını sormasına yol açar.

Hiçbir şey çalıştırılmaz

Bir beceri Markdown'dır. İçinde kod yoktur, makinenizde hiçbir şey çalışmaz ve bir beceriyi kurmak projenizi değiştiremez.

Bize hiçbir şey gönderilmez

Telemetri yok, eve arama yok, ne sorduğunuza dair kayıt yok. Bunları kurduğunuzu bilmiyoruz ve dosyalar bir kez kopyalandıktan sonra çevrimdışı çalışır.

Kaynak kod açığa çıkmaz

Yalnızca genel ve yayımlanan yüzey yer alır. Yöntem gövdeleri, özel alanlar ve korumalı üyeler üreteç tarafından dışarıda bırakılır, dolayısıyla bir beceriyi kurmak bizim uygulamamızı kimsenin diskine koymaz.

MIT lisanslı

Depo MIT lisanslıdır, dolayısıyla yapıyı serbestçe kopyalayabilir, çatallayabilir ve uyarlayabilirsiniz. Bir NOTICE dosyası belge içeriğinin kendisini saklı tutar, o içerik bize aittir.

Sıkça sorulan sorular

Asistanınıza API'yi öğretin

Ücretsiz, MIT lisanslı ve tek satırda kurulur. Sonra zaten soracağınız soruyu sorun.