OpenClaw App SDK, OpenClaw süreci dışındaki uygulamalar için genel istemci API’sidir. Bir betik, pano, CI işi, IDE eklentisi veya başka bir harici uygulama Gateway’e bağlanmak, agent çalıştırmaları başlatmak, olayları stream etmek, sonuçları beklemek, işi iptal etmek ya da Gateway kaynaklarını incelemek istediğindeDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
@openclaw/sdk kullanın.
App SDK, Plugin SDK ile aynı değildir.
@openclaw/sdk, OpenClaw dışından Gateway ile konuşur.
openclaw/plugin-sdk/* yalnızca OpenClaw içinde çalışan ve sağlayıcılar,
kanallar, araçlar, hook’lar veya güvenilir runtime’lar kaydeden plugin’ler içindir.Bugün Neler Sunuluyor
@openclaw/sdk şunlarla birlikte gelir:
| Yüzey | Durum | Ne yapar |
|---|---|---|
OpenClaw | Hazır | Ana istemci giriş noktası. Taşıma, bağlantı, istekler ve olayları yönetir. |
GatewayClientTransport | Hazır | Gateway istemcisi tarafından desteklenen WebSocket taşıması. |
oc.agents | Hazır | Agent handle’larını listeler, oluşturur, günceller, siler ve getirir. |
Agent.run() | Hazır | Bir Gateway agent çalıştırması başlatır ve bir Run döndürür. |
oc.runs | Hazır | Çalıştırmaları oluşturur, getirir, bekler, iptal eder ve stream eder. |
Run.events() | Hazır | Hızlı çalıştırmalar için yeniden oynatmayla, normalize edilmiş çalıştırma bazlı olayları stream eder. |
Run.wait() | Hazır | agent.wait çağırır ve kararlı bir RunResult döndürür. |
Run.cancel() | Hazır | Uygun olduğunda session anahtarıyla, çalıştırma kimliğine göre sessions.abort çağırır. |
oc.sessions | Hazır | Session handle’larını oluşturur, çözümler, gönderir, yamalar, compact eder ve getirir. |
Session.send() | Hazır | sessions.send çağırır ve bir Run döndürür. |
oc.models | Hazır | models.list ve geçerli models.authStatus durum RPC’sini çağırır. |
oc.tools | Kısmi | Araç kataloğunu ve etkin araçları listeler; doğrudan araç çağırma bağlanmamıştır. |
oc.approvals | Hazır | Gateway onay RPC’leri üzerinden exec onaylarını listeler ve çözümler. |
oc.rawEvents() | Hazır | Gelişmiş tüketiciler için ham Gateway olaylarını açığa çıkarır. |
normalizeGatewayEvent() | Hazır | Ham Gateway olaylarını kararlı SDK olay şekline dönüştürür. |
AgentRunParams, RunResult, RunStatus, OpenClawEvent,
OpenClawEventType, GatewayEvent, OpenClawTransport,
GatewayRequestOptions, SessionCreateParams, SessionSendParams,
RuntimeSelection, EnvironmentSelection, WorkspaceSelection,
ApprovalMode ve ilişkili sonuç türleri.
Bir Gateway’e Bağlanın
Açık bir Gateway URL’siyle istemci oluşturun veya testler ve gömülü uygulama runtime’ları için özel bir taşıma enjekte edin.new OpenClaw({ gateway: "ws://..." }), url ile eşdeğerdir. gateway: "auto" seçeneği constructor tarafından kabul edilir, ancak otomatik Gateway keşfi henüz ayrı bir SDK özelliği değildir; uygulama Gateway’i nasıl keşfedeceğini zaten bilmiyorsa url iletin.
Testler için OpenClawTransport uygulayan bir nesne iletin:
Bir Agent Çalıştırın
Uygulama bir agent handle’ı istediğindeoc.agents.get(id) kullanın, ardından
agent.run() çağırın.
openai/gpt-5.5 gibi sağlayıcı nitelemeli model başvuruları Gateway provider ve model geçersiz kılmalarına ayrılır. timeoutMs SDK içinde milisaniye olarak kalır ve agent RPC’si için Gateway zaman aşımı saniyelerine dönüştürülür.
run.wait(), Gateway agent.wait RPC’sini kullanır. Çalıştırma hâlâ aktifken süresi dolan bir bekleme son tarihi, çalıştırmanın kendisi zaman aşımına uğramış gibi davranmak yerine status: "accepted" döndürür. Runtime zaman aşımları, durdurulan çalıştırmalar ve iptal edilen çalıştırmalar timed_out veya cancelled olarak normalize edilir.
Session’lar Oluşturun ve Yeniden Kullanın
Uygulama kalıcı transcript durumu istediğinde session’ları kullanın.Session.send(), sessions.send çağırır ve bir Run döndürür. Session handle’ları ayrıca şunları destekler:
Olayları Stream Edin
SDK, ham Gateway olaylarını kararlı birOpenClawEvent zarfına normalize eder:
| Olay türü | Kaynak Gateway olayı |
|---|---|
run.started | agent yaşam döngüsü başlangıcı |
run.completed | agent yaşam döngüsü sonu |
run.failed | agent yaşam döngüsü hatası |
run.cancelled | Durdurulmuş/iptal edilmiş yaşam döngüsü sonu |
run.timed_out | Zaman aşımı yaşam döngüsü sonu |
assistant.delta | Assistant streaming delta |
assistant.message | Assistant mesajı |
thinking.delta | Düşünme veya plan stream’i |
tool.call.started | Araç/öğe/komut başlangıcı |
tool.call.delta | Araç/öğe/komut güncellemesi |
tool.call.completed | Araç/öğe/komut tamamlanması |
tool.call.failed | Araç/öğe/komut hatası veya engellenmiş durum |
approval.requested | Exec veya plugin onay isteği |
approval.resolved | Exec veya plugin onay çözümü |
session.created | sessions.changed oluşturma |
session.updated | sessions.changed güncelleme |
session.compacted | sessions.changed compaction |
task.updated | Görev güncelleme olayları |
artifact.updated | Yama stream olayları |
raw | Henüz kararlı SDK eşlemesi olmayan herhangi bir olay |
Run.events(), olayları tek bir çalıştırma kimliğine filtreler ve hızlı çalıştırmalar için önceden görülmüş olayları yeniden oynatır. Bu, belgelenen akışın güvenli olduğu anlamına gelir:
oc.events() kullanın. Ham Gateway frame’leri için oc.rawEvents() kullanın.
Modeller, Araçlar ve Onaylar
Model yardımcıları geçerli Gateway yöntemleriyle eşleşir:Bugün Açıkça Desteklenmeyenler
SDK, istediğimiz ürün modeli için adlar içerir, ancak Gateway RPC’leri varmış gibi sessizce davranmaz. Bu çağrılar şu anda açık desteklenmiyor hataları fırlatır:workspace, runtime, environment ve approvals alanları gelecek şekil olarak tiplendirilmiştir, ancak mevcut Gateway bu geçersiz kılmaları agent RPC’sinde desteklemez. Çağıranlar bunları iletirse SDK, işin yanlışlıkla varsayılan workspace, runtime, environment veya onay davranışıyla yürütülmemesi için çalıştırmayı göndermeden önce hata fırlatır.
App SDK ve Plugin SDK Karşılaştırması
Kod OpenClaw dışında bulunduğunda App SDK kullanın:- Agent çalıştırmaları başlatan veya gözlemleyen Node betikleri
- Bir Gateway’i çağıran CI işleri
- panolar ve yönetici panelleri
- IDE eklentileri
- kanal plugin’lerine dönüşmesi gerekmeyen harici köprüler
- sahte veya gerçek Gateway taşımalarıyla entegrasyon testleri
- sağlayıcı plugin’leri
- kanal plugin’leri
- araç veya yaşam döngüsü hook’ları
- agent harness plugin’leri
- güvenilir runtime yardımcıları
@openclaw/sdk içinden import etmelidir. Plugin kodu belgelenmiş openclaw/plugin-sdk/* alt yollarından import etmelidir. İki sözleşmeyi karıştırmayın.