Plugins
Pluginler
Pluginler OmeniaClaw’a yeni yetenekler ekler: kanallar, model sağlayıcıları, ajan yürütme ortamları, araçlar, Skills, konuşma, gerçek zamanlı transkripsiyon, gerçek zamanlı ses, medya anlama, görüntü oluşturma, video oluşturma, web getirme, web arama ve daha fazlası. Bazı pluginler çekirdektir (OmeniaClaw ile birlikte gelir), diğerleri haricidir. Çoğu harici plugin ClawHub üzerinden yayımlanır ve keşfedilir. Npm, doğrudan kurulumlar ve bu geçiş tamamlanırken OmeniaClaw’a ait geçici bir plugin paketi kümesi için desteklenmeye devam eder.
Hızlı başlangıç
Kopyala-yapıştır kurulum, listeleme, kaldırma, güncelleme ve yayımlama örnekleri için Pluginleri yönet bölümüne bakın.
Nelerin yüklendiğini görün
OmeniaClaw plugins listBir plugin kurun
# Search ClawHub pluginsOmeniaClaw plugins search "calendar" # From ClawHubOmeniaClaw plugins install clawhub:OmeniaClaw-codex-app-server # From npmOmeniaClaw plugins install npm:@acme/OmeniaClaw-pluginOmeniaClaw plugins install npm-pack:./OmeniaClaw-plugin-1.2.3.tgz # From gitOmeniaClaw plugins install git:github.com/acme/[email protected] # From a local directory or archiveOmeniaClaw plugins install ./my-pluginOmeniaClaw plugins install ./my-plugin.tgzGateway’i yeniden başlatın
OmeniaClaw gateway restartArdından yapılandırma dosyanızda plugins.entries.\<id\>.config altında yapılandırın.
Sohbet-yerel yönetim
Çalışan bir Gateway’de, yalnızca sahibin kullanabildiği /plugins enable ve /plugins disable
Gateway yapılandırma yeniden yükleyicisini tetikler. Gateway, plugin çalışma zamanı
yüzeylerini süreç içinde yeniden yükler ve yeni ajan dönüşleri araç listesini
yenilenmiş kayıt defterinden yeniden oluşturur. /plugins install plugin kaynak kodunu değiştirir; bu yüzden
Gateway, geçerli sürecin zaten içe aktarılmış modülleri güvenle yeniden
yükleyebileceğini varsaymak yerine yeniden başlatma ister.
Plugini doğrulayın
OmeniaClaw plugins inspect <plugin-id> --runtime --json # If the plugin registered a CLI root, run one command from that root.OmeniaClaw <plugin-command> --helpKayıtlı araçları, hizmetleri, gateway yöntemlerini, hook’ları veya plugine ait CLI komutlarını
kanıtlamanız gerektiğinde --runtime kullanın. Düz inspect, soğuk bir
manifest/kayıt defteri denetimidir ve plugin çalışma zamanını içe aktarmaktan özellikle kaçınır.
Sohbet-yerel denetimi tercih ediyorsanız commands.plugins: true etkinleştirin ve şunları kullanın:
/plugin install clawhub:<package>/plugin show <plugin-id>/plugin enable <plugin-id>Kurulum yolu CLI ile aynı çözümleyiciyi kullanır: yerel yol/arşiv, açık
clawhub:<pkg>, açık npm:<pkg>, açık npm-pack:<path.tgz>,
açık git:<repo> veya npm üzerinden yalın paket belirtimi.
Yapılandırma geçersizse kurulum normalde kapalı şekilde başarısız olur ve sizi
OmeniaClaw doctor --fix komutuna yönlendirir. Tek kurtarma istisnası,
OmeniaClaw.install.allowInvalidConfigRecovery seçeneğine katılan pluginler için
dar kapsamlı bir birlikte gelen plugini yeniden kurma yoludur.
Gateway başlatılırken, geçersiz plugin yapılandırması diğer geçersiz
yapılandırmalar gibi kapalı şekilde başarısız olur. Hatalı plugin yapılandırmasını
o plugin girdisini devre dışı bırakıp geçersiz yapılandırma yükünü kaldırarak karantinaya almak için
OmeniaClaw doctor --fix çalıştırın; normal yapılandırma yedeği önceki değerleri korur.
Bir kanal yapılandırması artık keşfedilemeyen bir plugine başvuruyor, ancak aynı
eski plugin kimliği plugin yapılandırmasında veya kurulum kayıtlarında kalıyorsa, Gateway başlatma
uyarıları günlüğe yazar ve diğer tüm kanalları engellemek yerine o kanalı atlar.
Eski kanal/plugin girdilerini kaldırmak için OmeniaClaw doctor --fix çalıştırın; eski-plugin kanıtı olmayan bilinmeyen
kanal anahtarları doğrulamada yine başarısız olur, böylece yazım hataları
görünür kalır.
plugins.enabled: false ayarlanmışsa eski plugin başvuruları eylemsiz kabul edilir:
Gateway başlatma, plugin keşif/yükleme işini atlar ve OmeniaClaw doctor,
devre dışı plugin yapılandırmasını otomatik kaldırmak yerine korur. Eski plugin kimliklerinin kaldırılmasını
istiyorsanız doctor temizliğini çalıştırmadan önce pluginleri yeniden etkinleştirin.
Plugin bağımlılığı kurulumu yalnızca açık kurulum/güncelleme veya
doctor onarım akışları sırasında gerçekleşir. Gateway başlatma, yapılandırma yeniden yükleme ve çalışma zamanı incelemesi
paket yöneticilerini çalıştırmaz ya da bağımlılık ağaçlarını onarmaz. Yerel pluginlerin bağımlılıkları zaten
kurulu olmalıdır; npm, git ve ClawHub pluginleri ise
OmeniaClaw’ın yönettiği plugin kökleri altına kurulur. npm bağımlılıkları
OmeniaClaw’ın yönettiği npm kökü içinde yukarı taşınabilir; kurulum/güncelleme, güvenmeden önce
bu yönetilen kökü tarar ve kaldırma işlemi npm tarafından yönetilen paketleri npm üzerinden kaldırır. Harici pluginler
ve özel yükleme yolları yine OmeniaClaw plugins install üzerinden kurulmalıdır.
Çalışma zamanı kodunu içe aktarmadan veya bağımlılıkları onarmadan her
görünür plugin için statik dependencyStatus değerini görmek üzere OmeniaClaw plugins list --json kullanın.
Kurulum zamanı yaşam döngüsü için Plugin bağımlılığı çözümleme bölümüne bakın.
Engellenen plugin yolu sahipliği
Plugin tanılamaları
blocked plugin candidate: suspicious ownership (... uid=1000, expected uid=0 or root)
diyor ve yapılandırma doğrulaması plugin present but blocked ile devam ediyorsa, OmeniaClaw
plugin dosyalarının onları yükleyen süreçten farklı bir Unix kullanıcısına ait olduğunu bulmuştur.
Plugin yapılandırmasını yerinde bırakın; dosya sistemi sahipliğini düzeltin veya
OmeniaClaw’ı durum dizininin sahibi olan aynı kullanıcı olarak çalıştırın.
Docker kurulumlarında resmi imaj node (uid 1000) olarak çalışır; bu yüzden
ana makinede bind-mount edilen OmeniaClaw yapılandırma ve çalışma alanı dizinleri normalde
uid 1000 tarafından sahiplenilmelidir:
sudo chown -R 1000:1000 /path/to/OmeniaClaw-config /path/to/OmeniaClaw-workspaceOmeniaClaw’ı bilerek root olarak çalıştırıyorsanız yönetilen plugin kökünü root sahipliğine onarın:
sudo chown -R root:root /path/to/OmeniaClaw-config/npmSahipliği düzelttikten sonra kalıcı plugin kayıt defterinin
onarılmış dosyalarla eşleşmesi için OmeniaClaw doctor --fix veya
OmeniaClaw plugins registry --refresh komutunu yeniden çalıştırın.
Npm kurulumlarında latest veya dist-tag gibi değişebilir seçiciler
kurulumdan önce çözümlenir ve ardından OmeniaClaw’ın
yönettiği npm kökünde doğrulanmış kesin sürüme sabitlenir. npm tamamlandıktan sonra OmeniaClaw, kurulu
package-lock.json girdisinin hâlâ çözümlenen sürüm ve bütünlükle eşleştiğini doğrular. npm
farklı paket meta verisi yazarsa, kurulum başarısız olur ve farklı bir plugin yapıtını kabul etmek yerine
yönetilen paket geri alınır.
Yönetilen npm kökleri ayrıca OmeniaClaw’ın paket düzeyi npm overrides değerlerini miras alır; böylece
paketlenmiş ana sistemi koruyan güvenlik sabitlemeleri yukarı taşınmış harici
plugin bağımlılıklarına da uygulanır.
Kaynak checkout’ları pnpm çalışma alanlarıdır. Birlikte gelen pluginler üzerinde çalışmak için OmeniaClaw’ı klonlarsanız
pnpm install çalıştırın; OmeniaClaw ardından birlikte gelen pluginleri
extensions/<id> konumundan yükler, böylece düzenlemeler ve pakete yerel bağımlılıklar doğrudan kullanılır.
Düz npm kök kurulumları paketlenmiş OmeniaClaw içindir, kaynak checkout
geliştirmesi için değildir.
Plugin türleri
OmeniaClaw iki plugin biçimini tanır:
| Biçim | Nasıl çalışır | Örnekler |
|---|---|---|
| Yerel | OmeniaClaw.plugin.json + çalışma zamanı modülü; süreç içinde yürütülür |
Resmi pluginler, topluluk npm paketleri |
| Paket | Codex/Claude/Cursor uyumlu düzen; OmeniaClaw özelliklerine eşlenir | .codex-plugin/, .claude-plugin/, .cursor-plugin/ |
Her ikisi de OmeniaClaw plugins list altında görünür. Paket ayrıntıları için Plugin Paketleri bölümüne bakın.
Yerel bir plugin yazıyorsanız Plugin Oluşturma ve Plugin SDK Genel Bakışı ile başlayın.
Paket giriş noktaları
Yerel plugin npm paketleri package.json içinde OmeniaClaw.extensions bildirmelidir.
Her girdi paket dizini içinde kalmalı ve okunabilir bir çalışma zamanı dosyasına
ya da src/index.ts ile dist/index.js gibi çıkarımlanan yerleşik JavaScript
eş dosyasına sahip bir TypeScript kaynak dosyasına çözümlenmelidir.
Paketlenmiş kurulumlar bu JavaScript çalışma zamanı çıktısını göndermelidir. TypeScript
kaynak yedeği npm paketleri için değil, kaynak checkout’ları ve yerel geliştirme yolları içindir;
OmeniaClaw’ın yönettiği plugin köküne kurulmuş npm paketleri için değildir.
Global uzantı köküne bırakılan izlenmeyen dizinler
yerel kaynak checkout’ları olarak değerlendirilir ve TypeScript girişlerini doğrudan yükleyebilir. installPath veya sourcePath dahil
bir kurulum kaydı tarafından hâlâ adlandırılan dizinler yönetilen olarak kalır
ve global tarama onları görse bile derlenmiş-çıktı gereksinimini korur. Yönetilen bir kurulumu bilinçli olarak izlenmeyen yerel
checkout’a dönüştürüyorsanız önce kaldırma veya doctor temizliği ile eski kurulum kaydını kaldırın.
Yönetilen paket uyarısı requires compiled runtime output for TypeScript entry ... diyorsa paket, OmeniaClaw’ın çalışma zamanında ihtiyaç duyduğu JavaScript dosyaları olmadan
yayımlanmıştır. Bu, yerel yapılandırma sorunu değil bir plugin paketleme sorunudur.
Yayımcı derlenmiş JavaScript’i yeniden yayımladıktan sonra plugini güncelleyin veya yeniden kurun
ya da düzeltilmiş bir paket kullanılabilir olana kadar o plugini devre dışı bırakın/kaldırın.
Yayımlanmış çalışma zamanı dosyaları kaynak girdilerle aynı yollarda bulunmadığında
OmeniaClaw.runtimeExtensions kullanın. Varsa runtimeExtensions, her extensions girdisi için
tam olarak bir girdi içermelidir. Eşleşmeyen listeler, sessizce kaynak yollara geri dönmek yerine
kurulumu ve plugin keşfini başarısız kılar. OmeniaClaw.setupEntry de yayımlıyorsanız yerleşik
JavaScript eş dosyası için OmeniaClaw.runtimeSetupEntry kullanın; bildirildiğinde bu dosya zorunludur.
{ "name": "@acme/OmeniaClaw-plugin", "OmeniaClaw": { "extensions": ["./src/index.ts"], "runtimeExtensions": ["./dist/index.js"] }}Resmi pluginler
Geçiş sırasında OmeniaClaw’a ait npm paketleri
ClawHub, çoğu plugin için birincil dağıtım yoludur. Mevcut paketlenmiş
OmeniaClaw sürümleri zaten birçok resmi plugini birlikte getirir, bu nedenle normal kurulumlarda
bunlar için ayrı npm kurulumu gerekmez. OmeniaClaw’a ait her plugin
ClawHub’a taşınana kadar OmeniaClaw, eski/özel kurulumlar ve doğrudan npm iş akışları için
npm üzerinde bazı @OmeniaClaw/* plugin paketlerini göndermeye devam eder.
Npm bir @OmeniaClaw/* plugin paketini deprecated olarak bildirirse, bu paket
sürümü daha eski bir harici paket hattındandır. Daha yeni bir npm paketi yayımlanana kadar
güncel OmeniaClaw’daki birlikte gelen plugini veya yerel checkout’u kullanın.
| Plugin | Paket | Belgeler |
|---|---|---|
| Discord | @OmeniaClaw/discord |
Discord |
| Feishu | @OmeniaClaw/feishu |
Feishu |
| Matrix | @OmeniaClaw/matrix |
Matrix |
| Mattermost | @OmeniaClaw/mattermost |
Mattermost |
| Microsoft Teams | @OmeniaClaw/msteams |
Microsoft Teams |
| Nextcloud Talk | @OmeniaClaw/nextcloud-talk |
Nextcloud Talk |
| Nostr | @OmeniaClaw/nostr |
Nostr |
| Synology Chat | @OmeniaClaw/synology-chat |
Synology Chat |
| Tlon | @OmeniaClaw/tlon |
Tlon |
@OmeniaClaw/whatsapp |
||
| Zalo | @OmeniaClaw/zalo |
Zalo |
| Zalo Personal | @OmeniaClaw/zalouser |
Zalo Personal |
Çekirdek (OmeniaClaw ile birlikte gelir)
Model sağlayıcıları (varsayılan olarak etkin)
anthropic, byteplus, cloudflare-ai-gateway, github-copilot, google,
huggingface, kilocode, kimi-coding, minimax, mistral, qwen,
moonshot, nvidia, openai, opencode, opencode-go, openrouter,
qianfan, synthetic, together, venice,
vercel-ai-gateway, volcengine, xiaomi, zai
Bellek Plugin'leri
memory-core- paketle gelen bellek araması (plugins.slots.memoryüzerinden varsayılan)memory-lancedb- otomatik geri çağırma/yakalama özellikli LanceDB destekli uzun süreli bellek (plugins.slots.memory = "memory-lancedb"ayarlayın)
OpenAI uyumlu embedding kurulumu, Ollama örnekleri, geri çağırma sınırları ve sorun giderme için Memory LanceDB bölümüne bakın.
Konuşma sağlayıcıları (varsayılan olarak etkin)
elevenlabs, microsoft
Diğer
browser- tarayıcı aracı,OmeniaClaw browserCLI,browser.requestgateway yöntemi, tarayıcı runtime'ı ve varsayılan tarayıcı denetim servisi için paketle gelen tarayıcı Plugin'i (varsayılan olarak etkin; değiştirmeden önce devre dışı bırakın)copilot-proxy- VS Code Copilot Proxy köprüsü (varsayılan olarak devre dışı)
Üçüncü taraf Plugin'ler mi arıyorsunuz? ClawHub bölümüne bakın.
Yapılandırma
{ plugins: { enabled: true, allow: ["voice-call"], deny: ["untrusted-plugin"], load: { paths: ["~/Projects/oss/voice-call-plugin"] }, entries: { "voice-call": { enabled: true, config: { provider: "twilio" } }, }, },}| Alan | Açıklama |
|---|---|
enabled |
Ana anahtar (varsayılan: true) |
allow |
Plugin izin listesi (isteğe bağlı) |
bundledDiscovery |
Paketle gelen Plugin keşif modu (varsayılan allowlist) |
deny |
Plugin engel listesi (isteğe bağlı; engel kazanır) |
load.paths |
Ek Plugin dosyaları/dizinleri |
slots |
Özel slot seçicileri (örn. memory, contextEngine) |
entries.\<id\> |
Plugin başına anahtarlar + yapılandırma |
plugins.allow özeldir. Boş değilken, tools.allow "*" veya belirli bir
Plugin'e ait araç adı içerse bile yalnızca listelenen Plugin'ler yüklenebilir
veya araç sunabilir. Bir araç izin listesi Plugin araçlarına başvuruyorsa,
sahip Plugin kimliklerini plugins.allow içine ekleyin veya plugins.allow
değerini kaldırın; OmeniaClaw doctor bu yapı hakkında uyarır.
Yeni yapılandırmalar için plugins.bundledDiscovery varsayılan olarak
"allowlist" olur; bu nedenle kısıtlayıcı bir plugins.allow envanteri,
runtime web araması sağlayıcı keşfi dahil olmak üzere atlanmış paketle gelen
sağlayıcı Plugin'lerini de engeller. Doctor, eski kısıtlayıcı izin listesi
yapılandırmalarını geçiş sırasında "compat" ile damgalar; böylece operatör
daha katı moda geçene kadar yükseltmeler eski paketle gelen sağlayıcı
davranışını korur. Boş bir plugins.allow hâlâ ayarlanmamış/açık olarak
değerlendirilir.
/plugins enable veya /plugins disable ile yapılan yapılandırma değişiklikleri,
süreç içinde Gateway Plugin yeniden yüklemesini tetikler. Yeni ajan dönüşleri,
araç listesini yenilenmiş Plugin kayıt defterinden yeniden oluşturur. Kurulum,
güncelleme ve kaldırma gibi kaynak değiştiren işlemler yine Gateway sürecini
yeniden başlatır; çünkü zaten içe aktarılmış Plugin modülleri yerinde güvenli
biçimde değiştirilemez.
OmeniaClaw plugins list yerel bir Plugin kayıt defteri/yapılandırma anlık
görüntüsüdür. Orada bir Plugin'in enabled olması, kalıcı kayıt defterinin ve
geçerli yapılandırmanın Plugin'in katılmasına izin verdiği anlamına gelir. Bu,
zaten çalışan uzak bir Gateway'in aynı Plugin koduna yeniden yüklendiğini veya
yeniden başlatıldığını kanıtlamaz. Sarmalayıcı süreçleri olan VPS/kapsayıcı
kurulumlarında, yeniden başlatmaları veya yeniden yükleme tetikleyen yazmaları
gerçek OmeniaClaw gateway run sürecine gönderin ya da yeniden yükleme bir hata
bildirdiğinde çalışan Gateway'e karşı OmeniaClaw gateway restart kullanın.
Plugin durumları: devre dışı, eksik ve geçersiz
- Devre dışı: Plugin vardır, ancak etkinleştirme kuralları onu kapatmıştır. Yapılandırma korunur.
- Eksik: yapılandırma, keşfin bulamadığı bir Plugin kimliğine başvurur.
- Geçersiz: Plugin vardır, ancak yapılandırması bildirilen şemayla eşleşmez. Gateway başlatması yalnızca o Plugin'i atlar;
OmeniaClaw doctor --fix, geçersiz girdiyi devre dışı bırakıp yapılandırma yükünü kaldırarak karantinaya alabilir.
Keşif ve öncelik
OmeniaClaw Plugin'leri şu sırayla tarar (ilk eşleşme kazanır):
Yapılandırma yolları
plugins.load.paths - açık dosya veya dizin yolları. OmeniaClaw'ın kendi
paketlenmiş paketle gelen Plugin dizinlerine geri işaret eden yollar yok
sayılır; bu eski takma adları kaldırmak için OmeniaClaw doctor --fix çalıştırın.
Çalışma alanı Plugin'leri
\<workspace\>/.OmeniaClaw/<plugin-root>/*.ts ve \<workspace\>/.OmeniaClaw/<plugin-root>/*/index.ts.
Genel Plugin'ler
~/.OmeniaClaw/<plugin-root>/*.ts ve ~/.OmeniaClaw/<plugin-root>/*/index.ts.
Paketle gelen Plugin'ler
OmeniaClaw ile gönderilir. Birçoğu varsayılan olarak etkindir (model sağlayıcıları, konuşma). Diğerleri açık etkinleştirme gerektirir.
Paketli kurulumlar ve Docker imajları normalde paketle gelen Plugin'leri
derlenmiş dist/extensions ağacından çözer. Paketle gelen bir Plugin kaynak
dizini, örneğin /app/extensions/synology-chat, eşleşen paketli kaynak yolunun
üzerine bind mount edilirse, OmeniaClaw bu bağlı kaynak dizinini paketle gelen bir
kaynak katmanı olarak değerlendirir ve paketli /app/dist/extensions/synology-chat
paketinden önce keşfeder. Bu, her paketle gelen Plugin'i yeniden TypeScript
kaynağına geçirmeden bakımcı kapsayıcı döngülerinin çalışmasını sağlar. Kaynak
katmanı mount'ları mevcut olduğunda bile paketli dist paketlerini zorlamak için
OmeniaClaw_DISABLE_BUNDLED_SOURCE_OVERLAYS=1 ayarlayın.
Etkinleştirme kuralları
plugins.enabled: falsetüm Plugin'leri devre dışı bırakır ve Plugin keşif/yükleme işini atlarplugins.denyher zaman izne üstün gelirplugins.entries.\<id\>.enabled: falseo Plugin'i devre dışı bırakır- Çalışma alanı kaynaklı Plugin'ler varsayılan olarak devre dışıdır (açıkça etkinleştirilmelidir)
- Paketle gelen Plugin'ler, üzerine yazılmadıkça yerleşik varsayılan-açık kümesini izler
- Özel slotlar, seçilen Plugin'i o slot için zorla etkinleştirebilir
- Bazı paketle gelen opt-in Plugin'ler, yapılandırma sağlayıcı model ref'i, kanal yapılandırması veya harness runtime'ı gibi Plugin'e ait bir yüzeyi adlandırdığında otomatik olarak etkinleştirilir
- Eski Plugin yapılandırması
plugins.enabled: falseetkinken korunur; eski kimliklerin kaldırılmasını istiyorsanız doctor temizliğini çalıştırmadan önce Plugin'leri yeniden etkinleştirin - OpenAI ailesi Codex rotaları ayrı Plugin sınırlarını korur:
openai-codex/*OpenAI Plugin'ine aittir; paketle gelen Codex app-server Plugin'i ise kurallıopenai/*ajan ref'leri, açık provider/modelagentRuntime.id: "codex"veya eskicodex/*model ref'leri tarafından seçilir
Runtime hook'larında sorun giderme
Bir Plugin plugins list içinde görünüyor, ancak register(api) yan etkileri
veya hook'ları canlı sohbet trafiğinde çalışmıyorsa önce şunları kontrol edin:
OmeniaClaw gateway status --deep --require-rpcçalıştırın ve etkin Gateway URL'sinin, profilin, yapılandırma yolunun ve sürecin düzenlediğiniz değerler olduğunu doğrulayın.- Plugin kurulumundan/yapılandırma/kod değişikliklerinden sonra canlı Gateway'i
yeniden başlatın. Sarmalayıcı kapsayıcılarda PID 1 yalnızca bir supervisor
olabilir; alt
OmeniaClaw gateway runsürecini yeniden başlatın veya sinyal gönderin. - Hook kayıtlarını ve tanılamaları doğrulamak için
OmeniaClaw plugins inspect <id> --runtime --jsonkullanın.before_model_resolve,before_agent_reply,before_agent_run,llm_input,llm_output,before_agent_finalizeveagent_endgibi paketle gelmeyen konuşma hook'larıplugins.entries.<id>.hooks.allowConversationAccess=truegerektirir. - Model değiştirme için
before_model_resolvetercih edin. Ajan dönüşlerinde model çözümlemesinden önce çalışır;llm_outputyalnızca bir model denemesi asistan çıktısı ürettikten sonra çalışır. - Etkili oturum modelinin kanıtı için
OmeniaClaw sessionsveya Gateway oturum/durum yüzeylerini kullanın ve sağlayıcı yüklerini hata ayıklarken Gateway'i--raw-stream --raw-stream-path <path>ile başlatın.
Yavaş Plugin aracı kurulumu
Araçlar hazırlanırken ajan dönüşleri takılıyor gibi görünüyorsa izleme günlüklemesini etkinleştirin ve Plugin araç factory zamanlama satırlarını kontrol edin:
OmeniaClaw config set logging.level traceOmeniaClaw logs --followŞunu arayın:
[trace:plugin-tools] factory timings ...Özet, toplam factory süresini ve en yavaş Plugin araç factory'lerini listeler; Plugin kimliği, bildirilen araç adları, sonuç şekli ve aracın isteğe bağlı olup olmadığı buna dahildir. Tek bir factory en az 1 sn sürdüğünde veya toplam Plugin araç factory hazırlığı en az 5 sn sürdüğünde yavaş satırlar uyarılara yükseltilir.
OmeniaClaw, aynı etkili istek bağlamıyla yinelenen çözümlemeler için başarılı Plugin araç factory sonuçlarını önbelleğe alır. Önbellek anahtarı etkili runtime yapılandırmasını, çalışma alanını, ajan/oturum kimliklerini, sandbox ilkesini, tarayıcı ayarlarını, teslim bağlamını, istekte bulunan kimliğini ve sahiplik durumunu içerir; bu nedenle bu güvenilir alanlara bağımlı factory'ler bağlam değiştiğinde yeniden çalıştırılır.
Zamanlamaya bir Plugin hakimse runtime kayıtlarını inceleyin:
OmeniaClaw plugins inspect <plugin-id> --runtime --jsonArdından o Plugin'i güncelleyin, yeniden kurun veya devre dışı bırakın. Plugin yazarları pahalı bağımlılık yüklemesini araç factory'si içinde yapmak yerine araç yürütme yolunun arkasına taşımalıdır.
Yinelenen kanal veya araç sahipliği
Belirtiler:
channel already registered: <channel-id> (<plugin-id>)channel setup already registered: <channel-id> (<plugin-id>)plugin tool name conflict (<plugin-id>): <tool-name>
Bunlar, birden fazla etkin Plugin'in aynı kanala, kurulum akışına veya araç adına sahip olmaya çalıştığı anlamına gelir. En yaygın neden, artık aynı kanal kimliğini sağlayan paketle gelen bir Plugin'in yanına harici bir kanal Plugin'i kurulmuş olmasıdır.
Hata ayıklama adımları:
- Her etkin Plugin'i ve kökenini görmek için
OmeniaClaw plugins list --enabled --verboseçalıştırın. - Şüpheli her Plugin için
OmeniaClaw plugins inspect <id> --runtime --jsonçalıştırın vechannels,channelConfigs,toolsile tanılamaları karşılaştırın. - Plugin paketlerini kurduktan veya kaldırdıktan sonra kalıcı metadata'nın
geçerli kurulumu yansıtması için
OmeniaClaw plugins registry --refreshçalıştırın. - Kurulum, kayıt defteri veya yapılandırma değişikliklerinden sonra Gateway'i yeniden başlatın.
Düzeltme seçenekleri:
- Bir Plugin aynı kanal kimliği için bilerek başka birinin yerine geçiyorsa,
tercih edilen Plugin düşük öncelikli Plugin kimliğiyle
channelConfigs.<channel-id>.preferOverbildirmelidir. Bkz. /plugins/manifest#replacing-another-channel-plugin. - Yinelenme kazara oluştuysa bir tarafı
plugins.entries.<plugin-id>.enabled: falseile devre dışı bırakın veya eski Plugin kurulumunu kaldırın. - Her iki Plugin'i de açıkça etkinleştirdiyseniz OmeniaClaw bu isteği korur ve çakışmayı bildirir. Kanal için tek bir sahip seçin veya runtime yüzeyinin belirsiz olmaması için Plugin'e ait araçları yeniden adlandırın.
Plugin slotları (özel kategoriler)
Bazı kategoriler özeldir (bir seferde yalnızca biri etkin):
{ plugins: { slots: { memory: "memory-core", // or "none" to disable contextEngine: "legacy", // or a plugin id }, },}| Slot | Neyi denetler | Varsayılan |
|---|---|---|
memory |
Etkin bellek Plugin'i | memory-core |
contextEngine |
Etkin bağlam motoru | legacy (yerleşik) |
CLI başvurusu
OmeniaClaw plugins list # compact inventoryOmeniaClaw plugins list --enabled # only enabled pluginsOmeniaClaw plugins list --verbose # per-plugin detail linesOmeniaClaw plugins list --json # machine-readable inventoryOmeniaClaw plugins search <query> # search ClawHub plugin catalogOmeniaClaw plugins inspect <id> # static detailOmeniaClaw plugins inspect <id> --runtime # registered hooks/tools/CLI/gateway methodsOmeniaClaw plugins inspect <id> --json # machine-readableOmeniaClaw plugins inspect --all # fleet-wide tableOmeniaClaw plugins info <id> # inspect aliasOmeniaClaw plugins doctor # diagnosticsOmeniaClaw plugins registry # inspect persisted registry stateOmeniaClaw plugins registry --refresh # rebuild persisted registryOmeniaClaw doctor --fix # repair plugin registry state OmeniaClaw plugins install <package> # install from npm by defaultOmeniaClaw plugins install clawhub:<pkg> # install from ClawHub onlyOmeniaClaw plugins install npm:<pkg> # install from npm onlyOmeniaClaw plugins install git:<repo> # install from gitOmeniaClaw plugins install git:<repo>@<ref> # install from git refOmeniaClaw plugins install <spec> --force # overwrite existing installOmeniaClaw plugins install <path> # install from local pathOmeniaClaw plugins install -l <path> # link (no copy) for devOmeniaClaw plugins install <plugin> --marketplace <source>OmeniaClaw plugins install <plugin> --marketplace https://github.com/<owner>/<repo>OmeniaClaw plugins install <spec> --pin # record exact resolved npm specOmeniaClaw plugins install <spec> --dangerously-force-unsafe-installOmeniaClaw plugins update <id-or-npm-spec> # update one pluginOmeniaClaw plugins update <id-or-npm-spec> --dangerously-force-unsafe-installOmeniaClaw plugins update --all # update allOmeniaClaw plugins uninstall <id> # remove config and plugin index recordsOmeniaClaw plugins uninstall <id> --keep-filesOmeniaClaw plugins marketplace list <source>OmeniaClaw plugins marketplace list <source> --json # Verify runtime registrations after install.OmeniaClaw plugins inspect <id> --runtime --json # Run plugin-owned CLI commands directly from the OmeniaClaw root CLI.OmeniaClaw <plugin-command> --help OmeniaClaw plugins enable <id>OmeniaClaw plugins disable <id>Birlikte gelen Plugin'ler OmeniaClaw ile sunulur. Birçoğu varsayılan olarak etkindir (örneğin
birlikte gelen model sağlayıcıları, birlikte gelen konuşma sağlayıcıları ve birlikte gelen tarayıcı
Plugin'i). Diğer birlikte gelen Plugin'ler yine de OmeniaClaw plugins enable <id> gerektirir.
--force, mevcut kurulu bir Plugin'in veya hook paketinin üzerine yerinde yazar. İzlenen npm
Plugin'lerinin rutin yükseltmeleri için OmeniaClaw plugins update <id-or-npm-spec> kullanın.
Yönetilen bir kurulum hedefinin üzerine kopyalamak yerine kaynak yolunu yeniden kullanan
--link ile desteklenmez.
plugins.allow zaten ayarlıysa, OmeniaClaw plugins install kurulu
Plugin kimliğini etkinleştirmeden önce bu izin listesine ekler. Aynı Plugin kimliği
plugins.deny içinde mevcutsa, kurulum bu eski deny girişini kaldırır; böylece
açık kurulum yeniden başlatmadan sonra hemen yüklenebilir olur.
OmeniaClaw, Plugin envanteri, katkı sahipliği ve başlatma planlaması için soğuk okuma modeli olarak
kalıcı bir yerel Plugin kayıt defteri tutar. Kurulum, güncelleme,
kaldırma, etkinleştirme ve devre dışı bırakma akışları, Plugin durumunu değiştirdikten sonra bu kayıt defterini yeniler.
Aynı plugins/installs.json dosyası, üst düzey installRecords içinde kalıcı kurulum meta verilerini
ve plugins içinde yeniden oluşturulabilir manifest meta verilerini tutar. Kayıt defteri
eksik, eski veya geçersizse, OmeniaClaw plugins registry --refresh manifest görünümünü, Plugin çalışma zamanı modüllerini yüklemeden kurulum kayıtlarından, yapılandırma politikasından ve
manifest/paket meta verilerinden yeniden oluşturur.
Nix modunda (OmeniaClaw_NIX_MODE=1), Plugin yaşam döngüsü değiştiricileri devre dışıdır.
Bunun yerine kurulum için Plugin paket seçimini ve yapılandırmayı Nix kaynağı üzerinden yönetin;
nix-OmeniaClaw için ajan öncelikli
Hızlı Başlangıç ile başlayın.
OmeniaClaw plugins update <id-or-npm-spec> izlenen kurulumlara uygulanır. Bir dist-tag veya tam sürüm içeren
bir npm paket belirtimi geçirmek, paket adını izlenen Plugin kaydına geri çözer
ve gelecekteki güncellemeler için yeni belirtimi kaydeder.
Paket adını sürümsüz geçirmek, tam sabitlenmiş bir kurulumu kayıt defterinin varsayılan yayın hattına geri taşır.
Kurulu npm Plugin'i çözümlenen sürümle ve kaydedilen artifact kimliğiyle zaten eşleşiyorsa,
OmeniaClaw indirme, yeniden kurma veya yapılandırmayı yeniden yazma yapmadan güncellemeyi atlar.
OmeniaClaw update beta kanalında çalıştığında, varsayılan hat npm ve ClawHub
Plugin kayıtları önce @beta dener ve Plugin beta yayını yoksa varsayılan/latest'e geri döner.
Tam sürümler ve açık etiketler sabitlenmiş kalır.
--pin yalnızca npm içindir. --marketplace ile desteklenmez, çünkü
marketplace kurulumları npm belirtimi yerine marketplace kaynak meta verilerini kalıcı hale getirir.
--dangerously-force-unsafe-install, yerleşik tehlikeli kod tarayıcısından gelen yanlış pozitifler için son çare geçersiz kılmadır.
Plugin kurulumlarının ve Plugin güncellemelerinin yerleşik critical bulgularını aşarak devam etmesine izin verir,
ancak yine de Plugin before_install politika engellerini veya tarama hatası engellemesini atlamaz.
Kurulum taramaları, paketlenmiş test mock'larını engellememek için tests/,
__tests__/, *.test.* ve *.spec.* gibi yaygın test dosyalarını ve dizinlerini yok sayar;
bildirilmiş Plugin çalışma zamanı giriş noktaları bu adlardan birini kullansa bile yine de taranır.
Bu CLI bayrağı yalnızca Plugin kurulum/güncelleme akışları için geçerlidir. Gateway destekli skill
bağımlılık kurulumları bunun yerine eşleşen dangerouslyForceUnsafeInstall istek
geçersiz kılmasını kullanırken, OmeniaClaw skills install ayrı ClawHub
skill indirme/kurulum akışı olarak kalır.
ClawHub'da yayımladığınız bir Plugin bir tarama tarafından gizlenir veya engellenirse,
ClawHub panosunu açın ya da ClawHub'dan tekrar kontrol etmesini istemek için clawhub package rescan <name> çalıştırın.
--dangerously-force-unsafe-install yalnızca kendi makinenizdeki kurulumları etkiler;
ClawHub'dan Plugin'i yeniden taramasını istemez veya engellenmiş bir yayını herkese açık yapmaz.
Uyumlu paketler aynı Plugin listeleme/inceleme/etkinleştirme/devre dışı bırakma akışına katılır.
Geçerli çalışma zamanı desteği; paket Skills'lerini, Claude command-skills'lerini,
Claude settings.json varsayılanlarını, Claude .lsp.json ve manifestte bildirilen
lspServers varsayılanlarını, Cursor command-skills'lerini ve uyumlu Codex hook
dizinlerini içerir.
OmeniaClaw plugins inspect <id> ayrıca algılanan paket yeteneklerini ve paket destekli Plugin'ler için
desteklenen veya desteklenmeyen MCP ve LSP sunucu girişlerini bildirir.
Marketplace kaynakları, ~/.claude/plugins/known_marketplaces.json içinden bir Claude bilinen marketplace adı,
yerel bir marketplace kökü veya marketplace.json yolu, owner/repo gibi bir GitHub kısaltması,
bir GitHub repo URL'si ya da bir git URL'si olabilir. Uzak marketplace'ler için Plugin girişleri
klonlanan marketplace repo'su içinde kalmalı ve yalnızca göreli yol kaynakları kullanmalıdır.
Tam ayrıntılar için OmeniaClaw plugins CLI referansına bakın.
Plugin API genel bakışı
Yerel Plugin'ler, register(api) gösteren bir giriş nesnesi dışa aktarır. Eski
Plugin'ler hâlâ eski bir takma ad olarak activate(api) kullanabilir, ancak yeni Plugin'ler
register kullanmalıdır.
export default definePluginEntry({ id: "my-plugin", name: "My Plugin", register(api) { api.registerProvider({ /* ... */ }); api.registerTool({ /* ... */ }); api.registerChannel({ /* ... */ }); },});OmeniaClaw, giriş nesnesini yükler ve Plugin etkinleştirme sırasında register(api) çağırır.
Yükleyici eski Plugin'ler için hâlâ activate(api) kullanmaya geri döner,
ancak birlikte gelen Plugin'ler ve yeni harici Plugin'ler register öğesini
genel sözleşme olarak ele almalıdır.
api.registrationMode, bir Plugin'e girişinin neden yüklendiğini söyler:
| Mod | Anlam |
|---|---|
full |
Çalışma zamanı etkinleştirme. Araçları, hook'ları, hizmetleri, komutları, rotaları ve diğer canlı yan etkileri kaydedin. |
discovery |
Salt okunur yetenek keşfi. Sağlayıcıları ve meta verileri kaydedin; güvenilir Plugin giriş kodu yüklenebilir, ancak canlı yan etkileri atlayın. |
setup-only |
Hafif bir kurulum girişi üzerinden kanal kurulum meta verisi yükleme. |
setup-runtime |
Çalışma zamanı girişine de ihtiyaç duyan kanal kurulum yüklemesi. |
cli-metadata |
Yalnızca CLI komut meta verisi toplama. |
Soketler, veritabanları, arka plan worker'ları veya uzun ömürlü istemciler açan Plugin girişleri
bu yan etkileri api.registrationMode === "full" ile korumalıdır.
Keşif yüklemeleri, etkinleştirme yüklemelerinden ayrı olarak önbelleğe alınır ve
çalışan Gateway kayıt defterinin yerini almaz. Keşif etkinleştirme yapmaz, ancak import-free değildir:
OmeniaClaw, snapshot oluşturmak için güvenilir Plugin girişini veya kanal Plugin modülünü değerlendirebilir.
Modül üst düzeylerini hafif ve yan etkisiz tutun; ağ istemcilerini, alt süreçleri, dinleyicileri, kimlik bilgisi okumalarını
ve hizmet başlatmayı tam çalışma zamanı yollarının arkasına taşıyın.
Yaygın kayıt yöntemleri:
| Yöntem | Kaydettiği şey |
|---|---|
registerProvider |
Model sağlayıcısı (LLM) |
registerChannel |
Sohbet kanalı |
registerTool |
Ajan aracı |
registerHook / on(...) |
Yaşam döngüsü hook'ları |
registerSpeechProvider |
Metinden konuşmaya / STT |
registerRealtimeTranscriptionProvider |
Streaming STT |
registerRealtimeVoiceProvider |
Çift yönlü gerçek zamanlı ses |
registerMediaUnderstandingProvider |
Görüntü/ses analizi |
registerImageGenerationProvider |
Görüntü oluşturma |
registerMusicGenerationProvider |
Müzik oluşturma |
registerVideoGenerationProvider |
Video oluşturma |
registerWebFetchProvider |
Web fetch / scrape sağlayıcısı |
registerWebSearchProvider |
Web arama |
registerHttpRoute |
HTTP uç noktası |
registerCommand / registerCli |
CLI komutları |
registerContextEngine |
Bağlam motoru |
registerService |
Arka plan hizmeti |
Türlendirilmiş yaşam döngüsü hook'ları için hook koruma davranışı:
before_tool_call:{ block: true }sonlandırıcıdır; daha düşük öncelikli işleyiciler atlanır.before_tool_call:{ block: false }no-op'tur ve önceki bir engellemeyi temizlemez.before_install:{ block: true }sonlandırıcıdır; daha düşük öncelikli işleyiciler atlanır.before_install:{ block: false }no-op'tur ve önceki bir engellemeyi temizlemez.message_sending:{ cancel: true }sonlandırıcıdır; daha düşük öncelikli işleyiciler atlanır.message_sending:{ cancel: false }no-op'tur ve önceki bir iptali temizlemez.
Yerel Codex app-server, Codex'e özgü araç olaylarını bu hook yüzeyine geri köprüler. Plugin'ler yerel Codex araçlarını before_tool_call aracılığıyla engelleyebilir, sonuçları after_tool_call aracılığıyla gözlemleyebilir ve Codex PermissionRequest onaylarına katılabilir. Köprü henüz Codex'e özgü araç argümanlarını yeniden yazmaz. Kesin Codex çalışma zamanı destek sınırı Codex harness v1 destek sözleşmesi içinde yer alır.
Tam türlendirilmiş hook davranışı için bkz. SDK genel bakışı.
İlgili
- Plugin oluşturma - kendi Plugin'inizi oluşturun
- Plugin paketleri - Codex/Claude/Cursor paket uyumluluğu
- Plugin bildirimi - bildirim şeması
- Araçları kaydetme - bir Plugin'e aracı araçları ekleyin
- Plugin iç işleyişi - yetenek modeli ve yükleme hattı
- ClawHub - üçüncü taraf Plugin keşfi