Ana içeriğe geç

Yetenek Sözleşmeleri

Bu envanter scripts/test-capability-contracts.mjs tarafından uygulanır. Bir sağlayıcı yeteneği; şeması ve katalog eşlemesi, yürütülebilir işleyicisi, tarayıcı istemcisi, adlandırılmış UI eylemi, belgesi, odaklı davranış testi ve paketlenmiş manifestleri uyuşmadan tamamlanmış sayılmaz.

YetenekEklenti türleriYürütülebilir rotaTarayıcı istemcisiUI eylemiBelgeOdaklı davranış testleriPaketlenmiş tanımlar
Sohbet / tamamlamachat, completionWS /ws (chat_stream)frontend/src/hooks/useChat.tsfrontend/src/pages/ChatPage.tsxhandleSendMessagedocs/08-PLUGIN_ARCHITECTURE.mdscripts/test-chat-provider-selection.mjs (test:package) — tam eklenti yönlendirmesi normal ve akış isteklerinde seçili sağlayıcıya ulaşıranthropic, codex-oauth, gemini, github, groq, huggingface, kimi-code, llama-cpp, mistral, mlx-lm, openai, openrouter
GömmeembeddingPOST /api/ollama/embed
GET /api/embeddings/models (yalnız keşif)
frontend/src/utils/api/modelApi.tsfrontend/src/components/ModelManager.tsxhandleGenerateEmbeddingsdocs/09-RAG_FEATURE.mdscripts/test-plugin-capability-routing.mjs (test:package) — Hugging Face genel Chat ucunu yok sayar ve görev yüklerini kullanırhuggingface
Görüntü üretimiimagePOST /api/image-gen/generatefrontend/src/utils/api/imageGenApi.tsfrontend/src/components/ImageGenerationPanel.tsxhandleGeneratedocs/38-MEDIA_GENERATION.mdscripts/test-image-generation-routing.mjs (test:package) — seçili sağlayıcıyı ve kullanıcı OpenAI ayarlarını kullanırcomfyui, huggingface, openai, openrouter
Konuşmadan metnesttPOST /api/stt/transcribefrontend/src/utils/api/sttApi.tsfrontend/src/hooks/useDictation.tstoggledocs/42-SPEECH_TO_TEXT.mdscripts/test-stt-routing.mjs (test:package) — STT seçili rotaya OpenAI uyumlu multipart gönderir
frontend/e2e/stt.spec.ts (test:e2e) — sağlayıcı konuşma girişi rotayı açıklar ve kaydı yazıya döker
huggingface, openai
Metinden konuşmayattsPOST /api/tts/generatefrontend/src/utils/api/ttsApi.tsfrontend/src/components/TTSButton.tsxhandlePlaydocs/38-MEDIA_GENERATION.mdscripts/test-tts-routing.mjs (test:package) — TTS ortak model adını seçili eklenti ve kullanıcı valfiyle yönlendirir
frontend/e2e/tts-playback.spec.ts (test:e2e) — toplu okuma her pakette seçili kayıtlı sesi kullanır
elevenlabs, huggingface, kyutai-tts-1.6b, kyutai-tts, longcat-audiodit, openai-tts, openai, openrouter, qwen-tts
Ses üretimiaudioPOST /api/media/sound/generatefrontend/src/utils/api/mediaApi.tsfrontend/src/components/MediaGenerationPanel.tsxhandleGeneratedocs/38-MEDIA_GENERATION.mdscripts/test-openrouter-media-routing.mjs (test:package) — OpenRouter ses çıkış modelleri üretilen ses baytlarını aktarıropenrouter
Video üretimivideoPOST /api/media/video/generate
POST /api/media/video/jobs/:jobId/resume
frontend/src/utils/api/mediaApi.ts
frontend/src/utils/api/mediaApi.ts
frontend/src/components/MediaGenerationPanel.tsxhandleGeneratedocs/38-MEDIA_GENERATION.mdscripts/test-openrouter-media-routing.mjs (test:package) — video sağlayıcı ucundan gönderilir, yoklanır ve indirilir
scripts/test-openrouter-media-routing.mjs (test:package) — hazırlanan yayınlar kayıp commit onaylarını çözer
openrouter

Uygulama

Paket kapısı bildirilmeyen şema veya eklenti türlerini, eski katalog eşlemelerini, yürütme gibi sunulan yalnız keşif rotalarını, tarayıcı aktarımı olmayan işleyicileri, çağrısı ve görünür tetikleyicisi olmayan UI eylemlerini, yeteneğe özgü iddiası olmayan belgeleri, adlandırılmış testte davranışı olmayan testleri, eski envanteri ve geçersiz manifest uçlarını, model haritalarını veya varsayılanları reddeder.

Gömme üretimi POST /api/ollama/embed üzerinden yürür ve seçili gömme eklentisine yönlenebilir. GET /api/embeddings/models modelleri listeler; kapı bunu yalnız keşif sayar ve üretimin çalıştığına kanıt kabul etmez.

Kaynak sözleşme her odaklı testi ve çalıştırıcısını belirler. Backend betikleri test:package içine kaydolmalı, frontend özellikleri Playwright tabanlı test:e2e tarafından bulunmalıdır. Canlı keşif katalog daraltabilir fakat yeni yürütülebilir yetenek oluşturmaz.