chore(i18n): refresh tr translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-08 06:06:06 +00:00
parent 1f41a939d6
commit f368abe421
13 changed files with 2150 additions and 1714 deletions

View File

@ -1,20 +1,20 @@
---
read_when:
- Slack kuruluyorsa veya Slack socket/HTTP modunda hata ayıklanıyorsa
summary: Slack kurulumu ve çalışma zamanı davranışı (Socket Mode + HTTP Request URLs)
- Slack kuruluyorsa veya Slack socket/HTTP modu hata ayıklanıyorsa
summary: Slack kurulumu ve çalışma zamanı davranışı (Socket Mode + HTTP Request URL'leri)
title: Slack
x-i18n:
generated_at: "2026-04-07T08:44:50Z"
generated_at: "2026-04-08T06:02:10Z"
model: gpt-5.4
provider: openai
source_hash: 2b8fd2cc6c638ee82069f0af2c2b6f6f49c87da709b941433a0343724a9907ea
source_hash: cad132131ddce688517def7c14703ad314441c67aacc4cc2a2a721e1d1c01942
source_path: channels/slack.md
workflow: 15
---
# Slack
Durum: Slack uygulama entegrasyonları üzerinden DM'ler ve kanallar için üretime hazır. Varsayılan mod Socket Mode'dur; HTTP Request URLs de desteklenir.
Durum: Slack uygulama entegrasyonları aracılığıyla DM'ler + kanallar için üretime hazır. Varsayılan mod Socket Mode'dur; HTTP Request URL'leri de desteklenir.
<CardGroup cols={3}>
<Card title="Eşleştirme" icon="link" href="/tr/channels/pairing">
@ -24,7 +24,7 @@ Durum: Slack uygulama entegrasyonları üzerinden DM'ler ve kanallar için üret
Yerel komut davranışı ve komut kataloğu.
</Card>
<Card title="Kanal sorun giderme" icon="wrench" href="/tr/channels/troubleshooting">
Kanallar arası tanılama ve onarım kılavuzları.
Kanallar arası tanılama ve onarım playbook'ları.
</Card>
</CardGroup>
@ -57,7 +57,7 @@ Durum: Slack uygulama entegrasyonları üzerinden DM'ler ve kanallar için üret
}
```
Ortam değişkeni yedeği (yalnızca varsayılan hesap):
Ortam değişkeni geri dönüşü (yalnızca varsayılan hesap):
```bash
SLACK_APP_TOKEN=xapp-...
@ -77,7 +77,7 @@ openclaw gateway
</Tab>
<Tab title="HTTP Request URLs">
<Tab title="HTTP Request URL'leri">
<Steps>
<Step title="Yeni bir Slack uygulaması oluşturun">
Slack uygulama ayarlarında **[Create New App](https://api.slack.com/apps/new)** düğmesine basın:
@ -108,7 +108,7 @@ openclaw gateway
<Note>
Çok hesaplı HTTP için benzersiz webhook yolları kullanın
Kayıtların çakışmaması için her hesaba farklı bir `webhookPath` verin (varsayılan `/slack/events`).
Kayıtların çakışmaması için her hesaba ayrı bir `webhookPath` (varsayılan `/slack/events`) verin.
</Note>
</Step>
@ -134,7 +134,7 @@ openclaw gateway
{
"display_information": {
"name": "OpenClaw",
"description": "Slack connector for OpenClaw"
"description": "OpenClaw için Slack bağlayıcısı"
},
"features": {
"bot_user": {
@ -148,7 +148,7 @@ openclaw gateway
"slash_commands": [
{
"command": "/openclaw",
"description": "Send a message to OpenClaw",
"description": "OpenClaw'a mesaj gönder",
"should_escape": false
}
]
@ -205,13 +205,13 @@ openclaw gateway
</Tab>
<Tab title="HTTP Request URLs">
<Tab title="HTTP Request URL'leri">
```json
{
"display_information": {
"name": "OpenClaw",
"description": "Slack connector for OpenClaw"
"description": "OpenClaw için Slack bağlayıcısı"
},
"features": {
"bot_user": {
@ -225,7 +225,7 @@ openclaw gateway
"slash_commands": [
{
"command": "/openclaw",
"description": "Send a message to OpenClaw",
"description": "OpenClaw'a mesaj gönder",
"should_escape": false,
"url": "https://gateway-host.example.com/slack/events"
}
@ -296,7 +296,7 @@ openclaw gateway
Bir emoji simgesi kullanıyorsanız Slack `:emoji_name:` sözdizimini bekler.
</Accordion>
<Accordion title="İsteğe bağlı kullanıcı belirteci kapsamları (okuma işlemleri)">
<Accordion title="İsteğe bağlı kullanıcı token kapsamları (okuma işlemleri)">
`channels.slack.userToken` yapılandırırsanız tipik okuma kapsamları şunlardır:
- `channels:history`, `groups:history`, `im:history`, `mpim:history`
@ -305,20 +305,20 @@ openclaw gateway
- `reactions:read`
- `pins:read`
- `emoji:read`
- `search:read` (Slack arama okumalarına bağımlıysanız)
- `search:read` (Slack arama okumalarına bağlıysanız)
</Accordion>
</AccordionGroup>
## Belirteç modeli
## Token modeli
- Socket Mode için `botToken` + `appToken` gereklidir.
- HTTP modu `botToken` + `signingSecret` gerektirir.
- `botToken`, `appToken`, `signingSecret` ve `userToken`, düz metin
- `botToken`, `appToken`, `signingSecret` ve `userToken` düz metin
dizeleri veya SecretRef nesneleri kabul eder.
- Yapılandırma belirteçleri ortam değişkeni yedeğini geçersiz kılar.
- `SLACK_BOT_TOKEN` / `SLACK_APP_TOKEN` ortam değişkeni yedeği yalnızca varsayılan hesaba uygulanır.
- `userToken` (`xoxp-...`) yalnızca yapılandırmadadır (ortam değişkeni yedeği yoktur) ve varsayılan olarak salt okunur davranış kullanır (`userTokenReadOnly: true`).
- Yapılandırma token'ları ortam değişkeni geri dönüşünü geçersiz kılar.
- `SLACK_BOT_TOKEN` / `SLACK_APP_TOKEN` ortam değişkeni geri dönüşü yalnızca varsayılan hesap için geçerlidir.
- `userToken` (`xoxp-...`) yalnızca yapılandırmadandır (ortam değişkeni geri dönüşü yoktur) ve varsayılan olarak salt okunur davranış kullanır (`userTokenReadOnly: true`).
Durum anlık görüntüsü davranışı:
@ -326,20 +326,20 @@ Durum anlık görüntüsü davranışı:
alanlarını izler (`botToken`, `appToken`, `signingSecret`, `userToken`).
- Durum `available`, `configured_unavailable` veya `missing` olabilir.
- `configured_unavailable`, hesabın SecretRef
veya başka bir satır içi olmayan gizli kaynak üzerinden yapılandırıldığı,
ancak mevcut komut/çalışma zamanı yolunun gerçek değeri çözemediği anlamına gelir.
veya satır içi olmayan başka bir gizli kaynak üzerinden yapılandırıldığı, ancak mevcut komut/çalışma zamanı yolunun
gerçek değeri çözemediği anlamına gelir.
- HTTP modunda `signingSecretStatus` dahil edilir; Socket Mode'da
gereken ikili `botTokenStatus` + `appTokenStatus` olur.
gerekli çift `botTokenStatus` + `appTokenStatus` olur.
<Tip>
Eylemler/dizin okumaları için, yapılandırılmışsa kullanıcı belirteci tercih edilebilir. Yazmalar için bot belirteci tercih edilmeye devam eder; kullanıcı belirteciyle yazmaya yalnızca `userTokenReadOnly: false` olduğunda ve bot belirteci kullanılamadığında izin verilir.
Eylemler/dizin okumaları için, yapılandırılmışsa user token tercih edilebilir. Yazmalar için bot token tercih edilmeye devam eder; user-token ile yazmalara yalnızca `userTokenReadOnly: false` olduğunda ve bot token kullanılamadığında izin verilir.
</Tip>
## Eylemler ve geçitler
Slack eylemleri `channels.slack.actions.*` ile kontrol edilir.
Slack eylemleri `channels.slack.actions.*` tarafından denetlenir.
Geçerli Slack araçlarında kullanılabilir eylem grupları:
Geçerli Slack araçlarında kullanılabilen eylem grupları:
| Grup | Varsayılan |
| ---------- | ------- |
@ -349,31 +349,31 @@ Geçerli Slack araçlarında kullanılabilir eylem grupları:
| memberInfo | etkin |
| emojiList | etkin |
Geçerli Slack mesaj eylemleri arasında `send`, `upload-file`, `download-file`, `read`, `edit`, `delete`, `pin`, `unpin`, `list-pins`, `member-info` ve `emoji-list` bulunur.
Geçerli Slack mesaj eylemleri `send`, `upload-file`, `download-file`, `read`, `edit`, `delete`, `pin`, `unpin`, `list-pins`, `member-info` ve `emoji-list` içerir.
## Erişim kontrolü ve yönlendirme
## Erişim denetimi ve yönlendirme
<Tabs>
<Tab title="DM ilkesi">
`channels.slack.dmPolicy`, DM erişimini kontrol eder (eski: `channels.slack.dm.policy`):
`channels.slack.dmPolicy`, DM erişimini denetler (eski: `channels.slack.dm.policy`):
- `pairing` (varsayılan)
- `allowlist`
- `open` (`channels.slack.allowFrom` içinde `"*"` bulunmasını gerektirir; eski: `channels.slack.dm.allowFrom`)
- `open` (`channels.slack.allowFrom` içine `"*"` eklenmesini gerektirir; eski: `channels.slack.dm.allowFrom`)
- `disabled`
DM işaretleri:
DM bayrakları:
- `dm.enabled` (varsayılan true)
- `channels.slack.allowFrom` (tercih edilen)
- `dm.allowFrom` (eski)
- `dm.groupEnabled` (grup DM'leri varsayılan olarak false)
- `dm.groupEnabled` (grup DM'leri varsayılan false)
- `dm.groupChannels` (isteğe bağlı MPIM izin listesi)
Çok hesaplı öncelik:
Çok hesaplı öncelik sırası:
- `channels.slack.accounts.default.allowFrom` yalnızca `default` hesabına uygulanır.
- Adlandırılmış hesaplar, kendi `allowFrom` değerleri ayarlanmamışsa `channels.slack.allowFrom` değerini devralır.
- Adlandırılmış hesaplar, kendi `allowFrom` değerleri ayarlı değilse `channels.slack.allowFrom` değerini devralır.
- Adlandırılmış hesaplar `channels.slack.accounts.default.allowFrom` değerini devralmaz.
DM'lerde eşleştirme `openclaw pairing approve slack <code>` kullanır.
@ -381,7 +381,7 @@ Geçerli Slack mesaj eylemleri arasında `send`, `upload-file`, `download-file`,
</Tab>
<Tab title="Kanal ilkesi">
`channels.slack.groupPolicy`, kanal işlemeyi kontrol eder:
`channels.slack.groupPolicy`, kanal işlemesini denetler:
- `open`
- `allowlist`
@ -389,26 +389,26 @@ Geçerli Slack mesaj eylemleri arasında `send`, `upload-file`, `download-file`,
Kanal izin listesi `channels.slack.channels` altında bulunur ve kararlı kanal kimlikleri kullanmalıdır.
Çalışma zamanı notu: `channels.slack` tamamen eksikse (yalnızca ortam değişkenli kurulum), çalışma zamanı `groupPolicy="allowlist"` değerine geri döner ve bir uyarı kaydeder (`channels.defaults.groupPolicy` ayarlanmış olsa bile).
Çalışma zamanı notu: `channels.slack` tamamen yoksa (yalnızca ortam değişkeni kurulumu), çalışma zamanı `groupPolicy="allowlist"` değerine geri döner ve bir uyarı günlüğe yazar (`channels.defaults.groupPolicy` ayarlı olsa bile).
Ad/kimlik çözümleme:
- kanal izin listesi girişleri ve DM izin listesi girişleri, belirteç erişimi izin verdiğinde başlangıçta çözümlenir
- çözümlenmemiş kanal adı girişleri yapılandırıldığı gibi tutulur ancak varsayılan olarak yönlendirme için yok sayılır
- kanal izin listesi girdileri ve DM izin listesi girdileri, token erişimi izin verdiğinde başlangıçta çözülür
- çözümlenmemiş kanal adı girdileri yapılandırıldığı gibi tutulur ancak varsayılan olarak yönlendirme için yok sayılır
- gelen yetkilendirme ve kanal yönlendirme varsayılan olarak önce kimlik kullanır; doğrudan kullanıcı adı/slug eşleştirmesi için `channels.slack.dangerouslyAllowNameMatching: true` gerekir
</Tab>
<Tab title="Bahsetmeler ve kanal kullanıcıları">
Kanal mesajları varsayılan olarak bahsetme geçidiyle korunur.
Kanal mesajları varsayılan olarak bahsetme kapılıdır.
Bahsetme kaynakları:
- açık uygulama bahsetmesi (`<@botId>`)
- bahsetme regex desenleri (`agents.list[].groupChat.mentionPatterns`, yedek olarak `messages.groupChat.mentionPatterns`)
- örtük botta yanıt dizisi davranışı (`thread.requireExplicitMention` `true` olduğunda devre dışıdır)
- bahsetme regex desenleri (`agents.list[].groupChat.mentionPatterns`, geri dönüş `messages.groupChat.mentionPatterns`)
- örtük botta-yanıt iş parçacığı davranışı (`thread.requireExplicitMention` `true` olduğunda devre dışı bırakılır)
Kanal başına kontroller (`channels.slack.channels.<id>`; adlar yalnızca başlangıç çözümlemesi veya `dangerouslyAllowNameMatching` ile):
Kanal başına denetimler (`channels.slack.channels.<id>`; adlar yalnızca başlangıç çözümlemesi veya `dangerouslyAllowNameMatching` ile):
- `requireMention`
- `users` (izin listesi)
@ -417,35 +417,35 @@ Geçerli Slack mesaj eylemleri arasında `send`, `upload-file`, `download-file`,
- `systemPrompt`
- `tools`, `toolsBySender`
- `toolsBySender` anahtar biçimi: `id:`, `e164:`, `username:`, `name:` veya `"*"` joker karakteri
(eski ön eksiz anahtarlar yine de yalnızca `id:` ile eşlenir)
(eski öneksiz anahtarlar yine de yalnızca `id:` ile eşlenir)
</Tab>
</Tabs>
## Diziler, oturumlar ve yanıt etiketleri
## İş parçacıkları, oturumlar ve yanıt etiketleri
- DM'ler `direct` olarak; kanallar `channel` olarak; MPIM'ler `group` olarak yönlendirilir.
- DM'ler `direct`; kanallar `channel`; MPIM'ler `group` olarak yönlendirilir.
- Varsayılan `session.dmScope=main` ile Slack DM'leri ajan ana oturumunda birleştirilir.
- Kanal oturumları: `agent:<agentId>:slack:channel:<channelId>`.
- Dizi yanıtları, uygun olduğunda dizi oturumu sonekleri (`:thread:<threadTs>`) oluşturabilir.
- `channels.slack.thread.historyScope` varsayılanı `thread`; `thread.inheritParent` varsayılanı `false` değeridir.
- `channels.slack.thread.initialHistoryLimit`, yeni bir dizi oturumu başladığında kaç mevcut dizi mesajının alınacağını kontrol eder (varsayılan `20`; devre dışı bırakmak için `0` ayarlayın).
- `channels.slack.thread.requireExplicitMention` (varsayılan `false`): `true` olduğunda örtük dizi bahsetmelerini bastırır; böylece bot, diziler içinde yalnızca açık `@bot` bahsetmelerine yanıt verir, bot dizide zaten yer almış olsa bile. Bu olmadan, botun katıldığı bir dizideki yanıtlar `requireMention` geçidini atlar.
- İş parçacığı yanıtları, uygun olduğunda iş parçacığı oturum son ekleri (`:thread:<threadTs>`) oluşturabilir.
- `channels.slack.thread.historyScope` varsayılanı `thread`; `thread.inheritParent` varsayılanı `false`.
- `channels.slack.thread.initialHistoryLimit`, yeni bir iş parçacığı oturumu başladığında kaç mevcut iş parçacığı mesajının getirileceğini denetler (varsayılan `20`; devre dışı bırakmak için `0` ayarlayın).
- `channels.slack.thread.requireExplicitMention` (varsayılan `false`): `true` olduğunda, örtük iş parçacığı bahsetmelerini bastırır; böylece bot, iş parçacığına daha önce katılmış olsa bile yalnızca iş parçacıkları içindeki açık `@bot` bahsetmelerine yanıt verir. Bu ayar olmadan, botun katıldığı bir iş parçacığındaki yanıtlar `requireMention` kapısını atlar.
Yanıt dizileme denetimleri:
Yanıt iş parçacığı denetimleri:
- `channels.slack.replyToMode`: `off|first|all|batched` (varsayılan `off`)
- `channels.slack.replyToModeByChatType`: `direct|group|channel` başına
- doğrudan sohbetler için eski yedek: `channels.slack.dm.replyToMode`
- `channels.slack.replyToModeByChatType`: her `direct|group|channel` için
- doğrudan sohbetler için eski geri dönüş: `channels.slack.dm.replyToMode`
Elle yanıt etiketleri desteklenir:
- `[[reply_to_current]]`
- `[[reply_to:<id>]]`
Not: `replyToMode="off"`, açık `[[reply_to_*]]` etiketleri dahil Slack'teki **tüm** yanıt dizilemesini devre dışı bırakır. Bu, açık etiketlerin `"off"` modunda yine de dikkate alındığı Telegram'dan farklıdır. Fark, platformların dizi modellerini yansıtır: Slack dizileri mesajları kanaldan gizlerken Telegram yanıtları ana sohbet akışında görünür kalır.
Not: `replyToMode="off"`, açık `[[reply_to_*]]` etiketleri dahil olmak üzere Slack'teki **tüm** yanıt iş parçacıklarını devre dışı bırakır. Bu, açık etiketlerin `"off"` modunda yine de dikkate alındığı Telegram'dan farklıdır. Bu fark, platform iş parçacığı modellerini yansıtır: Slack iş parçacıkları mesajları kanaldan gizlerken Telegram yanıtları ana sohbet akışında görünür kalır.
## Onay reaksiyonları
## Ack reaksiyonları
`ackReaction`, OpenClaw gelen bir mesajı işlerken bir onay emojisi gönderir.
@ -454,27 +454,29 @@ Not: `replyToMode="off"`, açık `[[reply_to_*]]` etiketleri dahil Slack'teki **
- `channels.slack.accounts.<accountId>.ackReaction`
- `channels.slack.ackReaction`
- `messages.ackReaction`
- ajan kimliği emoji yedeği (`agents.list[].identity.emoji`, yoksa "👀")
- ajan kimliği emoji geri dönüşü (`agents.list[].identity.emoji`, aksi halde "👀")
Notlar:
- Slack kısa kodlar bekler (örneğin `"eyes"`).
- Slack hesabı veya genel olarak reaksiyonu devre dışı bırakmak için `""` kullanın.
- Slack hesabı için veya genel olarak reaksiyonu devre dışı bırakmak için `""` kullanın.
## Metin akışı
`channels.slack.streaming`, canlı önizleme davranışını kontrol eder:
`channels.slack.streaming`, canlı önizleme davranışını denetler:
- `off`: canlı önizleme akışını devre dışı bırakır.
- `partial` (varsayılan): önizleme metnini en son kısmi çıktıyla değiştirir.
- `block`: parçalı önizleme güncellemeleri ekler.
- `progress`: üretim sırasında ilerleme durumu metni gösterir, ardından son metni gönderir.
- `partial` (varsayılan): önizleme metnini en son kısmi çıktı ile değiştirir.
- `block`: parçalı önizleme güncellemelerini ekler.
- `progress`: oluşturma sırasında ilerleme durumu metni gösterir, ardından son metni gönderir.
`channels.slack.nativeStreaming`, `streaming` değeri `partial` olduğunda Slack yerel metin akışını kontrol eder (varsayılan: `true`).
`channels.slack.streaming.nativeTransport`, `channels.slack.streaming.mode` `partial` olduğunda Slack yerel metin akışını denetler (varsayılan: `true`).
- Yerel metin akışının görünmesi için bir yanıt dizisi kullanılabilir olmalıdır. Dizi seçimi yine de `replyToMode` değerini izler. Böyle bir dizi yoksa normal taslak önizleme kullanılır.
- Medya ve metin dışı yükler normal teslimata geri döner.
- Akış yanıt ortasında başarısız olursa OpenClaw kalan yükler için normal teslimata geri döner.
- Yerel metin akışı ve Slack assistant iş parçacığı durumunun görünmesi için bir yanıt iş parçacığı kullanılabilir olmalıdır. İş parçacığı seçimi yine `replyToMode` değerini izler.
- Kanal ve grup sohbeti kökleri, yerel akış kullanılamadığında yine normal taslak önizlemeyi kullanabilir.
- Üst düzey Slack DM'leri varsayılan olarak iş parçacığı dışında kalır; bu nedenle iş parçacığı tarzı önizlemeyi göstermezler; orada görünür ilerleme istiyorsanız iş parçacığı yanıtları veya `typingReaction` kullanın.
- Medya ve metin dışı payload'lar normal teslimata geri döner.
- Akış yanıtın ortasında başarısız olursa OpenClaw kalan payload'lar için normal teslimata geri döner.
Slack yerel metin akışı yerine taslak önizleme kullanın:
@ -482,8 +484,10 @@ Slack yerel metin akışı yerine taslak önizleme kullanın:
{
channels: {
slack: {
streaming: "partial",
nativeStreaming: false,
streaming: {
mode: "partial",
nativeTransport: false,
},
},
},
}
@ -491,12 +495,13 @@ Slack yerel metin akışı yerine taslak önizleme kullanın:
Eski anahtarlar:
- `channels.slack.streamMode` (`replace | status_final | append`) otomatik olarak `channels.slack.streaming` değerine taşınır.
- boolean `channels.slack.streaming`, otomatik olarak `channels.slack.nativeStreaming` değerine taşınır.
- `channels.slack.streamMode` (`replace | status_final | append`) otomatik olarak `channels.slack.streaming.mode` değerine geçirilir.
- boolean `channels.slack.streaming`, otomatik olarak `channels.slack.streaming.mode` ve `channels.slack.streaming.nativeTransport` değerlerine geçirilir.
- eski `channels.slack.nativeStreaming`, otomatik olarak `channels.slack.streaming.nativeTransport` değerine geçirilir.
## Yazıyor reaksiyonu yedeği
## Yazıyor reaksiyonu geri dönüşü
`typingReaction`, OpenClaw bir yanıtı işlerken gelen Slack mesajına geçici bir reaksiyon ekler, ardından çalıştırma bittiğinde bunu kaldırır. Bu en çok, varsayılan "is typing..." durum göstergesini kullanan dizi yanıtları dışında faydalıdır.
`typingReaction`, OpenClaw bir yanıtı işlerken gelen Slack mesajına geçici bir reaksiyon ekler, ardından çalışma bittiğinde bunu kaldırır. Bu en çok, varsayılan `"is typing..."` durum göstergesini kullanan iş parçacığı yanıtları dışında yararlıdır.
Çözümleme sırası:
@ -506,23 +511,23 @@ Eski anahtarlar:
Notlar:
- Slack kısa kodlar bekler (örneğin `"hourglass_flowing_sand"`).
- Reaksiyon en iyi çabayla uygulanır ve yanıt veya hata yolu tamamlandıktan sonra temizleme otomatik olarak denenir.
- Reaksiyon best-effort olarak uygulanır ve yanıt veya hata yolu tamamlandıktan sonra temizleme otomatik olarak denenir.
## Medya, parçalara ayırma ve teslimat
## Medya, parçalama ve teslimat
<AccordionGroup>
<Accordion title="Gelen ekler">
Slack dosya ekleri, Slack tarafından barındırılan özel URL'lerden (belirteç kimlik doğrulamalı istek akışı) indirilir ve alma başarılı olduğunda ve boyut sınırları izin verdiğinde medya deposuna yazılır.
Slack dosya ekleri, Slack tarafından barındırılan özel URL'lerden (token ile kimlik doğrulamalı istek akışı) indirilir ve getirme başarılı olduğunda ve boyut sınırları izin verdiğinde medya deposuna yazılır.
Çalışma zamanındaki gelen boyut sınırı, `channels.slack.mediaMaxMb` ile geçersiz kılınmadıkça varsayılan olarak `20MB` değeridir.
Çalışma zamanı gelen boyut üst sınırı, `channels.slack.mediaMaxMb` ile geçersiz kılınmadıkça varsayılan olarak `20MB` olur.
</Accordion>
<Accordion title="Giden metin ve dosyalar">
- metin parçaları `channels.slack.textChunkLimit` kullanır (varsayılan 4000)
- `channels.slack.chunkMode="newline"` paragraf öncelikli bölmeyi etkinleştirir
- dosya gönderimleri Slack yükleme API'lerini kullanır ve dizi yanıtlarını (`thread_ts`) içerebilir
- giden medya sınırı, yapılandırılmışsa `channels.slack.mediaMaxMb` değerini izler; aksi halde kanal gönderimleri medya işlem hattından MIME türü varsayılanlarını kullanır
- dosya gönderimleri Slack yükleme API'lerini kullanır ve iş parçacığı yanıtlarını (`thread_ts`) içerebilir
- giden medya üst sınırı, yapılandırılmışsa `channels.slack.mediaMaxMb` değerini izler; aksi halde kanal gönderimleri medya işlem hattındaki MIME türü varsayılanlarını kullanır
</Accordion>
<Accordion title="Teslimat hedefleri">
@ -531,26 +536,26 @@ Notlar:
- DM'ler için `user:<id>`
- kanallar için `channel:<id>`
Slack DM'leri, kullanıcı hedeflerine gönderim yapılırken Slack konuşma API'leri aracılığıyla açılır.
Slack DM'leri, kullanıcı hedeflerine gönderim yaparken Slack konuşma API'leri aracılığıyla açılır.
</Accordion>
</AccordionGroup>
## Komutlar ve slash davranışı
- Yerel komut otomatik modu Slack için **kapalıdır** (`commands.native: "auto"` Slack yerel komutlarını etkinleştirmez).
- Yerel Slack komut işleyicilerini `channels.slack.commands.native: true` (veya genel `commands.native: true`) ile etkinleştirin.
- Yerel komutlar etkinleştirildiğinde, eşleşen slash komutlarını Slack'te (`/<command>` adlarıyla) kaydedin; tek istisna:
- durum komutu için `/agentstatus` kaydedin (Slack `/status` komutunu ayırır)
- Yerel komutlar etkin değilse, `channels.slack.slashCommand` aracılığıyla tek bir yapılandırılmış slash komutu çalıştırabilirsiniz.
- Yerel argüman menüleri artık işleme stratejilerini uyarlıyor:
- Yerel komut otomatik modu Slack için **kapalıdır** (`commands.native: "auto"`, Slack yerel komutlarını etkinleştirmez).
- `channels.slack.commands.native: true` (veya genel `commands.native: true`) ile yerel Slack komut işleyicilerini etkinleştirin.
- Yerel komutlar etkinleştirildiğinde, eşleşen slash komutlarını Slack'te (`/<command>` adları) kaydedin; bir istisna vardır:
- durum komutu için `/agentstatus` kaydedin (Slack `/status` değerini ayırır)
- Yerel komutlar etkin değilse, tek bir yapılandırılmış slash komutunu `channels.slack.slashCommand` aracılığıyla çalıştırabilirsiniz.
- Yerel arg menüleri artık oluşturma stratejilerini uyarlıyor:
- 5 seçeneğe kadar: düğme blokları
- 6-100 seçenek: statik seçim menüsü
- 100'den fazla seçenek: etkileşim seçenek işleyicileri mevcut olduğunda eşzamansız seçenek filtrelemeli harici seçim
- kodlanmış seçenek değerleri Slack sınırlarını aşarsa akış düğmelere geri döner
- Uzun seçenek yükleri için Slash komutu argüman menüleri, seçilen değeri göndermeden önce bir onay iletişim kutusu kullanır.
- Uzun seçenek payload'ları için Slash komutu argüman menüleri, seçilen değeri göndermeden önce bir onay iletişim kutusu kullanır.
Varsayılan slash komutu ayarları:
Varsayılan slash komut ayarları:
- `enabled: false`
- `name: "openclaw"`
@ -565,7 +570,7 @@ ve yine de komut yürütmesini hedef konuşma oturumuna göre yönlendirir (`Com
## Etkileşimli yanıtlar
Slack, ajan tarafından yazılmış etkileşimli yanıt denetimlerini işleyebilir, ancak bu özellik varsayılan olarak devre dışıdır.
Slack, ajan tarafından yazılmış etkileşimli yanıt denetimlerini oluşturabilir, ancak bu özellik varsayılan olarak devre dışıdır.
Bunu genel olarak etkinleştirin:
@ -599,44 +604,44 @@ Veya yalnızca bir Slack hesabı için etkinleştirin:
}
```
Etkinleştirildiğinde, ajanlar yalnızca Slack'e özel yanıt yönergeleri üretebilir:
Etkinleştirildiğinde ajanlar yalnızca Slack'e özgü yanıt yönergeleri üretebilir:
- `[[slack_buttons: Approve:approve, Reject:reject]]`
- `[[slack_select: Choose a target | Canary:canary, Production:production]]`
Bu yönergeler Slack Block Kit içine derlenir ve tıklamaları veya seçimleri mevcut Slack etkileşim olay yolu üzerinden geri yönlendirir.
Bu yönergeler Slack Block Kit'e derlenir ve tıklamaları veya seçimleri mevcut Slack etkileşim olayı yolu üzerinden geri yönlendirir.
Notlar:
- Bu, Slack'e özgü bir kullanıcı arayüzüdür. Diğer kanallar, Slack Block Kit yönergelerini kendi düğme sistemlerine çevirmez.
- Etkileşimli geri çağrı değerleri, ham ajan tarafından yazılmış değerler değil, OpenClaw tarafından oluşturulmuş opak belirteçlerdir.
- Üretilen etkileşimli bloklar Slack Block Kit sınırlarını aşarsa OpenClaw geçersiz bir blocks yükü göndermek yerine özgün metin yanıtına geri döner.
- Bu, Slack'e özgü bir kullanıcı arayüzüdür. Diğer kanallar Slack Block Kit yönergelerini kendi düğme sistemlerine çevirmez.
- Etkileşimli callback değerleri, ajan tarafından yazılmış ham değerler değil, OpenClaw tarafından üretilmiş opak token'lardır.
- Üretilen etkileşimli bloklar Slack Block Kit sınırlarını aşarsa OpenClaw geçersiz bir blocks payload'ı göndermek yerine özgün metin yanıtına geri döner.
## Slack'te exec onayları
Slack, Web UI veya terminale geri dönmek yerine, etkileşimli düğmeler ve etkileşimlerle yerel bir onay istemcisi olarak çalışabilir.
Slack, Web UI veya terminale geri dönmek yerine etkileşimli düğmeler ve etkileşimlerle yerel bir onay istemcisi olarak davranabilir.
- Exec onayları, yerel DM/kanal yönlendirmesi için `channels.slack.execApprovals.*` kullanır.
- Eklenti onayları, istek zaten Slack'e ulaşıyorsa ve onay kimliği türü `plugin:` ise aynı Slack yerel düğme yüzeyi üzerinden yine çözülebilir.
- Onaylayıcı yetkilendirmesi yine de uygulanır: yalnızca onaylayıcı olarak tanımlanan kullanıcılar Slack üzerinden istekleri onaylayabilir veya reddedebilir.
- İstek zaten Slack'e geliyorsa ve onay kimliği türü `plugin:` ise, plugin onayları yine aynı Slack yerel düğme yüzeyi üzerinden çözümlenebilir.
- Onaylayıcı yetkilendirmesi yine uygulanır: yalnızca onaylayıcı olarak tanımlanan kullanıcılar Slack üzerinden istekleri onaylayabilir veya reddedebilir.
Bu, diğer kanallarla aynı paylaşılan onay düğmesi yüzeyini kullanır. Slack uygulama ayarlarınızda `interactivity` etkinleştirildiğinde, onay istemleri doğrudan konuşma içinde Block Kit düğmeleri olarak işlenir.
Bu düğmeler mevcut olduğunda birincil onay kullanıcı deneyimi bunlar olur; OpenClaw,
araç sonucu sohbet onaylarının kullanılamadığını söylemediği veya tek yol manuel onay olmadığı sürece
yalnızca manuel bir `/approve` komutu eklemelidir.
Bu düğmeler mevcut olduğunda birincil onay kullanıcı deneyimi bunlardır; OpenClaw,
yalnızca araç sonucu sohbet onaylarının kullanılamadığını söylediğinde veya tek yol manuel onaysa
elle bir `/approve` komutu eklemelidir.
Yapılandırma yolu:
- `channels.slack.execApprovals.enabled`
- `channels.slack.execApprovals.approvers` (isteğe bağlı; mümkün olduğunda `commands.ownerAllowFrom` değerine geri döner)
- `channels.slack.execApprovals.approvers` (isteğe bağlıdır; mümkün olduğunda `commands.ownerAllowFrom` değerine geri döner)
- `channels.slack.execApprovals.target` (`dm` | `channel` | `both`, varsayılan: `dm`)
- `agentFilter`, `sessionFilter`
Slack, `enabled` ayarlanmamış veya `"auto"` olduğunda ve en az bir
onaylayıcı çözümlendiğinde yerel exec onaylarını otomatik etkinleştirir. Slack'i yerel onay istemcisi olarak açıkça devre dışı bırakmak için `enabled: false` ayarlayın.
`enabled` ayarsız veya `"auto"` olduğunda ve en az bir
onaylayıcı çözümlendiğinde Slack yerel exec onaylarını otomatik olarak etkinleştirir. Slack'i yerel bir onay istemcisi olarak açıkça devre dışı bırakmak için `enabled: false` ayarlayın.
Onaylayıcılar çözümlendiğinde yerel onayları zorla açmak için `enabled: true` ayarlayın.
ık Slack exec onay yapılandırması olmayan varsayılan davranış:
ık Slack exec onay yapılandırması olmadan varsayılan davranış:
```json5
{
@ -646,8 +651,8 @@ Açık Slack exec onay yapılandırması olmayan varsayılan davranış:
}
```
ık Slack yerel yapılandırması yalnızca onaylayıcıları geçersiz kılmak, filtre eklemek veya
kaynak sohbet teslimatına katılmak istediğinizde gerekir:
ık Slack-yerel yapılandırma yalnızca onaylayıcıları geçersiz kılmak, filtre eklemek veya
kaynak sohbet teslimatını etkinleştirmek istediğinizde gerekir:
```json5
{
@ -663,45 +668,44 @@ kaynak sohbet teslimatına katılmak istediğinizde gerekir:
}
```
Paylaşılan `approvals.exec` yönlendirmesi ayrıdır. Bunu yalnızca exec onay istemleri ayrıca
başka sohbetlere veya açık bant dışı hedeflere yönlendirilmeliyse kullanın. Paylaşılan `approvals.plugin` yönlendirmesi de
ayrıdır; Slack yerel düğmeleri bu istekler zaten
Slack'e ulaşmışsa eklenti onaylarını yine çözebilir.
Paylaşılan `approvals.exec` iletimi ayrıdır. Bunu yalnızca exec onay istemlerinin ayrıca
diğer sohbetlere veya açık bant dışı hedeflere yönlendirilmesi gerekiyorsa kullanın. Paylaşılan `approvals.plugin` iletimi de ayrıdır; bu istekler zaten
Slack'e geliyorsa Slack yerel düğmeleri yine plugin onaylarını çözebilir.
Aynı sohbet içi `/approve`, komutları zaten destekleyen Slack kanalları ve DM'lerinde de çalışır. Tüm onay yönlendirme modeli için [Exec approvals](/tr/tools/exec-approvals) bölümüne bakın.
Aynı sohbette `/approve`, komutları zaten destekleyen Slack kanallarında ve DM'lerde de çalışır. Tam onay iletme modeli için bkz. [Exec approvals](/tr/tools/exec-approvals).
## Olaylar ve operasyonel davranış
- Mesaj düzenlemeleri/silmeleri/dizi yayınları sistem olaylarına eşlenir.
- Mesaj düzenlemeleri/silmeleri/iş parçacığı yayınları sistem olaylarına eşlenir.
- Reaksiyon ekleme/kaldırma olayları sistem olaylarına eşlenir.
- Üye katılma/ayrılma, kanal oluşturma/yeniden adlandırma ve sabitleme ekleme/kaldırma olayları sistem olaylarına eşlenir.
- `channel_id_changed`, `configWrites` etkin olduğunda kanal yapılandırma anahtarlarını taşıyabilir.
- Kanal topic/purpose meta verisi güvenilmeyen bağlam olarak değerlendirilir ve yönlendirme bağlamına enjekte edilebilir.
- Dizi başlatıcısı ve ilk dizi geçmişi bağlam tohumlaması, uygun olduğunda yapılandırılmış gönderici izin listelerine göre filtrelenir.
- Blok eylemleri ve modal etkileşimler, zengin yük alanlarıyla yapılandırılmış `Slack interaction: ...` sistem olayları üretir:
- blok eylemleri: seçilen değerler, etiketler, seçici değerleri ve `workflow_*` meta verisi
- yönlendirilmiş kanal meta verisi ve form girdileriyle modal `view_submission` ve `view_closed` olayları
- Kanal konu/amaç meta verileri güvenilmeyen bağlam olarak değerlendirilir ve yönlendirme bağlamına enjekte edilebilir.
- İş parçacığı başlatıcı ve ilk iş parçacığı geçmişi bağlam tohumlama, uygun olduğunda yapılandırılmış gönderici izin listelerine göre filtrelenir.
- Blok eylemleri ve modal etkileşimler, zengin payload alanlarıyla yapılandırılmış `Slack interaction: ...` sistem olayları üretir:
- blok eylemleri: seçilen değerler, etiketler, picker değerleri ve `workflow_*` meta verileri
- yönlendirilmiş kanal meta verileri ve form girdileriyle modal `view_submission` ve `view_closed` olayları
## Yapılandırma başvurusu işaretçileri
## Yapılandırma referansı işaretçileri
Birincil başvuru:
Birincil referans:
- [Configuration reference - Slack](/tr/gateway/configuration-reference#slack)
- [Yapılandırma referansı - Slack](/tr/gateway/configuration-reference#slack)
Yüksek sinyalli Slack alanları:
- mod/kimlik doğrulama: `mode`, `botToken`, `appToken`, `signingSecret`, `webhookPath`, `accounts.*`
- DM erişimi: `dm.enabled`, `dmPolicy`, `allowFrom` (eski: `dm.policy`, `dm.allowFrom`), `dm.groupEnabled`, `dm.groupChannels`
- uyumluluk anahtarı: `dangerouslyAllowNameMatching` (son çare; gerekmedikçe kapalı tutun)
- uyumluluk anahtarı: `dangerouslyAllowNameMatching` (acil durum; gerekmedikçe kapalı tutun)
- kanal erişimi: `groupPolicy`, `channels.*`, `channels.*.users`, `channels.*.requireMention`
- dizi/geçmiş: `replyToMode`, `replyToModeByChatType`, `thread.*`, `historyLimit`, `dmHistoryLimit`, `dms.*.historyLimit`
- teslimat: `textChunkLimit`, `chunkMode`, `mediaMaxMb`, `streaming`, `nativeStreaming`
- iş parçacığı/geçmiş: `replyToMode`, `replyToModeByChatType`, `thread.*`, `historyLimit`, `dmHistoryLimit`, `dms.*.historyLimit`
- teslimat: `textChunkLimit`, `chunkMode`, `mediaMaxMb`, `streaming`, `streaming.nativeTransport`
- işlemler/özellikler: `configWrites`, `commands.native`, `slashCommand.*`, `actions.*`, `userToken`, `userTokenReadOnly`
## Sorun giderme
<AccordionGroup>
<Accordion title="Kanallarda yanıt yok">
Sırayla şunları kontrol edin:
Sırayla kontrol edin:
- `groupPolicy`
- kanal izin listesi (`channels.slack.channels`)
@ -731,26 +735,26 @@ openclaw pairing list slack
</Accordion>
<Accordion title="Socket mode bağlanmıyor">
Slack uygulama ayarlarında bot + uygulama belirteçlerini ve Socket Mode etkinliğini doğrulayın.
<Accordion title="Socket modu bağlanmıyor">
Bot + uygulama token'larını ve Slack uygulama ayarlarındaki Socket Mode etkinliğini doğrulayın.
`openclaw channels status --probe --json`, `botTokenStatus` veya
`appTokenStatus: "configured_unavailable"` gösteriyorsa, Slack hesabı
`appTokenStatus: "configured_unavailable"` gösteriyorsa Slack hesabı
yapılandırılmıştır ancak mevcut çalışma zamanı SecretRef destekli
değeri çözememiştir.
</Accordion>
<Accordion title="HTTP mode olay almıyor">
<Accordion title="HTTP modu olay almıyor">
Şunları doğrulayın:
- signing secret
- webhook yolu
- Slack Request URLs (Events + Interactivity + Slash Commands)
- HTTP hesap başına benzersiz `webhookPath`
- Slack Request URL'leri (Events + Interactivity + Slash Commands)
- HTTP hesabı başına benzersiz `webhookPath`
Hesap anlık görüntülerinde `signingSecretStatus: "configured_unavailable"`
görünüyorsa, HTTP hesabı yapılandırılmıştır ancak mevcut çalışma zamanı
görünüyorsa HTTP hesabı yapılandırılmıştır ancak mevcut çalışma zamanı
SecretRef destekli signing secret değerini çözememiştir.
</Accordion>
@ -758,10 +762,10 @@ openclaw pairing list slack
<Accordion title="Yerel/slash komutları çalışmıyor">
Neyi amaçladığınızı doğrulayın:
- Slack'te eşleşen slash komutları kaydedilmiş yerel komut modu (`channels.slack.commands.native: true`)
- Slack'te kayıtlı eşleşen slash komutlarıyla yerel komut modu (`channels.slack.commands.native: true`)
- veya tek slash komutu modu (`channels.slack.slashCommand.enabled: true`)
Ayrıca `commands.useAccessGroups` ile kanal/kullanıcı izin listelerini de kontrol edin.
Ayrıca `commands.useAccessGroups` ve kanal/kullanıcı izin listelerini kontrol edin.
</Accordion>
</AccordionGroup>

View File

@ -1,104 +1,164 @@
---
read_when:
- Belleğin nasıl çalıştığını anlamak istiyorsunuz
- Hangi bellek dosyalarına yazılması gerektiğini öğrenmek istiyorsunuz
summary: OpenClawun oturumlar arasında bir şeyleri nasıl hatırladığı
- Hangi bellek dosyalarını yazmanız gerektiğini öğrenmek istiyorsunuz
summary: OpenClaw'un oturumlar arasında şeyleri nasıl hatırladığı
title: Belleğe Genel Bakış
x-i18n:
generated_at: "2026-04-06T03:06:37Z"
generated_at: "2026-04-08T06:00:52Z"
model: gpt-5.4
provider: openai
source_hash: d19d4fa9c4b3232b7a97f7a382311d2a375b562040de15e9fe4a0b1990b825e7
source_hash: 3bb8552341b0b651609edaaae826a22fdc535d240aed4fad4af4b069454004af
source_path: concepts/memory.md
workflow: 15
---
# Belleğe Genel Bakış
OpenClaw, aracınızın çalışma alanında **düz Markdown dosyaları** yazarak bir şeyleri hatırlar. Model yalnızca diske kaydedilenleri "hatırlar" -- gizli durum yoktur.
OpenClaw, aracı workspace'inizde **düz Markdown dosyaları** yazarak şeyleri
hatırlar. Model yalnızca diske kaydedilenleri "hatırlar" -- gizli bir durum
yoktur.
## Nasıl çalışır
Aracınızın bellekle ilgili üç dosyası vardır:
- **`MEMORY.md`** -- uzun vadeli bellek. Kalıcı gerçekler, tercihler ve kararlar. Her DM oturumunun başında yüklenir.
- **`memory/YYYY-MM-DD.md`** -- günlük notlar. Akan bağlam ve gözlemler. Bugünün ve dünkü notlar otomatik olarak yüklenir.
- **`DREAMS.md`** (deneysel, isteğe bağlı) -- insan incelemesi için Dream Diary ve dreaming sweep özetleri.
- **`MEMORY.md`** -- uzun vadeli bellek. Kalıcı gerçekler, tercihler ve
kararlar. Her DM oturumunun başında yüklenir.
- **`memory/YYYY-MM-DD.md`** -- günlük notlar. Devam eden bağlam ve gözlemler.
Bugünün ve dünkü notlar otomatik olarak yüklenir.
- **`DREAMS.md`** (deneysel, isteğe bağlı) -- insan incelemesi için Dream Diary
ve dreaming sweep özetleri.
Bu dosyalar araç çalışma alanında bulunur (varsayılan `~/.openclaw/workspace`).
Bu dosyalar aracının workspace'inde bulunur (varsayılan olarak `~/.openclaw/workspace`).
<Tip>
Aracınızın bir şeyi hatırlamasını istiyorsanız, ona söylemeniz yeterlidir: "TypeScript tercih ettiğimi hatırla." Uygun dosyaya yazacaktır.
Aracınızın bir şeyi hatırlamasını istiyorsanız, ona söylemeniz yeterlidir: "Benim
TypeScript'i tercih ettiğimi hatırla." Bunu uygun dosyaya yazar.
</Tip>
## Bellek araçları
Aracının bellekle çalışmak için iki aracı vardır:
- **`memory_search`** -- ifade biçimi asılinden farklı olsa bile, anlamsal arama kullanarak ilgili notları bulur.
- **`memory_search`** -- ifade biçimi orijinalden farklı olsa bile, anlamsal
arama kullanarak ilgili notları bulur.
- **`memory_get`** -- belirli bir bellek dosyasını veya satır aralığını okur.
Her iki araç da etkin bellek plugini tarafından sağlanır (varsayılan: `memory-core`).
Bu araçların ikisi de etkin bellek plugin'i tarafından sağlanır (varsayılan: `memory-core`).
## Memory Wiki yardımcı plugin'i
Kalıcı belleğin yalnızca ham notlar gibi değil, bakımı yapılan bir bilgi tabanı
gibi davranmasını istiyorsanız, paketle gelen `memory-wiki` plugin'ini kullanın.
`memory-wiki`, kalıcı bilgiyi şu özelliklere sahip bir wiki kasasına derler:
- deterministik sayfa yapısı
- yapılandırılmış iddialar ve kanıtlar
- çelişki ve güncellik takibi
- oluşturulmuş panolar
- agent/runtime tüketicileri için derlenmiş özetler
- `wiki_search`, `wiki_get`, `wiki_apply` ve `wiki_lint` gibi wiki'ye özgü araçlar
Etkin bellek plugin'inin yerini almaz. Etkin bellek plugin'i hâlâ geri getirme,
yükseltme ve dreaming işlemlerine sahiptir. `memory-wiki`, bunun yanına
kaynak zenginliğine sahip bir bilgi katmanı ekler.
Bkz. [Memory Wiki](/tr/plugins/memory-wiki).
## Bellek araması
Bir embedding sağlayıcısı yapılandırıldığında, `memory_search` **hibrit arama** kullanır -- vektör benzerliğini (anlamsal anlam) anahtar kelime eşleştirmesiyle (kimlikler ve kod sembolleri gibi tam terimler) birleştirir. Desteklenen herhangi bir sağlayıcı için bir API anahtarınız olduğunda bu özellik kutudan çıktığı gibi çalışır.
Bir embedding sağlayıcısı yapılandırıldığında, `memory_search` **hibrit
arama** kullanır -- vektör benzerliğini (anlamsal anlam) anahtar sözcük
eşleştirmesiyle (kimlikler ve kod sembolleri gibi tam terimler) birleştirir.
Desteklenen herhangi bir sağlayıcı için bir API anahtarınız olduğunda bu kutudan
çıktığı gibi çalışır.
<Info>
OpenClaw, kullanılabilir API anahtarlarından embedding sağlayıcınızı otomatik algılar. Yapılandırılmış bir OpenAI, Gemini, Voyage veya Mistral anahtarınız varsa, bellek araması otomatik olarak etkinleştirilir.
OpenClaw, kullanılabilir API anahtarlarından embedding sağlayıcınızı otomatik
olarak algılar. Yapılandırılmış bir OpenAI, Gemini, Voyage veya Mistral
anahtarınız varsa, bellek araması otomatik olarak etkinleştirilir.
</Info>
Aramanın nasıl çalıştığı, ince ayar seçenekleri ve sağlayıcı kurulumu hakkında ayrıntılar için bkz. [Bellek Araması](/tr/concepts/memory-search).
Aramanın nasıl çalıştığı, ayarlama seçenekleri ve sağlayıcı kurulumu hakkında
ayrıntılar için bkz. [Memory Search](/tr/concepts/memory-search).
## Bellek arka uçları
<CardGroup cols={3}>
<Card title="Yerleşik (varsayılan)" icon="database" href="/tr/concepts/memory-builtin">
SQLite tabanlıdır. Anahtar kelime araması, vektör benzerliği ve hibrit arama ile kutudan çıktığı gibi çalışır. Ek bağımlılık yoktur.
SQLite tabanlıdır. Anahtar sözcük araması, vektör benzerliği ve hibrit arama ile
kutudan çıktığı gibi çalışır. Ek bağımlılık gerekmez.
</Card>
<Card title="QMD" icon="search" href="/tr/concepts/memory-qmd">
Yeniden sıralama, sorgu genişletme ve çalışma alanı dışındaki dizinleri indeksleme yeteneğine sahip local-first yan hizmet.
Yeniden sıralama, sorgu genişletme ve workspace dışındaki dizinleri
indeksleyebilme yeteneğine sahip local-first sidecar.
</Card>
<Card title="Honcho" icon="brain" href="/tr/concepts/memory-honcho">
Kullanıcı modelleme, anlamsal arama ve çok aracılı farkındalık ile AI-native oturumlar arası bellek. Plugin kurulumu gerekir.
Kullanıcı modelleme, anlamsal arama ve çoklu agent farkındalığı ile AI-native
oturumlar arası bellek. Plugin kurulumu.
</Card>
</CardGroup>
## Otomatik bellek flush
## Bilgi wiki katmanı
[Compaction](/tr/concepts/compaction) konuşmanızı özetlemeden önce, OpenClaw araca önemli bağlamı bellek dosyalarına kaydetmesini hatırlatan sessiz bir tur çalıştırır. Bu varsayılan olarak açıktır -- herhangi bir şey yapılandırmanız gerekmez.
<CardGroup cols={1}>
<Card title="Memory Wiki" icon="book" href="/tr/plugins/memory-wiki">
Kalıcı belleği iddialar, panolar, köprü modu ve Obsidian uyumlu iş akışlarıyla
kaynak zenginliğine sahip bir wiki kasasına derler.
</Card>
</CardGroup>
## Otomatik bellek boşaltma
[Compaction](/tr/concepts/compaction) konuşmanızı özetlemeden önce, OpenClaw
aracıya önemli bağlamı bellek dosyalarına kaydetmesini hatırlatan sessiz bir tur
çalıştırır. Bu varsayılan olarak açıktır -- herhangi bir şeyi yapılandırmanız
gerekmez.
<Tip>
Bellek flush, sıkıştırma sırasında bağlam kaybını önler. Konuşmada henüz bir dosyaya yazılmamış önemli gerçekler varsa, özetleme gerçekleşmeden önce otomatik olarak kaydedilirler.
Bellek boşaltma, compaction sırasında bağlam kaybını önler. Aracınızın
konuşmada henüz bir dosyaya yazılmamış önemli gerçekleri varsa, özetleme
gerçekleşmeden önce bunlar otomatik olarak kaydedilir.
</Tip>
## Dreaming (deneysel)
Dreaming, bellek için isteğe bağlı bir arka plan pekiştirme geçişidir. Kısa vadeli sinyalleri toplar, adayları puanlar ve yalnızca uygun öğeleri uzun vadeli belleğe (`MEMORY.md`) yükseltir.
Dreaming, bellek için isteğe bağlı bir arka plan pekiştirme geçişidir. Kısa
vadeli sinyalleri toplar, adayları puanlar ve yalnızca uygun öğeleri uzun
vadeli belleğe (`MEMORY.md`) yükseltir.
Uzun vadeli belleği yüksek sinyalli tutmak için tasarlanmıştır:
- **İsteğe bağlı**: varsayılan olarak devre dışıdır.
- **Zamanlanmış**: etkinleştirildiğinde `memory-core`, tam bir dreaming sweep için yinelenen bir cron işini otomatik olarak yönetir.
- **Eşikli**: yükseltmelerin puan, hatırlama sıklığı ve sorgu çeşitliliği kapılarını geçmesi gerekir.
- **İncelenebilir**: aşama özetleri ve günlük girdileri insan incelemesi için `DREAMS.md` dosyasına yazılır.
- **Zamanlanmış**: etkinleştirildiğinde, `memory-core` bir tam dreaming sweep'i
için yinelenen bir cron işini otomatik olarak yönetir.
- **Eşikli**: yükseltmelerin puan, geri çağırma sıklığı ve sorgu çeşitliliği
geçitlerini geçmesi gerekir.
- **İncelenebilir**: aşama özetleri ve günlük girdileri insan incelemesi için
`DREAMS.md` dosyasına yazılır.
Aşama davranışı, puanlama sinyalleri ve Dream Diary ayrıntıları için bkz. [Dreaming (deneysel)](/concepts/dreaming).
Aşama davranışı, puanlama sinyalleri ve Dream Diary ayrıntıları için bkz.
[Dreaming (experimental)](/tr/concepts/dreaming).
## CLI
```bash
openclaw memory status # İndeks durumunu ve sağlayıcıyı kontrol et
openclaw memory search "query" # Komut satırından ara
openclaw memory index --force # İndeksi yeniden oluştur
openclaw memory status # Dizin durumunu ve sağlayıcıyı kontrol edin
openclaw memory search "query" # Komut satırından arama yapın
openclaw memory index --force # Dizini yeniden oluşturun
```
## Daha fazla okuma
## İleri okuma
- [Builtin Memory Engine](/tr/concepts/memory-builtin) -- varsayılan SQLite arka ucu
- [QMD Memory Engine](/tr/concepts/memory-qmd) -- gelişmiş local-first yan hizmet
- [QMD Memory Engine](/tr/concepts/memory-qmd) -- gelişmiş local-first sidecar
- [Honcho Memory](/tr/concepts/memory-honcho) -- AI-native oturumlar arası bellek
- [Memory Search](/tr/concepts/memory-search) -- arama işlem hattı, sağlayıcılar ve ince ayar
- [Dreaming (experimental)](/concepts/dreaming) -- kısa vadeli hatırlamadan uzun vadeli belleğe arka plan yükseltme
- [Memory configuration reference](/tr/reference/memory-config) -- tüm yapılandırma ayarları
- [Compaction](/tr/concepts/compaction) -- sıkıştırmanın bellekle nasıl etkileşime girdiği
- [Memory Wiki](/tr/plugins/memory-wiki) -- derlenmiş bilgi kasası ve wiki'ye özgü araçlar
- [Memory Search](/tr/concepts/memory-search) -- arama işlem hattı, sağlayıcılar ve
ayarlama
- [Dreaming (experimental)](/tr/concepts/dreaming) -- kısa vadeli geri çağırmadan
uzun vadeli belleğe arka plan yükseltmesi
- [Bellek yapılandırma başvurusu](/tr/reference/memory-config) -- tüm yapılandırma seçenekleri
- [Compaction](/tr/concepts/compaction) -- compaction'ın bellekle nasıl etkileşime girdiği

View File

@ -1,14 +1,14 @@
---
read_when:
- Sağlayıcı bazında model kurulum başvurusu gerektiğinde
- Model sağlayıcıları için örnek yapılandırmalar veya CLI onboarding komutları istediğinizde
- Sağlayıcı bazında model kurulumu için bir başvuruya ihtiyacınız var
- Model sağlayıcıları için örnek yapılandırmalar veya CLI ilk kurulum komutları istiyorsunuz
summary: Örnek yapılandırmalar ve CLI akışlarıyla model sağlayıcısı genel bakışı
title: Model Sağlayıcıları
x-i18n:
generated_at: "2026-04-08T02:15:45Z"
generated_at: "2026-04-08T06:02:33Z"
model: gpt-5.4
provider: openai
source_hash: 26b36a2bc19a28a7ef39aa8e81a0050fea1d452ac4969122e5cdf8755e690258
source_hash: 558ac9e34b67fcc3dd6791a01bebc17e1c34152fa6c5611593d681e8cfa532d9
source_path: concepts/model-providers.md
workflow: 15
---
@ -16,25 +16,24 @@ x-i18n:
# Model sağlayıcıları
Bu sayfa **LLM/model sağlayıcılarını** kapsar (WhatsApp/Telegram gibi sohbet kanalları değil).
Model seçim kuralları için bkz. [/concepts/models](/tr/concepts/models).
Model seçimi kuralları için bkz. [/concepts/models](/tr/concepts/models).
## Hızlı kurallar
- Model başvuruları `provider/model` kullanır (örnek: `opencode/claude-opus-4-6`).
- `agents.defaults.models` ayarlarsanız bu allowlist olur.
- `agents.defaults.models` ayarlarsanız, bu allowlist olur.
- CLI yardımcıları: `openclaw onboard`, `openclaw models list`, `openclaw models set <provider/model>`.
- Yedek çalışma zamanı kuralları, cooldown propları ve oturum geçersiz kılma kalıcılığı
- Geri dönüş çalışma zamanı kuralları, cooldown probları ve oturum geçersiz kılma kalıcılığı
[/concepts/model-failover](/tr/concepts/model-failover) içinde belgelenmiştir.
- `models.providers.*.models[].contextWindow` yerel model meta verisidir;
`models.providers.*.models[].contextTokens` etkin çalışma zamanı sınırıdır.
- Sağlayıcı pluginleri `registerProvider({ catalog })` aracılığıyla model katalogları ekleyebilir;
OpenClaw bu çıktıyı `models.providers` içine birleştirir ve ardından
`models.json` yazar.
- Sağlayıcı manifestleri `providerAuthEnvVars` bildirebilir; böylece genel env tabanlı
kimlik doğrulama yoklamalarının plugin çalışma zamanını yüklemesi gerekmez. Kalan çekirdek env-var
eşlemesi artık yalnızca plugin olmayan/çekirdek sağlayıcılar ve Anthropic için API-key-first onboarding gibi
`models.providers.*.models[].contextTokens` ise etkili çalışma zamanı sınırıdır.
- Sağlayıcı eklentileri `registerProvider({ catalog })` aracılığıyla model katalogları ekleyebilir;
OpenClaw, `models.json` yazılmadan önce bu çıktıyı `models.providers` içine birleştirir.
- Sağlayıcı manifest dosyaları `providerAuthEnvVars` bildirebilir; böylece genel env tabanlı
kimlik doğrulama problarının eklenti çalışma zamanını yüklemesi gerekmez. Kalan çekirdek env-var
haritası artık yalnızca eklenti olmayan/çekirdek sağlayıcılar ve Anthropic API-key-first ilk kurulum gibi
birkaç genel öncelik durumu içindir.
- Sağlayıcı pluginleri ayrıca
- Sağlayıcı eklentileri ayrıca sağlayıcı çalışma zamanı davranışını da şu yollarla sahiplenebilir:
`normalizeModelId`, `normalizeTransport`, `normalizeConfig`,
`applyNativeStreamingUsageCompat`, `resolveConfigApiKey`,
`resolveSyntheticAuth`, `shouldDeferSyntheticProfileAuth`,
@ -51,216 +50,209 @@ Model seçim kuralları için bkz. [/concepts/models](/tr/concepts/models).
`augmentModelCatalog`, `isBinaryThinking`, `supportsXHighThinking`,
`resolveDefaultThinkingLevel`, `applyConfigDefaults`, `isModernModelRef`,
`prepareRuntimeAuth`, `resolveUsageAuth`, `fetchUsageSnapshot` ve
`onModelSelected` aracılığıyla sağlayıcı çalışma zamanı davranışını sahiplenebilir.
`onModelSelected`.
- Not: sağlayıcı çalışma zamanı `capabilities`, paylaşılan çalıştırıcı meta verisidir (sağlayıcı
ailesi, transkript/araç farklılıkları, taşıma/önbellek ipuçları). Bu,
bir pluginin ne kaydettiğini açıklayan
[genel capability modeli](/tr/plugins/architecture#public-capability-model)
ailesi, transcript/tooling özellikleri, transport/cache ipuçları). Bu,
bir eklentinin ne kaydettiğini açıklayan [public capability model](/tr/plugins/architecture#public-capability-model)
ile aynı şey değildir (metin çıkarımı, konuşma vb.).
## Plugine ait sağlayıcı davranışı
## Eklenti sahipliğinde sağlayıcı davranışı
Sağlayıcı pluginleri artık sağlayıcıya özgü mantığın çoğunu sahiplenebilirken OpenClaw
genel çıkarım döngüsünü korur.
Sağlayıcı eklentileri artık OpenClaw genel çıkarım döngüsünü korurken
sağlayıcıya özgü mantığın çoğunu sahiplenebilir.
Tipik ayrım:
- `auth[].run` / `auth[].runNonInteractive`: sağlayıcı,
`openclaw onboard`, `openclaw models auth` ve başsız kurulum için onboarding/login
- `auth[].run` / `auth[].runNonInteractive`: sağlayıcı, `openclaw onboard`, `openclaw models auth` ve başsız kurulum için ilk kurulum/giriş
akışlarını sahiplenir
- `wizard.setup` / `wizard.modelPicker`: sağlayıcı, auth-choice etiketlerini,
eski takma adları, onboarding allowlist ipuçlarını ve onboarding/model seçimlerinde
kurulum girişlerini sahiplenir
eski takma adları, ilk kurulum allowlist ipuçlarını ve ilk kurulum/model seçicilerindeki kurulum girdilerini sahiplenir
- `catalog`: sağlayıcı `models.providers` içinde görünür
- `normalizeModelId`: sağlayıcı, arama veya kanonikleştirme öncesinde eski/önizleme model kimliklerini
normalize eder
- `normalizeTransport`: sağlayıcı, genel model derlemesi öncesinde taşıma ailesi `api` / `baseUrl` değerlerini
normalize eder; OpenClaw önce eşleşen sağlayıcıyı,
sonra gerçekten taşıma üzerinde değişiklik yapana kadar diğer hook destekli sağlayıcı pluginlerini
denetler
- `normalizeModelId`: sağlayıcı, arama veya kanonikleştirme öncesinde eski/önizleme model kimliklerini normalleştirir
- `normalizeTransport`: sağlayıcı, genel model birleştirmesinden önce transport-family `api` / `baseUrl`
değerlerini normalleştirir; OpenClaw önce eşleşen sağlayıcıyı,
ardından transport'u gerçekten değiştiren bir tane bulunana kadar kanca yetenekli diğer sağlayıcı eklentilerini kontrol eder
- `normalizeConfig`: sağlayıcı, çalışma zamanı kullanmadan önce `models.providers.<id>` yapılandırmasını
normalize eder; OpenClaw önce eşleşen sağlayıcıyı,
sonra gerçekten yapılandırmayı değiştirene kadar diğer hook destekli sağlayıcı pluginlerini
denetler. Hiçbir sağlayıcı hooku yapılandırmayı yeniden yazmazsa, paketlenmiş Google ailesi yardımcıları
desteklenen Google sağlayıcı girdilerini yine de normalize eder.
- `applyNativeStreamingUsageCompat`: sağlayıcı, yapılandırma sağlayıcıları için uç nokta odaklı yerel akış-kullanım uyumluluk yeniden yazımlarını uygular
- `resolveConfigApiKey`: sağlayıcı, yapılandırma sağlayıcıları için tam çalışma zamanı auth yüklemesini zorlamadan
env-marker auth çözümler. Bedrock çalışma zamanı authu
AWS SDK varsayılan zincirini kullansa da `amazon-bedrock` burada ayrıca
yerleşik bir AWS env-marker çözücüsüne sahiptir.
- `resolveSyntheticAuth`: sağlayıcı, düz metin gizli anahtarları kalıcılaştırmadan
local/self-hosted veya diğer yapılandırma destekli auth kullanılabilirliğini ortaya çıkarabilir
normalleştirir; OpenClaw önce eşleşen sağlayıcıyı, ardından
yapılandırmayı gerçekten değiştiren bir tane bulunana kadar kanca yetenekli diğer sağlayıcı eklentilerini kontrol eder. Eğer hiçbir
sağlayıcı kancası yapılandırmayı yeniden yazmazsa, paketlenmiş Google ailesi yardımcıları
desteklenen Google sağlayıcı girdilerini yine de normalleştirir.
- `applyNativeStreamingUsageCompat`: sağlayıcı, yapılandırma sağlayıcıları için endpoint kaynaklı yerel streaming-usage uyumluluk yeniden yazımlarını uygular
- `resolveConfigApiKey`: sağlayıcı, tam çalışma zamanı auth yüklemesini zorlamadan yapılandırma sağlayıcıları için env-marker auth'u çözümler.
`amazon-bedrock` ayrıca burada yerleşik bir AWS env-marker çözücüsüne sahiptir; Bedrock çalışma zamanı auth'u
AWS SDK varsayılan zincirini kullanmasına rağmen.
- `resolveSyntheticAuth`: sağlayıcı, düz metin sırları kalıcı hale getirmeden yerel/self-hosted veya
diğer yapılandırma destekli auth kullanılabilirliğini gösterebilir
- `shouldDeferSyntheticProfileAuth`: sağlayıcı, depolanmış sentetik profil
yer tutucularını env/config destekli authtan daha düşük öncelikli olarak işaretleyebilir
yer tutucularını env/config destekli auth'tan daha düşük öncelikli olarak işaretleyebilir
- `resolveDynamicModel`: sağlayıcı, henüz yerel statik katalogda bulunmayan model kimliklerini kabul eder
- `prepareDynamicModel`: sağlayıcı, dinamik çözümlemeyi yeniden denemeden önce meta veri yenilemesine ihtiyaç duyar
- `normalizeResolvedModel`: sağlayıcı, taşıma veya base URL yeniden yazımlarına ihtiyaç duyar
- `contributeResolvedModelCompat`: sağlayıcı, başka bir uyumlu taşıma üzerinden gelseler bile
kendi satıcı modelleri için uyumluluk bayrakları sağlar
- `capabilities`: sağlayıcı, transkript/araçlama/sağlayıcı ailesi farklılıklarını yayımlar
- `normalizeToolSchemas`: sağlayıcı, gömülü çalıştırıcı onları görmeden önce araç şemalarını temizler
- `inspectToolSchemas`: sağlayıcı, normalleştirme sonrasında taşıma türüne özgü şema uyarılarını yüzeye çıkarır
- `resolveReasoningOutputMode`: sağlayıcı, yerel ve etiketli
reasoning-output sözleşmeleri arasında seçim yapar
- `prepareExtraParams`: sağlayıcı, model başına istek parametreleri için varsayılanları uygular veya normalize eder
- `createStreamFn`: sağlayıcı, normal akış yolunu tamamen
özel bir taşıma ile değiştirir
- `wrapStreamFn`: sağlayıcı, istek üstbilgisi/gövdesi/model uyumluluk sarmalayıcıları uygular
- `resolveTransportTurnState`: sağlayıcı, tur başına yerel taşıma
üstbilgileri veya meta verileri sağlar
- `resolveWebSocketSessionPolicy`: sağlayıcı, yerel WebSocket oturumu
üstbilgileri veya oturum cool-down politikasını sağlar
- `createEmbeddingProvider`: provider plugini yerine çekirdek embedding switchboarda değil,
sağlayıcı pluginine ait olduğunda bellek embedding davranışını sağlayıcı sahiplenir
- `formatApiKey`: sağlayıcı, depolanmış auth profillerini taşımanın beklediği
çalışma zamanı `apiKey` dizesine biçimlendirir
- `prepareDynamicModel`: sağlayıcının, dinamik çözümlemeyi yeniden denemeden önce meta veri yenilemesine ihtiyacı vardır
- `normalizeResolvedModel`: sağlayıcının transport veya temel URL yeniden yazımlarına ihtiyacı vardır
- `contributeResolvedModelCompat`: sağlayıcı, sağlayıcıya ait modeller başka bir uyumlu transport üzerinden
gelse bile onlar için compat bayrakları ekler
- `capabilities`: sağlayıcı transcript/tooling/provider-family özelliklerini yayımlar
- `normalizeToolSchemas`: sağlayıcı, gömülü çalıştırıcı bunları görmeden önce araç şemalarını temizler
- `inspectToolSchemas`: sağlayıcı, normalleştirmeden sonra transport'a özgü şema uyarılarını ortaya çıkarır
- `resolveReasoningOutputMode`: sağlayıcı, yerel veya etiketli reasoning-output sözleşmelerini seçer
- `prepareExtraParams`: sağlayıcı, model başına istek parametreleri için varsayılanları ayarlar veya normalleştirir
- `createStreamFn`: sağlayıcı, normal akış yolunu tamamen özel bir transport ile değiştirir
- `wrapStreamFn`: sağlayıcı, istek başlık/gövde/model compat sarmalayıcıları uygular
- `resolveTransportTurnState`: sağlayıcı, tur başına yerel transport
başlıkları veya meta verisi sağlar
- `resolveWebSocketSessionPolicy`: sağlayıcı, yerel WebSocket oturum
başlıkları veya oturum cool-down ilkesi sağlar
- `createEmbeddingProvider`: sağlayıcı, çekirdek embedding anahtarlayıcısı yerine
sağlayıcı eklentisiyle birlikte olması gerektiğinde bellek embedding davranışını sahiplenir
- `formatApiKey`: sağlayıcı, depolanmış auth profillerini transport'un beklediği çalışma zamanı
`apiKey` dizesi biçimine dönüştürür
- `refreshOAuth`: sağlayıcı, paylaşılan `pi-ai`
yenileyiciler yeterli olmadığında OAuth yenilemeyi sahiplenir
- `buildAuthDoctorHint`: sağlayıcı, OAuth yenileme
başarısız olduğunda onarım rehberliği ekler
- `matchesContextOverflowError`: sağlayıcı, genel sezgilerin kaçıracağı
sağlayıcıya özgü context-window taşma hatalarını tanır
- `classifyFailoverReason`: sağlayıcı, sağlayıcıya özgü ham tıma/API
hatalarını hız sınırı veya aşırı yük gibi failover nedenlerine eşler
- `isCacheTtlEligible`: sağlayıcı, hangi yukarı akış model kimliklerinin prompt-cache TTL desteklediğine karar verir
- `classifyFailoverReason`: sağlayıcı, sağlayıcıya özgü ham transport/API
hatalarını rate limit veya overload gibi geri dönüş nedenlerine eşler
- `isCacheTtlEligible`: sağlayıcı, hangi upstream model kimliklerinin prompt-cache TTL'yi desteklediğine karar verir
- `buildMissingAuthMessage`: sağlayıcı, genel auth-store hatasını
sağlayıcıya özgü bir kurtarma ipucuyla değiştirir
- `suppressBuiltInModel`: sağlayıcı, eski yukarı akış satırlarını gizler ve doğrudan çözümleme başarısızlıkları için
satıcıya ait bir hata döndürebilir
- `suppressBuiltInModel`: sağlayıcı, eski upstream satırlarını gizler ve doğrudan çözümleme başarısızlıkları için
sağlayıcıya ait bir hata döndürebilir
- `augmentModelCatalog`: sağlayıcı, keşif ve yapılandırma birleştirmesinden sonra
sentetik/nihai katalog satırları ekler
- `isBinaryThinking`: sağlayıcı, ikili açık/kapalı düşünme UXini sahiplenir
- `isBinaryThinking`: sağlayıcı, ikili açık/kapalı düşünme UX'ini sahiplenir
- `supportsXHighThinking`: sağlayıcı, seçili modelleri `xhigh` içine alır
- `resolveDefaultThinkingLevel`: sağlayıcı, bir model ailesi için varsayılan `/think` politikasını sahiplenir
- `resolveDefaultThinkingLevel`: sağlayıcı, bir model ailesi için varsayılan `/think` ilkesini sahiplenir
- `applyConfigDefaults`: sağlayıcı, auth modu, env veya model ailesine göre
yapılandırma materyalizasyonu sırasında sağlayıcıya özgü genel varsayılanlar uygular
yapılandırma somutlaştırması sırasında sağlayıcıya özgü genel varsayılanları uygular
- `isModernModelRef`: sağlayıcı, live/smoke tercih edilen model eşleştirmesini sahiplenir
- `prepareRuntimeAuth`: sağlayıcı, yapılandırılmış bir kimlik bilgisini kısa ömürlü bir
çalışma zamanı belirtecine dönüştürür
- `resolveUsageAuth`: sağlayıcı, `/usage`
ve ilgili durum/raporlama yüzeyleri için kullanım/kota kimlik bilgilerini çözer
- `fetchUsageSnapshot`: sağlayıcı, kullanım uç noktası alma/ayrıştırma işini sahiplenirken
çekirdek yine özet kabuğunu ve biçimlendirmeyi sahiplenir
- `onModelSelected`: sağlayıcı, telemetri veya sağlayıcıya ait oturum kayıt tutma gibi
ve ilgili durum/raporlama yüzeyleri için kullanım/kota kimlik bilgilerini çözümler
- `fetchUsageSnapshot`: sağlayıcı, kullanım endpoint'inin getirilmesini/ayrıştırılmasını sahiplenirken
çekirdek özet kabuğu ve biçimlendirmeyi sahiplenmeye devam eder
- `onModelSelected`: sağlayıcı, telemetri veya sağlayıcıya ait oturum kayıt işlemleri gibi
seçim sonrası yan etkileri çalıştırır
Mevcut paketlenmiş örnekler:
- `anthropic`: Claude 4.6 ileri uyumluluk geri dönüşü, auth onarım ipuçları, kullanım
uç noktası alma, cache-TTL/sağlayıcı ailesi meta verisi ve auth farkındalıklı genel
- `anthropic`: Claude 4.6 ileriye dönük uyumlu geri dönüş, auth onarım ipuçları, kullanım
endpoint getirme, cache-TTL/provider-family meta verisi ve auth farkındalığına sahip genel
yapılandırma varsayılanları
- `amazon-bedrock`: Bedrocka özgü throttle/not-ready hataları için sağlayıcıya ait context-overflow eşleştirme ve failover
neden sınıflandırması; ayrıca Anthropic trafiğindeki yalnızca-Claude replay-policy
- `amazon-bedrock`: Bedrock'a özgü throttle/not-ready hataları için sağlayıcı sahipliğinde context-overflow eşleştirmesi ve failover
nedeni sınıflandırması, ayrıca Anthropic trafiğinde Claude'a özel replay-policy
korumaları için paylaşılan `anthropic-by-model` replay ailesi
- `anthropic-vertex`: Anthropic-message
trafiği için yalnızca-Claude replay-policy korumaları
trafiğinde Claude'a özel replay-policy korumaları
- `openrouter`: doğrudan model kimlikleri, istek sarmalayıcıları, sağlayıcı capability
ipuçları, proxy Gemini trafiğinde Gemini thought-signature temizleme,
`openrouter-thinking` akış ailesi üzerinden proxy reasoning ekleme, yönlendirme
meta verisi iletimi ve cache-TTL politikası
- `github-copilot`: onboarding/device login, ileri uyumluluk model geri dönüşü,
Claude-thinking transkript ipuçları, çalışma zamanı token değişimi ve kullanım uç noktası
alma
- `openai`: GPT-5.4 ileri uyumluluk geri dönüşü, doğrudan OpenAI taşıma
normalizasyonu, Codex farkındalıklı eksik auth ipuçları, Spark gizleme, sentetik
OpenAI/Codex katalog satırları, thinking/live-model politikası, kullanım token takma ad
meta verisi iletme ve cache-TTL ilkesi
- `github-copilot`: ilk kurulum/cihaz girişi, ileriye dönük uyumlu model geri dönüşü,
Claude-thinking transcript ipuçları, çalışma zamanı token değişimi ve kullanım endpoint'i
getirme
- `openai`: GPT-5.4 ileriye dönük uyumlu geri dönüş, doğrudan OpenAI transport
normalizasyonu, Codex farkındalığına sahip eksik auth ipuçları, Spark bastırma, sentetik
OpenAI/Codex katalog satırları, thinking/live-model ilkesi, kullanım belirteci takma adı
normalizasyonu (`input` / `output` ve `prompt` / `completion` aileleri), yerel OpenAI/Codex
sarmalayıcıları için paylaşılan `openai-responses-defaults` akış ailesi, sağlayıcı ailesi
meta verisi, `gpt-image-1` için paketlenmiş görüntü oluşturma sağlayıcısı
sarmalayıcıları için paylaşılan `openai-responses-defaults` akış ailesi,
provider-family meta verisi, `gpt-image-1` için paketlenmiş görüntü oluşturma sağlayıcısı
kaydı ve `sora-2` için paketlenmiş video oluşturma sağlayıcısı
kaydı
- `google` ve `google-gemini-cli`: Gemini 3.1 ileri uyumluluk geri dönüşü,
yerel Gemini replay doğrulaması, bootstrap replay temizliği, etiketli
reasoning-output modu, modern model eşleştirmesi, Gemini image-preview modelleri için paketlenmiş görüntü oluşturma
- `google` ve `google-gemini-cli`: Gemini 3.1 ileriye dönük uyumlu geri dönüş,
yerel Gemini replay doğrulaması, bootstrap replay temizleme, etiketli
reasoning-output modu, modern-model eşleştirme, Gemini image-preview modelleri için paketlenmiş görüntü oluşturma
sağlayıcısı kaydı ve Veo modelleri için paketlenmiş
video oluşturma sağlayıcısı kaydı; Gemini CLI OAuth ayrıca
auth-profile token biçimlendirmesi, usage-token ayrıştırması ve kullanım yüzeyleri için kota uç noktası
alımını da sahiplenir
- `moonshot`: paylaşılan tıma, plugine ait thinking payload normalizasyonu
- `kilocode`: paylaşılan tıma, plugine ait istek üstbilgileri, reasoning payload
normalizasyonu, proxy-Gemini thought-signature temizliği ve cache-TTL
politikası
- `zai`: GLM-5 ileri uyumluluk geri dönüşü, `tool_stream` varsayılanları, cache-TTL
politikası, binary-thinking/live-model politikası ve kullanım auth + kota alımı;
bilinmeyen `glm-5*` kimlikleri, paketlenmiş `glm-4.7` şablonundan sentezlenir
- `xai`: yerel Responses tıma normalizasyonu, Grok hızlı varyantları için
`/fast` takma ad yeniden yazımları, varsayılan `tool_stream`, xAIye özgü tool-schema /
kullanım yüzeyleri için auth-profile token biçimlendirmesi, usage-token ayrıştırması ve kota endpoint'i
getirmeyi de sahiplenir
- `moonshot`: paylaşılan transport, eklenti sahipliğinde thinking payload normalizasyonu
- `kilocode`: paylaşılan transport, eklenti sahipliğinde istek başlıkları, reasoning payload
normalizasyonu, proxy-Gemini thought-signature temizleme ve cache-TTL
ilkesi
- `zai`: GLM-5 ileriye dönük uyumlu geri dönüş, `tool_stream` varsayılanları, cache-TTL
ilkesi, binary-thinking/live-model ilkesi ve kullanım auth + kota getirme;
bilinmeyen `glm-5*` kimlikleri, paketlenmiş `glm-4.7` şablonundan sentetik olarak üretilir
- `xai`: yerel Responses transport normalizasyonu, Grok hızlı varyantları için `/fast` takma ad yeniden yazımları,
varsayılan `tool_stream`, xAI'ye özgü tool-schema /
reasoning-payload temizliği ve `grok-imagine-video` için paketlenmiş video oluşturma sağlayıcısı
kaydı
- `mistral`: plugine ait capability meta verisi
- `opencode` ve `opencode-go`: plugine ait capability meta verisi ile birlikte
proxy-Gemini thought-signature temizliği
- `alibaba`: `alibaba/wan2.6-t2v` gibi doğrudan Wan model başvuruları için
plugine ait video oluşturma kataloğu
- `byteplus`: plugine ait kataloglar ve Seedance text-to-video/image-to-video modelleri için
paketlenmiş video oluşturma sağlayıcısı kaydı
- `fal`: FLUX görüntü modelleri için barındırılan üçüncü taraf görüntü oluşturma sağlayıcısı kaydı ve
barındırılan üçüncü taraf video modelleri için paketlenmiş
- `mistral`: eklenti sahipliğinde capability meta verisi
- `opencode` ve `opencode-go`: eklenti sahipliğinde capability meta verisi ve ayrıca
proxy-Gemini thought-signature temizleme
- `alibaba`: `alibaba/wan2.6-t2v` gibi doğrudan Wan model başvuruları için eklenti sahipliğinde video oluşturma kataloğu
- `byteplus`: eklenti sahipliğinde kataloglar ve ayrıca Seedance text-to-video/image-to-video modelleri için paketlenmiş video oluşturma sağlayıcısı
kaydı
- `fal`: barındırılan üçüncü taraf görüntü oluşturma sağlayıcısı
kaydı ile FLUX görüntü modelleri için birlikte, ayrıca barındırılan üçüncü taraf video modelleri için paketlenmiş
video oluşturma sağlayıcısı kaydı
- `cloudflare-ai-gateway`, `huggingface`, `kimi`, `nvidia`, `qianfan`,
`stepfun`, `synthetic`, `venice`, `vercel-ai-gateway` ve `volcengine`:
yalnızca plugine ait kataloglar
- `qwen`: metin modelleri için plugine ait kataloglar ile birlikte,
çok modlu yüzeyleri için paylaşılan media-understanding ve video-generation sağlayıcısı kayıtları;
Qwen video oluşturma, `wan2.6-t2v` ve `wan2.7-r2v` gibi paketlenmiş Wan modelleriyle
Standard DashScope video uç noktalarını kullanır
yalnızca eklenti sahipliğinde kataloglar
- `qwen`: metin modelleri için eklenti sahipliğinde kataloglar ve ayrıca
çok modlu yüzeyleri için paylaşılan
media-understanding ve video oluşturma sağlayıcısı kayıtları; Qwen video üretimi,
`wan2.6-t2v` ve `wan2.7-r2v` gibi paketlenmiş Wan modelleriyle Standart DashScope video
endpoint'lerini kullanır
- `runway`: `gen4.5` gibi yerel
Runway görev tabanlı modeller için plugine ait video oluşturma sağlayıcısı kaydı
- `minimax`: plugine ait kataloglar, Hailuo video modelleri için paketlenmiş video oluşturma sağlayıcısı
Runway görev tabanlı modeller için eklenti sahipliğinde video oluşturma sağlayıcısı kaydı
- `minimax`: eklenti sahipliğinde kataloglar, Hailuo video modelleri için paketlenmiş video oluşturma sağlayıcısı
kaydı, `image-01` için paketlenmiş görüntü oluşturma sağlayıcısı
kaydı, hibrit Anthropic/OpenAI replay-policy
seçimi ve kullanım auth/snapshot mantığı
- `together`: plugine ait kataloglar ve Wan video modelleri için paketlenmiş video oluşturma sağlayıcısı
- `together`: eklenti sahipliğinde kataloglar ve ayrıca Wan video modelleri için paketlenmiş video oluşturma sağlayıcısı
kaydı
- `xiaomi`: plugine ait kataloglar ile kullanım auth/snapshot mantığı
- `xiaomi`: eklenti sahipliğinde kataloglar ve ayrıca kullanım auth/snapshot mantığı
Paketlenmiş `openai` plugini artık her iki sağlayıcı kimliğini de sahipleniyor: `openai` ve
Paketlenmiş `openai` eklentisi artık her iki sağlayıcı kimliğini de sahipleniyor: `openai` ve
`openai-codex`.
Bu, OpenClawın normal taşımalarına hâlâ uyan sağlayıcıları kapsar. Tamamen
özel bir istek yürütücüsüne ihtiyaç duyan sağlayıcılar ayrı, daha derin bir genişletme yüzeyidir.
Bu, hâlâ OpenClaw'ın normal transport'larına uyan sağlayıcıları kapsar. Tamamen
özel bir istek yürütücüsü gerektiren bir sağlayıcı, ayrı ve daha derin bir genişletme
yüzeyidir.
## API anahtarı rotasyonu
- Seçili sağlayıcılar için genel sağlayıcı rotasyonunu destekler.
- Birden çok anahtarı şu yollarla yapılandırın:
- `OPENCLAW_LIVE_<PROVIDER>_KEY` (tek canlı geçersiz kılma, en yüksek öncelik)
- `<PROVIDER>_API_KEYS` (virgül veya noktalı virgül ayrımlı liste)
- `OPENCLAW_LIVE_<PROVIDER>_KEY` (tek live override, en yüksek öncelik)
- `<PROVIDER>_API_KEYS` (virgül veya noktalı virgülle ayrılmış liste)
- `<PROVIDER>_API_KEY` (birincil anahtar)
- `<PROVIDER>_API_KEY_*` (numaralandırılmış liste, örn. `<PROVIDER>_API_KEY_1`)
- Google sağlayıcıları için `GOOGLE_API_KEY` de yedek olarak dahil edilir.
- Anahtar seçim sırası önceliği korur ve değerleri tekilleştirir.
- İstekler yalnızca hız sınırı yanıtlarında bir sonraki anahtarla yeniden denenir
(örneğin `429`, `rate_limit`, `quota`, `resource exhausted`, `Too many
- `<PROVIDER>_API_KEY_*` (numaralı liste, örn. `<PROVIDER>_API_KEY_1`)
- Google sağlayıcıları için `GOOGLE_API_KEY` de geri dönüş olarak dahildir.
- Anahtar seçimi sırası önceliği korur ve değerlerin yinelenmesini kaldırır.
- İstekler yalnızca rate-limit yanıtlarında bir sonraki anahtarla yeniden denenir (örneğin
`429`, `rate_limit`, `quota`, `resource exhausted`, `Too many
concurrent requests`, `ThrottlingException`, `concurrency limit reached`,
`workers_ai ... quota limit exceeded` veya dönemsel kullanım sınırı iletileri).
- Hız sınırı dışındaki hatalar hemen başarısız olur; anahtar rotasyonu denenmez.
- Tüm aday anahtarlar başarısız olduğunda son hata, son denemeden döndürülür.
`workers_ai ... quota limit exceeded` veya dönemsel kullanım sınırı mesajları).
- Rate-limit dışı hatalar hemen başarısız olur; anahtar rotasyonu denenmez.
- Tüm aday anahtarlar başarısız olduğunda, son hata son denemeden döndürülür.
## Yerleşik sağlayıcılar (pi-ai kataloğu)
## Yerleşik sağlayıcılar (pi-ai catalog)
OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
`models.providers` yapılandırması **gerekmez**; yalnızca auth ayarlayın ve bir model seçin.
OpenClaw, piai catalog ile birlikte gelir. Bu sağlayıcılar için
`models.providers` yapılandırması gerekmez; yalnızca auth ayarlayın ve bir model seçin.
### OpenAI
- Sağlayıcı: `openai`
- Auth: `OPENAI_API_KEY`
- İsteğe bağlı rotasyon: `OPENAI_API_KEYS`, `OPENAI_API_KEY_1`, `OPENAI_API_KEY_2`, ayrıca `OPENCLAW_LIVE_OPENAI_KEY` (tek geçersiz kılma)
- İsteğe bağlı rotasyon: `OPENAI_API_KEYS`, `OPENAI_API_KEY_1`, `OPENAI_API_KEY_2` ve ayrıca `OPENCLAW_LIVE_OPENAI_KEY` (tek override)
- Örnek modeller: `openai/gpt-5.4`, `openai/gpt-5.4-pro`
- CLI: `openclaw onboard --auth-choice openai-api-key`
- Varsayılan tıma `auto`dur (önce WebSocket, sonra SSE)
- Model başına geçersiz kılmak için `agents.defaults.models["openai/<model>"].params.transport` kullanın (`"sse"`, `"websocket"` veya `"auto"`)
- OpenAI Responses WebSocket ısınması varsayılan olarak `params.openaiWsWarmup` aracılığıyla etkindir (`true`/`false`)
- OpenAI öncelikli işleme, `agents.defaults.models["openai/<model>"].params.serviceTier` aracılığıyla etkinleştirilebilir
- Varsayılan transport `auto`dur (önce WebSocket, sonra SSE geri dönüşü)
- Model başına geçersiz kılma: `agents.defaults.models["openai/<model>"].params.transport` (`"sse"`, `"websocket"` veya `"auto"`)
- OpenAI Responses WebSocket ısınma varsayılanı `params.openaiWsWarmup` ile etkin gelir (`true`/`false`)
- OpenAI öncelikli işleme `agents.defaults.models["openai/<model>"].params.serviceTier` ile etkinleştirilebilir
- `/fast` ve `params.fastMode`, doğrudan `openai/*` Responses isteklerini `api.openai.com` üzerinde `service_tier=priority` olarak eşler
- Paylaşılan `/fast` anahtarı yerine açık bir katman istiyorsanız `params.serviceTier` kullanın
- Gizli OpenClaw atıf üstbilgileri (`originator`, `version`,
`User-Agent`) yalnızca `api.openai.com` üzerindeki yerel OpenAI trafiğinde uygulanır,
genel OpenAI uyumlu proxylerde uygulanmaz
- Paylaşılan `/fast` geçişi yerine açık bir katman istediğinizde `params.serviceTier` kullanın
- Gizli OpenClaw ilişkilendirme başlıkları (`originator`, `version`,
`User-Agent`) yalnızca `api.openai.com` adresine giden yerel OpenAI trafiğinde uygulanır,
genel OpenAI uyumlu proxy'lerde uygulanmaz
- Yerel OpenAI rotaları ayrıca Responses `store`, prompt-cache ipuçları ve
OpenAI reasoning-compat payload şekillendirmesini korur; proxy rotaları korumaz
- `openai/gpt-5.3-codex-spark`, canlı OpenAI API bunu reddettiği için OpenClawda kasıtlı olarak gizlenir; Spark yalnızca Codexe ait kabul edilir
- `openai/gpt-5.3-codex-spark`, canlı OpenAI API bunu reddettiği için OpenClaw'da bilinçli olarak bastırılır; Spark yalnızca Codex'e özel kabul edilir
```json5
{
@ -272,13 +264,12 @@ OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
- Sağlayıcı: `anthropic`
- Auth: `ANTHROPIC_API_KEY`
- İsteğe bağlı rotasyon: `ANTHROPIC_API_KEYS`, `ANTHROPIC_API_KEY_1`, `ANTHROPIC_API_KEY_2`, ayrıca `OPENCLAW_LIVE_ANTHROPIC_KEY` (tek geçersiz kılma)
- İsteğe bağlı rotasyon: `ANTHROPIC_API_KEYS`, `ANTHROPIC_API_KEY_1`, `ANTHROPIC_API_KEY_2` ve ayrıca `OPENCLAW_LIVE_ANTHROPIC_KEY` (tek override)
- Örnek model: `anthropic/claude-opus-4-6`
- CLI: `openclaw onboard --auth-choice apiKey`
- Doğrudan genel Anthropic istekleri, `api.anthropic.com` adresine gönderilen API anahtarı ve OAuth kimlik doğrulamalı trafik dahil,
paylaşılan `/fast` anahtarını ve `params.fastMode` değerini destekler; OpenClaw bunu Anthropic `service_tier` değerine (`auto` ve `standard_only`) eşler
- Anthropic notu: Anthropic çalışanları, OpenClaw tarzı Claude CLI kullanımına yeniden izin verildiğini söyledi; bu yüzden Anthropic yeni bir politika yayımlamadığı sürece OpenClaw, Claude CLI yeniden kullanımını ve `claude -p` kullanımını bu entegrasyon için onaylı kabul eder.
- Anthropic setup-token, desteklenen bir OpenClaw token yolu olarak kullanılmaya devam eder, ancak OpenClaw artık mevcut olduğunda Claude CLI yeniden kullanımını ve `claude -p`yi tercih eder.
- Doğrudan herkese açık Anthropic istekleri, `api.anthropic.com` adresine gönderilen API anahtarı ve OAuth ile kimliği doğrulanmış trafik dahil olmak üzere paylaşılan `/fast` geçişini ve `params.fastMode` değerini destekler; OpenClaw bunu Anthropic `service_tier` (`auto` vs `standard_only`) olarak eşler
- Anthropic notu: Anthropic çalışanları, OpenClaw tarzı Claude CLI kullanımına yeniden izin verildiğini bize bildirdi; bu nedenle OpenClaw, Anthropic yeni bir ilke yayımlamadıkça Claude CLI yeniden kullanımını ve `claude -p` kullanımını bu entegrasyon için onaylı kabul eder.
- Anthropic setup-token, desteklenen bir OpenClaw token yolu olarak kullanılmaya devam eder, ancak OpenClaw artık mümkün olduğunda Claude CLI yeniden kullanımını ve `claude -p` kullanımını tercih eder.
```json5
{
@ -292,16 +283,16 @@ OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
- Auth: OAuth (ChatGPT)
- Örnek model: `openai-codex/gpt-5.4`
- CLI: `openclaw onboard --auth-choice openai-codex` veya `openclaw models auth login --provider openai-codex`
- Varsayılan tıma `auto`dur (önce WebSocket, sonra SSE)
- Model başına geçersiz kılmak için `agents.defaults.models["openai-codex/<model>"].params.transport` kullanın (`"sse"`, `"websocket"` veya `"auto"`)
- Varsayılan transport `auto`dur (önce WebSocket, sonra SSE geri dönüşü)
- Model başına geçersiz kılma: `agents.defaults.models["openai-codex/<model>"].params.transport` (`"sse"`, `"websocket"` veya `"auto"`)
- `params.serviceTier`, yerel Codex Responses isteklerinde (`chatgpt.com/backend-api`) de iletilir
- Gizli OpenClaw atıf üstbilgileri (`originator`, `version`,
- Gizli OpenClaw ilişkilendirme başlıkları (`originator`, `version`,
`User-Agent`) yalnızca
`chatgpt.com/backend-api` üzerindeki yerel Codex trafiğine eklenir, genel OpenAI uyumlu proxylere eklenmez
- Doğrudan `openai/*` ile aynı `/fast` anahtarını ve `params.fastMode` yapılandırmasını paylaşır; OpenClaw bunu `service_tier=priority` olarak eşler
- `openai-codex/gpt-5.3-codex-spark`, Codex OAuth kataloğu bunu açığa çıkardığında kullanılabilir kalır; yetki durumuna bağlıdır
`chatgpt.com/backend-api` adresine giden yerel Codex trafiğine eklenir, genel OpenAI uyumlu proxy'lere eklenmez
- Doğrudan `openai/*` ile aynı `/fast` geçişini ve `params.fastMode` yapılandırmasını paylaşır; OpenClaw bunu `service_tier=priority` olarak eşler
- `openai-codex/gpt-5.3-codex-spark`, Codex OAuth catalog bunu sunduğunda kullanılabilir kalır; entitlement'e bağlıdır
- `openai-codex/gpt-5.4`, yerel `contextWindow = 1050000` ve varsayılan çalışma zamanı `contextTokens = 272000` değerlerini korur; çalışma zamanı sınırını `models.providers.openai-codex.models[].contextTokens` ile geçersiz kılın
- Politika notu: OpenAI Codex OAuth, OpenClaw gibi harici araçlar/iş akışları için açıkça desteklenmektedir.
- İlke notu: OpenAI Codex OAuth, OpenClaw gibi harici araçlar/iş akışları için açıkça desteklenir.
```json5
{
@ -323,9 +314,9 @@ OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
### Diğer abonelik tarzı barındırılan seçenekler
- [Qwen Cloud](/tr/providers/qwen): Qwen Cloud sağlayıcı yüzeyi ile Alibaba DashScope ve Coding Plan uç nokta eşlemesi
- [Qwen Cloud](/tr/providers/qwen): Qwen Cloud sağlayıcı yüzeyi ve ayrıca Alibaba DashScope ile Coding Plan endpoint eşlemesi
- [MiniMax](/tr/providers/minimax): MiniMax Coding Plan OAuth veya API anahtarı erişimi
- [GLM Models](/tr/providers/glm): Z.AI Coding Plan veya genel API uç noktaları
- [GLM Models](/tr/providers/glm): Z.AI Coding Plan veya genel API endpoint'leri
### OpenCode
@ -345,40 +336,40 @@ OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
- Sağlayıcı: `google`
- Auth: `GEMINI_API_KEY`
- İsteğe bağlı rotasyon: `GEMINI_API_KEYS`, `GEMINI_API_KEY_1`, `GEMINI_API_KEY_2`, `GOOGLE_API_KEY` yedeği ve `OPENCLAW_LIVE_GEMINI_KEY` (tek geçersiz kılma)
- İsteğe bağlı rotasyon: `GEMINI_API_KEYS`, `GEMINI_API_KEY_1`, `GEMINI_API_KEY_2`, `GOOGLE_API_KEY` geri dönüşü ve `OPENCLAW_LIVE_GEMINI_KEY` (tek override)
- Örnek modeller: `google/gemini-3.1-pro-preview`, `google/gemini-3-flash-preview`
- Uyumluluk: `google/gemini-3.1-flash-preview` kullanan eski OpenClaw yapılandırması `google/gemini-3-flash-preview` olarak normalize edilir
- Uyumluluk: `google/gemini-3.1-flash-preview` kullanan eski OpenClaw yapılandırması `google/gemini-3-flash-preview` olarak normalleştirilir
- CLI: `openclaw onboard --auth-choice gemini-api-key`
- Doğrudan Gemini çalıştırmaları ayrıca `agents.defaults.models["google/<model>"].params.cachedContent`
(veya eski `cached_content`) kabul eder; böylece sağlayıcıya özgü bir
`cachedContents/...` işleyicisini iletir; Gemini önbellek isabetleri OpenClaw `cacheRead` olarak görünür
(veya eski `cached_content`) kabul eder; bu, sağlayıcıya özgü bir
`cachedContents/...` tanıtıcısını iletmek içindir; Gemini önbellek isabetleri OpenClaw `cacheRead` olarak görünür
### Google Vertex ve Gemini CLI
- Sağlayıcılar: `google-vertex`, `google-gemini-cli`
- Auth: Vertex gcloud ADC kullanır; Gemini CLI kendi OAuth akışını kullanır
- Dikkat: Gemini CLI OAuthun OpenClaw içindeki entegrasyonu resmi değildir. Bazı kullanıcılar üçüncü taraf istemcileri kullandıktan sonra Google hesaplarında kısıtlamalar bildiriyor. Devam etmeyi seçerseniz Google şartlarını inceleyin ve kritik olmayan bir hesap kullanın.
- Gemini CLI OAuth, paketlenmiş `google` plugininin bir parçası olarak gönderilir.
- Önce Gemini CLIyi kurun:
- Auth: Vertex, gcloud ADC kullanır; Gemini CLI kendi OAuth akışını kullanır
- Dikkat: OpenClaw içindeki Gemini CLI OAuth resmi olmayan bir entegrasyondur. Bazı kullanıcılar, üçüncü taraf istemciler kullandıktan sonra Google hesaplarında kısıtlamalar bildiriyor. Devam etmeyi seçerseniz Google şartlarını inceleyin ve kritik olmayan bir hesap kullanın.
- Gemini CLI OAuth, paketlenmiş `google` eklentisinin bir parçası olarak gönderilir.
- Önce Gemini CLI'yi yükleyin:
- `brew install gemini-cli`
- veya `npm install -g @google/gemini-cli`
- Etkinleştirin: `openclaw plugins enable google`
- Giriş yapın: `openclaw models auth login --provider google-gemini-cli --set-default`
- Etkinleştirme: `openclaw plugins enable google`
- Giriş: `openclaw models auth login --provider google-gemini-cli --set-default`
- Varsayılan model: `google-gemini-cli/gemini-3-flash-preview`
- Not: istemci kimliğini veya gizli anahtarı `openclaw.json` içine **yapıştırmazsınız**. CLI giriş akışı,
tokenları gateway host üzerindeki auth profillerinde depolar.
- Girişten sonra istekler başarısız olursa gateway host üzerinde `GOOGLE_CLOUD_PROJECT` veya `GOOGLE_CLOUD_PROJECT_ID` ayarlayın.
- Gemini CLI JSON yanıtları `response` alanından ayrıştırılır; kullanım bilgisi
`stats` alanına geri döner ve `stats.cached`, OpenClaw `cacheRead` olarak normalize edilir.
- Not: `openclaw.json` içine bir istemci kimliği veya sır yapıştırmazsınız. CLI giriş akışı
belirteçleri gateway host üzerindeki auth profillerinde saklar.
- Girişten sonra istekler başarısız olursa, gateway host üzerinde `GOOGLE_CLOUD_PROJECT` veya `GOOGLE_CLOUD_PROJECT_ID` ayarlayın.
- Gemini CLI JSON yanıtları `response` içinden ayrıştırılır; kullanım verisi
`stats` üzerinden geri döner ve `stats.cached` OpenClaw `cacheRead` olarak normalleştirilir.
### Z.AI (GLM)
- Sağlayıcı: `zai`
- Auth: `ZAI_API_KEY`
- Örnek model: `zai/glm-5`
- Örnek model: `zai/glm-5.1`
- CLI: `openclaw onboard --auth-choice zai-api-key`
- Takma adlar: `z.ai/*` ve `z-ai/*`, `zai/*` olarak normalize edilir
- `zai-api-key`, eşleşen Z.AI uç noktasını otomatik algılar; `zai-coding-global`, `zai-coding-cn`, `zai-global` ve `zai-cn` belirli bir yüzeyi zorlar
- Takma adlar: `z.ai/*` ve `z-ai/*`, `zai/*` olarak normalleştirilir
- `zai-api-key`, eşleşen Z.AI endpoint'ini otomatik algılar; `zai-coding-global`, `zai-coding-cn`, `zai-global` ve `zai-cn` belirli bir yüzeyi zorlar
### Vercel AI Gateway
@ -393,39 +384,37 @@ OpenClaw, piai kataloğuyla gelir. Bu sağlayıcılar için
- Auth: `KILOCODE_API_KEY`
- Örnek model: `kilocode/kilo/auto`
- CLI: `openclaw onboard --auth-choice kilocode-api-key`
- Base URL: `https://api.kilo.ai/api/gateway/`
- Statik yedek katalog `kilocode/kilo/auto` ile gelir; canlı
- Temel URL: `https://api.kilo.ai/api/gateway/`
- Statik geri dönüş kataloğu `kilocode/kilo/auto` ile gelir; canlı
`https://api.kilo.ai/api/gateway/models` keşfi çalışma zamanı
kataloğunu daha da genişletebilir.
- `kilocode/kilo/auto` arkasındaki tam yukarı akış yönlendirmesi Kilo Gatewaye aittir,
OpenClaw içinde sabit kodlanmamıştır.
- `kilocode/kilo/auto` arkasındaki tam upstream yönlendirme Kilo Gateway'e aittir,
OpenClaw içinde sabit kodlanmış değildir.
Kurulum ayrıntıları için bkz. [/providers/kilocode](/tr/providers/kilocode).
### Diğer paketlenmiş sağlayıcı pluginleri
### Diğer paketlenmiş sağlayıcı eklentileri
- OpenRouter: `openrouter` (`OPENROUTER_API_KEY`)
- Örnek model: `openrouter/auto`
- OpenClaw, OpenRouterın belgelenmiş uygulama atıf üstbilgilerini yalnızca
istek gerçekten `openrouter.ai` hedefine gidiyorsa uygular
- OpenRoutera özgü Anthropic `cache_control` işaretçileri de
rastgele proxy URLlerine değil, yalnızca doğrulanmış OpenRouter rotalarına uygulanır
- OpenRouter, proxy tarzı OpenAI uyumlu yol üzerinde kalır; dolayısıyla yerel
yalnızca OpenAIye özgü istek şekillendirme (`serviceTier`, Responses `store`,
prompt-cache ipuçları, OpenAI reasoning-compat payloadları) iletilmez
- Gemini destekli OpenRouter başvuruları yalnızca proxy-Gemini thought-signature temizliğini korur;
- OpenClaw, OpenRouter'ın belgelenmiş uygulama ilişkilendirme başlıklarını yalnızca
istek gerçekten `openrouter.ai` adresine gidiyorsa uygular
- OpenRouter'a özgü Anthropic `cache_control` işaretçileri de aynı şekilde
doğrulanmış OpenRouter rotalarıyla sınırlıdır, rastgele proxy URL'leriyle değil
- OpenRouter, proxy tarzı OpenAI uyumlu yol üzerinde kalır; bu nedenle yerel
yalnızca OpenAI istek şekillendirmesi (`serviceTier`, Responses `store`,
prompt-cache ipuçları, OpenAI reasoning-compat payload'ları) iletilmez
- Gemini tabanlı OpenRouter başvuruları yalnızca proxy-Gemini thought-signature temizliğini korur;
yerel Gemini replay doğrulaması ve bootstrap yeniden yazımları kapalı kalır
- Kilo Gateway: `kilocode` (`KILOCODE_API_KEY`)
- Örnek model: `kilocode/kilo/auto`
- Gemini destekli Kilo başvuruları aynı proxy-Gemini thought-signature
temizleme yolunu korur; `kilocode/kilo/auto` ve proxy-reasoningi desteklemeyen diğer
ipuçları proxy reasoning eklemeyi atlar
- Gemini tabanlı Kilo başvuruları aynı proxy-Gemini thought-signature
temizleme yolunu korur; `kilocode/kilo/auto` ve proxy reasoning'i desteklemeyen diğer ipuçları
proxy reasoning eklemeyi atlar
- MiniMax: `minimax` (API anahtarı) ve `minimax-portal` (OAuth)
- Auth: `minimax` için `MINIMAX_API_KEY`; `minimax-portal` için `MINIMAX_OAUTH_TOKEN` veya `MINIMAX_API_KEY`
- Örnek model: `minimax/MiniMax-M2.7` veya `minimax-portal/MiniMax-M2.7`
- MiniMax onboarding/API anahtarı kurulumu, açık M2.7 model tanımları yazar ve
`input: ["text", "image"]` içerir; paketlenmiş sağlayıcı kataloğu bu sohbet başvurularını
sağlayıcı yapılandırması materyalize edilene kadar yalnızca metin olarak tutar
- MiniMax ilk kurulumu/API anahtarı kurulumu, `input: ["text", "image"]` ile açık M2.7 model tanımları yazar; paketlenmiş sağlayıcı kataloğu, o sağlayıcı yapılandırması somutlaştırılana kadar sohbet başvurularını yalnızca metin olarak tutar
- Moonshot: `moonshot` (`MOONSHOT_API_KEY`)
- Örnek model: `moonshot/kimi-k2.5`
- Kimi Coding: `kimi` (`KIMI_API_KEY` veya `KIMICODE_API_KEY`)
@ -453,34 +442,34 @@ Kurulum ayrıntıları için bkz. [/providers/kilocode](/tr/providers/kilocode).
- xAI: `xai` (`XAI_API_KEY`)
- Yerel paketlenmiş xAI istekleri xAI Responses yolunu kullanır
- `/fast` veya `params.fastMode: true`, `grok-3`, `grok-3-mini`,
`grok-4` ve `grok-4-0709` modellerini `*-fast` varyantlarına yeniden yazar
- `tool_stream` varsayılan olarak açıktır; devre dışı bırakmak için
`grok-4` ve `grok-4-0709` değerlerini `*-fast` varyantlarına yeniden yazar
- `tool_stream` varsayılan olarak açıktır; kapatmak için
`agents.defaults.models["xai/<model>"].params.tool_stream` değerini `false`
yapın
olarak ayarlayın
- Mistral: `mistral` (`MISTRAL_API_KEY`)
- Örnek model: `mistral/mistral-large-latest`
- CLI: `openclaw onboard --auth-choice mistral-api-key`
- Groq: `groq` (`GROQ_API_KEY`)
- Cerebras: `cerebras` (`CEREBRAS_API_KEY`)
- Cerebras üzerindeki GLM modelleri `zai-glm-4.7` ve `zai-glm-4.6` kimliklerini kullanır.
- OpenAI uyumlu base URL: `https://api.cerebras.ai/v1`.
- OpenAI uyumlu temel URL: `https://api.cerebras.ai/v1`.
- GitHub Copilot: `github-copilot` (`COPILOT_GITHUB_TOKEN` / `GH_TOKEN` / `GITHUB_TOKEN`)
- Hugging Face Inference örnek modeli: `huggingface/deepseek-ai/DeepSeek-R1`; CLI: `openclaw onboard --auth-choice huggingface-api-key`. Bkz. [Hugging Face (Inference)](/tr/providers/huggingface).
## `models.providers` üzerinden sağlayıcılar (özel/base URL)
**Özel** sağlayıcılar veya
OpenAI/Anthropic uyumlu proxyler eklemek için `models.providers` (veya `models.json`) kullanın.
OpenAI/Anthropic uyumlu proxy'ler eklemek için `models.providers` (veya `models.json`) kullanın.
Aşağıdaki paketlenmiş sağlayıcı pluginlerinin çoğu zaten varsayılan bir katalog yayımlar.
Varsayılan base URL, üstbilgiler veya model listesini geçersiz kılmak
istemediğiniz süreceık `models.providers.<id>` girdileri kullanmayın.
Aşağıdaki paketlenmiş sağlayıcı eklentilerinin çoğu zaten varsayılan bir katalog yayımlar.
Varsayılan temel URL'yi, başlıkları veya model listesini geçersiz kılmak istediğinizde
yalnızcaık `models.providers.<id>` girdilerini kullanın.
### Moonshot AI (Kimi)
Moonshot, paketlenmiş bir sağlayıcı plugini olarak gelir. Varsayılan olarak yerleşik sağlayıcıyı
kullanın; yalnızca base URL veya model meta verisini geçersiz kılmanız gerektiğinde
ık bir `models.providers.moonshot` girdisi ekleyin:
Moonshot paketlenmiş bir sağlayıcı eklentisi olarak gelir. Varsayılan olarak yerleşik sağlayıcıyı
kullanın ve yalnızca temel URL'yi veya model meta verisini geçersiz kılmanız
gerektiğinde ık bir `models.providers.moonshot` girdisi ekleyin:
- Sağlayıcı: `moonshot`
- Auth: `MOONSHOT_API_KEY`
@ -519,7 +508,7 @@ Kimi K2 model kimlikleri:
### Kimi Coding
Kimi Coding, Moonshot AInin Anthropic uyumlu uç noktasını kullanır:
Kimi Coding, Moonshot AI'nin Anthropic uyumlu endpoint'ini kullanır:
- Sağlayıcı: `kimi`
- Auth: `KIMI_API_KEY`
@ -534,13 +523,13 @@ Kimi Coding, Moonshot AInin Anthropic uyumlu uç noktasını kullanır:
}
```
Eski `kimi/k2p5`, uyumluluk modeli kimliği olarak kabul edilmeye devam eder.
Eski `kimi/k2p5`, uyumluluk model kimliği olarak kabul edilmeye devam eder.
### Volcano Engine (Doubao)
Volcano Engine (火山引擎), Çinde Doubao ve diğer modellere erişim sağlar.
Volcano Engine (火山引擎), Çin'de Doubao ve diğer modellere erişim sağlar.
- Sağlayıcı: `volcengine` (coding: `volcengine-plan`)
- Sağlayıcı: `volcengine` (kodlama: `volcengine-plan`)
- Auth: `VOLCANO_ENGINE_API_KEY`
- Örnek model: `volcengine-plan/ark-code-latest`
- CLI: `openclaw onboard --auth-choice volcengine-api-key`
@ -553,13 +542,12 @@ Volcano Engine (火山引擎), Çinde Doubao ve diğer modellere erişim sağ
}
```
Onboarding varsayılan olarak coding yüzeyini kullanır, ancak genel `volcengine/*`
kataloğu da aynı anda kaydedilir.
İlk kurulum varsayılan olarak kodlama yüzeyini kullanır, ancak genel `volcengine/*`
catalog aynı anda kaydedilir.
Onboarding/model yapılandırma seçimlerinde Volcengine auth choice,
hem `volcengine/*` hem de `volcengine-plan/*` satırlarını tercih eder. Bu modeller henüz yüklenmemişse
OpenClaw, boş bir sağlayıcı kapsamlı seçim göstermek yerine
filtrelenmemiş kataloğa geri döner.
İlk kurulum/yapılandırma model seçicilerinde, Volcengine auth choice hem
`volcengine/*` hem de `volcengine-plan/*` satırlarını tercih eder. Bu modeller henüz yüklenmemişse,
OpenClaw boş bir sağlayıcı kapsamlı seçici göstermek yerine filtrelenmemiş kataloğa geri döner.
Kullanılabilir modeller:
@ -569,7 +557,7 @@ Kullanılabilir modeller:
- `volcengine/glm-4-7-251222` (GLM 4.7)
- `volcengine/deepseek-v3-2-251201` (DeepSeek V3.2 128K)
Coding modelleri (`volcengine-plan`):
Kodlama modelleri (`volcengine-plan`):
- `volcengine-plan/ark-code-latest`
- `volcengine-plan/doubao-seed-code`
@ -581,7 +569,7 @@ Coding modelleri (`volcengine-plan`):
BytePlus ARK, uluslararası kullanıcılar için Volcano Engine ile aynı modellere erişim sağlar.
- Sağlayıcı: `byteplus` (coding: `byteplus-plan`)
- Sağlayıcı: `byteplus` (kodlama: `byteplus-plan`)
- Auth: `BYTEPLUS_API_KEY`
- Örnek model: `byteplus-plan/ark-code-latest`
- CLI: `openclaw onboard --auth-choice byteplus-api-key`
@ -594,13 +582,12 @@ BytePlus ARK, uluslararası kullanıcılar için Volcano Engine ile aynı modell
}
```
Onboarding varsayılan olarak coding yüzeyini kullanır, ancak genel `byteplus/*`
kataloğu da aynı anda kaydedilir.
İlk kurulum varsayılan olarak kodlama yüzeyini kullanır, ancak genel `byteplus/*`
catalog aynı anda kaydedilir.
Onboarding/model yapılandırma seçimlerinde BytePlus auth choice,
hem `byteplus/*` hem de `byteplus-plan/*` satırlarını tercih eder. Bu modeller henüz yüklenmemişse
OpenClaw, boş bir sağlayıcı kapsamlı seçim göstermek yerine
filtrelenmemiş kataloğa geri döner.
İlk kurulum/yapılandırma model seçicilerinde, BytePlus auth choice hem
`byteplus/*` hem de `byteplus-plan/*` satırlarını tercih eder. Bu modeller henüz yüklenmemişse,
OpenClaw boş bir sağlayıcı kapsamlı seçici göstermek yerine filtrelenmemiş kataloğa geri döner.
Kullanılabilir modeller:
@ -608,7 +595,7 @@ Kullanılabilir modeller:
- `byteplus/kimi-k2-5-260127` (Kimi K2.5)
- `byteplus/glm-4-7-251222` (GLM 4.7)
Coding modelleri (`byteplus-plan`):
Kodlama modelleri (`byteplus-plan`):
- `byteplus-plan/ark-code-latest`
- `byteplus-plan/doubao-seed-code`
@ -618,7 +605,7 @@ Coding modelleri (`byteplus-plan`):
### Synthetic
Synthetic, `synthetic` sağlayıcısı arkasında Anthropic uyumlu modeller sunar:
Synthetic, `synthetic` sağlayıcısının arkasında Anthropic uyumlu modeller sunar:
- Sağlayıcı: `synthetic`
- Auth: `SYNTHETIC_API_KEY`
@ -646,31 +633,31 @@ Synthetic, `synthetic` sağlayıcısı arkasında Anthropic uyumlu modeller suna
### MiniMax
MiniMax, özel uç noktalar kullandığı için `models.providers` üzerinden yapılandırılır:
MiniMax, özel endpoint'ler kullandığı için `models.providers` üzerinden yapılandırılır:
- MiniMax OAuth (Genel): `--auth-choice minimax-global-oauth`
- MiniMax OAuth (Global): `--auth-choice minimax-global-oauth`
- MiniMax OAuth (CN): `--auth-choice minimax-cn-oauth`
- MiniMax API anahtarı (Genel): `--auth-choice minimax-global-api`
- MiniMax API anahtarı (Global): `--auth-choice minimax-global-api`
- MiniMax API anahtarı (CN): `--auth-choice minimax-cn-api`
- Auth: `minimax` için `MINIMAX_API_KEY`; `minimax-portal` için `MINIMAX_OAUTH_TOKEN` veya
`MINIMAX_API_KEY`
Kurulum ayrıntıları, model seçenekleri ve yapılandırma parçacıkları için bkz. [/providers/minimax](/tr/providers/minimax).
MiniMaxin Anthropic uyumlu akış yolunda OpenClaw,
siz açıkça ayarlamadığınız sürece düşünmeyi varsayılan olarak devre dışı bırakır ve `/fast on`
`MiniMax-M2.7` modelini `MiniMax-M2.7-highspeed` olarak yeniden yazar.
MiniMax'ın Anthropic uyumlu akış yolunda OpenClaw, siz açıkça ayarlamadığınız sürece
thinking'i varsayılan olarak devre dışı bırakır ve `/fast on`,
`MiniMax-M2.7` değerini `MiniMax-M2.7-highspeed` olarak yeniden yazar.
Plugine ait capability ayrımı:
Eklenti sahipliğinde capability ayrımı:
- Metin/sohbet varsayılanları `minimax/MiniMax-M2.7` üzerinde kalır
- Görüntü oluşturma `minimax/image-01` veya `minimax-portal/image-01` kullanır
- Görüntü anlama, her iki MiniMax auth yolunda da plugine ait `MiniMax-VL-01` kullanır
- Web araması `minimax` sağlayıcı kimliğinde kalır
- Görüntü oluşturma `minimax/image-01` veya `minimax-portal/image-01` biçimindedir
- Görüntü anlama, her iki MiniMax auth yolunda da eklenti sahipliğinde `MiniMax-VL-01` olur
- Web search sağlayıcı kimliği olarak `minimax` üzerinde kalır
### Ollama
Ollama, paketlenmiş bir sağlayıcı plugini olarak gelir ve Ollamanın yerel APIsini kullanır:
Ollama, paketlenmiş bir sağlayıcı eklentisi olarak gelir ve Ollama'nın yerel API'sini kullanır:
- Sağlayıcı: `ollama`
- Auth: Gerekmez (yerel sunucu)
@ -678,7 +665,7 @@ Ollama, paketlenmiş bir sağlayıcı plugini olarak gelir ve Ollamanın y
- Kurulum: [https://ollama.com/download](https://ollama.com/download)
```bash
# Ollama'yı kurun, ardından bir model çekin:
# Önce Ollama'yı kurun, ardından bir model çekin:
ollama pull llama3.3
```
@ -690,21 +677,21 @@ ollama pull llama3.3
}
```
`OLLAMA_API_KEY` ile katılım gösterdiğinizde Ollama yerel olarak `http://127.0.0.1:11434`
adresinde algılanır ve paketlenmiş sağlayıcı plugini Ollamayı doğrudan
`openclaw onboard` ve model seçicisine ekler. Onboarding, cloud/local modu ve özel yapılandırma için
Ollama, `OLLAMA_API_KEY` ile katılım sağladığınızda yerel olarak `http://127.0.0.1:11434` adresinde
algılanır ve paketlenmiş sağlayıcı eklentisi Ollama'yı doğrudan
`openclaw onboard` ve model seçiciye ekler. İlk kurulum, bulut/yerel mod ve özel yapılandırma için
bkz. [/providers/ollama](/tr/providers/ollama).
### vLLM
vLLM, local/self-hosted OpenAI uyumlu
sunucular için paketlenmiş bir sağlayıcı plugini olarak gelir:
vLLM, yerel/self-hosted OpenAI uyumlu
sunucular için paketlenmiş bir sağlayıcı eklentisi olarak gelir:
- Sağlayıcı: `vllm`
- Auth: İsteğe bağlıdır (sunucunuza bağlıdır)
- Varsayılan base URL: `http://127.0.0.1:8000/v1`
- Varsayılan temel URL: `http://127.0.0.1:8000/v1`
Yerelde otomatik keşfe katılmak için (sunucunuz auth zorlamıyorsa herhangi bir değer çalışır):
Yerelde otomatik keşfe katılmak için (sunucunuz auth zorlamıyorsa herhangi bir değer işe yarar):
```bash
export VLLM_API_KEY="vllm-local"
@ -725,13 +712,14 @@ Ayrıntılar için bkz. [/providers/vllm](/tr/providers/vllm).
### SGLang
SGLang, hızlı self-hosted
OpenAI uyumlu sunucular için paketlenmiş bir sağlayıcı plugini olarak gelir:
OpenAI uyumlu sunucular için paketlenmiş bir sağlayıcı eklentisi olarak gelir:
- Sağlayıcı: `sglang`
- Auth: İsteğe bağlıdır (sunucunuza bağlıdır)
- Varsayılan base URL: `http://127.0.0.1:30000/v1`
- Varsayılan temel URL: `http://127.0.0.1:30000/v1`
Yerelde otomatik keşfe katılmak için (sunucunuz auth zorlamıyorsa herhangi bir değer çalışır):
Yerelde otomatik keşfe katılmak için (sunucunuz auth'u
zorlamıyorsa herhangi bir değer işe yarar):
```bash
export SGLANG_API_KEY="sglang-local"
@ -749,7 +737,7 @@ Ardından bir model ayarlayın (`/v1/models` tarafından döndürülen kimlikler
Ayrıntılar için bkz. [/providers/sglang](/tr/providers/sglang).
### Yerel proxyler (LM Studio, vLLM, LiteLLM vb.)
### Yerel proxy'ler (LM Studio, vLLM, LiteLLM vb.)
Örnek (OpenAI uyumlu):
@ -787,20 +775,20 @@ Ayrıntılar için bkz. [/providers/sglang](/tr/providers/sglang).
Notlar:
- Özel sağlayıcılar için `reasoning`, `input`, `cost`, `contextWindow` ve `maxTokens` isteğe bağlıdır.
Atlandıklarında OpenClaw şu varsayılanları kullanır:
Atlandıklarında OpenClaw varsayılan olarak şunları kullanır:
- `reasoning: false`
- `input: ["text"]`
- `cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }`
- `contextWindow: 200000`
- `maxTokens: 8192`
- Önerilir: proxy/model sınırlarınızla eşleşen açık değerler ayarlayın.
- Yerel olmayan uç noktalarda `api: "openai-completions"` için (ana makinesi `api.openai.com` olmayan boş olmayan herhangi bir `baseUrl`), OpenClaw sağlayıcının desteklemediği `developer` rolleri nedeniyle 400 hatalarından kaçınmak için `compat.supportsDeveloperRole: false` değerini zorunlu kılar.
- Proxy tarzı OpenAI uyumlu rotalar ayrıca yerel yalnızca OpenAIye özgü istek
şekillendirmesini de atlar: `service_tier` yok, Responses `store` yok, prompt-cache ipuçları yok,
OpenAI reasoning-compat payload şekillendirmesi yok ve gizli OpenClaw atıf
üstbilgileri yok.
- `baseUrl` boşsa/atlanmışsa OpenClaw varsayılan OpenAI davranışını korur (`api.openai.com` adresine çözür).
- Güvenlik için, ık bir `compat.supportsDeveloperRole: true` değeri bile yerel olmayan `openai-completions` uç noktalarında yine geçersiz kılınır.
- Yerel olmayan endpoint'lerde `api: "openai-completions"` için (`baseUrl` boş olmayan ve ana bilgisayarı `api.openai.com` olmayan her değer), OpenClaw desteklenmeyen `developer` rolleri için sağlayıcı 400 hatalarını önlemek amacıyla `compat.supportsDeveloperRole: false` değerini zorlar.
- Proxy tarzı OpenAI uyumlu rotalar ayrıca yalnızca yerel OpenAI istek
şekillendirmesini atlar: `service_tier` yok, Responses `store` yok, prompt-cache ipuçları yok,
OpenAI reasoning-compat payload şekillendirmesi yok ve gizli OpenClaw ilişkilendirme
başlıkları yok.
- `baseUrl` boşsa/atlanmışsa, OpenClaw varsayılan OpenAI davranışını korur (`api.openai.com` adresine çözümlenir).
- Güvenlik için, yerel olmayan `openai-completions` endpoint'lerinde açık `compat.supportsDeveloperRole: true` ayarı bile yine geçersiz kılınır.
## CLI örnekleri
@ -815,6 +803,6 @@ Ayrıca bkz.: tam yapılandırma örnekleri için [/gateway/configuration](/tr/g
## İlgili
- [Models](/tr/concepts/models) — model yapılandırması ve takma adlar
- [Model Failover](/tr/concepts/model-failover) — fallback zincirleri ve yeniden deneme davranışı
- [Model Failover](/tr/concepts/model-failover) — geri dönüş zincirleri ve yeniden deneme davranışı
- [Configuration Reference](/tr/gateway/configuration-reference#agent-defaults) — model yapılandırma anahtarları
- [Providers](/tr/providers) — sağlayıcı bazında kurulum kılavuzları
- [Providers](/tr/providers) — sağlayıcı başına kurulum kılavuzları

View File

@ -2,14 +2,14 @@
read_when:
- qa-lab veya qa-channel genişletilirken
- repo destekli QA senaryoları eklerken
- Gateway kontrol paneli etrafında daha yüksek gerçekçiliğe sahip QA otomasyonu oluştururken
- Gateway panosu etrafında daha gerçekçi QA otomasyonu oluştururken
summary: qa-lab, qa-channel, tohumlanmış senaryolar ve protokol raporları için özel QA otomasyon yapısı
title: QA E2E Otomasyonu
x-i18n:
generated_at: "2026-04-08T02:13:58Z"
generated_at: "2026-04-08T06:00:43Z"
model: gpt-5.4
provider: openai
source_hash: 3b4aa5acc8e77303f4045d4f04372494cae21b89d2fdaba856dbb4855ced9d27
source_hash: 57da147dc06abf9620290104e01a83b42182db1806514114fd9e8467492cda99
source_path: concepts/qa-e2e-automation.md
workflow: 15
---
@ -21,30 +21,31 @@ kanal biçimli bir şekilde çalıştırmak için tasarlanmıştır.
Mevcut parçalar:
- `extensions/qa-channel`: DM, kanal, konu, tepki,
düzenleme ve silme yüzeylerine sahip sentetik mesaj kanalı.
- `extensions/qa-channel`: DM, kanal, iş parçacığı,
tepki, düzenleme ve silme yüzeylerine sahip sentetik mesaj kanalı.
- `extensions/qa-lab`: transkripti gözlemlemek,
gelen mesajları enjekte etmek ve bir Markdown raporu dışa aktarmak için hata ayıklayıcı UI'ı ve QA veri yolu.
gelen mesajları enjekte etmek ve bir Markdown raporu dışa aktarmak için hata ayıklayıcı UI ve QA veri yolu.
- `qa/`: başlangıç görevi ve temel QA
senaryoları için repo destekli tohum varlıkları.
Geçerli QA operatörü akışı iki panelli bir QA sitesidir:
Geçerli QA operatör akışı, iki bölmeli bir QA sitesidir:
- Sol: Aracının bulunduğu Gateway kontrol paneli (Control UI).
- Sağ: Slack benzeri transkript ve senaryo planını gösteren QA Lab.
- Sol: ajan ile Gateway panosu (Control UI).
- Sağ: Slack benzeri transkripti ve senaryo planını gösteren QA Lab.
Bunu şu komutla çalıştırın:
Şununla çalıştırın:
```bash
pnpm qa:lab:up
```
Bu, QA sitesini derler, Docker destekli gateway hattını başlatır ve bir operatörün veya otomasyon döngüsünün aracıya bir QA
Bu, QA sitesini derler, Docker destekli gateway hattını başlatır ve
bir operatörün veya otomasyon döngüsünün ajana bir QA
görevi verebildiği, gerçek kanal davranışını gözlemleyebildiği ve neyin işe yaradığını, neyin başarısız olduğunu veya
neyin engelli kaldığını kaydedebildiği QA Lab sayfasınıığa çıkarır.
Docker imajını her seferinde yeniden derlemeden daha hızlı QA Lab UI yinelemesi için,
yığını bind-mount edilmiş bir QA Lab paketiyle başlatın:
Docker imajını her seferinde yeniden derlemeden daha hızlı QA Lab UI yinelemesi için
yığını, bağlama ile monte edilmiş bir QA Lab paketiyle başlatın:
```bash
pnpm openclaw qa docker-build-image
@ -53,41 +54,43 @@ pnpm qa:lab:up:fast
pnpm qa:lab:watch
```
`qa:lab:up:fast`, Docker hizmetlerini önceden derlenmiş bir imajda tutar ve
`extensions/qa-lab/web/dist` dizinini `qa-lab` kapsayıcısına bind-mount eder. `qa:lab:watch`
bu paketi değişikliklerde yeniden derler ve QA Lab varlık karması değiştiğinde tarayıcı otomatik olarak yeniden yüklenir.
`qa:lab:up:fast`, Docker servislerini önceden derlenmiş bir imaj üzerinde tutar ve
`extensions/qa-lab/web/dist` dizinini `qa-lab` container'ına bağlama ile monte eder. `qa:lab:watch`
değişiklik olduğunda bu paketi yeniden derler ve QA Lab
varlık karması değiştiğinde tarayıcı otomatik olarak yeniden yüklenir.
## Repo destekli tohumlar
Tohum varlıkları `qa/` içinde bulunur:
- `qa/scenarios.md`
- `qa/scenarios/index.md`
- `qa/scenarios/*.md`
Bunlar, QA planı hem insanlar hem de
aracı için görünür olsun diye kasıtlı olarak git içinde tutulur. Temel liste, şunları kapsayacak kadar geniş kalmalıdır:
Bunlar bilerek git içinde tutulur; böylece QA planı hem insanlar hem de
ajan tarafından görülebilir. Temel liste, şu konuları kapsayacak kadar geniş kalmalıdır:
- DM ve kanal sohbeti
- konu davranışı
- iş parçacığı davranışı
- mesaj eylemi yaşam döngüsü
- cron geri çağrıları
- bellekten geri çağırma
- model değiştirme
- alt aracı devri
- alt ajan devri
- repo okuma ve doküman okuma
- Lobster Invaders gibi küçük bir derleme görevi
## Raporlama
`qa-lab`, gözlemlenen veri yolu zaman çizelgesinden bir Markdown protokol raporu dışa aktarır.
Rapor şu sorulara yanıt vermelidir:
Rapor şu soruları yanıtlamalıdır:
- Ne işe yaradı
- Ne başarısız oldu
- Ne engelli kaldı
- Neler işe yaradı
- Neler başarısız oldu
- Neler engelli kaldı
- Hangi takip senaryolarını eklemeye değer
## İlgili dokümanlar
- [Testler](/tr/help/testing)
- [QA Kanalı](/tr/channels/qa-channel)
- [Kontrol Paneli](/web/dashboard)
- [Test etme](/tr/help/testing)
- [QA Channel](/tr/channels/qa-channel)
- [Pano](/web/dashboard)

View File

@ -1,15 +1,15 @@
---
read_when:
- Kanallarda akışın veya parçalamanın nasıl çalıştığınııklıyorsanız
- Blok akışını veya kanal parçalama davranışını değiştiriyorsanız
- Yinelenen/erken blok yanıtlarında veya kanal önizleme akışında hata ayıklıyorsanız
summary: Akış + parçalama davranışı (blok yanıtları, kanal önizleme akışı, kip eşleme)
- Kanallarda akışın veya parçalamanın nasıl çalıştığınııklama
- Blok akışını veya kanal parçalama davranışını değiştirme
- Yinelenen/erken blok yanıtlarını veya kanal önizleme akışını hata ayıklama
summary: Akış + parçalama davranışı (blok yanıtları, kanal önizleme akışı, mod eşleme)
title: Akış ve Parçalama
x-i18n:
generated_at: "2026-04-05T13:52:01Z"
generated_at: "2026-04-08T06:01:00Z"
model: gpt-5.4
provider: openai
source_hash: 44b0d08c7eafcb32030ef7c8d5719c2ea2d34e4bac5fdad8cc8b3f4e9e9fad97
source_hash: a8e847bb7da890818cd79dec7777f6ae488e6d6c0468e948e56b6b6c598e0000
source_path: concepts/streaming.md
workflow: 15
---
@ -18,14 +18,14 @@ x-i18n:
OpenClaw iki ayrı akış katmanına sahiptir:
- **Blok akışı (kanallar):** assistant yazarken tamamlanmış **blokları** yayar. Bunlar normal kanal mesajlarıdır (token deltaları değildir).
- **Blok akışı (kanallar):** asistan yazarken tamamlanan **blokları** yayar. Bunlar normal kanal mesajlarıdır (token deltaları değil).
- **Önizleme akışı (Telegram/Discord/Slack):** oluşturma sırasında geçici bir **önizleme mesajını** günceller.
Bugün kanal mesajlarına **gerçek token-delta akışı yoktur**. Önizleme akışı mesaj tabanlıdır (gönderme + düzenleme/ekleme).
Bugün kanal mesajlarına **gerçek token-delta akışı** yoktur. Önizleme akışı mesaj tabanlıdır (gönderme + düzenlemeler/eklemeler).
## Blok akışı (kanal mesajları)
Blok akışı, kullanılabilir oldukça assistant çıktısını kaba parçalar halinde gönderir.
Blok akışı, asistan çıktısını kullanılabilir oldukça büyük parçalar halinde gönderir.
```
Model output
@ -37,132 +37,133 @@ Model output
└─ channel send (block replies)
```
ıklama:
Gösterge:
- `text_delta/events`: model akış olaylarıdır (akışsız modeller için seyrek olabilir).
- `chunker`: min/maks sınırlar + kırma tercihi uygulayan `EmbeddedBlockChunker`.
- `text_delta/events`: model akış olayları (akışsız modeller için seyrek olabilir).
- `chunker`: min/max sınırları + kırma tercihi uygulayan `EmbeddedBlockChunker`.
- `channel send`: gerçek giden mesajlar (blok yanıtları).
**Denetimler:**
- `agents.defaults.blockStreamingDefault`: `"on"`/`"off"` (varsayılan kapalı).
- Kanal geçersiz kılmaları: kanal başına `"on"`/`"off"` zorlamak için `*.blockStreaming` (ve hesap başına varyantlar).
- Kanal geçersiz kılmaları: kanal başına `"on"`/`"off"` zorlamak için `*.blockStreaming` (ve hesap başına varyantları).
- `agents.defaults.blockStreamingBreak`: `"text_end"` veya `"message_end"`.
- `agents.defaults.blockStreamingChunk`: `{ minChars, maxChars, breakPreference? }`.
- `agents.defaults.blockStreamingCoalesce`: `{ minChars?, maxChars?, idleMs? }` (göndermeden önce akış bloklarını birleştirir).
- Kanal katı üst sınırı: `*.textChunkLimit` (ör. `channels.whatsapp.textChunkLimit`).
- Kanal parçalama kipi: `*.chunkMode` (`length` varsayılan, `newline` uzunluğa göre parçalamadan önce boş satırlarda bölünür (paragraf sınırları)).
- Discord yumuşak üst sınırı: `channels.discord.maxLinesPerMessage` (varsayılan 17), arayüz kırpmasını önlemek için uzun yanıtları böler.
- Kanal kesin üst sınırı: `*.textChunkLimit` (ör. `channels.whatsapp.textChunkLimit`).
- Kanal parça modu: `*.chunkMode` (`length` varsayılan, `newline` uzunluğa göre parçalamadan önce boş satırlarda (paragraf sınırları) böler).
- Discord yumuşak üst sınırı: `channels.discord.maxLinesPerMessage` (varsayılan 17), kullanıcı arayüzü kırpmasını önlemek için uzun yanıtları böler.
**Sınır semantiği:**
**Sınır anlamları:**
- `text_end`: chunker üretir üretmez blokları akıt; her `text_end` üzerinde flush yap.
- `message_end`: assistant mesajı bitene kadar bekle, sonra tamponlanan çıktıyı flush et.
- `text_end`: `chunker` blok yayar yaymaz akış bloklarını gönderir; her `text_end` için boşaltır.
- `message_end`: asistan mesajı bitene kadar bekler, sonra arabelleğe alınmış çıktıyı boşaltır.
Tamponlanan metin `maxChars` değerini aşarsa `message_end` yine chunker kullanır; bu nedenle sonda birden fazla parça yayabilir.
`message_end`, arabelleğe alınmış metin `maxChars` değerini aşarsa yine `chunker` kullanır; bu nedenle sonda birden çok parça yayabilir.
## Parçalama algoritması (alt/üst sınırlar)
Blok parçalama `EmbeddedBlockChunker` tarafından uygulanır:
- **Alt sınır:** tampon >= `minChars` olana kadar yayma (zorlanmadıkça).
- **Üst sınır:** bölmeleri `maxChars` öncesinde tercih et; zorlanırsa `maxChars` değerinde böl.
- **Alt sınır:** arabellek >= `minChars` olana kadar yayma (zorlanmadıkça).
- **Üst sınır:** `maxChars` öncesinde bölmeyi tercih eder; zorlanırsa `maxChars` konumunda böler.
- **Kırma tercihi:** `paragraph``newline``sentence``whitespace` → sert kırma.
- **Kod çitleri:** çitlerin içinde asla bölme; `maxChars` değerinde zorlandığında Markdown geçerliliğini korumak için çiti kapat + yeniden aç.
- **Kod çitleri:** çitlerin içinde asla bölmez; `maxChars` konumunda zorlandığında Markdown geçerliliğini korumak için çiti kapatıp yeniden açar.
`maxChars`, kanal `textChunkLimit` değerine sıkıştırılır; böylece kanal başına sınırları aşamazsınız.
`maxChars`, kanal `textChunkLimit` değerine sabitlenir; bu yüzden kanal başına sınırları aşamazsınız.
## Birleştirme (akış bloklarını birleştirme)
Blok akışı etkin olduğunda, OpenClaw **ardışık blok parçalarını**
göndermeden önce birleştirebilir. Bu, ilerlemeli çıktı sağlamaya devam ederken
Blok akışı etkin olduğunda, OpenClaw art arda gelen blok parçalarını
göndermeden önce **birleştirebilir**. Bu, ilerlemeli çıktı sağlamaya devam ederken
“tek satırlık spam”i azaltır.
- Birleştirme, flush yapmadan önce **boşta kalma aralıklarını** (`idleMs`) bekler.
- Tamponlar `maxChars` ile sınırlandırılır ve bu sınırı aşarlarsa flush edilir.
- `minChars`, yeterli metin birikene kadar küçük parçaların gönderilmesini önler
(son flush her zaman kalan metni gönderir).
- Birleştirici, `blockStreamingChunk.breakPreference`
değerinden türetilir (`paragraph` → `\n\n`, `newline``\n`, `sentence` → boşluk).
- Kanal geçersiz kılmaları `*.blockStreamingCoalesce` aracılığıyla kullanılabilir (hesap başına config'ler dahil).
- Birleştirme, boşaltmadan önce **boşta kalma aralıklarını** (`idleMs`) bekler.
- Arabellekler `maxChars` ile sınırlandırılır ve aşılırsa boşaltılır.
- `minChars`, yeterli metin birikene kadar çok küçük parçaların gönderilmesini engeller
(son boşaltma her zaman kalan metni gönderir).
- Birleştirici, `blockStreamingChunk.breakPreference` değerinden türetilir
(`paragraph` → `\n\n`, `newline``\n`, `sentence` → boşluk).
- Kanal geçersiz kılmaları `*.blockStreamingCoalesce` üzerinden kullanılabilir (hesap başına yapılandırmalar dahil).
- Varsayılan birleştirme `minChars`, geçersiz kılınmadıkça Signal/Slack/Discord için 1500'e yükseltilir.
## Bloklar arasında insan benzeri tempo
Blok akışı etkin olduğunda, blok yanıtları arasında
(ilk bloktan sonra) **rastgeleleştirilmiş bir duraklama** ekleyebilirsiniz. Bu, çoklu baloncuk yanıtlarının
Blok akışı etkin olduğunda, blok yanıtları arasında **rastgele bir duraklama**
ekleyebilirsiniz (ilk bloktan sonra). Bu, çok baloncuklu yanıtların
daha doğal hissettirmesini sağlar.
- Config: `agents.defaults.humanDelay` (ajan başına `agents.list[].humanDelay` ile geçersiz kılınabilir).
- Kipler: `off` (varsayılan), `natural` (8002500ms), `custom` (`minMs`/`maxMs`).
- Yalnızca **blok yanıtlarına** uygulanır, son yanıtlara veya araç özetlerine uygulanmaz.
- Yapılandırma: `agents.defaults.humanDelay` (ajan başına `agents.list[].humanDelay` ile geçersiz kılınır).
- Modlar: `off` (varsayılan), `natural` (8002500ms), `custom` (`minMs`/`maxMs`).
- Yalnızca **blok yanıtlarına** uygulanır; son yanıtlara veya araç özetlerine uygulanmaz.
## "Parçaları akıt veya her şeyi"
Bu, şu anlama gelir:
Bu, şuna karşılık gelir:
- **Parçaları akıt:** `blockStreamingDefault: "on"` + `blockStreamingBreak: "text_end"` (ilerledikçe yay). Telegram dışındaki kanallarda ayrıca `*.blockStreaming: true` gerekir.
- **Her şeyi sonda akıt:** `blockStreamingBreak: "message_end"` (bir kez flush yapar, çok uzunsa yine birden fazla parça olabilir).
- **Her şeyi sonda akıt:** `blockStreamingBreak: "message_end"` (bir kez boşaltır; çok uzunsa muhtemelen birden çok parça halinde).
- **Blok akışı yok:** `blockStreamingDefault: "off"` (yalnızca son yanıt).
**Kanal notu:** `*.blockStreaming`ıkça `true`
olarak ayarlanmadıkça blok akışı **kapalıdır**. Kanallar blok yanıtları olmadan da canlı önizleme
(`channels.<channel>.streaming`) akıtabilir.
**Kanal notu:** `*.blockStreaming`ıkça `true` olarak
ayarlanmadıkça blok akışı **kapalıdır**. Kanallar, blok yanıtları olmadan
canlı bir önizleme akıtabilir (`channels.<channel>.streaming`).
Config konumu hatırlatması: `blockStreaming*` varsayılanları kök config altında değil,
Yapılandırma konumu hatırlatması: `blockStreaming*` varsayılanları kök yapılandırmada değil,
`agents.defaults` altında bulunur.
## Önizleme akışı kipleri
## Önizleme akışı modları
Kurallı anahtar: `channels.<channel>.streaming`
Kanoni̇k anahtar: `channels.<channel>.streaming`
Kipler:
Modlar:
- `off`: önizleme akışını devre dışı bırak.
- `off`: önizleme akışını devre dışı bırakır.
- `partial`: en son metinle değiştirilen tek bir önizleme.
- `block`: parçalanmış/eklenmiş adımlarla önizleme güncellemeleri.
- `progress`: oluşturma sırasında ilerleme/durum önizlemesi, tamamlandığında son yanıt.
### Kanal eşleme
| Kanal | `off` | `partial` | `block` | `progress` |
| -------- | ----- | --------- | ------- | ------------------- |
| Kanal | `off` | `partial` | `block` | `progress` |
| -------- | ----- | --------- | ------- | ---------------------- |
| Telegram | ✅ | ✅ | ✅ | `partial` olarak eşlenir |
| Discord | ✅ | ✅ | ✅ | `partial` olarak eşlenir |
| Slack | ✅ | ✅ | ✅ | ✅ |
| Slack | ✅ | ✅ | ✅ | ✅ |
Yalnızca Slack:
- `streaming=partial` olduğunda `channels.slack.nativeStreaming`, Slack yerel akış API çağrılarınııp kapatır (varsayılan: `true`).
- `channels.slack.streaming.nativeTransport`, `channels.slack.streaming.mode="partial"` olduğunda Slack yerel akış API çağrılarınııp kapatır (varsayılan: `true`).
- Slack yerel akışı ve Slack asistan ileti dizisi durumu, bir yanıt ileti dizisi hedefi gerektirir; üst düzey DM'ler bu ileti dizisi tarzı önizlemeyi göstermez.
Eski anahtar geçişi:
- Telegram: `streamMode` + boolean `streaming`, otomatik olarak `streaming` enum'una geçirilir.
- Discord: `streamMode` + boolean `streaming`, otomatik olarak `streaming` enum'una geçirilir.
- Slack: `streamMode`, otomatik olarak `streaming` enum'una geçirilir; boolean `streaming`, otomatik olarak `nativeStreaming` değerine geçirilir.
- Telegram: `streamMode` + boolean `streaming`, `streaming` enum'una otomatik geçirilir.
- Discord: `streamMode` + boolean `streaming`, `streaming` enum'una otomatik geçirilir.
- Slack: `streamMode`, `streaming.mode` alanına otomatik geçirilir; boolean `streaming`, `streaming.mode` + `streaming.nativeTransport` alanlarına otomatik geçirilir; eski `nativeStreaming`, `streaming.nativeTransport` alanına otomatik geçirilir.
### Çalışma zamanı davranışı
Telegram:
- DM'ler ve grup/konular genelinde `sendMessage` + `editMessageText` önizleme güncellemelerini kullanır.
- DM'lerde ve grup/konularda önizleme güncellemeleri için `sendMessage` + `editMessageText` kullanır.
- Telegram blok akışııkça etkinleştirildiğinde önizleme akışı atlanır (çift akışı önlemek için).
- `/reasoning stream`, önizlemeye akıl yürütme yazabilir.
- `/reasoning stream`, gerekçelendirmeyi önizlemeye yazabilir.
Discord:
- gönder + düzenle önizleme mesajları kullanır.
- `block` kipi taslak parçalama (`draftChunk`) kullanır.
- Gönderme + düzenleme önizleme mesajları kullanır.
- `block` modu `draftChunk` taslak parçalamayı kullanır.
- Discord blok akışııkça etkinleştirildiğinde önizleme akışı atlanır.
Slack:
- `partial`, mevcut olduğunda Slack yerel akışını (`chat.startStream`/`append`/`stop`) kullanabilir.
- `block`, ekleme tarzı taslak önizlemeleri kullanır.
- `progress`, durum önizleme metni kullanır, ardından son yanıtı gönderir.
- `progress`, durum önizleme metni kullanır, ardından son yanıtı verir.
## İlgili
- [Mesajlar](/concepts/messages) — mesaj yaşam döngüsü ve teslimat
- [Yeniden deneme](/concepts/retry) — teslimat başarısızlığında yeniden deneme davranışı
- [Mesajlar](/tr/concepts/messages) — mesaj yaşam döngüsü ve teslimat
- [Yeniden deneme](/tr/concepts/retry) — teslimat hatasında yeniden deneme davranışı
- [Kanallar](/tr/channels) — kanal başına akış desteği

File diff suppressed because it is too large Load Diff

View File

@ -1,36 +1,36 @@
---
read_when:
- OpenClaw'ı ilk kez kuruyorsunuz
- Yaygın yapılandırma kalıplarını arıyorsunuz
- Belirli yapılandırma bölümlerine gitmek istiyorsunuz
summary: 'Yapılandırma genel bakışı: yaygın görevler, hızlı kurulum ve tam başvuru bağlantıları'
title: Configuration
- OpenClaw ilk kez kurulurken
- Yaygın yapılandırma kalıplarını ararken
- Belirli yapılandırma bölümlerine giderken
summary: 'Yapılandırmaya genel bakış: yaygın görevler, hızlı kurulum ve tam başvuru bağlantıları'
title: Yapılandırma
x-i18n:
generated_at: "2026-04-05T13:53:51Z"
generated_at: "2026-04-08T06:01:58Z"
model: gpt-5.4
provider: openai
source_hash: a39a7de09c5f9540785ec67f37d435a7a86201f0f5f640dae663054f35976712
source_hash: 199a1e515bd4003319e71593a2659bb883299a76ff67e273d92583df03c96604
source_path: gateway/configuration.md
workflow: 15
---
# Configuration
# Yapılandırma
OpenClaw, `~/.openclaw/openclaw.json` içinden isteğe bağlı bir <Tooltip tip="JSON5 yorumları ve sondaki virgülleri destekler">**JSON5**</Tooltip> yapılandırması okur.
OpenClaw, `~/.openclaw/openclaw.json` dosyasından isteğe bağlı bir <Tooltip tip="JSON5 yorumları ve sondaki virgülleri destekler">**JSON5**</Tooltip> yapılandırması okur.
Dosya yoksa OpenClaw güvenli varsayılanları kullanır. Yapılandırma eklemek için yaygın nedenler:
Dosya yoksa, OpenClaw güvenli varsayılanları kullanır. Yapılandırma eklemek için yaygın nedenler:
- Kanalları bağlamak ve bot'a kimlerin mesaj gönderebileceğini kontrol etmek
- Modelleri, araçları, sandbox kullanımını veya otomasyonu ayarlamak (cron, hook'lar)
- Oturumları, medyayı, ağı veya kullanıcı arayüzünü ince ayarlamak
- Kanalları bağlamak ve botla kimlerin mesajlaşabileceğini denetlemek
- Modelleri, araçları, sandbox kullanımını veya otomasyonu (cron, hook'lar) ayarlamak
- Oturumları, medyayı, ağ iletişimini veya kullanıcı arayüzünü ince ayarlamak
Kullanılabilir tüm alanlar için [tam başvuruya](/gateway/configuration-reference) bakın.
Kullanılabilir tüm alanlar için [tam başvuruya](/tr/gateway/configuration-reference) bakın.
<Tip>
**Yapılandırma konusunda yeni misiniz?** Etkileşimli kurulum için `openclaw onboard` ile başlayın veya tam kopyala-yapıştır yapılandırmaları için [Configuration Examples](/gateway/configuration-examples) kılavuzuna göz atın.
**Yapılandırma konusunda yeni misiniz?** Etkileşimli kurulum için `openclaw onboard` ile başlayın veya eksiksiz kopyala-yapıştır yapılandırmaları için [Yapılandırma Örnekleri](/tr/gateway/configuration-examples) kılavuzuna göz atın.
</Tip>
## Minimal yapılandırma
## En küçük yapılandırma
```json5
// ~/.openclaw/openclaw.json
@ -45,7 +45,7 @@ Kullanılabilir tüm alanlar için [tam başvuruya](/gateway/configuration-refer
<Tabs>
<Tab title="Etkileşimli sihirbaz">
```bash
openclaw onboard # tam başlangıç kurulumu akışı
openclaw onboard # tam ilk kurulum akışı
openclaw configure # yapılandırma sihirbazı
```
</Tab>
@ -58,49 +58,56 @@ Kullanılabilir tüm alanlar için [tam başvuruya](/gateway/configuration-refer
</Tab>
<Tab title="Kontrol UI">
[http://127.0.0.1:18789](http://127.0.0.1:18789) adresini açın ve **Config** sekmesini kullanın.
Kontrol UI, mevcut yapılandırma şemasından bir form oluşturur; buna alan
`title` / `description` belge meta verileri ile kullanılabilir olduğunda eklenti ve kanal şemaları da dahildir. Ayrıca kaçış noktası olarak bir **Raw JSON** düzenleyici sunar. Ayrıntılı inceleme
arayüzleri ve diğer araçlar için gateway ayrıca
yol kapsamlı tek bir şema düğümü ve hemen altındaki çocuk özetlerini almak üzere
`config.schema.lookup` yöntemini de açığa çıkarır.
Kontrol UI, canlı yapılandırma şemasından bir form oluşturur; buna mevcut
olduğunda alan `title` / `description` belge meta verileri ile plugin ve kanal şemaları da dahildir
ve kaçış kapağı olarak bir **Raw JSON** düzenleyicisi sunar. Ayrıntılı inceleme
kullanıcı arayüzleri ve diğer araçlar için gateway ayrıca
tek bir yol kapsamlı şema düğümünü ve doğrudan alt özetleri getirmek üzere `config.schema.lookup`
sunar.
</Tab>
<Tab title="Doğrudan düzenleme">
`~/.openclaw/openclaw.json` dosyasını doğrudan düzenleyin. Gateway dosyayı izler ve değişiklikleri otomatik olarak uygular (bkz. [anında yeniden yükleme](#config-hot-reload)).
`~/.openclaw/openclaw.json` dosyasını doğrudan düzenleyin. Gateway dosyayı izler ve değişiklikleri otomatik olarak uygular ([anında yeniden yükleme](#config-hot-reload) bölümüne bakın).
</Tab>
</Tabs>
## Sıkı doğrulama
## Katı doğrulama
<Warning>
OpenClaw yalnızca şemayla tamamen eşleşen yapılandırmaları kabul eder. Bilinmeyen anahtarlar, hatalı türler veya geçersiz değerler Gateway'in **başlatılmayı reddetmesine** neden olur. Tek kök düzey istisna `$schema`dır (string); böylece düzenleyiciler JSON Schema meta verisini ekleyebilir.
OpenClaw yalnızca şemayla tamamen eşleşen yapılandırmaları kabul eder. Bilinmeyen anahtarlar, hatalı türler veya geçersiz değerler Gateway'nin **başlatılmayı reddetmesine** neden olur. Kök düzeyindeki tek istisna `$schema` (string) alanıdır; böylece düzenleyiciler JSON Schema meta verisi ekleyebilir.
</Warning>
Şema araç notları:
Şema aracı notları:
- `openclaw config schema`, Kontrol UI ve yapılandırma doğrulaması tarafından kullanılan aynı JSON Schema ailesini yazdırır.
- `openclaw config schema`, Kontrol UI tarafından kullanılan aynı JSON Schema ailesini
ve yapılandırma doğrulamasını yazdırır.
- Bu şema çıktısını, `openclaw.json` için kanonik makine tarafından okunabilir sözleşme olarak
değerlendirin; bu genel bakış ve yapılandırma başvurusu bunu özetler.
- Alan `title` ve `description` değerleri, düzenleyici ve form araçları için
şema çıktısına taşınır.
- İç içe nesne, joker (`*`) ve dizi öğesi (`[]`) girişleri, eşleşen alan belgeleri bulunduğunda aynı
belge meta verisini devralır.
- `anyOf` / `oneOf` / `allOf` birleşim dalları da aynı belge
- İç içe nesne, joker (`*`) ve dizi öğesi (`[]`) girdileri, eşleşen alan belgeleri mevcut olduğunda
aynı belge meta verisini devralır.
- `anyOf` / `oneOf` / `allOf` bileşim dalları da aynı belge
meta verisini devralır; böylece union/intersection varyantları aynı alan yardımını korur.
- `config.schema.lookup`, bir normalize edilmiş yapılandırma yolunu; sığ bir
şema düğümüyle (`title`, `description`, `type`, `enum`, `const`, yaygın sınırlar
ve benzer doğrulama alanları), eşleşen UI ipucu meta verisiyle ve ayrıntılı araçlar için hemen alt çocuk
özetleriyle döndürür.
- Gateway mevcut manifest kaydını yükleyebildiğinde çalışma zamanı eklenti/kanal şemaları buna birleştirilir.
- `config.schema.lookup`, tek bir normalize edilmiş yapılandırma yolunu; sığ bir
şema düğümü (`title`, `description`, `type`, `enum`, `const`, yaygın sınırlar
ve benzer doğrulama alanları), eşleşen UI ipucu meta verisi ve ayrıntılı inceleme araçları için doğrudan alt
özetlerle birlikte döndürür.
- Çalışma zamanı plugin/kanal şemaları, gateway mevcut manifest kayıt defterini yükleyebildiğinde
birleştirilir.
- `pnpm config:docs:check`, dokümantasyona yönelik yapılandırma temel
yapıları ile mevcut şema yüzeyi arasındaki sapmayı tespit eder.
Doğrulama başarısız olduğunda:
- Gateway açılmaz
- Yalnızca tanılama komutları çalışır (`openclaw doctor`, `openclaw logs`, `openclaw health`, `openclaw status`)
- Tam sorunları görmek için `openclaw doctor` çalıştırın
- Kesin sorunları görmek için `openclaw doctor` çalıştırın
- Onarımları uygulamak için `openclaw doctor --fix` (veya `--yes`) çalıştırın
## Yaygın görevler
<AccordionGroup>
<Accordion title="Bir kanal kurma (WhatsApp, Telegram, Discord vb.)">
<Accordion title="Bir kanal ayarlama (WhatsApp, Telegram, Discord vb.)">
Her kanalın `channels.<provider>` altında kendi yapılandırma bölümü vardır. Kurulum adımları için ilgili kanal sayfasına bakın:
- [WhatsApp](/tr/channels/whatsapp) — `channels.whatsapp`
@ -114,7 +121,7 @@ Doğrulama başarısız olduğunda:
- [iMessage](/tr/channels/imessage) — `channels.imessage`
- [Mattermost](/tr/channels/mattermost) — `channels.mattermost`
Tüm kanallar aynı DM ilkesi kalıbını paylaşır:
Tüm kanallar aynı DM ilke düzenini paylaşır:
```json5
{
@ -123,7 +130,7 @@ Doğrulama başarısız olduğunda:
enabled: true,
botToken: "123:abc",
dmPolicy: "pairing", // pairing | allowlist | open | disabled
allowFrom: ["tg:123"], // yalnızca allowlist/open için
allowFrom: ["tg:123"], // only for allowlist/open
},
},
}
@ -132,7 +139,7 @@ Doğrulama başarısız olduğunda:
</Accordion>
<Accordion title="Modelleri seçme ve yapılandırma">
Birincil modeli ve isteğe bağlı geri dönüşleri ayarlayın:
Birincil modeli ve isteğe bağlı yedekleri ayarlayın:
```json5
{
@ -151,30 +158,30 @@ Doğrulama başarısız olduğunda:
}
```
- `agents.defaults.models`, model kataloğunu tanımlar ve `/model` için izin listesi görevi görür.
- `agents.defaults.models`, model kataloğunu tanımlar ve `/model` için allowlist görevi görür.
- Model başvuruları `provider/model` biçimini kullanır (ör. `anthropic/claude-opus-4-6`).
- `agents.defaults.imageMaxDimensionPx`, transkript/araç görüntüsü küçültmeyi denetler (varsayılan `1200`); daha düşük değerler genellikle ekran görüntüsü ırlıklı çalıştırmalarda vision token kullanımını azaltır.
- Sohbet içinde model değiştirme için [Models CLI](/concepts/models), kimlik doğrulama rotasyonu ve geri dönüş davranışı için [Model Failover](/concepts/model-failover) bölümüne bakın.
- Özel/self-hosted sağlayıcılar için başvurudaki [Custom providers](/gateway/configuration-reference#custom-providers-and-base-urls) bölümüne bakın.
- `agents.defaults.imageMaxDimensionPx`, transkript/araç görüntüsü küçültmeyi denetler (varsayılan `1200`); daha düşük değerler genellikle ekran görüntüsü yoğun çalıştırmalarda vision token kullanımını azaltır.
- Sohbette model değiştirme için [Models CLI](/tr/concepts/models), kimlik doğrulama rotasyonu ve yedek davranışı için [Model Failover](/tr/concepts/model-failover) bölümüne bakın.
- Özel/kendi barındırdığınız sağlayıcılar için başvurudaki [Custom providers](/tr/gateway/configuration-reference#custom-providers-and-base-urls) bölümüne bakın.
</Accordion>
<Accordion title="Bot'a kimlerin mesaj gönderebileceğini kontrol etme">
DM erişimi kanal başına `dmPolicy` ile denetlenir:
<Accordion title="Botla kimlerin mesajlaşabileceğini denetleme">
DM erişimi, kanal başına `dmPolicy` ile denetlenir:
- `"pairing"` (varsayılan): bilinmeyen göndericiler onay için tek kullanımlık bir eşleme kodu alır
- `"allowlist"`: yalnızca `allowFrom` içindeki göndericiler (veya eşlenmiş izin deposu)
- `"open"`: tüm gelen DM'lere izin verilir (`allowFrom: ["*"]` gerektirir)
- `"pairing"` (varsayılan): bilinmeyen göndericiler, onay için tek kullanımlık eşleştirme kodu alır
- `"allowlist"`: yalnızca `allowFrom` içindeki göndericiler (veya eşleştirilmiş izin deposu)
- `"open"`: tüm gelen DM'lere izin verir (`allowFrom: ["*"]` gerektirir)
- `"disabled"`: tüm DM'leri yok sayar
Gruplar için `groupPolicy` + `groupAllowFrom` veya kanala özgü izin listelerini kullanın.
Gruplar için `groupPolicy` + `groupAllowFrom` veya kanala özgü allowlist'leri kullanın.
Kanal başına ayrıntılar için [tam başvuruya](/gateway/configuration-reference#dm-and-group-access) bakın.
Kanal başına ayrıntılar için [tam başvuruya](/tr/gateway/configuration-reference#dm-and-group-access) bakın.
</Accordion>
<Accordion title="Grup sohbeti mention geçitlemesini kurma">
Grup mesajları varsayılan olarak **mention gerektirir**. Ajan başına kalıpları yapılandırın:
<Accordion title="Grup sohbeti mention geçidini ayarlama">
Grup mesajları varsayılan olarak **mention gerektirir**. Desenleri agent başına yapılandırın:
```json5
{
@ -197,14 +204,14 @@ Doğrulama başarısız olduğunda:
```
- **Meta veri mention'ları**: yerel @-mention'lar (WhatsApp dokunarak mention, Telegram @bot vb.)
- **Metin kalıpları**: `mentionPatterns` içindeki güvenli regex kalıpları
- Kanal başına geçersiz kılmalar ve self-chat modu için [tam başvuruya](/gateway/configuration-reference#group-chat-mention-gating) bakın.
- **Metin desenleri**: `mentionPatterns` içindeki güvenli regex desenleri
- Kanal başına geçersiz kılmalar ve self-chat modu için [tam başvuruya](/tr/gateway/configuration-reference#group-chat-mention-gating) bakın.
</Accordion>
<Accordion title="Ajan başına Skills kısıtlama">
Paylaşılan bir temel için `agents.defaults.skills` kullanın, ardından belirli
ajanları `agents.list[].skills` ile geçersiz kılın:
<Accordion title="Agent başına Skills kısıtlama">
Paylaşılan bir temel için `agents.defaults.skills` kullanın, sonra belirli
agent'ları `agents.list[].skills` ile geçersiz kılın:
```json5
{
@ -214,23 +221,23 @@ Doğrulama başarısız olduğunda:
},
list: [
{ id: "writer" }, // github, weather devralır
{ id: "docs", skills: ["docs-search"] }, // varsayılanların yerini alır
{ id: "locked-down", skills: [] }, // skill yok
{ id: "docs", skills: ["docs-search"] }, // varsayılanların yerine geçer
{ id: "locked-down", skills: [] }, // Skills yok
],
},
}
```
- Varsayılan olarak kısıtlanmamış Skills için `agents.defaults.skills` değerini atlayın.
- Varsayılanları devralmak için `agents.list[].skills` değerini atlayın.
- Skill olmaması için `agents.list[].skills: []` ayarlayın.
- [Skills](/tools/skills), [Skills config](/tools/skills-config) ve
[Configuration Reference](/gateway/configuration-reference#agentsdefaultsskills) bölümüne bakın.
- Varsayılan olarak kısıtlanmamış Skills için `agents.defaults.skills` alanını atlayın.
- Varsayılanları devralmak için `agents.list[].skills` alanını atlayın.
- Hiç Skills olmaması için `agents.list[].skills: []` ayarlayın.
- [Skills](/tr/tools/skills), [Skills config](/tr/tools/skills-config) ve
[Configuration Reference](/tr/gateway/configuration-reference#agentsdefaultsskills) bölümlerine bakın.
</Accordion>
<Accordion title="Gateway kanal sağlık izlemeyi ayarlama">
Gateway'in eski görünümlü kanalları ne kadar agresif biçimde yeniden başlatacağını denetleyin:
<Accordion title="Gateway kanal sağlık izlemesini ince ayarlama">
Gateway'nin bayat görünen kanalları ne kadar agresif biçimde yeniden başlatacağını denetleyin:
```json5
{
@ -254,13 +261,13 @@ Doğrulama başarısız olduğunda:
- Sağlık izleme yeniden başlatmalarını küresel olarak devre dışı bırakmak için `gateway.channelHealthCheckMinutes: 0` ayarlayın.
- `channelStaleEventThresholdMinutes`, denetim aralığından büyük veya ona eşit olmalıdır.
- Küresel izleyiciyi kapatmadan tek bir kanal veya hesap için otomatik yeniden başlatmaları kapatmak amacıyla `channels.<provider>.healthMonitor.enabled` veya `channels.<provider>.accounts.<id>.healthMonitor.enabled` kullanın.
- Operasyonel hata ayıklama için [Health Checks](/gateway/health) ve tüm alanlar için [tam başvuruya](/gateway/configuration-reference#gateway) bakın.
- Küresel izleyiciyi devre dışı bırakmadan tek bir kanal veya hesap için otomatik yeniden başlatmaları kapatmak üzere `channels.<provider>.healthMonitor.enabled` veya `channels.<provider>.accounts.<id>.healthMonitor.enabled` kullanın.
- İşlemsel hata ayıklama için [Health Checks](/tr/gateway/health), tüm alanlar için ise [tam başvuruya](/tr/gateway/configuration-reference#gateway) bakın.
</Accordion>
<Accordion title="Oturumları ve sıfırlamaları yapılandırma">
Oturumlar, konuşmanın sürekliliğini ve yalıtımını denetler:
Oturumlar, konuşma sürekliliğini ve yalıtımı denetler:
```json5
{
@ -281,14 +288,14 @@ Doğrulama başarısız olduğunda:
```
- `dmScope`: `main` (paylaşılan) | `per-peer` | `per-channel-peer` | `per-account-channel-peer`
- `threadBindings`: iş parçacığına bağlı oturum yönlendirmesi için küresel varsayılanlar (Discord `/focus`, `/unfocus`, `/agents`, `/session idle` ve `/session max-age` destekler).
- Kapsamlama, kimlik bağlantıları ve gönderme ilkesi için [Session Management](/concepts/session) bölümüne bakın.
- Tüm alanlar için [tam başvuruya](/gateway/configuration-reference#session) bakın.
- `threadBindings`: thread'e bağlı oturum yönlendirmesi için küresel varsayılanlar (Discord `/focus`, `/unfocus`, `/agents`, `/session idle` ve `/session max-age` destekler).
- Kapsam, kimlik bağlantıları ve gönderim ilkesi için [Session Management](/tr/concepts/session) bölümüne bakın.
- Tüm alanlar için [tam başvuruya](/tr/gateway/configuration-reference#session) bakın.
</Accordion>
<Accordion title="Sandbox kullanımını etkinleştirme">
Ajan oturumlarını yalıtılmış Docker kapsayıcılarında çalıştırın:
Agent oturumlarını yalıtılmış Docker konteynerlerinde çalıştırın:
```json5
{
@ -305,11 +312,11 @@ Doğrulama başarısız olduğunda:
Önce imajı oluşturun: `scripts/sandbox-setup.sh`
Tam kılavuz için [Sandboxing](/gateway/sandboxing), tüm seçenekler için [tam başvuruya](/gateway/configuration-reference#agentsdefaultssandbox) bakın.
Tam kılavuz için [Sandboxing](/tr/gateway/sandboxing), tüm seçenekler için ise [tam başvuruya](/tr/gateway/configuration-reference#agentsdefaultssandbox) bakın.
</Accordion>
<Accordion title="Resmi iOS sürümleri için relay destekli push'u etkinleştirme">
<Accordion title="Resmi iOS derlemeleri için relay destekli push özelliğini etkinleştirme">
Relay destekli push, `openclaw.json` içinde yapılandırılır.
Bunu gateway yapılandırmasında ayarlayın:
@ -330,7 +337,7 @@ Doğrulama başarısız olduğunda:
}
```
CLI eşdeğeri:
Eşdeğer CLI komutu:
```bash
openclaw config set gateway.push.apns.relay.baseUrl https://relay.example.com
@ -338,35 +345,35 @@ Doğrulama başarısız olduğunda:
Bunun yaptığı şey:
- Gateway'in `push.test`, uyandırma dürtmeleri ve yeniden bağlanma uyandırmalarını harici relay üzerinden göndermesine izin verir.
- Eşlenmiş iOS uygulaması tarafından iletilen, kayıt kapsamlı bir gönderme izni kullanır. Gateway'in dağıtım genelinde bir relay belirtecine ihtiyacı yoktur.
- Her relay destekli kaydı, iOS uygulamasının eşlendiği gateway kimliğine bağlar; böylece başka bir gateway saklanan kaydı yeniden kullanamaz.
- Yerel/elle oluşturulmuş iOS sürümlerini doğrudan APNs üzerinde tutar. Relay destekli gönderimler yalnızca relay üzerinden kaydolmuş resmi dağıtılmış sürümlere uygulanır.
- Resmi/TestFlight iOS sürümüne gömülü relay temel URL'siyle eşleşmelidir; böylece kayıt ve gönderim trafiği aynı relay dağıtımına ulaşır.
- Gateway'nin `push.test`, uyandırma dürtmeleri ve yeniden bağlanma uyandırmalarını harici relay üzerinden göndermesine izin verir.
- Eşleştirilmiş iOS uygulaması tarafından iletilen kayıt kapsamlı bir gönderim yetkisi kullanır. Gateway'nin dağıtım geneli bir relay token'ına ihtiyacı yoktur.
- Her relay destekli kaydı, iOS uygulamasının eşleştirildiği gateway kimliğine bağlar; böylece başka bir gateway saklanan kaydı yeniden kullanamaz.
- Yerel/el ile oluşturulmuş iOS derlemelerini doğrudan APNs üzerinde tutar. Relay destekli gönderimler yalnızca relay üzerinden kayıt olan resmi dağıtılmış derlemelere uygulanır.
- Kayıt ve gönderim trafiğinin aynı relay dağıtımına ulaşması için resmi/TestFlight iOS derlemesine gömülü relay temel URL'si ile eşleşmelidir.
Uçtan uca akış:
1. Aynı relay temel URL'siyle derlenmiş resmi/TestFlight iOS sürümünü yükleyin.
1. Aynı relay temel URL'si ile derlenmiş resmi/TestFlight bir iOS derlemesi yükleyin.
2. Gateway üzerinde `gateway.push.apns.relay.baseUrl` ayarlayın.
3. iOS uygulamasını gateway ile eşleyin ve hem düğüm hem operatör oturumlarının bağlanmasına izin verin.
4. iOS uygulaması gateway kimliğini alır, App Attest ile uygulama makbuzunu kullanarak relay'e kaydolur ve ardından relay destekli `push.apns.register` yükünü eşlenmiş gateway'e yayımlar.
5. Gateway relay tanıtıcısını ve gönderme iznini saklar, ardından bunları `push.test`, uyandırma dürtmeleri ve yeniden bağlanma uyandırmaları için kullanır.
3. iOS uygulamasını gateway ile eşleştirin ve hem node hem operatör oturumlarının bağlanmasına izin verin.
4. iOS uygulaması gateway kimliğini alır, App Attest ve uygulama makbuzunu kullanarak relay'e kayıt olur, ardından relay destekli `push.apns.register` yükünü eşleştirilmiş gateway'e yayınlar.
5. Gateway relay tanıtıcısını ve gönderim yetkisini saklar, ardından bunları `push.test`, uyandırma dürtmeleri ve yeniden bağlanma uyandırmaları için kullanır.
Operasyonel notlar:
İşletim notları:
- iOS uygulamasını farklı bir gateway'e geçirirseniz, uygulamayı yeniden bağlayın ki bu gateway'e bağlı yeni bir relay kaydı yayımlayabilsin.
- Farklı bir relay dağıtımını işaret eden yeni bir iOS sürümü yayımlarsanız, uygulama eski relay kaynağını yeniden kullanmak yerine önbelleğe alınmış relay kaydını yeniler.
- iOS uygulamasını farklı bir gateway'e geçirirseniz, uygulamanın o gateway'e bağlanmış yeni bir relay kaydı yayımlayabilmesi için yeniden bağlayın.
- Farklı bir relay dağıtımını işaret eden yeni bir iOS derlemesi yayımlarsanız, uygulama eski relay kaynağını yeniden kullanmak yerine önbelleğe alınmış relay kaydını yeniler.
Uyumluluk notu:
- `OPENCLAW_APNS_RELAY_BASE_URL` ve `OPENCLAW_APNS_RELAY_TIMEOUT_MS` hâlâ geçici ortam değişkeni geçersiz kılmaları olarak çalışır.
- `OPENCLAW_APNS_RELAY_ALLOW_HTTP=true` yalnızca loopback geliştirmesi için bir kaçış noktası olmaya devam eder; HTTP relay URL'lerini yapılandırmada kalıcı hale getirmeyin.
- `OPENCLAW_APNS_RELAY_BASE_URL` ve `OPENCLAW_APNS_RELAY_TIMEOUT_MS` geçici env geçersiz kılmaları olarak hâlâ çalışır.
- `OPENCLAW_APNS_RELAY_ALLOW_HTTP=true` yalnızca loopback için bir geliştirme kaçış kapağı olarak kalır; HTTP relay URL'lerini yapılandırmada kalıcı olarak tutmayın.
Uçtan uca akış için [iOS App](/platforms/ios#relay-backed-push-for-official-builds), relay güvenlik modeli için [Authentication and trust flow](/platforms/ios#authentication-and-trust-flow) bölümüne bakın.
Uçtan uca akış için [iOS App](/tr/platforms/ios#relay-backed-push-for-official-builds), relay güvenlik modeli için ise [Authentication and trust flow](/tr/platforms/ios#authentication-and-trust-flow) bölümlerine bakın.
</Accordion>
<Accordion title="Heartbeat kurma (dönemsel yoklamalar)">
<Accordion title="Heartbeat ayarlama (düzenli yoklamalar)">
```json5
{
agents: {
@ -380,14 +387,14 @@ Doğrulama başarısız olduğunda:
}
```
- `every`: süre dizgesi (`30m`, `2h`). Devre dışı bırakmak için `0m` ayarlayın.
- `every`: süre string'i (`30m`, `2h`). Devre dışı bırakmak için `0m` ayarlayın.
- `target`: `last` | `none` | `<channel-id>` (örneğin `discord`, `matrix`, `telegram` veya `whatsapp`)
- `directPolicy`: DM tarzı heartbeat hedefleri için `allow` (varsayılan) veya `block`
- Tam kılavuz için [Heartbeat](/gateway/heartbeat) bölümüne bakın.
- Tam kılavuz için [Heartbeat](/tr/gateway/heartbeat) bölümüne bakın.
</Accordion>
<Accordion title="Cron işlerini yapılandırma">
<Accordion title="Cron işleri yapılandırma">
```json5
{
cron: {
@ -402,13 +409,13 @@ Doğrulama başarısız olduğunda:
}
```
- `sessionRetention`: tamamlanmış yalıtılmış çalıştırma oturumlarını `sessions.json` içinden budar (varsayılan `24h`; devre dışı bırakmak için `false` ayarlayın).
- `runLog`: `cron/runs/<jobId>.jsonl` dosyasını boyut ve korunacak satır sayısına göre budar.
- Özellik genel görünümü ve CLI örnekleri için [Cron jobs](/tr/automation/cron-jobs) bölümüne bakın.
- `sessionRetention`: tamamlanan yalıtılmış çalıştırma oturumlarını `sessions.json` içinden budar (varsayılan `24h`; devre dışı bırakmak için `false` ayarlayın).
- `runLog`: `cron/runs/<jobId>.jsonl` dosyasını boyut ve tutulan satır sayısına göre budar.
- Özellik genel bakışı ve CLI örnekleri için [Cron jobs](/tr/automation/cron-jobs) bölümüne bakın.
</Accordion>
<Accordion title="Webhook'ları (hook'ları) kurma">
<Accordion title="Webhook'ları yapılandırma (hook'lar)">
Gateway üzerinde HTTP webhook uç noktalarını etkinleştirin:
```json5
@ -433,20 +440,20 @@ Doğrulama başarısız olduğunda:
```
Güvenlik notu:
- Tüm hook/webhook yük içeriğini güvenilmez girdi olarak değerlendirin.
- Özel bir `hooks.token` kullanın; paylaşılan Gateway belirtecini yeniden kullanmayın.
- Hook kimlik doğrulaması yalnızca başlık temellidir (`Authorization: Bearer ...` veya `x-openclaw-token`); sorgu dizgesi belirteçleri reddedilir.
- `hooks.path`, `/` olamaz; webhook girişini `/hooks` gibi özel bir alt yolda tutun.
- Sıkı kapsamlı hata ayıklama yapmıyorsanız güvensiz içerik atlama bayraklarını (`hooks.gmail.allowUnsafeExternalContent`, `hooks.mappings[].allowUnsafeExternalContent`) devre dışı bırakılmış halde tutun.
- `hooks.allowRequestSessionKey` etkinse, çağıranın seçtiği oturum anahtarlarını sınırlamak için `hooks.allowedSessionKeyPrefixes` de ayarlayın.
- Hook tarafından sürülen ajanlar için güçlü modern model katmanlarını ve sıkı araç ilkesini tercih edin (örneğin mümkün olduğunda yalnızca mesajlaşma + sandbox).
- Tüm hook/webhook yük içeriklerini güvenilmeyen girdi olarak değerlendirin.
- Ayrı bir `hooks.token` kullanın; paylaşılan Gateway token'ını yeniden kullanmayın.
- Hook kimlik doğrulaması yalnızca üstbilgi tabanlıdır (`Authorization: Bearer ...` veya `x-openclaw-token`); sorgu dizesi token'ları reddedilir.
- `hooks.path` `/` olamaz; webhook girişini `/hooks` gibi ayrılmış bir alt yolda tutun.
- Sıkı kapsamlı hata ayıklama yapmıyorsanız güvenli olmayan içerik atlama bayraklarını (`hooks.gmail.allowUnsafeExternalContent`, `hooks.mappings[].allowUnsafeExternalContent`) devre dışı bırakılmış bırakın.
- `hooks.allowRequestSessionKey` etkinleştirirseniz, çağıran tarafından seçilen oturum anahtarlarını sınırlamak için ayrıca `hooks.allowedSessionKeyPrefixes` ayarlayın.
- Hook tarafından sürülen agent'lar için mümkün olduğunda güçlü modern model katmanlarını ve sıkı araç ilkesini tercih edin (örneğin yalnızca mesajlaşma artı sandbox kullanımı).
Tüm eşleme seçenekleri ve Gmail entegrasyonu için [tam başvuruya](/gateway/configuration-reference#hooks) bakın.
Tüm eşleme seçenekleri ve Gmail entegrasyonu için [tam başvuruya](/tr/gateway/configuration-reference#hooks) bakın.
</Accordion>
<Accordion title="Çok ajanlı yönlendirmeyi yapılandırma">
Ayrı çalışma alanları ve oturumlarla birden fazla yalıtılmış ajan çalıştırın:
<Accordion title="Çoklu agent yönlendirmesini yapılandırma">
Ayrı çalışma alanları ve oturumlarla birden çok yalıtılmış agent çalıştırın:
```json5
{
@ -463,11 +470,11 @@ Doğrulama başarısız olduğunda:
}
```
Bağlama kuralları ve ajan başına erişim profilleri için [Multi-Agent](/concepts/multi-agent) ve [tam başvuruya](/gateway/configuration-reference#multi-agent-routing) bakın.
Bağlama kuralları ve agent başına erişim profilleri için [Multi-Agent](/tr/concepts/multi-agent) ve [tam başvuruya](/tr/gateway/configuration-reference#multi-agent-routing) bakın.
</Accordion>
<Accordion title="Yapılandırmayı birden fazla dosyaya bölme ($include)">
<Accordion title="Yapılandırmayı birden çok dosyaya bölme ($include)">
Büyük yapılandırmaları düzenlemek için `$include` kullanın:
```json5
@ -481,11 +488,11 @@ Doğrulama başarısız olduğunda:
}
```
- **Tek dosya**: kapsayan nesnenin yerini alır
- **Dosya dizisi**: sırayla derin birleştirilir (sonraki kazanır)
- **Kardeş anahtarlar**: include'lardan sonra birleştirilir (dahil edilen değerleri geçersiz kılar)
- **İç içe include'lar**: 10 düzeye kadar desteklenir
- **Göreli yollar**: include eden dosyaya göre çözülür
- **Tek dosya**: içeren nesnenin yerine geçer
- **Dosya dizisi**: sırayla derinlemesine birleştirilir (sonraki kazanır)
- **Kardeş anahtarlar**: include'ların ardından birleştirilir (dahil edilen değerleri geçersiz kılar)
- **İç içe include'lar**: 10 düzey derinliğe kadar desteklenir
- **Göreli yollar**: dahil eden dosyaya göre çözülür
- **Hata işleme**: eksik dosyalar, ayrıştırma hataları ve döngüsel include'lar için açık hatalar
</Accordion>
@ -497,12 +504,12 @@ Gateway, `~/.openclaw/openclaw.json` dosyasını izler ve değişiklikleri otoma
### Yeniden yükleme modları
| Mod | Davranış |
| Mod | Davranış |
| ---------------------- | --------------------------------------------------------------------------------------- |
| **`hybrid`** (varsayılan) | Güvenli değişiklikleri anında uygular. Kritik olanlar için otomatik olarak yeniden başlatır. |
| **`hot`** | Yalnızca güvenli değişiklikleri anında uygular. Yeniden başlatma gerektiğinde bir uyarı kaydeder — bunu siz yaparsınız. |
| **`restart`** | Güvenli olsun olmasın her yapılandırma değişikliğinde Gateway'i yeniden başlatır. |
| **`off`** | Dosya izlemeyi devre dışı bırakır. Değişiklikler bir sonraki elle yeniden başlatmada etkili olur. |
| **`hybrid`** (varsayılan) | Güvenli değişiklikleri anında uygular. Kritik olanlar için otomatik olarak yeniden başlatır. |
| **`hot`** | Yalnızca güvenli değişiklikleri anında uygular. Yeniden başlatma gerektiğinde bir uyarı kaydeder — bunu siz yönetirsiniz. |
| **`restart`** | Güvenli olsun olmasın her yapılandırma değişikliğinde Gateway'yi yeniden başlatır. |
| **`off`** | Dosya izlemeyi devre dışı bırakır. Değişiklikler bir sonraki el ile yeniden başlatmada etkili olur. |
```json5
{
@ -512,63 +519,63 @@ Gateway, `~/.openclaw/openclaw.json` dosyasını izler ve değişiklikleri otoma
}
```
### Neler anında uygulanır, neler yeniden başlatma ister
### Neler anında uygulanır, neler yeniden başlatma gerektirir
Çoğu alan kesinti olmadan anında uygulanır. `hybrid` modunda, yeniden başlatma gerektiren değişiklikler otomatik olarak ele alınır.
Çoğu alan, kesinti olmadan anında uygulanır. `hybrid` modunda, yeniden başlatma gerektiren değişiklikler otomatik olarak ele alınır.
| Kategori | Alanlar | Yeniden başlatma gerekir mi? |
| ------------------- | -------------------------------------------------------------------- | ---------------------------- |
| Kanallar | `channels.*`, `web` (WhatsApp) — tüm yerleşik ve uzantı kanalları | Hayır |
| Ajan ve modeller | `agent`, `agents`, `models`, `routing` | Hayır |
| Otomasyon | `hooks`, `cron`, `agent.heartbeat` | Hayır |
| Oturumlar ve mesajlar | `session`, `messages` | Hayır |
| Araçlar ve medya | `tools`, `browser`, `skills`, `audio`, `talk` | Hayır |
| UI ve diğerleri | `ui`, `logging`, `identity`, `bindings` | Hayır |
| Gateway sunucusu | `gateway.*` (port, bind, auth, tailscale, TLS, HTTP) | **Evet** |
| Altyapı | `discovery`, `canvasHost`, `plugins` | **Evet** |
| Kategori | Alanlar | Yeniden başlatma gerekiyor mu? |
| ------------------- | -------------------------------------------------------------------- | --------------- |
| Kanallar | `channels.*`, `web` (WhatsApp) — tüm yerleşik ve uzantı kanalları | Hayır |
| Agent ve modeller | `agent`, `agents`, `models`, `routing` | Hayır |
| Otomasyon | `hooks`, `cron`, `agent.heartbeat` | Hayır |
| Oturumlar ve mesajlar | `session`, `messages` | Hayır |
| Araçlar ve medya | `tools`, `browser`, `skills`, `audio`, `talk` | Hayır |
| UI ve çeşitli | `ui`, `logging`, `identity`, `bindings` | Hayır |
| Gateway sunucusu | `gateway.*` (port, bind, auth, tailscale, TLS, HTTP) | **Evet** |
| Altyapı | `discovery`, `canvasHost`, `plugins` | **Evet** |
<Note>
`gateway.reload` ve `gateway.remote` istisnadır — bunları değiştirmek **yeniden başlatmayı** tetiklemez.
`gateway.reload` ve `gateway.remote` istisnadır — bunları değiştirmek yeniden başlatmayı **tetiklemez**.
</Note>
## Config RPC (programlı güncellemeler)
<Note>
Kontrol düzlemi yazma RPC'leri (`config.apply`, `config.patch`, `update.run`) `deviceId+clientIp` başına **60 saniyede 3 istek** ile hız sınırlıdır. Sınır uygulandığında, RPC `retryAfterMs` ile birlikte `UNAVAILABLE` döndürür.
Kontrol düzlemi yazma RPC'leri (`config.apply`, `config.patch`, `update.run`) her `deviceId+clientIp` için **60 saniyede 3 istek** ile oran sınırlıdır. Sınır uygulandığında RPC, `retryAfterMs` ile birlikte `UNAVAILABLE` döndürür.
</Note>
Güvenli/varsayılan akış:
- `config.schema.lookup`: sığ bir
şema düğümü, eşleşen ipucu meta verisi ve hemen alt çocuk özetleriyle tek bir yol kapsamlı yapılandırma alt ağacını inceleyin
- `config.get`: mevcut anlık görüntüyü + hash'i alın
şema düğümü, eşleşen ipucu meta verisi ve doğrudan alt özetlerle tek bir yol kapsamlı yapılandırma alt ağacını inceleyin
- `config.get`: geçerli anlık görüntüyü + hash'i alın
- `config.patch`: tercih edilen kısmi güncelleme yolu
- `config.apply`: yalnızca tam yapılandırma değiştirme için
- `update.run`: açık self-update + yeniden başlatma
- `config.apply`: yalnızca tam yapılandırma değiştirme
- `update.run`: açık kendi kendini güncelleme + yeniden başlatma
Tüm yapılandırmanın yerini değiştirmiyorsanız `config.schema.lookup`
Tüm yapılandırmayı değiştirmiyorsanız, `config.schema.lookup`
ardından `config.patch` tercih edin.
<AccordionGroup>
<Accordion title="config.apply (tam değiştirme)">
Tam yapılandırmayı tek adımda doğrular + yazar ve Gateway'i yeniden başlatır.
Tam yapılandırmayı doğrular + yazar ve Gateway'yi tek adımda yeniden başlatır.
<Warning>
`config.apply`, **tüm yapılandırmanın** yerini değiştirir. Kısmi güncellemeler için `config.patch`, tek anahtarlar için `openclaw config set` kullanın.
`config.apply`, **tüm yapılandırmanın** yerine geçer. Kısmi güncellemeler için `config.patch`, tek anahtarlar için ise `openclaw config set` kullanın.
</Warning>
Parametreler:
- `raw` (string) — tüm yapılandırma için JSON5 yükü
- `baseHash` (isteğe bağlı) — `config.get` içinden gelen yapılandırma hash'i (yapılandırma varsa gereklidir)
- `baseHash` (isteğe bağlı) — `config.get` içinden yapılandırma hash'i (yapılandırma varsa zorunlu)
- `sessionKey` (isteğe bağlı) — yeniden başlatma sonrası uyandırma ping'i için oturum anahtarı
- `note` (isteğe bağlı) — yeniden başlatma sentinel'i için not
- `restartDelayMs` (isteğe bağlı) — yeniden başlatma öncesi gecikme (varsayılan 2000)
- `note` (isteğe bağlı) — yeniden başlatma sentinel notu
- `restartDelayMs` (isteğe bağlı) — yeniden başlatmadan önce gecikme (varsayılan 2000)
Yeniden başlatma istekleri, zaten bekleyen/devam eden bir istek varken birleştirilir ve yeniden başlatma döngüleri arasında 30 saniyelik bir soğuma süresi uygulanır.
Yeniden başlatma istekleri, biri zaten beklemede/işlemdeyken birleştirilir ve yeniden başlatma döngüleri arasında 30 saniyelik bekleme süresi uygulanır.
```bash
openclaw gateway call config.get --params '{}' # payload.hash değerini alın
openclaw gateway call config.get --params '{}' # payload.hash değerini yakalayın
openclaw gateway call config.apply --params '{
"raw": "{ agents: { defaults: { workspace: \"~/.openclaw/workspace\" } } }",
"baseHash": "<hash>",
@ -579,19 +586,19 @@ ardından `config.patch` tercih edin.
</Accordion>
<Accordion title="config.patch (kısmi güncelleme)">
Kısmi bir güncellemeyi mevcut yapılandırmayla birleştirir (JSON merge patch semantiği):
Kısmi bir güncellemeyi mevcut yapılandırma ile birleştirir (JSON merge patch semantiği):
- Nesneler özyineli olarak birleştirilir
- Nesneler özyineli olarak birleşir
- `null` bir anahtarı siler
- Diziler yer değiştirir
Parametreler:
- `raw` (string) — yalnızca değişecek anahtarları içeren JSON5
- `baseHash` (zorunlu) — `config.get` içinden gelen yapılandırma hash'i
- `baseHash` (zorunlu) — `config.get` içinden yapılandırma hash'i
- `sessionKey`, `note`, `restartDelayMs``config.apply` ile aynı
Yeniden başlatma davranışı `config.apply` ile aynıdır: bekleyen yeniden başlatmalar birleştirilir ve yeniden başlatma döngüleri arasında 30 saniyelik bir soğuma süresi vardır.
Yeniden başlatma davranışı `config.apply` ile eşleşir: bekleyen yeniden başlatmalar birleştirilir ve yeniden başlatma döngüleri arasında 30 saniyelik bekleme süresi vardır.
```bash
openclaw gateway call config.patch --params '{
@ -605,12 +612,12 @@ ardından `config.patch` tercih edin.
## Ortam değişkenleri
OpenClaw, üst süreçten gelen ortam değişkenlerini ve ayrıca şunları okur:
OpenClaw, üst süreçten gelen env değişkenlerini ve ayrıca şunları okur:
- geçerli çalışma dizinindeki `.env` dosyası (varsa)
- `~/.openclaw/.env` (küresel geri dönüş)
- geçerli çalışma dizinindeki `.env` (varsa)
- `~/.openclaw/.env` (küresel yedek)
Hiçbir dosya mevcut ortam değişkenlerini geçersiz kılmaz. Yapılandırmada satır içi ortam değişkenleri de ayarlayabilirsiniz:
Bu dosyaların hiçbiri mevcut env değişkenlerinin yerine geçmez. Yapılandırmada satır içi env değişkenleri de ayarlayabilirsiniz:
```json5
{
@ -621,8 +628,8 @@ Hiçbir dosya mevcut ortam değişkenlerini geçersiz kılmaz. Yapılandırmada
}
```
<Accordion title="Kabuk env içe aktarma (isteğe bağlı)">
Etkinleştirilirse ve beklenen anahtarlar ayarlı değilse, OpenClaw oturum açma kabuğunuzu çalıştırır ve yalnızca eksik anahtarları içe aktarır:
<Accordion title="Shell env içe aktarma (isteğe bağlı)">
Etkinleştirilirse ve beklenen anahtarlar ayarlı değilse, OpenClaw giriş shell'inizi çalıştırır ve yalnızca eksik anahtarları içe aktarır:
```json5
{
@ -632,11 +639,11 @@ Hiçbir dosya mevcut ortam değişkenlerini geçersiz kılmaz. Yapılandırmada
}
```
Ortam değişkeni eşdeğeri: `OPENCLAW_LOAD_SHELL_ENV=1`
Env değişkeni eşdeğeri: `OPENCLAW_LOAD_SHELL_ENV=1`
</Accordion>
<Accordion title="Yapılandırma değerlerinde ortam değişkeni yerine koyma">
Herhangi bir yapılandırma string değerinde `${VAR_NAME}` ile ortam değişkenlerine başvurun:
<Accordion title="Yapılandırma değerlerinde env değişkeni ikamesi">
Herhangi bir yapılandırma string değerinde `${VAR_NAME}` ile env değişkenlerine başvurun:
```json5
{
@ -647,15 +654,15 @@ Ortam değişkeni eşdeğeri: `OPENCLAW_LOAD_SHELL_ENV=1`
Kurallar:
- Yalnızca şu biçimle eşleşen büyük harf adları eşleştirilir: `[A-Z_][A-Z0-9_]*`
- Eksik/boş değişkenler yükleme sırasında hata verir
- Yalnızca şu kalıpla eşleşen büyük harfli adlar eşleştirilir: `[A-Z_][A-Z0-9_]*`
- Eksik/boş değişkenler yükleme sırasında hata fırlatır
- Değişmez çıktı için `$${VAR}` ile kaçırın
- `$include` dosyaları içinde de çalışır
- Satır içi yerine koyma: `"${BASE}/v1"``"https://api.example.com/v1"`
- `$include` dosyaları içinde çalışır
- Satır içi ikame: `"${BASE}/v1"``"https://api.example.com/v1"`
</Accordion>
<Accordion title="Secret refs (env, file, exec)">
<Accordion title="Secret ref'ler (env, file, exec)">
SecretRef nesnelerini destekleyen alanlar için şunları kullanabilirsiniz:
```json5
@ -688,16 +695,16 @@ Kurallar:
}
```
`env`/`file`/`exec` için `secrets.providers` dahil SecretRef ayrıntıları [Secrets Management](/gateway/secrets) bölümündedir.
Desteklenen kimlik bilgisi yolları [SecretRef Credential Surface](/reference/secretref-credential-surface) bölümünde listelenmiştir.
SecretRef ayrıntıları (`env`/`file`/`exec` için `secrets.providers` dahil) [Secrets Management](/tr/gateway/secrets) bölümündedir.
Desteklenen kimlik bilgisi yolları [SecretRef Credential Surface](/tr/reference/secretref-credential-surface) bölümünde listelenmiştir.
</Accordion>
Tam öncelik sırası ve kaynaklar için [Environment](/help/environment) bölümüne bakın.
Tam öncelik sırası ve kaynaklar için [Environment](/tr/help/environment) bölümüne bakın.
## Tam başvuru
Alan alan tam başvuru için **[Configuration Reference](/gateway/configuration-reference)** bölümüne bakın.
Eksiksiz alan alan başvuru için **[Configuration Reference](/tr/gateway/configuration-reference)** bölümüne bakın.
---
_İlgili: [Configuration Examples](/gateway/configuration-examples) · [Configuration Reference](/gateway/configuration-reference) · [Doctor](/gateway/doctor)_
_İlgili: [Configuration Examples](/tr/gateway/configuration-examples) · [Configuration Reference](/tr/gateway/configuration-reference) · [Doctor](/tr/gateway/doctor)_

View File

@ -0,0 +1,343 @@
---
read_when:
- Düz MEMORY.md notlarının ötesinde kalıcı bilgi istiyorsanız
- Paketlenmiş memory-wiki plugin'ini yapılandırıyorsanız
- wiki_search, wiki_get veya bridge modunu anlamak istiyorsanız
summary: 'memory-wiki: kaynak, iddialar, panolar ve bridge modu içeren derlenmiş bilgi kasası'
title: Memory Wiki
x-i18n:
generated_at: "2026-04-08T06:01:17Z"
model: gpt-5.4
provider: openai
source_hash: b78dd6a4ef4451dae6b53197bf0c7c2a2ba846b08e4a3a93c1026366b1598d82
source_path: plugins/memory-wiki.md
workflow: 15
---
# Memory Wiki
`memory-wiki`, dayanıklı belleği derlenmiş bir bilgi kasasına dönüştüren paketlenmiş bir plugin'dir.
Etkin bellek plugin'inin yerini **almaz**. Etkin bellek plugin'i geri çağırma, yükseltme, indeksleme ve düşleme işlerinin sahibi olmaya devam eder. `memory-wiki` onun yanında yer alır ve dayanıklı bilgiyi gezilebilir bir wikiye; deterministik sayfalar, yapılandırılmış iddialar, kaynak bilgisi, panolar ve makine tarafından okunabilir özetlerle derler.
Belleğin, bir Markdown dosyaları yığını gibi değil de daha çok bakımı yapılan bir bilgi katmanı gibi davranmasını istediğinizde bunu kullanın.
## Ne ekler
- Deterministik sayfa düzenine sahip özel bir wiki kasası
- Yalnızca düzyazı değil, yapılandırılmış iddia ve kanıt meta verileri
- Sayfa düzeyinde kaynak bilgisi, güven, çelişkiler ve açık sorular
- Aracı/çalışma zamanı tüketicileri için derlenmiş özetler
- Wiki'ye özgü search/get/apply/lint araçları
- Etkin bellek plugin'inden herkese açık yapıtları içe aktaran isteğe bağlı bridge modu
- İsteğe bağlı Obsidian uyumlu render modu ve CLI entegrasyonu
## Bellekle nasıl uyum sağlar
Ayrımı şöyle düşünün:
| Katman | Sahibi olduğu şeyler |
| ------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| Etkin bellek plugin'i (`memory-core`, QMD, Honcho vb.) | Geri çağırma, anlamsal arama, yükseltme, düşleme, bellek çalışma zamanı |
| `memory-wiki` | Derlenmiş wiki sayfaları, kaynak açısından zengin sentezler, panolar, wiki'ye özgü search/get/apply |
Etkin bellek plugin'i paylaşılan geri çağırma yapıtlarını sunuyorsa, OpenClaw `memory_search corpus=all` ile her iki katmanı da tek geçişte arayabilir.
Wiki'ye özgü sıralama, kaynak bilgisi veya doğrudan sayfa erişimi gerektiğinde bunun yerine wiki'ye özgü araçları kullanın.
## Kasa modları
`memory-wiki` üç kasa modunu destekler:
### `isolated`
Kendi kasası, kendi kaynakları, `memory-core` bağımlılığı yok.
Wiki'nin kendi küratörlüğü yapılmış bilgi deposu olmasını istiyorsanız bunu kullanın.
### `bridge`
Etkin bellek plugin'inden, herkese açık plugin SDK sınırları üzerinden herkese açık bellek yapıtlarını ve bellek olaylarını okur.
Wiki'nin, özel plugin iç yapılarına erişmeden bellek plugin'inin dışa aktardığı yapıtları derleyip düzenlemesini istiyorsanız bunu kullanın.
Bridge modu şunları indeksleyebilir:
- dışa aktarılan bellek yapıtları
- düş raporları
- günlük notlar
- bellek kök dosyaları
- bellek olay günlükleri
### `unsafe-local`
Yerel özel yollar için açık aynı-makine kaçış kapağı.
Bu mod kasıtlı olarak deneyseldir ve taşınabilir değildir. Bunu yalnızca güven sınırını anladığınızda ve özellikle bridge modunun sağlayamadığı yerel dosya sistemi erişimine ihtiyaç duyduğunuzda kullanın.
## Kasa düzeni
Plugin, şöyle bir kasa başlatır:
```text
<vault>/
AGENTS.md
WIKI.md
index.md
inbox.md
entities/
concepts/
syntheses/
sources/
reports/
_attachments/
_views/
.openclaw-wiki/
```
Yönetilen içerik, oluşturulan blokların içinde kalır. İnsan not blokları korunur.
Ana sayfa grupları şunlardır:
- içe aktarılan ham materyal ve bridge destekli sayfalar için `sources/`
- kalıcı şeyler, kişiler, sistemler, projeler ve nesneler için `entities/`
- fikirler, soyutlamalar, örüntüler ve ilkeler için `concepts/`
- derlenmiş özetler ve bakımı yapılan toplulaştırmalar için `syntheses/`
- oluşturulan panolar için `reports/`
## Yapılandırılmış iddialar ve kanıtlar
Sayfalar yalnızca serbest biçimli metin değil, yapılandırılmış `claims` frontmatter da taşıyabilir.
Her iddia şunları içerebilir:
- `id`
- `text`
- `status`
- `confidence`
- `evidence[]`
- `updatedAt`
Kanıt girdileri şunları içerebilir:
- `sourceId`
- `path`
- `lines`
- `weight`
- `note`
- `updatedAt`
Wiki'nin pasif bir not dökümü yerine daha çok bir inanç katmanı gibi davranmasını sağlayan şey budur. İddialar izlenebilir, puanlanabilir, itiraz edilebilir ve tekrar kaynaklara bağlanarak çözülebilir.
## Derleme işlem hattı
Derleme adımı wiki sayfalarını okur, özetleri normalize eder ve şu konumların altında kararlı, makineye dönük yapıtlar üretir:
- `.openclaw-wiki/cache/agent-digest.json`
- `.openclaw-wiki/cache/claims.jsonl`
Bu özetler, aracıların ve çalışma zamanı kodunun Markdown sayfalarını kazımasına gerek kalmaması için vardır.
Derlenmiş çıktı ayrıca şunlara güç sağlar:
- search/get akışları için ilk geçiş wiki indeksleme
- sahip sayfalara geri iddia kimliği araması
- kompakt prompt ekleri
- rapor/pano üretimi
## Panolar ve sağlık raporları
`render.createDashboards` etkinleştirildiğinde derleme, `reports/` altında panoları korur.
Yerleşik raporlar şunları içerir:
- `reports/open-questions.md`
- `reports/contradictions.md`
- `reports/low-confidence.md`
- `reports/claim-health.md`
- `reports/stale-pages.md`
Bu raporlar şunları izler:
- çelişki not kümleri
- yarışan iddia kümeleri
- yapılandırılmış kanıtı olmayan iddialar
- düşük güvene sahip sayfalar ve iddialar
- bayat veya bilinmeyen tazelik
- çözülmemiş sorular içeren sayfalar
## Arama ve getirme
`memory-wiki` iki arama arka ucunu destekler:
- `shared`: varsa paylaşılan bellek arama akışını kullan
- `local`: wiki'yi yerelde ara
Ayrıca üç corpus'u destekler:
- `wiki`
- `memory`
- `all`
Önemli davranış:
- `wiki_search` ve `wiki_get`, mümkün olduğunda ilk geçiş olarak derlenmiş özetleri kullanır
- iddia kimlikleri sahip sayfaya geri çözümlenebilir
- itiraz edilmiş/bayat/taze iddialar sıralamayı etkiler
- kaynak etiketleri sonuçlara taşınabilir
Pratik kural:
- tek geniş geri çağırma geçişi için `memory_search corpus=all` kullanın
- wiki'ye özgü sıralama, kaynak bilgisi veya sayfa düzeyinde inanç yapısı sizin için önemliyse `wiki_search` + `wiki_get` kullanın
## Aracı araçları
Plugin şu araçları kaydeder:
- `wiki_status`
- `wiki_search`
- `wiki_get`
- `wiki_apply`
- `wiki_lint`
Yaptıkları işler:
- `wiki_status`: geçerli kasa modu, sağlık durumu, Obsidian CLI kullanılabilirliği
- `wiki_search`: wiki sayfalarını ve yapılandırılmışsa paylaşılan bellek corpus'larını arar
- `wiki_get`: bir wiki sayfasını id/path ile okur veya paylaşılan bellek corpus'una geri döner
- `wiki_apply`: serbest biçimli sayfa cerrahisi olmadan dar sentez/meta veri mutasyonları
- `wiki_lint`: yapısal denetimler, kaynak boşlukları, çelişkiler, açık sorular
Plugin ayrıca özel olmayan bir bellek corpus eki de kaydeder; böylece etkin bellek plugin'i corpus seçimini desteklediğinde paylaşılan `memory_search` ve `memory_get` wiki'ye erişebilir.
## Prompt ve bağlam davranışı
`context.includeCompiledDigestPrompt` etkinleştirildiğinde, bellek prompt bölümleri `agent-digest.json` içinden kompakt bir derlenmiş anlık görüntü ekler.
Bu anlık görüntü kasıtlı olarak küçük ve yüksek sinyallidir:
- yalnızca en üst sayfalar
- yalnızca en üst iddialar
- çelişki sayısı
- soru sayısı
- güven/tazelik niteleyicileri
Bu isteğe bağlıdır çünkü prompt şeklini değiştirir ve çoğunlukla bağlam motorları veya bellek eklerini açıkça tüketen eski prompt derleme yapıları için faydalıdır.
## Yapılandırma
Yapılandırmayı `plugins.entries.memory-wiki.config` altında koyun:
```json5
{
plugins: {
entries: {
"memory-wiki": {
enabled: true,
config: {
vaultMode: "isolated",
vault: {
path: "~/.openclaw/wiki/main",
renderMode: "obsidian",
},
obsidian: {
enabled: true,
useOfficialCli: true,
vaultName: "OpenClaw Wiki",
openAfterWrites: false,
},
bridge: {
enabled: false,
readMemoryArtifacts: true,
indexDreamReports: true,
indexDailyNotes: true,
indexMemoryRoot: true,
followMemoryEvents: true,
},
ingest: {
autoCompile: true,
maxConcurrentJobs: 1,
allowUrlIngest: true,
},
search: {
backend: "shared",
corpus: "wiki",
},
context: {
includeCompiledDigestPrompt: false,
},
render: {
preserveHumanBlocks: true,
createBacklinks: true,
createDashboards: true,
},
},
},
},
},
}
```
Temel anahtarlar:
- `vaultMode`: `isolated`, `bridge`, `unsafe-local`
- `vault.renderMode`: `native` veya `obsidian`
- `bridge.readMemoryArtifacts`: etkin bellek plugin'inin herkese açık yapıtlarını içe aktar
- `bridge.followMemoryEvents`: bridge modunda olay günlüklerini dahil et
- `search.backend`: `shared` veya `local`
- `search.corpus`: `wiki`, `memory` veya `all`
- `context.includeCompiledDigestPrompt`: bellek prompt bölümlerine kompakt özet anlık görüntüsünü ekle
- `render.createBacklinks`: deterministik ilgili bloklar oluştur
- `render.createDashboards`: pano sayfaları oluştur
## CLI
`memory-wiki` ayrıca üst düzey bir CLI yüzeyi sunar:
```bash
openclaw wiki status
openclaw wiki doctor
openclaw wiki init
openclaw wiki ingest ./notes/alpha.md
openclaw wiki compile
openclaw wiki lint
openclaw wiki search "alpha"
openclaw wiki get entity.alpha
openclaw wiki apply synthesis "Alpha Summary" --body "..." --source-id source.alpha
openclaw wiki bridge import
openclaw wiki obsidian status
```
Tam komut başvurusu için [CLI: wiki](/cli/wiki) bölümüne bakın.
## Obsidian desteği
`vault.renderMode` `obsidian` olduğunda plugin, Obsidian dostu Markdown yazar ve isteğe bağlı olarak resmî `obsidian` CLI'ını kullanabilir.
Desteklenen iş akışları şunları içerir:
- durum yoklaması
- kasa araması
- bir sayfayı açma
- bir Obsidian komutunu çağırma
- günlük nota atlama
Bu isteğe bağlıdır. Wiki, Obsidian olmadan yerel modda da çalışır.
## Önerilen iş akışı
1. Geri çağırma/yükseltme/düşleme için etkin bellek plugin'inizi koruyun.
2. `memory-wiki` etkinleştirin.
3. Özellikle bridge modu istemiyorsanız `isolated` moduyla başlayın.
4. Kaynak bilgisi önemliyse `wiki_search` / `wiki_get` kullanın.
5. Dar sentezler veya meta veri güncellemeleri için `wiki_apply` kullanın.
6. Anlamlı değişikliklerden sonra `wiki_lint` çalıştırın.
7. Bayatlık/çelişki görünürlüğü istiyorsanız panolarıın.
## İlgili belgeler
- [Belleğe Genel Bakış](/tr/concepts/memory)
- [CLI: memory](/cli/memory)
- [CLI: wiki](/cli/wiki)
- [Plugin SDK genel bakış](/tr/plugins/sdk-overview)

View File

@ -1,14 +1,14 @@
---
read_when:
- OpenClaw içinde GLM modelleri istiyorsunuz
- Model adlandırma kuralına ve kuruluma ihtiyacınız var
- OpenClaw içinde GLM modelleri istiyorsanız
- Model adlandırma kuralına ve kuruluma ihtiyacınız varsa
summary: GLM model ailesine genel bakış + OpenClaw içinde nasıl kullanılacağı
title: GLM Modelleri
x-i18n:
generated_at: "2026-04-05T14:03:50Z"
generated_at: "2026-04-08T06:00:51Z"
model: gpt-5.4
provider: openai
source_hash: 59622edab5094d991987f9788fbf08b33325e737e7ff88632b0c3ac89412d4c7
source_hash: 79a55acfa139847b4b85dbc09f1068cbd2febb1e49f984a23ea9e3b43bc910eb
source_path: providers/glm.md
workflow: 15
---
@ -21,7 +21,7 @@ modellerine `zai` sağlayıcısı ve `zai/glm-5` gibi model kimlikleri üzerinde
## CLI kurulumu
```bash
# Endpoint otomatik algılamalı genel API anahtarı kurulumu
# Uç nokta otomatik algılamalı genel API anahtarı kurulumu
openclaw onboard --auth-choice zai-api-key
# Coding Plan Global, Coding Plan kullanıcıları için önerilir
@ -33,26 +33,26 @@ openclaw onboard --auth-choice zai-coding-cn
# Genel API
openclaw onboard --auth-choice zai-global
# Genel API CN (Çin bölgesi)
# General API CN (Çin bölgesi)
openclaw onboard --auth-choice zai-cn
```
## Config parçacığı
## Yapılandırma parçacığı
```json5
{
env: { ZAI_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "zai/glm-5" } } },
agents: { defaults: { model: { primary: "zai/glm-5.1" } } },
}
```
`zai-api-key`, OpenClaw'ın anahtardan eşleşen Z.AI endpoint'ini algılamasına ve
doğru base URL'yi otomatik olarak uygulamasına izin verir. Belirli bir Coding Plan veya genel API yüzeyini zorlamak istediğinizde
`zai-api-key`, OpenClaw'ın anahtardan eşleşen Z.AI uç noktasını algılamasına ve
doğru temel URL'yi otomatik olarak uygulamasına olanak tanır. Belirli bir Coding Plan veya genel API yüzeyini zorlamak istediğinizde
ık bölgesel seçenekleri kullanın.
## Mevcut paketli GLM modelleri
## Mevcut paketlenmiş GLM modelleri
OpenClaw şu anda paketli `zai` sağlayıcısını şu GLM referanslarıyla başlatır:
OpenClaw şu anda paketlenmiş `zai` sağlayıcısını şu GLM başvurularıyla tohumlar:
- `glm-5.1`
- `glm-5`
@ -70,6 +70,6 @@ OpenClaw şu anda paketli `zai` sağlayıcısını şu GLM referanslarıyla baş
## Notlar
- GLM sürümleri ve kullanılabilirliği değişebilir; en güncel bilgiler için Z.AI belgelerini kontrol edin.
- Varsayılan paketli model ref'i `zai/glm-5` değeridir.
- Sağlayıcı ayrıntıları için bkz. [/providers/zai](/providers/zai).
- GLM sürümleri ve kullanılabilirliği değişebilir; en güncel bilgiler için Z.AI belgelerine bakın.
- Varsayılan paketlenmiş model başvurusu `zai/glm-5.1` şeklindedir.
- Sağlayıcı ayrıntıları için bkz. [/providers/zai](/tr/providers/zai).

View File

@ -1,21 +1,23 @@
---
read_when:
- OpenClaw içinde Z.AI / GLM modellerini istiyorsunuz
- Basit bir ZAI_API_KEY kurulumuna ihtiyacınız var
- OpenClaw içinde Z.AI / GLM modelleri istiyorsanız
- Basit bir ZAI_API_KEY kurulumuna ihtiyacınız varsa
summary: OpenClaw ile Z.AI (GLM modelleri) kullanın
title: Z.AI
x-i18n:
generated_at: "2026-04-05T14:05:34Z"
generated_at: "2026-04-08T06:01:00Z"
model: gpt-5.4
provider: openai
source_hash: 48006cdd580484f0c62e2877b27a6a68d7bc44795b3e97a28213d95182d9acf9
source_hash: 66cbd9813ee28d202dcae34debab1b0cf9927793acb00743c1c62b48d9e381f9
source_path: providers/zai.md
workflow: 15
---
# Z.AI
Z.AI, **GLM** modelleri için API platformudur. GLM için REST API'leri sağlar ve kimlik doğrulama için API anahtarları kullanır. API anahtarınızı Z.AI konsolunda oluşturun. OpenClaw, bir Z.AI API anahtarıyla `zai` sağlayıcısını kullanır.
Z.AI, **GLM** modelleri için API platformudur. GLM için REST API'leri sağlar ve
kimlik doğrulama için API anahtarları kullanır. API anahtarınızı Z.AI konsolunda oluşturun. OpenClaw, `zai` sağlayıcısını
bir Z.AI API anahtarıyla kullanır.
## CLI kurulumu
@ -32,24 +34,26 @@ openclaw onboard --auth-choice zai-coding-cn
# Genel API
openclaw onboard --auth-choice zai-global
# General API CN (China region)
# General API CN (Çin bölgesi)
openclaw onboard --auth-choice zai-cn
```
## Yapılandırma kod parçacığı
## Yapılandırma parçacığı
```json5
{
env: { ZAI_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "zai/glm-5" } } },
agents: { defaults: { model: { primary: "zai/glm-5.1" } } },
}
```
`zai-api-key`, OpenClaw'ın anahtardan eşleşen Z.AI uç noktasını algılamasına ve doğru temel URL'yi otomatik olarak uygulamasına olanak tanır. Belirli bir Coding Plan veya genel API yüzeyini zorlamak istediğinizde açık bölgesel seçenekleri kullanın.
`zai-api-key`, OpenClaw'ın anahtardan eşleşen Z.AI uç noktasını algılamasına ve
doğru temel URL'yi otomatik olarak uygulamasına olanak tanır. Belirli bir Coding Plan veya genel API yüzeyini zorlamak istediğinizde
ık bölgesel seçenekleri kullanın.
## Birlikte gelen GLM kataloğu
## Paketlenmiş GLM kataloğu
OpenClaw şu anda birlikte gelen `zai` sağlayıcısını şunlarla başlatır:
OpenClaw şu anda paketlenmiş `zai` sağlayıcısını şunlarla tohumlar:
- `glm-5.1`
- `glm-5`
@ -67,9 +71,11 @@ OpenClaw şu anda birlikte gelen `zai` sağlayıcısını şunlarla başlatır:
## Notlar
- GLM modelleri `zai/<model>` olarak kullanılabilir (örnek: `zai/glm-5`).
- Varsayılan birlikte gelen model ref'i: `zai/glm-5`
- Bilinmeyen `glm-5*` kimlikleri, kimlik mevcut GLM-5 ailesi biçimiyle eşleştiğinde `glm-4.7` şablonundan sağlayıcıya ait meta verileri sentezleyerek birlikte gelen sağlayıcı yolunda yine de ileri çözümlenir.
- Z.AI araç çağrısı akışı için `tool_stream` varsayılan olarak etkindir. Devre dışı bırakmak için `agents.defaults.models["zai/<model>"].params.tool_stream` değerini `false` olarak ayarlayın.
- Model ailesi genel görünümü için [/providers/glm](/tr/providers/glm) bölümüne bakın.
- Z.AI, API anahtarınızla birlikte Bearer kimlik doğrulaması kullanır.
- GLM modelleri `zai/<model>` olarak kullanılabilir (`zai/glm-5` örneği).
- Varsayılan paketlenmiş model başvurusu: `zai/glm-5.1`
- Bilinmeyen `glm-5*` kimlikleri, kimlik
geçerli GLM-5 ailesi şekliyle eşleştiğinde `glm-4.7` şablonundan sağlayıcıya ait meta veriler sentezlenerek paketlenmiş sağlayıcı yolunda yine de ileri çözülür.
- Z.AI araç çağrısı akışı için `tool_stream` varsayılan olarak etkindir. Devre dışı bırakmak için
`agents.defaults.models["zai/<model>"].params.tool_stream` değerini `false` olarak ayarlayın.
- Model ailesi genel görünümü için bkz. [/providers/glm](/tr/providers/glm).
- Z.AI, API anahtarınızla Bearer kimlik doğrulaması kullanır.

View File

@ -1,18 +1,18 @@
---
x-i18n:
generated_at: "2026-04-08T02:18:25Z"
generated_at: "2026-04-08T06:01:31Z"
model: gpt-5.4
provider: openai
source_hash: 0e156cc8e2fe946a0423862f937754a7caa1fe7e6863b50a80bff49a1c86e1e8
source_hash: 4a9066b2a939c5a9ba69141d75405f0e8097997b523164340e2f0e9a0d5060dd
source_path: refactor/qa.md
workflow: 15
---
# QA Yeniden Düzenleme
# QA Yeniden Düzenlemesi
Durum: temel geçiş tamamlandı.
## Amaç
## Hedef
OpenClaw QA'yı bölünmüş tanım modelinden tek bir doğruluk kaynağına taşımak:
@ -21,41 +21,45 @@ OpenClaw QA'yı bölünmüş tanım modelinden tek bir doğruluk kaynağına ta
- kurulum ve temizleme
- harness mantığı
- doğrulamalar ve başarı ölçütleri
- artifact'ler ve rapor ipuçları
- artefaktlar ve rapor ipuçları
İstenen son durum, davranışın çoğunu TypeScript içinde sabit kodlamak yerine güçlü senaryo tanım dosyaları yükleyen genel bir QA harness'idir.
İstenen son durum, davranışın büyük bölümünü TypeScript içinde sabit kodlamak yerine güçlü senaryo tanım dosyalarını yükleyen genel bir QA harness'idir.
## Mevcut Durum
Birincil doğruluk kaynağı artık `qa/scenarios.md` içinde bulunuyor.
Birincil doğruluk kaynağı artık `qa/scenarios/index.md` ile `qa/scenarios/*.md`
altındaki her senaryo için bir dosyada bulunuyor.
Uygulananlar:
- `qa/scenarios.md`
- kanonik QA paketi
- `qa/scenarios/index.md`
- kanonik QA paketi meta verileri
- operatör kimliği
- başlangıç görevi
- `qa/scenarios/*.md`
- senaryo başına bir markdown dosyası
- senaryo meta verileri
- işleyici bağlamaları
- handler bağlamaları
- senaryoya özgü yürütme yapılandırması
- `extensions/qa-lab/src/scenario-catalog.ts`
- markdown paket ayrıştırıcısı + zod doğrulaması
- markdown paketi ayrıştırıcısı + zod doğrulaması
- `extensions/qa-lab/src/qa-agent-bootstrap.ts`
- markdown paketinden plan oluşturma
- `extensions/qa-lab/src/qa-agent-workspace.ts`
- oluşturulmuş uyumluluk dosyalarını ve `QA_SCENARIOS.md` dosyasını tohumlar
- oluşturulan uyumluluk dosyaları ile `QA_SCENARIOS.md` üretimi
- `extensions/qa-lab/src/suite.ts`
- çalıştırılabilir senaryoları markdown tanımlı işleyici bağlamaları üzerinden seçer
- QA veri yolu protokolü + UI
- resim/video/ses/dosya işleme için genel satır içi ekler
- çalıştırılabilir senaryoları markdown ile tanımlanmış handler bağlamaları üzerinden seçer
- QA bus protokolü + UI
- görüntü/video/ses/dosya işleme için genel satır içi ekler
Kalan bölünmüş yüzeyler:
- `extensions/qa-lab/src/suite.ts`
- yürütülebilir özel işleyici mantığının çoğuna hâlâ sahip
- hâlâ çalıştırılabilir özel handler mantığının çoğunu barındırıyor
- `extensions/qa-lab/src/report.ts`
- rapor yapısını hâlâ çalışma zamanı çıktılarından türetiyor
- hâlâ rapor yapısını çalışma zamanı çıktılarından türetiyor
Dolayısıyla doğruluk kaynağı bölünmesi düzeltildi, ancak yürütme hâlâ tam bildirime dayalı olmaktan çok çoğunlukla işleyici destekli.
Yani doğruluk kaynağı bölünmesi düzeltildi, ancak yürütme hâlâ çoğunlukla tam bildirimsel olmaktan ziyade handler destekli.
## Gerçek Senaryo Yüzeyi Nasıl Görünüyor
@ -65,9 +69,9 @@ Mevcut suite okunduğunda birkaç farklı senaryo sınıfı görülüyor.
- kanal taban çizgisi
- DM taban çizgisi
- iş parçacıklı takip
- ileti dizili takip
- model değiştirme
- onay tamamlama
- onay takibi
- tepki/düzenleme/silme
### Yapılandırma ve çalışma zamanı mutasyonu
@ -75,62 +79,63 @@ Mevcut suite okunduğunda birkaç farklı senaryo sınıfı görülüyor.
- config patch skill devre dışı bırakma
- config apply yeniden başlatma uyandırması
- config yeniden başlatma yetenek çevirme
- çalışma zamanı envanter kayması denetimi
- çalışma zamanı envanter sapması denetimi
### Dosya sistemi ve repo doğrulamaları
- kaynak/docs keşif raporu
- Lobster Invaders oluşturma
- oluşturulmuş görsel artifact arama
- source/docs keşif raporu
- Lobster Invaders derleme
- oluşturulmuş görüntü artefaktı araması
### Bellek orkestrasyonu
- bellek geri çağırma
- kanal bağlamında bellek araçları
- bellek başarısızlığı fallback'i
- bellek hata geri dönüşü
- oturum belleği sıralaması
- iş parçacığı bellek yalıtımı
- bellek rüya görme taraması
- ileti dizisi belleği yalıtımı
- bellek dreaming sweep
### Araç ve eklenti entegrasyonu
### Araç ve plugin entegrasyonu
- MCP plugin-tools çağrısı
- skill görünürlüğü
- skill anında yükleme
- yerel görsel oluşturma
- görsel gidiş-dönüş
- ekten görsel anlama
- skill canlı kurulum
- yerel görüntü üretimi
- görüntü gidiş-dönüşü
- ekten görüntü anlama
### Çok turlu ve çok aktörlü
- alt ajan devri
- alt ajan fanout sentezi
- subagent devri
- subagent fanout sentezi
- yeniden başlatma kurtarma tarzı akışlar
Bu kategoriler önemlidir çünkü DSL gereksinimlerini yönlendirir. Düz bir istem + beklenen metin listesi yeterli değildir.
Bu kategoriler önemlidir çünkü DSL gereksinimlerini yönlendirirler. Düz bir istem + beklenen metin listesi yeterli değildir.
## Yön
### Tek doğruluk kaynağı
Yazılan doğruluk kaynağı olarak `qa/scenarios.md` kullanın.
Yazılmış doğruluk kaynağı olarak `qa/scenarios/index.md` ile `qa/scenarios/*.md`
kullanılsın.
Paket şu özellikleri korumalıdır:
Paket şu özellikleri korumalı:
- incelemede insan tarafından okunabilir
- makine tarafından ayrıştırılabilir
- şunları yönetecek kadar zengin:
- şunları yönlendirecek kadar zengin:
- suite yürütmesi
- QA çalışma alanı bootstrap'i
- QA workspace bootstrap
- QA Lab UI meta verileri
- docs/keşif istemleri
- rapor oluşturma
- docs/discovery istemleri
- rapor üretimi
### Tercih edilen yazım biçimi
Üst düzey biçim olarak markdown kullanın; içinde yapılandırılmış YAML olsun.
Üst düzey biçim olarak markdown kullanın, içinde yapılandırılmış YAML olsun.
Önerilen biçim:
Önerilen şekil:
- YAML frontmatter
- id
@ -139,27 +144,27 @@ Paket şu özellikleri korumalıdır:
- tags
- docs refs
- code refs
- model/provider override'ları
- ön koşullar
- model/provider overrides
- prerequisites
- düz yazı bölümleri
- amaç
- notlar
- hata ayıklama ipuçları
- fenced YAML blokları
- objective
- notes
- debugging hints
- çitlenmiş YAML blokları
- setup
- steps
- assertions
- cleanup
Bu şu avantajları sağlar:
Bu şunları sağlar:
- dev JSON'a göre daha iyi PR okunabilirliği
- saf YAML'a göre daha zengin bağlam
- katı ayrıştırma ve zod doğrulaması
- yalnızca YAML'dan daha zengin bağlam
- sıkı ayrıştırma ve zod doğrulaması
Ham JSON yalnızca ara oluşturulmuş biçim olarak kabul edilebilir.
## Önerilen Senaryo Dosyası Biçimi
## Önerilen Senaryo Dosyası Şekli
Örnek:
@ -182,11 +187,11 @@ codeRefs:
- src/gateway/chat-attachments.ts
---
# Objective
# Amaç
Verify generated media is reattached on the follow-up turn.
Üretilen medyanın takip turunda yeniden eklenerek gönderildiğini doğrulayın.
# Setup
# Kurulum
```yaml scenario.setup
- action: config.patch
@ -199,13 +204,13 @@ Verify generated media is reattached on the follow-up turn.
key: agent:qa:image-roundtrip
```
# Steps
# Adımlar
```yaml scenario.steps
- action: agent.send
session: agent:qa:image-roundtrip
message: |
Image generation check: generate a QA lighthouse image and summarize it in one short sentence.
Görüntü üretimi denetimi: bir QA deniz feneri görüntüsü üret ve bunu tek kısa cümlede özetle.
- action: artifact.capture
kind: generated-image
promptSnippet: Image generation check
@ -213,12 +218,12 @@ Verify generated media is reattached on the follow-up turn.
- action: agent.send
session: agent:qa:image-roundtrip
message: |
Roundtrip image inspection check: describe the generated lighthouse attachment in one short sentence.
Gidiş-dönüş görüntü inceleme denetimi: üretilen deniz feneri ekini tek kısa cümlede açıkla.
attachments:
- fromArtifact: lighthouseImage
```
# Expect
# Beklenen
```yaml scenario.expect
- assert: outbound.textIncludes
@ -232,9 +237,9 @@ Verify generated media is reattached on the follow-up turn.
```
````
## DSL'nin Kapsaması Gereken Çalıştırıcı Yetenekleri
## DSL'nin Kapsaması Gereken Runner Yetenekleri
Mevcut suite'e göre, genel çalıştırıcı istem yürütmeden daha fazlasına ihtiyaç duyar.
Mevcut suite'e göre, genel runner yalnızca istem yürütmeden fazlasına ihtiyaç duyuyor.
### Ortam ve kurulum eylemleri
@ -245,7 +250,7 @@ Mevcut suite'e göre, genel çalıştırıcı istem yürütmeden daha fazlasına
- `thread.create`
- `workspace.writeSkill`
### Ajan turu eylemleri
### Agent turu eylemleri
- `agent.send`
- `agent.wait`
@ -261,7 +266,7 @@ Mevcut suite'e göre, genel çalıştırıcı istem yürütmeden daha fazlasına
- `tools.effective`
- `skills.status`
### Dosya ve artifact eylemleri
### Dosya ve artefakt eylemleri
- `file.write`
- `file.read`
@ -300,66 +305,66 @@ Mevcut suite'e göre, genel çalıştırıcı istem yürütmeden daha fazlasına
- `cron.managedPresent`
- `artifact.exists`
## Değişkenler ve Artifact Referansları
## Değişkenler ve Artefakt Başvuruları
DSL kaydedilmiş çıktıları ve daha sonra yapılan referansları desteklemelidir.
DSL, kaydedilmiş çıktıları ve daha sonra yapılacak başvuruları desteklemelidir.
Mevcut suite'ten örnekler:
- bir iş parçacığı oluştur, sonra `threadId` değerini yeniden kullan
- bir oturum oluştur, sonra `sessionKey` değerini yeniden kullan
- bir görsel oluştur, sonra dosyayı sonraki turda ek olarak iliştir
- bir uyandırma işaretçisi dizesi oluştur, sonra bunun daha sonra göründüğünü doğrula
- bir ileti dizisi oluşturup sonra `threadId` yeniden kullanmak
- bir oturum oluşturup sonra `sessionKey` yeniden kullanmak
- bir görüntü üretip sonraki turda dosyayı eklemek
- bir uyandırma işaretçisi dizesi üretip bunun daha sonra göründüğünü doğrulamak
Gerekli yetenekler:
- `saveAs`
- `${vars.name}`
- `${artifacts.name}`
- yollar, oturum anahtarları, iş parçacığı kimlikleri, işaretçiler, araç çıktıları için türlendirilmiş referanslar
- yollar, oturum anahtarları, ileti dizisi kimlikleri, işaretçiler, araç çıktıları için türlenmiş başvurular
Değişken desteği olmadan harness, senaryo mantığını TypeScript'e geri sızdırmaya devam eder.
Değişken desteği olmadan harness, senaryo mantığını tekrar TypeScript'e sızdırmaya devam edecektir.
## Kaçış Kapısı Olarak Nelerin Kalması Gerekir
## Kaçış Kapıları Olarak Neler Kalmalı
Tamamen saf bildirimsel bir çalıştırıcı 1. aşamada gerçekçi değildir.
Tamamen saf bildirimsel bir runner 1. aşamada gerçekçi değil.
Bazı senaryolar doğası gereği yoğun orkestrasyon gerektirir:
Bazı senaryolar doğası gereği ır orkestrasyon gerektirir:
- bellek rüya görme taraması
- bellek dreaming sweep
- config apply yeniden başlatma uyandırması
- config yeniden başlatma yetenek çevirme
- zaman damgası/yola göre oluşturulmuş görsel artifact çözümleme
- zaman damgası/yol ile oluşturulmuş görüntü artefaktı çözümlemesi
- discovery-report değerlendirmesi
Bunlar şimdilik açık özel işleyiciler kullanmalıdır.
Bunlar şimdilik açık özel handler'lar kullanmalıdır.
Önerilen kural:
- %85-%90 bildirime dayalı
- geri kalan zor kısım için açık `customHandler` adımları
- yalnızca adlandırılmış ve belgelenmiş özel işleyiciler
- %85-90 bildirimsel
- zor kalan bölüm için açık `customHandler` adımları
- yalnızca adlandırılmış ve belgelenmiş özel handler'lar
- senaryo dosyasında anonim satır içi kod yok
Bu, ilerlemeye izin verirken genel motoru temiz tutar.
Bu, yine de ilerlemeye izin verirken genel motoru temiz tutar.
## Mimari Değişiklik
### Mevcut
### Mevcut Durum
Senaryo markdown'u zaten şu alanlar için doğruluk kaynağıdır:
- suite yürütmesi
- çalışma alanı bootstrap dosyaları
- workspace bootstrap dosyaları
- QA Lab UI senaryo kataloğu
- rapor meta verileri
- keşif istemleri
- discovery istemleri
Oluşturulan uyumluluk:
Üretilmiş uyumluluk:
- tohumlanmış çalışma alanı hâlâ `QA_KICKOFF_TASK.md` içeriyor
- tohumlanmış çalışma alanı hâlâ `QA_SCENARIO_PLAN.md` içeriyor
- tohumlanmış çalışma alanı artık ayrıca `QA_SCENARIOS.md` içeriyor
- seed edilmiş workspace hâlâ `QA_KICKOFF_TASK.md` içeriyor
- seed edilmiş workspace hâlâ `QA_SCENARIO_PLAN.md` içeriyor
- seed edilmiş workspace artık ayrıca `QA_SCENARIOS.md` de içeriyor
## Yeniden Düzenleme Planı
@ -367,69 +372,70 @@ Oluşturulan uyumluluk:
Tamamlandı.
- `qa/scenarios.md` eklendi
- `qa/scenarios/index.md` eklendi
- senaryolar `qa/scenarios/*.md` içine bölündü
- adlandırılmış markdown YAML paket içeriği için ayrıştırıcı eklendi
- zod ile doğrulandı
- tüketiciler ayrıştırılmış pakete geçirildi
- repo düzeyi `qa/seed-scenarios.json` ve `qa/QA_KICKOFF_TASK.md` kaldırıldı
- repo düzeyindeki `qa/seed-scenarios.json` ve `qa/QA_KICKOFF_TASK.md` kaldırıldı
### Aşama 2: genel motor
- `extensions/qa-lab/src/suite.ts` dosyasını şunlara ayır:
- yükleyici
- motor
- eylem kayıt defteri
- doğrulama kayıt defteri
- özel işleyiciler
- mevcut yardımcı işlevleri motor işlemleri olarak tut
- `extensions/qa-lab/src/suite.ts` şu parçalara bölünecek:
- loader
- engine
- action registry
- assertion registry
- custom handlers
- mevcut yardımcı işlevler motor işlemleri olarak korunacak
Teslim edilecek çıktı:
Teslimat:
- motor, basit bildirimsel senaryoları yürütür
- motor basit bildirimsel senaryoları yürütür
Çoğunlukla istem + bekleme + doğrulamadan oluşan senaryolarla başlayın:
- iş parçacıklı takip
- ekten görsel anlama
- skill görünürlüğü ve çağrılması
- ileti dizili takip
- ekten görüntü anlama
- skill görünürlüğü ve çağrımı
- kanal taban çizgisi
Teslim edilecek çıktı:
Teslimat:
- ilk gerçek markdown tanımlı senaryolar genel motor üzerinden yayımlanıyor
- ilk gerçek markdown tanımlı senaryoların genel motor üzerinden gönderimi
### Aşama 4: orta düzey senaryoları taşı
### Aşama 4: orta zorluktaki senaryoları taşıma
- görsel oluşturma gidiş-dönüş
- görüntü üretimi gidiş-dönüşü
- kanal bağlamında bellek araçları
- oturum belleği sıralaması
- alt ajan devri
- alt ajan fanout sentezi
- subagent devri
- subagent fanout sentezi
Teslim edilecek çıktı:
Teslimat:
- değişkenler, artifact'ler, araç doğrulamaları, request-log doğrulamaları kanıtlanmış olur
- değişkenler, artefaktlar, araç doğrulamaları, request-log doğrulamalarının kanıtlanması
### Aşama 5: zor senaryoları özel işleyicilerde tut
### Aşama 5: zor senaryoları özel handler'larda tutma
- bellek rüya görme taraması
- bellek dreaming sweep
- config apply yeniden başlatma uyandırması
- config yeniden başlatma yetenek çevirme
- çalışma zamanı envanter kayması
- çalışma zamanı envanter sapması
Teslim edilecek çıktı:
Teslimat:
- aynı yazım biçimi, ancak gerektiğinde açık özel adım bloklarıyla
- aynı yazım biçimi, ancak gerektiğinde açık custom-step bloklarıyla
### Aşama 6: sabit kodlanmış senaryo haritasını sil
### Aşama 6: sabit kodlu senaryo eşlemesini silme
Paket kapsamı yeterince iyi olduğunda:
- `extensions/qa-lab/src/suite.ts` içindeki senaryoya özgü TypeScript dallanmasının çoğunu kaldır
- `extensions/qa-lab/src/suite.ts` içindeki senaryoya özgü TypeScript dallanmasının büyük bölümünü kaldırın
## Sahte Slack / Zengin Medya Desteği
Mevcut QA veri yolu önce metne odaklıdır.
Mevcut QA bus öncelikle metin odaklıdır.
İlgili dosyalar:
@ -439,17 +445,17 @@ Mevcut QA veri yolu önce metne odaklıdır.
- `extensions/qa-lab/src/bus-server.ts`
- `extensions/qa-lab/web/src/ui-render.ts`
Bugün QA veri yolu şunları destekler:
Bugün QA bus şunları destekler:
- metin
- tepkiler
- iş parçacıkları
- ileti dizileri
Henüz satır içi medya eklerini modellemiyor.
### Gerekli taşıma sözleşmesi
Genel bir QA veri yolu ek modeli ekleyin:
Genel bir QA bus eki modeli ekleyin:
```ts
type QaBusAttachment = {
@ -468,67 +474,67 @@ type QaBusAttachment = {
};
```
Sonra `attachments?: QaBusAttachment[]` alanını şunlara ekleyin:
Ardından `attachments?: QaBusAttachment[]` ekleyin:
- `QaBusMessage`
- `QaBusInboundMessageInput`
- `QaBusOutboundMessageInput`
### Neden önce genel
### Neden önce genel model
Yalnızca Slack'e öz bir medya modeli oluşturmayın.
Yalnızca Slack'e özel bir medya modeli oluşturmayın.
Bunun yerine:
- tek bir genel QA taşıma modeli
- bunun üzerinde birden çok işleyici
- bunun üzerinde birden çok renderer
- mevcut QA Lab sohbeti
- gelecekteki sahte Slack web
- diğer olası sahte taşıma görünümleri
- gelecekteki sahte Slack web arayüzü
- diğer sahte taşıma görünümleri
Bu yaklaşım yinelenen mantığı önler ve medya senaryolarının taşıma bağımsız kalmasını sağlar.
Bu, yinelenen mantığı önler ve medya senaryolarının taşımadan bağımsız kalmasını sağlar.
### Gereken UI çalışması
### Gerekli UI çalışması
QA UI'ı şunları işleyebilecek şekilde güncelleyin:
QA UI'yi şu öğeleri işleyecek şekilde güncelleyin:
- satır içi görsel önizlemesi
- satır içi görüntü önizlemesi
- satır içi ses oynatıcı
- satır içi video oynatıcı
- dosya eki çipi
- dosya eki chip'i
Mevcut UI zaten iş parçacıklarını ve tepkileri işleyebiliyor, bu nedenle ek işleme aynı mesaj kartı modeli üzerine katman olarak eklenmelidir.
Mevcut UI zaten ileti dizilerini ve tepkileri işleyebiliyor, bu yüzden ek işleme aynı mesaj kartı modeli üzerine katmanlanabilmelidir.
### Medya taşımasıyla etkinleşen senaryo çalışması
Ekler QA veri yolundan akmaya başladığında daha zengin sahte sohbet senaryoları ekleyebiliriz:
Ekler QA bus üzerinden akmaya başladığında, daha zengin sahte sohbet senaryoları ekleyebiliriz:
- sahte Slack'te satır içi görsel yanıtı
- sahte Slack'te satır içi görüntü yanıtı
- ses eki anlama
- video eki anlama
- karışık ek sıralaması
- medyayı koruyan iş parçacığı yanıtı
- medyası korunmuş ileti dizisi yanıtı
## Öneri
Sonraki uygulama parçası şu olmalıdır:
Bir sonraki uygulama parçası şu olmalı:
1. markdown senaryo yükleyicisi + zod şeması ekle
2. mevcut kataloğu markdown'dan oluştur
2. mevcut kataloğu markdown'dan üret
3. önce birkaç basit senaryoyu taşı
4. genel QA veri yolu ek desteği ekle
5. QA UI'da satır içi görseli işle
6. sonra ses ve videoya genişlet
4. genel QA bus ek desteği ekle
5. QA UI içinde satır içi görüntüyü işle
6. ardından ses ve videoya genişlet
Bu, her iki hedefi de kanıtlayan en küçük yoldur:
- genel markdown tanımlı QA
- genel markdown ile tanımlanmış QA
- daha zengin sahte mesajlaşma yüzeyleri
## Açık Sorular
- senaryo dosyalarının değişken enterpolasyonu ile gömülü markdown istem şablonlarına izin verip vermemesi gerektiği
- setup/cleanup bölümlerinin adlandırılmış bölümler mi yoksa yalnızca sıralı eylem listeleri mi olması gerektiği
- artifact referanslarının şemada güçlü biçimde türlendirilmiş mi yoksa dize tabanlı mı olması gerektiği
- özel işleyicilerin tek bir kayıt defterinde mi yoksa yüzey başına kayıt defterlerinde mi yaşaması gerektiği
- oluşturulan JSON uyumluluk dosyasının geçiş sırasında sürüm kontrolünde tutulmaya devam edip etmemesi gerektiği
- senaryo dosyalarının değişken interpolasyonlu gömülü markdown istem şablonlarına izin verip vermemesi
- setup/cleanup'ın adlandırılmış bölümler mi yoksa yalnızca sıralı eylem listeleri mi olması gerektiği
- artefakt başvurularının şemada güçlü türlenmiş mi yoksa dize tabanlı mı olması gerektiği
- özel handler'ların tek bir registry içinde mi yoksa surface başına registry'lerde mi yaşaması gerektiği
- oluşturulmuş JSON uyumluluk dosyasının geçiş sırasında checked in kalıp kalmaması gerektiği

View File

@ -1,14 +1,14 @@
---
read_when:
- Sohbet komutlarını kullanıyor veya yapılandırıyorsunuz
- Komut yönlendirmesini veya izinleri hata ayıklıyorsunuz
summary: 'Slash komutları: metin ve yerel, yapılandırma ve desteklenen komutlar'
- Sohbet komutlarını kullanırken veya yapılandırırken
- Komut yönlendirmesi veya izinlerinde hata ayıklarken
summary: 'Slash komutları: metin ile yerel arasındaki fark, yapılandırma ve desteklenen komutlar'
title: Slash Komutları
x-i18n:
generated_at: "2026-04-06T03:14:45Z"
generated_at: "2026-04-08T06:02:12Z"
model: gpt-5.4
provider: openai
source_hash: 417e35b9ddd87f25f6c019111b55b741046ea11039dde89210948185ced5696d
source_hash: 4a7ee7f1a8012058279b9e632889b291d4e659e4ec81209ca8978afbb9ad4b96
source_path: tools/slash-commands.md
workflow: 15
---
@ -16,21 +16,21 @@ x-i18n:
# Slash komutları
Komutlar Gateway tarafından işlenir. Çoğu komut, `/` ile başlayan **bağımsız** bir mesaj olarak gönderilmelidir.
Yalnızca host üzerinde çalışan bash sohbet komutu `! <cmd>` kullanır (`/bash <cmd>` bir takma addır).
Yalnızca ana makineye özel bash sohbet komutu `! <cmd>` kullanır (`/bash <cmd>` ise bunun diğer adıdır).
Birbiriyle ilişkili iki sistem vardır:
- **Komutlar**: bağımsız `/...` mesajları.
- **Yönergeler**: `/think`, `/fast`, `/verbose`, `/reasoning`, `/elevated`, `/exec`, `/model`, `/queue`.
- Yönergeler, model mesajı görmeden önce ondan ayıklanır.
- Normal sohbet mesajlarında (yalnızca yönergelerden olmayan), “satır içi ipuçları” olarak değerlendirilir ve oturum ayarlarını **kalıcı hale getirmez**.
- Yalnızca yönerge içeren mesajlarda (mesaj yalnızca yönergeler içeriyorsa), oturuma kalıcı olarak kaydedilir ve bir onay yanıtı döndürür.
- Yönergeler yalnızca **yetkili göndericilere** uygulanır. `commands.allowFrom` ayarlanmışsa, kullanılan tek
izin listesi odur; aksi halde yetkilendirme channel izin listeleri/eşleştirme ile `commands.useAccessGroups` üzerinden gelir.
Yetkisiz göndericiler, yönergelerin düz metin olarak ele alındığını görür.
- Yönergeler, model mesajı görmeden önce mesajdan çıkarılır.
- Normal sohbet mesajlarında (yalnızca yönerge olmayanlarda), “satır içi ipuçları” olarak değerlendirilir ve oturum ayarlarını **kalıcı olarak** değiştirmez.
- Yalnızca yönerge içeren mesajlarda (mesaj yalnızca yönergeler içeriyorsa), oturumda kalıcı olur ve bir onay yanıtı verir.
- Yönergeler yalnızca **yetkili göndericiler** için uygulanır. `commands.allowFrom` ayarlanmışsa, kullanılan tek
izin listesi odur; aksi halde yetkilendirme kanal izin listeleri/eşleştirme ile `commands.useAccessGroups` üzerinden gelir.
Yetkisiz göndericilerde yönergeler düz metin olarak değerlendirilir.
Ayrıca birkaç **satır içi kısayol** da vardır (yalnızca izin listesinde/yetkili göndericiler için): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
Bunlar hemen çalışır, model kalan metni görmeden önce ayıklanır ve kalan metin normal akıştan devam eder.
Buna ek olarak birkaç **satır içi kısayol** da vardır (yalnızca izinli/yetkili göndericiler): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
Bunlar hemen çalışır, model mesajı görmeden önce çıkarılır ve kalan metin normal akıştan devam eder.
## Yapılandırma
@ -46,7 +46,10 @@ Bunlar hemen çalışır, model kalan metni görmeden önce ayıklanır ve kalan
mcp: false,
plugins: false,
debug: false,
restart: false,
restart: true,
ownerAllowFrom: ["discord:123456789012345678"],
ownerDisplay: "raw",
ownerDisplaySecret: "${OWNER_ID_HASH_SECRET}",
allowFrom: {
"*": ["user1"],
discord: ["user:123"],
@ -56,141 +59,179 @@ Bunlar hemen çalışır, model kalan metni görmeden önce ayıklanır ve kalan
}
```
- `commands.text` (varsayılan `true`), sohbet mesajlarında `/...` ayrıştırmasını etkinleştirir.
- Yerel komutları olmayan yüzeylerde (WhatsApp/WebChat/Signal/iMessage/Google Chat/Microsoft Teams), bunu `false` yapsanız bile metin komutları çalışmaya devam eder.
- `commands.native` (varsayılan `"auto"`), yerel komutları kaydeder.
- Otomatik: Discord/Telegram için açık; Slack için kapalıdır (slash komutlarını ekleyene kadar); yerel desteği olmayan sağlayıcılarda yok sayılır.
- Sağlayıcı bazında geçersiz kılmak için `channels.discord.commands.native`, `channels.telegram.commands.native` veya `channels.slack.commands.native` ayarlayın (bool veya `"auto"`).
- `commands.text` (varsayılan `true`) sohbet mesajlarında `/...` ayrıştırmayı etkinleştirir.
- Yerel komutları olmayan yüzeylerde (WhatsApp/WebChat/Signal/iMessage/Google Chat/Microsoft Teams), bunu `false` olarak ayarlasanız bile metin komutları çalışmaya devam eder.
- `commands.native` (varsayılan `"auto"`) yerel komutları kaydeder.
- Otomatik: Discord/Telegram için açık; Slack için kapalıdır (slash komutlarını siz ekleyene kadar); yerel destek olmayan sağlayıcılarda yok sayılır.
- Sağlayıcı bazında geçersiz kılmak için `channels.discord.commands.native`, `channels.telegram.commands.native` veya `channels.slack.commands.native` ayarını kullanın (bool veya `"auto"`).
- `false`, başlangıçta Discord/Telegram üzerinde daha önce kaydedilmiş komutları temizler. Slack komutları Slack uygulamasında yönetilir ve otomatik olarak kaldırılmaz.
- `commands.nativeSkills` (varsayılan `"auto"`), desteklendiğinde **skill** komutlarını yerel olarak kaydeder.
- Otomatik: Discord/Telegram için açık; Slack için kapalıdır (Slack, skill başına bir slash komutu oluşturmayı gerektirir).
- Sağlayıcı bazında geçersiz kılmak için `channels.discord.commands.nativeSkills`, `channels.telegram.commands.nativeSkills` veya `channels.slack.commands.nativeSkills` ayarlayın (bool veya `"auto"`).
- `commands.bash` (varsayılan `false`), `! <cmd>` ile host shell komutlarının çalıştırılmasını etkinleştirir (`/bash <cmd>` bir takma addır; `tools.elevated` izin listeleri gerekir).
- `commands.bashForegroundMs` (varsayılan `2000`), bashin arka plan kipine geçmeden önce ne kadar bekleyeceğini denetler (`0`, hemen arka plana atar).
- `commands.config` (varsayılan `false`), `/config` komutunu etkinleştirir (`openclaw.json` okur/yazar).
- `commands.mcp` (varsayılan `false`), `/mcp` komutunu etkinleştirir (`mcp.servers` altındaki OpenClaw tarafından yönetilen MCP configini okur/yazar).
- `commands.plugins` (varsayılan `false`), `/plugins` komutunu etkinleştirir (plugin keşfi/durumu artı kurulum + etkinleştirme/devre dışı bırakma denetimleri).
- `commands.debug` (varsayılan `false`), `/debug` komutunu etkinleştirir (yalnızca çalışma zamanı geçersiz kılmaları).
- `commands.allowFrom` (isteğe bağlı), komut yetkilendirmesi için sağlayıcı başına bir izin listesi ayarlar. Yapılandırıldığında, komutlar ve yönergeler için
tek yetkilendirme kaynağı bu olur (channel izin listeleri/eşleştirme ve `commands.useAccessGroups`
yok sayılır). Global varsayılan için `"*"` kullanın; sağlayıcıya özgü anahtarlar bunu geçersiz kılar.
- `commands.useAccessGroups` (varsayılan `true`), `commands.allowFrom` ayarlanmamışsa komutlar için izin listelerini/ilkeleri uygular.
- `commands.nativeSkills` (varsayılan `"auto"`) desteklendiğinde **skill** komutlarını yerel olarak kaydeder.
- Otomatik: Discord/Telegram için açık; Slack için kapalıdır (Slack her skill için bir slash komutu oluşturmayı gerektirir).
- Sağlayıcı bazında geçersiz kılmak için `channels.discord.commands.nativeSkills`, `channels.telegram.commands.nativeSkills` veya `channels.slack.commands.nativeSkills` ayarını kullanın (bool veya `"auto"`).
- `commands.bash` (varsayılan `false`) `! <cmd>` ile ana makine kabuk komutlarını çalıştırmayı etkinleştirir (`/bash <cmd>` bunun diğer adıdır; `tools.elevated` izin listelerini gerektirir).
- `commands.bashForegroundMs` (varsayılan `2000`) bash'in arka plan moduna geçmeden önce ne kadar bekleyeceğini kontrol eder (`0`, hemen arka plana alır).
- `commands.config` (varsayılan `false`) `/config` komutunu etkinleştirir (`openclaw.json` okur/yazar).
- `commands.mcp` (varsayılan `false`) `/mcp` komutunu etkinleştirir (OpenClaw tarafından yönetilen `mcp.servers` altındaki MCP yapılandırmasını okur/yazar).
- `commands.plugins` (varsayılan `false`) `/plugins` komutunu etkinleştirir (plugin keşfi/durumu ile kurulum + etkinleştirme/devre dışı bırakma denetimleri).
- `commands.debug` (varsayılan `false`) `/debug` komutunu etkinleştirir (yalnızca çalışma zamanı geçersiz kılmaları).
- `commands.restart` (varsayılan `true`) `/restart` ile gateway yeniden başlatma araç eylemlerini etkinleştirir.
- `commands.ownerAllowFrom` (isteğe bağlı), yalnızca sahip için olan komut/araç yüzeyleri adına açık sahip izin listesini ayarlar. Bu, `commands.allowFrom` listesinden ayrıdır.
- `commands.ownerDisplay`, sahip kimliklerinin sistem isteminde nasıl görüneceğini kontrol eder: `raw` veya `hash`.
- `commands.ownerDisplaySecret`, `commands.ownerDisplay="hash"` olduğunda kullanılan HMAC gizli anahtarını isteğe bağlı olarak ayarlar.
- `commands.allowFrom` (isteğe bağlı), komut yetkilendirmesi için sağlayıcı bazlı bir izin listesi ayarlar. Yapılandırıldığında, komutlar ve yönergeler için
tek yetkilendirme kaynağı budur (kanal izin listeleri/eşleştirme ve `commands.useAccessGroups`
yok sayılır). Genel varsayılan için `"*"` kullanın; sağlayıcıya özel anahtarlar bunu geçersiz kılar.
- `commands.useAccessGroups` (varsayılan `true`), `commands.allowFrom` ayarlı değilken komutlar için izin listelerini/ilkeleri uygular.
## Komut listesi
Metin + yerel (etkinleştirildiğinde):
Geçerli gerçek kaynaklar:
- `/help`
- `/commands`
- `/tools [compact|verbose]` (geçerli agentın şu anda ne kullanabildiğini gösterir; `verbose`ıklamaları ekler)
- `/skill <name> [input]` (bir skilli adına göre çalıştır)
- `/status` (geçerli durumu gösterir; mevcut model provider için kullanılabiliyorsa provider kullanım/kota bilgilerini içerir)
- `/tasks` (geçerli oturum için arka plan görevlerini listeler; agent-local geri dönüş sayılarıyla etkin ve son görev ayrıntılarını gösterir)
- `/allowlist` (izin listesi girdilerini listele/ekle/kaldır)
- `/approve <id> <decision>` (exec onay istemlerini çözümler; kullanılabilir kararlar için bekleyen onay mesajını kullanın)
- `/context [list|detail|json]` (“bağlam”ııklar; `detail`, dosya başına + araç başına + skill başına + sistem komutu boyutunu gösterir)
- `/btw <question>` (gelecekteki oturum bağlamını değiştirmeden geçerli oturum hakkında geçici bir yan soru sorar; bkz. [/tools/btw](/tr/tools/btw))
- `/export-session [path]` (takma ad: `/export`) (geçerli oturumu tam sistem komutuyla birlikte HTML olarak dışa aktarır)
- `/whoami` (gönderici kimliğinizi gösterir; takma adı: `/id`)
- `/session idle <duration|off>` (odaklanmış thread bağları için etkinliksizlik kaynaklı otomatik odak kaldırmayı yönetir)
- `/session max-age <duration|off>` (odaklanmış thread bağları için kesin max-age kaynaklı otomatik odak kaldırmayı yönetir)
- `/subagents list|kill|log|info|send|steer|spawn` (geçerli oturum için alt agent çalıştırmalarını incele, denetle veya başlat)
- `/acp spawn|cancel|steer|close|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|sessions` (ACP çalışma zamanı oturumlarını incele ve denetle)
- `/agents` (bu oturum için threade bağlı agentları listeler)
- `/focus <target>` (Discord: bu threadi veya yeni bir threadi bir oturum/alt agent hedefine bağla)
- `/unfocus` (Discord: geçerli thread bağını kaldır)
- `/kill <id|#|all>` (bu oturum için çalışan bir veya tüm alt agentları hemen durdurur; onay mesajı yoktur)
- `/steer <id|#> <message>` (çalışan bir alt agentı hemen yönlendirir: mümkünse çalışma içinde, aksi halde mevcut işi durdurup yönlendirme mesajıyla yeniden başlatır)
- `/tell <id|#> <message>` (`/steer` için takma ad)
- `/config show|get|set|unset` (configi diske kalıcı yazar, yalnızca sahip; `commands.config: true` gerektirir)
- `/mcp show|get|set|unset` (OpenClaw MCP sunucu configini yönetir, yalnızca sahip; `commands.mcp: true` gerektirir)
- `/plugins list|show|get|install|enable|disable` (keşfedilen pluginleri incele, yenilerini kur ve etkinliği değiştir; yazma işlemleri yalnızca sahip içindir; `commands.plugins: true` gerektirir)
- `/plugin`, `/plugins` için bir takma addır.
- `/plugin install <spec>`, `openclaw plugins install` ile aynı plugin speclerini kabul eder: yerel yol/arşiv, npm paketi veya `clawhub:<pkg>`.
- Etkinleştirme/devre dışı bırakma yazmaları yine de bir yeniden başlatma ipucuyla yanıt verir. Ön planda izlenen bir gatewayde OpenClaw bu yeniden başlatmayı yazımdan hemen sonra otomatik gerçekleştirebilir.
- `/debug show|set|unset|reset` (yalnızca çalışma zamanı geçersiz kılmaları, yalnızca sahip; `commands.debug: true` gerektirir)
- `/usage off|tokens|full|cost` (yanıt başına kullanım altbilgisi veya yerel maliyet özeti)
- `/tts off|always|inbound|tagged|status|provider|limit|summary|audio` (TTS denetimi; bkz. [/tts](/tr/tools/tts))
- Discord: yerel komut `/voice`dur (Discord `/tts` komutunu ayırır); metin `/tts` yine de çalışır.
- `/stop`
- `/restart`
- `/dock-telegram` (takma ad: `/dock_telegram`) (yanıtları Telegrama geçir)
- `/dock-discord` (takma ad: `/dock_discord`) (yanıtları Discorda geçir)
- `/dock-slack` (takma ad: `/dock_slack`) (yanıtları Slacke geçir)
- `/activation mention|always` (yalnızca gruplar)
- `/send on|off|inherit` (yalnızca sahip)
- `/reset` veya `/new [model]` (isteğe bağlı model ipucu; kalan metin aynen iletilir)
- `/think <off|minimal|low|medium|high|xhigh>` (modele/sağlayıcıya göre dinamik seçenekler; takma adlar: `/thinking`, `/t`)
- `/fast status|on|off` (argümanı atlamak, geçerli etkin fast-mode durumunu gösterir)
- `/verbose on|full|off` (takma adı: `/v`)
- `/reasoning on|off|stream` (takma adı: `/reason`; açıkken `Reasoning:` önekli ayrı bir mesaj gönderir; `stream` = yalnızca Telegram taslağı)
- `/elevated on|off|ask|full` (takma adı: `/elev`; `full`, exec onaylarını atlar)
- `/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>` (geçerli durumu görmek için `/exec` gönderin)
- `/model <name>` (takma adı: `/models`; veya `agents.defaults.models.*.alias` içindeki `/<alias>`)
- `/queue <mode>` (artı `debounce:2s cap:25 drop:summarize` gibi seçenekler; mevcut ayarları görmek için `/queue` gönderin)
- `/bash <command>` (yalnızca host; `! <command>` için takma ad; `commands.bash: true` + `tools.elevated` izin listeleri gerekir)
- `/dreaming [on|off|status|help]` (global dreamingi aç/kapat veya durumu göster; bkz. [Dreaming](/concepts/dreaming))
- çekirdek yerleşik komutlar `src/auto-reply/commands-registry.shared.ts` içinden gelir
- üretilmiş dock komutları `src/auto-reply/commands-registry.data.ts` içinden gelir
- plugin komutları plugin `registerCommand()` çağrılarından gelir
- gateway'inizde fiili kullanılabilirlik yine de yapılandırma bayraklarına, kanal yüzeyine ve kurulu/etkin plugin'lere bağlıdır
Yalnızca metin:
### Çekirdek yerleşik komutlar
- `/compact [instructions]` (bkz. [/concepts/compaction](/tr/concepts/compaction))
- `! <command>` (yalnızca host; aynı anda bir tane; uzun işler için `!poll` + `!stop` kullanın)
- `!poll`ıktıyı / durumu kontrol eder; isteğe bağlı `sessionId` kabul eder; `/bash poll` da çalışır)
- `!stop` (çalışan bash işini durdurur; isteğe bağlı `sessionId` kabul eder; `/bash stop` da çalışır)
Bugün kullanılabilen yerleşik komutlar:
- `/new [model]` yeni bir oturum başlatır; `/reset` sıfırlama diğer adıdır.
- `/compact [instructions]` oturum bağlamını sıkıştırır. Bkz. [/concepts/compaction](/tr/concepts/compaction).
- `/stop` geçerli çalıştırmayı iptal eder.
- `/session idle <duration|off>` ve `/session max-age <duration|off>` iş parçacığına bağlanma süresinin dolmasını yönetir.
- `/think <off|minimal|low|medium|high|xhigh>` düşünme düzeyini ayarlar. Diğer adlar: `/thinking`, `/t`.
- `/verbose on|off|full` ayrıntılı çıktıyı açar/kapatır. Diğer adı: `/v`.
- `/fast [status|on|off]` hızlı modu gösterir veya ayarlar.
- `/reasoning [on|off|stream]` muhakeme görünürlüğünü açar/kapatır. Diğer adı: `/reason`.
- `/elevated [on|off|ask|full]` yükseltilmiş modu açar/kapatır. Diğer adı: `/elev`.
- `/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>` exec varsayılanlarını gösterir veya ayarlar.
- `/model [name|#|status]` modeli gösterir veya ayarlar.
- `/models [provider] [page] [limit=<n>|size=<n>|all]` sağlayıcıları veya bir sağlayıcıya ait modelleri listeler.
- `/queue <mode>` kuyruk davranışını yönetir (`steer`, `interrupt`, `followup`, `collect`, `steer-backlog`) ve `debounce:2s cap:25 drop:summarize` gibi seçenekleri destekler.
- `/help` kısa yardım özetini gösterir.
- `/commands` üretilmiş komut kataloğunu gösterir.
- `/tools [compact|verbose]` geçerli ajanın şu anda neleri kullanabildiğini gösterir.
- `/status` çalışma zamanı durumunu gösterir; varsa sağlayıcı kullanımı/kotası da dahil edilir.
- `/tasks` geçerli oturum için etkin/son arka plan görevlerini listeler.
- `/context [list|detail|json]` bağlamın nasıl oluşturulduğunu açıklar.
- `/export-session [path]` geçerli oturumu HTML olarak dışa aktarır. Diğer adı: `/export`.
- `/whoami` gönderici kimliğinizi gösterir. Diğer adı: `/id`.
- `/skill <name> [input]` adıyla bir skill çalıştırır.
- `/allowlist [list|add|remove] ...` izin listesi girdilerini yönetir. Yalnızca metin.
- `/approve <id> <decision>` exec onay istemlerini çözümler.
- `/btw <question>` gelecekteki oturum bağlamını değiştirmeden yan bir soru sorar. Bkz. [/tools/btw](/tr/tools/btw).
- `/subagents list|kill|log|info|send|steer|spawn` geçerli oturum için alt ajan çalıştırmalarını yönetir.
- `/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help` ACP oturumlarını ve çalışma zamanı seçeneklerini yönetir.
- `/focus <target>` geçerli Discord iş parçacığını veya Telegram konusunu/sohbetini bir oturum hedefine bağlar.
- `/unfocus` geçerli bağlamayı kaldırır.
- `/agents` geçerli oturum için iş parçacığına bağlı ajanları listeler.
- `/kill <id|#|all>` çalışan bir veya tüm alt ajanları iptal eder.
- `/steer <id|#> <message>` çalışan bir alt ajana yönlendirme gönderir. Diğer adı: `/tell`.
- `/config show|get|set|unset` `openclaw.json` okur veya yazar. Yalnızca sahip. `commands.config: true` gerektirir.
- `/mcp show|get|set|unset` `mcp.servers` altındaki OpenClaw tarafından yönetilen MCP sunucu yapılandırmasını okur veya yazar. Yalnızca sahip. `commands.mcp: true` gerektirir.
- `/plugins list|inspect|show|get|install|enable|disable` plugin durumunu inceler veya değiştirir. `/plugin` bunun diğer adıdır. Yazma işlemleri yalnızca sahip içindir. `commands.plugins: true` gerektirir.
- `/debug show|set|unset|reset` yalnızca çalışma zamanı yapılandırma geçersiz kılmalarını yönetir. Yalnızca sahip. `commands.debug: true` gerektirir.
- `/usage off|tokens|full|cost` yanıt başına kullanım alt bilgisini denetler veya yerel bir maliyet özeti yazdırır.
- `/tts on|off|status|provider|limit|summary|audio|help` TTS'yi denetler. Bkz. [/tools/tts](/tr/tools/tts).
- `/restart` etkinse OpenClaw'ı yeniden başlatır. Varsayılan: etkin; devre dışı bırakmak için `commands.restart: false` ayarlayın.
- `/activation mention|always` grup etkinleştirme modunu ayarlar.
- `/send on|off|inherit` gönderme ilkesini ayarlar. Yalnızca sahip.
- `/bash <command>` bir ana makine kabuk komutunu çalıştırır. Yalnızca metin. Diğer adı: `! <command>`. `commands.bash: true` ve ayrıca `tools.elevated` izin listelerini gerektirir.
- `!poll [sessionId]` bir arka plan bash işini denetler.
- `!stop [sessionId]` bir arka plan bash işini durdurur.
### Üretilmiş dock komutları
Dock komutları, yerel komut desteğine sahip kanal plugin'lerinden üretilir. Geçerli paketlenmiş küme:
- `/dock-discord` (diğer adı: `/dock_discord`)
- `/dock-mattermost` (diğer adı: `/dock_mattermost`)
- `/dock-slack` (diğer adı: `/dock_slack`)
- `/dock-telegram` (diğer adı: `/dock_telegram`)
### Paketlenmiş plugin komutları
Paketlenmiş plugin'ler daha fazla slash komutu ekleyebilir. Bu repodaki geçerli paketlenmiş komutlar:
- `/dreaming [on|off|status|help]` bellek rüyalaştırmayı açar/kapatır. Bkz. [Dreaming](/tr/concepts/dreaming).
- `/pair [qr|status|pending|approve|cleanup|notify]` cihaz eşleştirme/kurulum akışını yönetir. Bkz. [Pairing](/tr/channels/pairing).
- `/phone status|arm <camera|screen|writes|all> [duration]|disarm` yüksek riskli telefon düğümü komutlarını geçici olarak devreye alır.
- `/voice status|list [limit]|set <voiceId|name>` Talk ses yapılandırmasını yönetir. Discord'da yerel komut adı `/talkvoice` olur.
- `/card ...` LINE zengin kart önayarlarını gönderir. Bkz. [LINE](/tr/channels/line).
- Yalnızca QQBot komutları:
- `/bot-ping`
- `/bot-version`
- `/bot-help`
- `/bot-upgrade`
- `/bot-logs`
### Dinamik skill komutları
Kullanıcının çağırabildiği skill'ler de slash komutları olarak sunulur:
- `/skill <name> [input]` her zaman genel giriş noktası olarak çalışır.
- skill'ler, skill/plugin bunları kaydederse `/prose` gibi doğrudan komutlar olarak da görünebilir.
- yerel skill komutu kaydı `commands.nativeSkills` ve `channels.<provider>.commands.nativeSkills` tarafından denetlenir.
Notlar:
- Komutlar, komut ile argümanlar arasında isteğe bağlı `:` kabul eder (ör. `/think: high`, `/send: on`, `/help:`).
- `/new <model>`, bir model takma adı, `provider/model` veya sağlayıcı adı (bulanık eşleşme) kabul eder; eşleşme yoksa metin mesaj gövdesi olarak ele alınır.
- Tam provider kullanım dökümü için `openclaw status --usage` kullanın.
- `/allowlist add|remove`, `commands.config=true` gerektirir ve channel `configWrites` ayarını dikkate alır.
- Çok hesaplı channels içinde, hedef hesap için kullanılan `/allowlist --account <id>` ve `/config set channels.<provider>.accounts.<id>...` da hedef hesabın `configWrites` ayarını dikkate alır.
- `/usage`, yanıt başına kullanım altbilgisini denetler; `/usage cost`, OpenClaw oturum günlüklerinden yerel bir maliyet özeti yazdırır.
- Komutlar, komut ile argümanlar arasında isteğe bağlı bir `:` kabul eder (ör. `/think: high`, `/send: on`, `/help:`).
- `/new <model>` bir model diğer adını, `provider/model` biçimini veya bir sağlayıcı adını kabul eder (bulanık eşleşme); eşleşme yoksa metin mesaj gövdesi olarak değerlendirilir.
- Sağlayıcı kullanımının tam dökümü için `openclaw status --usage` kullanın.
- `/allowlist add|remove` için `commands.config=true` gerekir ve kanal `configWrites` ayarlarına uyar.
- Çok hesaplı kanallarda, yapılandırma hedefli `/allowlist --account <id>` ve `/config set channels.<provider>.accounts.<id>...` işlemleri de hedef hesabın `configWrites` ayarlarına uyar.
- `/usage`, yanıt başına kullanım alt bilgisini denetler; `/usage cost`, OpenClaw oturum günlüklerinden yerel bir maliyet özeti yazdırır.
- `/restart` varsayılan olarak etkindir; devre dışı bırakmak için `commands.restart: false` ayarlayın.
- Yalnızca Discord yerel komutu: `/vc join|leave|status`, ses kanallarını denetler (`channels.discord.voice` ve yerel komutlar gerekir; metin olarak yoktur).
- Discord thread-binding komutları (`/focus`, `/unfocus`, `/agents`, `/session idle`, `/session max-age`), etkin thread bağlarının etkin olmasını gerektirir (`session.threadBindings.enabled` ve/veya `channels.discord.threadBindings.enabled`).
- `/plugins install <spec>`, `openclaw plugins install` ile aynı plugin belirtimlerini kabul eder: yerel yol/arşiv, npm paketi veya `clawhub:<pkg>`.
- `/plugins enable|disable` plugin yapılandırmasını günceller ve yeniden başlatma isteyebilir.
- Yalnızca Discord yerel komutu: `/vc join|leave|status` ses kanallarını denetler (`channels.discord.voice` ve yerel komutlar gerekir; metin olarak kullanılamaz).
- Discord iş parçacığı bağlama komutları (`/focus`, `/unfocus`, `/agents`, `/session idle`, `/session max-age`) etkili iş parçacığı bağlamalarının etkin olmasını gerektirir (`session.threadBindings.enabled` ve/veya `channels.discord.threadBindings.enabled`).
- ACP komut başvurusu ve çalışma zamanı davranışı: [ACP Agents](/tr/tools/acp-agents).
- `/verbose`, hata ayıklama ve ek görünürlük içindir; normal kullanımda **kapalı** tutun.
- `/fast on|off`, oturum geçersiz kılmasını kalıcı hale getirir. Bunu temizleyip config varsayılanlarına dönmek için Sessions UI içindeki `inherit` seçeneğini kullanın.
- `/fast`, sağlayıcıya özgüdür: OpenAI/OpenAI Codex bunu yerel Responses endpointlerinde `service_tier=priority` olarak eşlerken, `api.anthropic.com` adresine gönderilen OAuth ile kimlik doğrulanmış trafik dahil doğrudan herkese açık Anthropic istekleri bunu `service_tier=auto` veya `standard_only` olarak eşler. Bkz. [OpenAI](/tr/providers/openai) ve [Anthropic](/tr/providers/anthropic).
- Araç hata özetleri ilgili olduğunda yine gösterilir, ancak ayrıntılı hata metni yalnızca `/verbose` `on` veya `full` iken eklenir.
- `/reasoning` (ve `/verbose`) grup ortamlarında risklidir: açığa çıkarmayı düşünmediğiniz iç reasoningi veya araç çıktısını ifşa edebilir. Özellikle grup sohbetlerinde bunları kapalı bırakmayı tercih edin.
- `/verbose`, hata ayıklama ve ek görünürlük için tasarlanmıştır; normal kullanımda **kapalı** tutun.
- `/fast on|off`, oturum geçersiz kılmasını kalıcı hale getirir. Bunu temizleyip yapılandırma varsayılanlarına dönmek için Sessions UI içindeki `inherit` seçeneğini kullanın.
- `/fast` sağlayıcıya özeldir: OpenAI/OpenAI Codex bunu yerel Responses uç noktalarında `service_tier=priority` olarak eşler; `api.anthropic.com` adresine gönderilen OAuth kimlik doğrulamalı trafik dahil doğrudan genel Anthropic isteklerinde ise `service_tier=auto` veya `standard_only` olarak eşlenir. Bkz. [OpenAI](/tr/providers/openai) ve [Anthropic](/tr/providers/anthropic).
- Araç hata özetleri ilgili olduğunda yine gösterilir, ancak ayrıntılı hata metni yalnızca `/verbose` `on` veya `full` olduğunda eklenir.
- `/reasoning` (ve `/verbose`) grup ortamlarında risklidir: ortaya çıkarmanız amaçlanmayan iç muhakemeyi veya araç çıktısınıığa çıkarabilirler. Özellikle grup sohbetlerinde bunları kapalı bırakmanız önerilir.
- `/model`, yeni oturum modelini hemen kalıcı hale getirir.
- Agent boşta ise bir sonraki çalıştırma bunu hemen kullanır.
- Bir çalıştırma zaten etkinse OpenClaw canlı geçişi beklemede olarak işaretler ve yalnızca temiz bir yeniden deneme noktasında yeni modele yeniden başlar.
- Araç etkinliği veya yanıt çıktısı zaten başladıysa, bekleyen geçiş daha sonraki bir yeniden deneme fırsatına ya da sonraki kullanıcı turuna kadar kuyrukta kalabilir.
- **Hızlı yol:** izin listesindeki göndericilerden gelen yalnızca komut içeren mesajlar hemen işlenir (kuyruk + model atlanır).
- **Grup mention kapılaması:** izin listesindeki göndericilerden gelen yalnızca komut içeren mesajlar mention gereksinimlerini atlar.
- **Satır içi kısayollar (yalnızca izin listesindeki göndericiler):** bazı komutlar normal bir mesajın içine gömülü olduğunda da çalışır ve model kalan metni görmeden önce ayıklanır.
- Örnek: `hey /status`, bir durum yanıtı tetikler ve kalan metin normal akıştan devam eder.
- Ajan boşta ise, bir sonraki çalıştırma bunu hemen kullanır.
- Bir çalıştırma zaten etkinken, OpenClaw canlı geçişi beklemede olarak işaretler ve yalnızca temiz bir yeniden deneme noktasında yeni modele yeniden başlatır.
- Araç etkinliği veya yanıt çıktısı zaten başlamışsa, bekleyen geçiş daha sonraki bir yeniden deneme fırsatına veya bir sonraki kullanıcı turuna kadar kuyrukta kalabilir.
- **Hızlı yol:** izinli göndericilerden gelen yalnızca komut içeren mesajlar hemen işlenir (kuyruk + model atlanır).
- **Grup bahsetme geçidi:** izinli göndericilerden gelen yalnızca komut içeren mesajlar bahsetme gereksinimlerini atlar.
- **Satır içi kısayollar (yalnızca izinli göndericiler):** bazı komutlar normal bir mesaja gömülü olduğunda da çalışır ve model kalan metni görmeden önce çıkarılır.
- Örnek: `hey /status` bir durum yanıtını tetikler ve kalan metin normal akıştan devam eder.
- Şu anda: `/help`, `/commands`, `/status`, `/whoami` (`/id`).
- Yetkisiz yalnızca komut mesajları sessizce yok sayılır ve satır içi `/...` belirteçleri düz metin olarak değerlendirilir.
- **Skill komutları:** `user-invocable` skilller slash komutları olarak sunulur. Adlar `a-z0-9_` olacak şekilde temizlenir (en fazla 32 karakter); çakışmalar sayısal son ekler alır (ör. `_2`).
- `/skill <name> [input]`, bir skilli adına göre çalıştırır (yerel komut sınırları skill başına komutları engellediğinde yararlıdır).
- Varsayılan olarak skill komutları modele normal istek olarak iletilir.
- Skilller isteğe bağlı olarak komutu doğrudan bir araca yönlendirmek için `command-dispatch: tool` bildirebilir (deterministik, modelsiz).
- Örnek: `/prose` (OpenProse plugini) — bkz. [OpenProse](/tr/prose).
- **Yerel komut argümanları:** Discord, dinamik seçenekler için autocomplete kullanır (ve gerekli argümanları atlarsanız düğme menüleri gösterir). Telegram ve Slack, komut seçenekleri destekliyorsa ve argümanı atlarsanız bir düğme menüsü gösterir.
- Yetkisiz yalnızca komut içeren mesajlar sessizce yok sayılır ve satır içi `/...` belirteçleri düz metin olarak değerlendirilir.
- **Skill komutları:** `user-invocable` skill'ler slash komutları olarak sunulur. Adlar `a-z0-9_` biçimine dönüştürülür (en fazla 32 karakter); çakışmalar sayısal son ekler alır (ör. `_2`).
- `/skill <name> [input]` bir skill'i adıyla çalıştırır (yerel komut sınırları her-skill-komutlara izin vermediğinde kullanışlıdır).
- Varsayılan olarak skill komutları modele normal bir istek olarak iletilir.
- Skill'ler isteğe bağlı olarak komutu doğrudan bir araca yönlendirmek için `command-dispatch: tool` bildirebilir (deterministik, modelsiz).
- Örnek: `/prose` (OpenProse plugin'i) — bkz. [OpenProse](/tr/prose).
- **Yerel komut argümanları:** Discord dinamik seçenekler için otomatik tamamlama kullanır (ve gerekli argümanları atladığınızda düğme menüleri gösterir). Telegram ve Slack, bir komut seçenekleri desteklediğinde ve siz argümanı atladığınızda düğme menüsü gösterir.
## `/tools`
`/tools`, bir config sorusunu değil, çalışma zamanı sorusunu yanıtlar: **bu agentın şu anda
bu konuşmada ne kullanabildiğini**.
`/tools`, bir yapılandırma sorusunu değil, bir çalışma zamanı sorusunu yanıtlar: **bu ajan şu anda
bu konuşmada neleri kullanabilir**.
- Varsayılan `/tools` kompakttır ve hızlı tarama için optimize edilmiştir.
- `/tools verbose`, kısa açıklamalar ekler.
- Argümanları destekleyen yerel komut yüzeyleri, aynı `compact|verbose` kip değiştiricisini sunar.
- Sonuçlar oturum kapsamındadır; bu nedenle agent, channel, thread, gönderici yetkilendirmesi veya model değişirse çıktı da değişebilir.
- `/tools`, çalışma zamanında gerçekten erişilebilir araçları içerir; buna core araçları, bağlı plugin araçları ve channela ait araçlar dahildir.
- Varsayılan `/tools` kompakt yapıdadır ve hızlı tarama için optimize edilmiştir.
- `/tools verbose` kısa açıklamalar ekler.
- Argümanları destekleyen yerel komut yüzeyleri, aynı mod geçişini `compact|verbose` olarak sunar.
- Sonuçlar oturum kapsamlıdır; bu nedenle ajanı, kanalı, iş parçacığını, gönderici yetkilendirmesini veya modeli değiştirmek
çıktıyı değiştirebilir.
- `/tools`; çalışma zamanında gerçekten erişilebilir olan araçları içerir; buna çekirdek araçlar, bağlı
plugin araçları ve kanala ait araçlar dahildir.
Profil ve geçersiz kılma düzenlemeleri için, `/tools`u statik katalog gibi görmek yerine Control UI Tools panelini veya config/katalog yüzeylerini kullanın.
Profil ve geçersiz kılma düzenlemeleri için `/tools`'u statik bir katalog gibi ele almak yerine
Control UI Tools panelini veya yapılandırma/katalog yüzeylerini kullanın.
## Kullanım yüzeyleri (nerede ne gösterilir)
- **Provider kullanım/kota** (örnek: “Claude %80 kaldı”), kullanım izleme etkin olduğunda `/status` içinde mevcut model provider için görünür. OpenClaw provider pencerelerini `% kaldı` olarak normalize eder; MiniMax için yalnızca kalan yüzde alanları gösterimden önce tersine çevrilir ve `model_remains` yanıtları model etiketi taşıyan plan etiketine ek olarak chat-model girdisini tercih eder.
- `/status` içindeki **Token/cache satırları**, canlı oturum snapshotı seyrek olduğunda en son transcript kullanım girdisine geri dönebilir. Mevcut sıfır olmayan canlı değerler yine de kazanır ve transcript geri dönüşü ayrıca etkin çalışma zamanı model etiketini ve depolanmış toplamlar eksik veya daha küçük olduğunda prompt odaklı daha büyük bir toplamı da geri getirebilir.
- **Sağlayıcı kullanımı/kota** (örnek: “Claude %80 kaldı”), kullanım izleme etkin olduğunda geçerli model sağlayıcısı için `/status` içinde görünür. OpenClaw, sağlayıcı pencerelerini `% kaldı` biçimine normalleştirir; MiniMax için yalnızca kalan yüzde alanları gösterimden önce ters çevrilir ve `model_remains` yanıtlarında sohbet modeli girdisi ile modele etiketlenmiş plan etiketi tercih edilir.
- `/status` içindeki **token/cache satırları**, canlı oturum anlık görüntüsü seyrek olduğunda en son transkript kullanım girdisine geri dönebilir. Sıfır olmayan mevcut canlı değerler yine önceliklidir ve transkript geri dönüşü, depolanan toplamlar eksik veya daha küçük olduğunda etkin çalışma zamanı model etiketini ve istem odaklı daha büyük bir toplamı da kurtarabilir.
- **Yanıt başına token/maliyet**, `/usage off|tokens|full` ile denetlenir (normal yanıtlara eklenir).
- `/model status`, kullanımla değil, **modeller/auth/endpointlerle** ilgilidir.
- `/model status`, kullanımla değil **modeller/auth/uç noktalar** ile ilgilidir.
## Model seçimi (`/model`)
@ -209,14 +250,14 @@ Profil ve geçersiz kılma düzenlemeleri için, `/tools`u statik katalog gib
Notlar:
- `/model` ve `/model list`, kompakt, numaralandırılmış bir seçici gösterir (model ailesi + kullanılabilir sağlayıcılar).
- Discord üzerinde `/model` ve `/models`, sağlayıcı ve model açılır listeleri artı bir Submit adımı içeren etkileşimli bir seçici açar.
- `/model` ve `/model list`, kompakt ve numaralı bir seçici gösterir (model ailesi + kullanılabilir sağlayıcılar).
- Discord'da `/model` ve `/models`, sağlayıcı ve model açılır menülerinin yanı sıra bir Submit adımı içeren etkileşimli bir seçici açar.
- `/model <#>`, bu seçiciden seçim yapar (ve mümkün olduğunda geçerli sağlayıcıyı tercih eder).
- `/model status`, kullanılabildiğinde yapılandırılmış sağlayıcı endpointi (`baseUrl`) ve API kipini (`api`) de içeren ayrıntılı görünümü gösterir.
- `/model status`, yapılandırılmış sağlayıcı uç noktası (`baseUrl`) ve varsa API modu (`api`) dahil ayrıntılı görünümü gösterir.
## Debug geçersiz kılmaları
## Hata ayıklama geçersiz kılmaları
`/debug`, **yalnızca çalışma zamanı** config geçersiz kılmaları ayarlamanıza olanak tanır (disk değil, bellek). Yalnızca sahip içindir. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.debug: true` kullanın.
`/debug`, **yalnızca çalışma zamanı** yapılandırma geçersiz kılmalarını ayarlamanıza izin verir (diskte değil, bellekte). Yalnızca sahip. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.debug: true` kullanın.
Örnekler:
@ -230,12 +271,12 @@ Notlar:
Notlar:
- Geçersiz kılmalar yeni config okumalarına hemen uygulanır, ancak `openclaw.json` dosyasına yazılmaz.
- Tüm geçersiz kılmaları temizlemek ve disk üzerindeki confige dönmek için `/debug reset` kullanın.
- Geçersiz kılmalar, yeni yapılandırma okumalarına hemen uygulanır, ancak `openclaw.json` içine yazılmaz.
- Tüm geçersiz kılmaları temizleyip disk üzerindeki yapılandırmaya dönmek için `/debug reset` kullanın.
## Config güncellemeleri
## Yapılandırma güncellemeleri
`/config`, disk üzerindeki configinize (`openclaw.json`) yazar. Yalnızca sahip içindir. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.config: true` kullanın.
`/config`, disk üzerindeki yapılandırmanıza (`openclaw.json`) yazar. Yalnızca sahip. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.config: true` kullanın.
Örnekler:
@ -249,12 +290,12 @@ Notlar:
Notlar:
- Yazmadan önce config doğrulanır; geçersiz değişiklikler reddedilir.
- `/config` güncellemeleri yeniden başlatmalar arasında kalıcıdır.
- Yazmadan önce yapılandırma doğrulanır; geçersiz değişiklikler reddedilir.
- `/config` güncellemeleri yeniden başlatmalar arasında kalıcı olur.
## MCP güncellemeleri
`/mcp`, `mcp.servers` altındaki OpenClaw tarafından yönetilen MCP sunucu tanımlarını yazar. Yalnızca sahip içindir. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.mcp: true` kullanın.
`/mcp`, `mcp.servers` altında OpenClaw tarafından yönetilen MCP sunucu tanımlarını yazar. Yalnızca sahip. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.mcp: true` kullanın.
Örnekler:
@ -267,12 +308,12 @@ Notlar:
Notlar:
- `/mcp`, configi Piye ait proje ayarlarında değil OpenClaw configinde saklar.
- Hangi transportların gerçekten yürütülebilir olduğuna çalışma zamanı bağdaştırıcıları karar verir.
- `/mcp`, yapılandırmayı Pi'ye ait proje ayarlarında değil, OpenClaw yapılandırmasında saklar.
- Hangi tımaların gerçekten çalıştırılabilir olduğuna çalışma zamanı bağdaştırıcıları karar verir.
## Plugin güncellemeleri
`/plugins`, operatörlerin keşfedilen pluginleri incelemesine ve config içindeki etkinliği değiştirmesine olanak tanır. Salt okunur akışlar takma ad olarak `/plugin` kullanabilir. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.plugins: true` kullanın.
`/plugins`, operatörlerin keşfedilen plugin'leri incelemesine ve yapılandırmada etkinleştirmeyi açıp kapatmasına olanak tanır. Salt okunur akışlar diğer ad olarak `/plugin` kullanabilir. Varsayılan olarak devre dışıdır; etkinleştirmek için `commands.plugins: true` kullanın.
Örnekler:
@ -286,34 +327,35 @@ Notlar:
Notlar:
- `/plugins list` ve `/plugins show`, mevcut çalışma alanı ve disk üzerindeki confige karşı gerçek plugin keşfini kullanır.
- `/plugins enable|disable`, yalnızca plugin configini günceller; plugin kurmaz veya kaldırmaz.
- Etkinleştirme/devre dışı bırakma değişikliklerinden sonra bunları uygulamak için gatewayi yeniden başlatın.
- `/plugins list` ve `/plugins show`, geçerli çalışma alanına ve disk üzerindeki yapılandırmaya karşı gerçek plugin keşfini kullanır.
- `/plugins enable|disable` yalnızca plugin yapılandırmasını günceller; plugin kurmaz veya kaldırmaz.
- Etkinleştirme/devre dışı bırakma değişikliklerinden sonra bunları uygulamak için gateway'i yeniden başlatın.
## Yüzey notları
- **Metin komutları**, normal sohbet oturumunda çalışır (DMler `main`i paylaşır, grupların kendi oturumu vardır).
- **Yerel komutlar**, izole oturumlar kullanır:
- **Metin komutları** normal sohbet oturumunda çalışır (DM'ler `main` oturumunu paylaşır, grupların kendi oturumu vardır).
- **Yerel komutlar** yalıtılmış oturumlar kullanır:
- Discord: `agent:<agentId>:discord:slash:<userId>`
- Slack: `agent:<agentId>:slack:slash:<userId>` (önek `channels.slack.slashCommand.sessionPrefix` ile yapılandırılabilir)
- Telegram: `telegram:slash:<userId>` (oturum hedefi `CommandTargetSessionKey` üzerinden sohbet oturumunu hedefler)
- **`/stop`**, geçerli çalıştırmayı durdurabilmesi için etkin sohbet oturumunu hedefler.
- **Slack:** `channels.slack.slashCommand`, tek bir `/openclaw` tarzı komut için hâlâ desteklenir. `commands.native` etkinleştirirseniz, her yerleşik komut için bir Slack slash komutu oluşturmanız gerekir (`/help` ile aynı adlar). Slack için komut argüman menüleri geçici Block Kit düğmeleri olarak iletilir.
- Slack yerel istisnası: Slack `/status` komutunu ayırdığı için `/status` değil `/agentstatus` kaydedin. Metin `/status`, Slack mesajlarında yine de çalışır.
- Telegram: `telegram:slash:<userId>` (sohbet oturumunu `CommandTargetSessionKey` üzerinden hedefler)
- **`/stop`**, geçerli çalıştırmayı iptal edebilmek için etkin sohbet oturumunu hedef alır.
- **Slack:** `channels.slack.slashCommand`, tek bir `/openclaw` tarzı komut için hâlâ desteklenir. `commands.native` etkinleştirirseniz, her yerleşik komut için bir Slack slash komutu oluşturmanız gerekir (`/help` ile aynı adlar). Slack için komut argüman menüleri geçici Block Kit düğmeleri olarak teslim edilir.
- Slack yerel istisnası: Slack `/status` komutunu ayırdığı için `/status` değil `/agentstatus` kaydedin. Metin `/status`, Slack mesajlarında yine çalışır.
## BTW yan soruları
`/btw`, mevcut oturum hakkında hızlı bir **yan soru**dur.
`/btw`, geçerli oturum hakkında hızlı bir **yan soru** sormanın yoludur.
Normal sohbetten farklı olarak:
- mevcut oturumu arka plan bağlamı olarak kullanır,
- ayrı, **araçsız** tek seferlik bir çağrı olarak çalışır,
- geçerli oturumu arka plan bağlamı olarak kullanır,
- ayrı bir **araçsız** tek seferlik çağrı olarak çalışır,
- gelecekteki oturum bağlamını değiştirmez,
- transcript geçmişine yazılmaz,
- transkript geçmişine yazılmaz,
- normal bir asistan mesajı yerine canlı bir yan sonuç olarak iletilir.
Bu, ana görev devam ederken geçici bir netleştirme istediğinizde `/btw` komutunu yararlı kılar.
Bu da `/btw` komutunu, ana
görev sürerken geçici bir açıklama istediğiniz durumlar için kullanışlı kılar.
Örnek:
@ -321,4 +363,5 @@ Bu, ana görev devam ederken geçici bir netleştirme istediğinizde `/btw` komu
/btw şu anda ne yapıyoruz?
```
Tam davranış ve istemci UX ayrıntıları için bkz. [BTW Side Questions](/tr/tools/btw).
Tam davranış ve istemci UX
ayrıntıları için bkz. [BTW Yan Soruları](/tr/tools/btw).

View File

@ -6,17 +6,17 @@ read_when:
summary: Giden yanıtlar için metinden konuşmaya (TTS)
title: Metinden Konuşmaya
x-i18n:
generated_at: "2026-04-05T14:14:34Z"
generated_at: "2026-04-08T06:01:50Z"
model: gpt-5.4
provider: openai
source_hash: 8487c8acef7585bd4eb5e3b39e2a063ebc6b5f0103524abdcbadd3a7781ffc46
source_hash: 6e0fbcaf61282733c134f682e05a71f94d2169c03a85131ce9ad233c71a1e533
source_path: tools/tts.md
workflow: 15
---
# Metinden konuşmaya (TTS)
OpenClaw, ElevenLabs, Microsoft, MiniMax veya OpenAI kullanarak giden yanıtları sese dönüştürebilir.
OpenClaw, giden yanıtları ElevenLabs, Microsoft, MiniMax veya OpenAI kullanarak sese dönüştürebilir.
OpenClaw'ın ses gönderebildiği her yerde çalışır.
## Desteklenen hizmetler
@ -24,20 +24,21 @@ OpenClaw'ın ses gönderebildiği her yerde çalışır.
- **ElevenLabs** (birincil veya yedek sağlayıcı)
- **Microsoft** (birincil veya yedek sağlayıcı; mevcut paketlenmiş uygulama `node-edge-tts` kullanır)
- **MiniMax** (birincil veya yedek sağlayıcı; T2A v2 API'sini kullanır)
- **OpenAI** (birincil veya yedek sağlayıcı; ayrıca özetler için kullanılır)
- **OpenAI** (birincil veya yedek sağlayıcı; özetler için de kullanılır)
### Microsoft konuşma notları
Paketlenmiş Microsoft konuşma sağlayıcısı şu anda Microsoft Edge'in çevrimiçi
nöral TTS hizmetini `node-edge-tts` kitaplığı üzerinden kullanır. Barındırılan bir hizmettir (yerel
değil), Microsoft uç noktalarını kullanır ve API anahtarı gerektirmez.
`node-edge-tts`, konuşma yapılandırma seçeneklerini ve çıktı biçimlerini sunar, ancak
tüm seçenekler hizmet tarafından desteklenmez. Eski yapılandırma ve yönerge girdisi
olarak `edge` hâlâ çalışır ve `microsoft` olarak normalize edilir.
nöral TTS hizmetini `node-edge-tts` kitaplığı aracılığıyla kullanır. Barındırılan
bir hizmettir (yerel değil), Microsoft uç noktalarını kullanır ve API anahtarı
gerektirmez. `node-edge-tts`, konuşma yapılandırma seçeneklerini ve çıktı
biçimlerini sunar, ancak tüm seçenekler hizmet tarafından desteklenmez. `edge`
kullanan eski yapılandırma ve yönerge girdileri hâlâ çalışır ve `microsoft`
olarak normalize edilir.
Bu yol, yayımlanmış bir SLA veya kota olmadan herkese açık bir web hizmeti olduğu için,
onu en iyi çaba düzeyinde değerlendirin. Garantili sınırlar ve destek gerekiyorsa OpenAI
veya ElevenLabs kullanın.
Bu yol, yayımlanmış bir SLA veya kotası olmayan herkese açık bir web hizmeti
olduğundan, bunu en iyi çaba düzeyinde değerlendirin. Garantili sınırlar ve
destek gerekiyorsa OpenAI veya ElevenLabs kullanın.
## İsteğe bağlı anahtarlar
@ -50,8 +51,8 @@ OpenAI, ElevenLabs veya MiniMax istiyorsanız:
Microsoft konuşma için API anahtarı **gerekmez**.
Birden fazla sağlayıcı yapılandırılmışsa önce seçilen sağlayıcı kullanılır, diğerleri yedek seçenekler olur.
Otomatik özetleme, yapılandırılmış `summaryModel` değerini (veya `agents.defaults.model.primary`) kullanır,
bu nedenle özetlemeyi etkinleştirirseniz o sağlayıcının da kimliği doğrulanmış olması gerekir.
Otomatik özetleme, yapılandırılmış `summaryModel` (veya `agents.defaults.model.primary`) kullanır,
bu nedenle özetlemeyi etkinleştirirseniz o sağlayıcı için de kimlik doğrulaması yapılmış olmalıdır.
## Hizmet bağlantıları
@ -65,10 +66,10 @@ bu nedenle özetlemeyi etkinleştirirseniz o sağlayıcının da kimliği doğru
## Varsayılan olarak etkin mi?
Hayır. Otomatik TTS varsayılan olarak **kapalıdır**. Yapılandırmada
`messages.tts.auto` ile veya oturum başına `/tts always` (takma ad: `/tts on`) ile etkinleştirin.
Hayır. Otomatik TTS varsayılan olarak **kapalıdır**. Bunu yapılandırmada
`messages.tts.auto` ile veya yerel olarak `/tts on` ile etkinleştirin.
`messages.tts.provider` ayarlanmamışsa OpenClaw, kayıt defteri otomatik seçim sırasındaki
`messages.tts.provider` ayarlanmamışsa OpenClaw, kayıt otomatik seçim sırasındaki
ilk yapılandırılmış konuşma sağlayıcısını seçer.
## Yapılandırma
@ -89,7 +90,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Birincil OpenAI, yedek ElevenLabs
### ElevenLabs yedekli OpenAI birincil
```json5
{
@ -130,7 +131,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Birincil Microsoft (API anahtarı yok)
### Microsoft birincil (API anahtarı yok)
```json5
{
@ -153,7 +154,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Birincil MiniMax
### MiniMax birincil
```json5
{
@ -177,7 +178,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Microsoft konuşmayı devre dışı bırakma
### Microsoft konuşmayı devre dışı bırak
```json5
{
@ -208,7 +209,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Yalnızca gelen bir sesli mesajdan sonra sesle yanıt ver
### Yalnızca gelen bir sesli mesajdan sonra sesli yanıt ver
```json5
{
@ -220,7 +221,7 @@ Tam şema [Gateway configuration](/tr/gateway/configuration) sayfasındadır.
}
```
### Uzun yanıtlar için otomatik özeti devre dışı bırakma
### Uzun yanıtlar için otomatik özeti devre dışı bırak
```json5
{
@ -241,78 +242,79 @@ Ardından şunu çalıştırın:
### Alanlarla ilgili notlar
- `auto`: otomatik TTS modu (`off`, `always`, `inbound`, `tagged`).
- `inbound`, yalnızca gelen bir sesli mesajdan sonra ses gönderir.
- `tagged`, yalnızca yanıt `[[tts]]` etiketleri içerdiğinde ses gönderir.
- `enabled`: eski açma/kapama seçeneği (doctor bunu `auto` değerine taşır).
- `inbound` yalnızca gelen bir sesli mesajdan sonra ses gönderir.
- `tagged` yalnızca yanıtta `[[tts]]` etiketleri bulunduğunda ses gönderir.
- `enabled`: eski geçiş anahtarıdır (`doctor` bunu `auto` değerine geçirir).
- `mode`: `"final"` (varsayılan) veya `"all"` (araç/blok yanıtlarını da içerir).
- `provider`: `"elevenlabs"`, `"microsoft"`, `"minimax"` veya `"openai"` gibi konuşma sağlayıcı kimliği (yedek otomatik olarak yapılır).
- `provider` **ayarlanmamışsa**, OpenClaw kayıt defteri otomatik seçim sırasındaki ilk yapılandırılmış konuşma sağlayıcısını kullanır.
- `provider`: `"elevenlabs"`, `"microsoft"`, `"minimax"` veya `"openai"` gibi konuşma sağlayıcısı kimliği (yedek kullanım otomatiktir).
- `provider` **ayarlanmamışsa**, OpenClaw kayıt otomatik seçim sırasındaki ilk yapılandırılmış konuşma sağlayıcısını kullanır.
- Eski `provider: "edge"` hâlâ çalışır ve `microsoft` olarak normalize edilir.
- `summaryModel`: otomatik özet için isteğe bağlı düşük maliyetli model; varsayılan olarak `agents.defaults.model.primary` kullanılır.
- `provider/model` veya yapılandırılmış model takma adını kabul eder.
- `summaryModel`: otomatik özet için isteğe bağlı düşük maliyetli modeldir; varsayılanı `agents.defaults.model.primary` değeridir.
- `provider/model` veya yapılandırılmış bir model takma adını kabul eder.
- `modelOverrides`: modelin TTS yönergeleri üretmesine izin verir (varsayılan olarak açık).
- `allowProvider` varsayılan olarak `false` değerindedir (sağlayıcı değiştirme isteğe bağlıdır).
- `providers.<id>`: konuşma sağlayıcı kimliğine göre anahtarlanan, sağlayıcının sahip olduğu ayarlar.
- Eski doğrudan sağlayıcı blokları (`messages.tts.openai`, `messages.tts.elevenlabs`, `messages.tts.microsoft`, `messages.tts.edge`) yükleme sırasında otomatik olarak `messages.tts.providers.<id>` yapısına taşınır.
- `maxTextLength`: TTS girdisi için katı üst sınır (karakter). Aşılırsa `/tts audio` başarısız olur.
- `providers.<id>`: konuşma sağlayıcısı kimliğine göre anahtarlanmış, sağlayıcıya ait ayarlardır.
- Eski doğrudan sağlayıcı blokları (`messages.tts.openai`, `messages.tts.elevenlabs`, `messages.tts.microsoft`, `messages.tts.edge`) yükleme sırasında otomatik olarak `messages.tts.providers.<id>` yapısına geçirilir.
- `maxTextLength`: TTS girdisi için kesin üst sınırdır (karakter). Aşılırsa `/tts audio` başarısız olur.
- `timeoutMs`: istek zaman aşımı (ms).
- `prefsPath`: yerel tercihler JSON yolu için geçersiz kılma (sağlayıcı/sınır/özet).
- `apiKey` değerleri ortam değişkenlerine geri döner (`ELEVENLABS_API_KEY`/`XI_API_KEY`, `MINIMAX_API_KEY`, `OPENAI_API_KEY`).
- `prefsPath`: yerel prefs JSON yolunu geçersiz kılar (sağlayıcı/sınır/özet).
- `apiKey` değerleri env vars değerlerine geri düşer (`ELEVENLABS_API_KEY`/`XI_API_KEY`, `MINIMAX_API_KEY`, `OPENAI_API_KEY`).
- `providers.elevenlabs.baseUrl`: ElevenLabs API temel URL'sini geçersiz kılar.
- `providers.openai.baseUrl`: OpenAI TTS uç noktasını geçersiz kılar.
- Çözümleme sırası: `messages.tts.providers.openai.baseUrl` -> `OPENAI_TTS_BASE_URL` -> `https://api.openai.com/v1`
- Varsayılan dışındaki değerler OpenAI uyumlu TTS uç noktaları olarak değerlendirilir, bu nedenle özel model ve ses adları kabul edilir.
- Varsayılan olmayan değerler OpenAI uyumlu TTS uç noktaları olarak değerlendirilir, bu nedenle özel model ve ses adları kabul edilir.
- `providers.elevenlabs.voiceSettings`:
- `stability`, `similarityBoost`, `style`: `0..1`
- `useSpeakerBoost`: `true|false`
- `speed`: `0.5..2.0` (`1.0 = normal`)
- `speed`: `0.5..2.0` (1.0 = normal)
- `providers.elevenlabs.applyTextNormalization`: `auto|on|off`
- `providers.elevenlabs.languageCode`: 2 harfli ISO 639-1 (ör. `en`, `de`)
- `providers.elevenlabs.seed`: `0..4294967295` tamsayısı (en iyi çaba ile belirlenim)
- `providers.minimax.baseUrl`: MiniMax API temel URL'sini geçersiz kılar (varsayılan `https://api.minimax.io`, ortam: `MINIMAX_API_HOST`).
- `providers.minimax.model`: TTS modeli (varsayılan `speech-2.8-hd`, ortam: `MINIMAX_TTS_MODEL`).
- `providers.minimax.voiceId`: ses tanımlayıcısı (varsayılan `English_expressive_narrator`, ortam: `MINIMAX_TTS_VOICE_ID`).
- `providers.elevenlabs.seed`: tamsayı `0..4294967295` (en iyi çaba düzeyinde belirlenimlilik)
- `providers.minimax.baseUrl`: MiniMax API temel URL'sini geçersiz kılar (varsayılan `https://api.minimax.io`, env: `MINIMAX_API_HOST`).
- `providers.minimax.model`: TTS modeli (varsayılan `speech-2.8-hd`, env: `MINIMAX_TTS_MODEL`).
- `providers.minimax.voiceId`: ses tanımlayıcısıdır (varsayılan `English_expressive_narrator`, env: `MINIMAX_TTS_VOICE_ID`).
- `providers.minimax.speed`: oynatma hızı `0.5..2.0` (varsayılan 1.0).
- `providers.minimax.vol`: ses seviyesi `(0, 10]` (varsayılan 1.0; 0'dan büyük olmalıdır).
- `providers.minimax.vol`: ses düzeyi `(0, 10]` (varsayılan 1.0; 0'dan büyük olmalıdır).
- `providers.minimax.pitch`: perde kaydırma `-12..12` (varsayılan 0).
- `providers.microsoft.enabled`: Microsoft konuşma kullanımına izin verir (varsayılan `true`; API anahtarı yok).
- `providers.microsoft.voice`: Microsoft nöral ses adı (ör. `en-US-MichelleNeural`).
- `providers.microsoft.lang`: dil kodu (ör. `en-US`).
- `providers.microsoft.outputFormat`: Microsoft çıktı biçimi (ör. `audio-24khz-48kbitrate-mono-mp3`).
- Geçerli değerler için Microsoft Speech çıktı biçimlerine bakın; tüm biçimler paketlenmiş Edge tabanlı taşıma tarafından desteklenmez.
- `providers.microsoft.rate` / `providers.microsoft.pitch` / `providers.microsoft.volume`: yüzde dizeleri (ör. `+10%`, `-5%`).
- `providers.microsoft.saveSubtitles`: ses dosyasının yanına JSON altyazıları yazar.
- Geçerli değerler için Microsoft Speech output formats bölümüne bakın; tüm biçimler paketlenmiş Edge tabanlı aktarım tarafından desteklenmez.
- `providers.microsoft.rate` / `providers.microsoft.pitch` / `providers.microsoft.volume`: yüzde dizgeleri (ör. `+10%`, `-5%`).
- `providers.microsoft.saveSubtitles`: ses dosyasının yanında JSON altyazıları yazar.
- `providers.microsoft.proxy`: Microsoft konuşma istekleri için proxy URL'si.
- `providers.microsoft.timeoutMs`: istek zaman aşımı geçersiz kılması (ms).
- `edge.*`: aynı Microsoft ayarları için eski takma ad.
- `edge.*`: aynı Microsoft ayarları için eski takma addır.
## Model odaklı geçersiz kılmalar (varsayılan olarak açık)
Varsayılan olarak model, tek bir yanıt için TTS yönergeleri üretebilir.
`messages.tts.auto`, `tagged` olduğunda sesi tetiklemek için bu yönergeler gereklidir.
`messages.tts.auto` değeri `tagged` olduğunda, sesi tetiklemek için bu yönergeler gerekir.
Etkin olduğunda model, tek bir yanıt için sesi geçersiz kılmak üzere `[[tts:...]]` yönergeleri ve ayrıca
yalnızca seste görünmesi gereken ifadesel etiketler (kahkaha, şarkı söyleme işaretleri vb.)
sağlamak için isteğe bağlı bir `[[tts:text]]...[[/tts:text]]` bloğu üretebilir.
Etkin olduğunda model, tek bir yanıt için sesi geçersiz kılmak üzere `[[tts:...]]`
yönergeleri ve ayrıca yalnızca seste görünmesi gereken ifade etiketlerini
(kahkaha, şarkı söyleme ipuçları vb.) sağlamak için isteğe bağlı bir
`[[tts:text]]...[[/tts:text]]` bloğu üretebilir.
`provider=...` yönergeleri, `modelOverrides.allowProvider: true` olmadığı sürece yok sayılır.
`provider=...` yönergeleri, `modelOverrides.allowProvider: true` olmadıkça yok sayılır.
Örnek yanıt yükü:
```
İşte burada.
Here you go.
[[tts:voiceId=pMsXgVXv3BLzUgSXRplE model=eleven_v3 speed=1.1]]
[[tts:text]](güler) Şarkıyı bir kez daha oku.[[/tts:text]]
[[tts:text]](laughs) Read the song once more.[[/tts:text]]
```
Kullanılabilir yönerge anahtarları (etkin olduğunda):
- `provider` (kayıtlı konuşma sağlayıcısı kimliği, örneğin `openai`, `elevenlabs`, `minimax` veya `microsoft`; `allowProvider: true` gerektirir)
- `provider` (kayıtlı konuşma sağlayıcısı kimliği; örneğin `openai`, `elevenlabs`, `minimax` veya `microsoft`; `allowProvider: true` gerektirir)
- `voice` (OpenAI sesi) veya `voiceId` (ElevenLabs / MiniMax)
- `model` (OpenAI TTS modeli, ElevenLabs model kimliği veya MiniMax modeli)
- `stability`, `similarityBoost`, `style`, `speed`, `useSpeakerBoost`
- `vol` / `volume` (MiniMax ses seviyesi, 0-10)
- `vol` / `volume` (MiniMax ses düzeyi, 0-10)
- `pitch` (MiniMax perde, -12 ile 12 arası)
- `applyTextNormalization` (`auto|on|off`)
- `languageCode` (ISO 639-1)
@ -332,7 +334,7 @@ Tüm model geçersiz kılmalarını devre dışı bırakın:
}
```
İsteğe bağlı izin listesi (diğer ayarlar yapılandırılabilir kalırken sağlayıcı değiştirmeyi etkinleştirme):
İsteğe bağlı izin listesi (sağlayıcı değiştirmeyi etkinleştirirken diğer ayarların yapılandırılabilir kalmasını sağlama):
```json5
{
@ -350,30 +352,30 @@ Tüm model geçersiz kılmalarını devre dışı bırakın:
## Kullanıcı başına tercihler
Slash komutları yerel geçersiz kılmaları `prefsPath` içine yazar (varsayılan:
Slash komutları yerel geçersiz kılmaları `prefsPath` alanına yazar (varsayılan:
`~/.openclaw/settings/tts.json`, `OPENCLAW_TTS_PREFS` veya
`messages.tts.prefsPath` ile geçersiz kılınabilir).
Saklanan alanlar:
Depolanan alanlar:
- `enabled`
- `provider`
- `maxLength` (özet eşiği; varsayılan 1500 karakter)
- `summarize` (varsayılan `true`)
Bunlar, bu ana bilgisayar için `messages.tts.*` değerlerini geçersiz kılar.
Bunlar o ana makine için `messages.tts.*` değerlerini geçersiz kılar.
## Çıktı biçimleri (sabit)
- **Feishu / Matrix / Telegram / WhatsApp**: Opus sesli mesajı (ElevenLabs'ten `opus_48000_64`, OpenAI'dan `opus`).
- 48kHz / 64kbps, sesli mesaj için iyi bir dengedir.
- **Diğer kanallar**: MP3 (ElevenLabs'ten `mp3_44100_128`, OpenAI'dan `mp3`).
- **Feishu / Matrix / Telegram / WhatsApp**: Opus sesli mesajı (`opus_48000_64` ElevenLabs'tan, `opus` OpenAI'dan).
- 48kHz / 64kbps, sesli mesajlar için iyi bir dengedir.
- **Diğer kanallar**: MP3 (`mp3_44100_128` ElevenLabs'tan, `mp3` OpenAI'dan).
- 44.1kHz / 128kbps, konuşma netliği için varsayılan dengedir.
- **MiniMax**: MP3 (`speech-2.8-hd` modeli, 32kHz örnekleme hızı). Sesli not biçimi doğal olarak desteklenmez; garantili Opus sesli mesajları için OpenAI veya ElevenLabs kullanın.
- **MiniMax**: MP3 (`speech-2.8-hd` modeli, 32kHz örnekleme hızı). Sesli not biçimi yerel olarak desteklenmez; garantili Opus sesli mesajlar için OpenAI veya ElevenLabs kullanın.
- **Microsoft**: `microsoft.outputFormat` kullanır (varsayılan `audio-24khz-48kbitrate-mono-mp3`).
- Paketlenmiş taşıma bir `outputFormat` kabul eder, ancak tüm biçimler hizmetten alınamaz.
- Çıktı biçimi değerleri Microsoft Speech çıktı biçimlerini izler (Ogg/WebM Opus dahil).
- Telegram `sendVoice`, OGG/MP3/M4A kabul eder; garantili Opus sesli mesajları gerekiyorsa OpenAI/ElevenLabs kullanın.
- Paketlenmiş aktarım bir `outputFormat` kabul eder, ancak tüm biçimler hizmetten alınamayabilir.
- Çıktı biçimi değerleri Microsoft Speech output formats biçimlerini izler (Ogg/WebM Opus dahil).
- Telegram `sendVoice`, OGG/MP3/M4A kabul eder; garantili Opus sesli mesajlar gerekiyorsa OpenAI/ElevenLabs kullanın.
- Yapılandırılmış Microsoft çıktı biçimi başarısız olursa OpenClaw MP3 ile yeniden dener.
OpenAI/ElevenLabs çıktı biçimleri kanal başına sabittir (yukarıya bakın).
@ -382,42 +384,41 @@ OpenAI/ElevenLabs çıktı biçimleri kanal başına sabittir (yukarıya bakın)
Etkin olduğunda OpenClaw:
- yanıt zaten medya veya `MEDIA:` yönergesi içeriyorsa TTS'yi atlar.
- çok kısa yanıtları (< 10 karakter) atlar.
- yanıt zaten medya veya bir `MEDIA:` yönergesi içeriyorsa TTS'yi atlar.
- çok kısa yanıtları atlar (< 10 karakter).
- etkinse uzun yanıtları `agents.defaults.model.primary` (veya `summaryModel`) kullanarak özetler.
- oluşturulan sesi yanıta ekler.
Yanıt `maxLength` değerini aşarsa ve özet kapalıysa (veya özet modeli için API anahtarı yoksa),
ses atlanır ve normal metin yanıtı gönderilir.
Yanıt `maxLength` değerini aşıyorsa ve özetleme kapalıysa (veya özet modeli
için API anahtarı yoksa), ses
atlanır ve normal metin yanıtı gönderilir.
## Akış diyagramı
```
Yanıt -> TTS etkin mi?
hayır -> metni gönder
evet -> medya / MEDIA: / kısa var mı?
evet -> metni gönder
hayır -> uzunluk > sınır?
hayır -> TTS -> sesi ekle
evet -> özet etkin mi?
hayır -> metni gönder
evet -> özetle (`summaryModel` veya `agents.defaults.model.primary`)
-> TTS -> sesi ekle
Reply -> TTS enabled?
no -> send text
yes -> has media / MEDIA: / short?
yes -> send text
no -> length > limit?
no -> TTS -> attach audio
yes -> summary enabled?
no -> send text
yes -> summarize (summaryModel or agents.defaults.model.primary)
-> TTS -> attach audio
```
## Slash komutu kullanımı
Tek bir komut vardır: `/tts`.
Etkinleştirme ayrıntıları için [Slash commands](/tools/slash-commands) sayfasına bakın.
Etkinleştirme ayrıntıları için [Slash commands](/tr/tools/slash-commands) sayfasına bakın.
Discord notu: `/tts`, yerleşik bir Discord komutudur, bu yüzden OpenClaw
orada yerel komut olarak `/voice` kaydeder. Metin olarak `/tts ...` yine de çalışır.
Discord notu: `/tts`, Discord'un yerleşik bir komutudur, bu yüzden OpenClaw
orada yerel komut olarak `/voice` kaydeder. Metin biçimindeki `/tts ...` yine de çalışır.
```
/tts off
/tts always
/tts inbound
/tts tagged
/tts on
/tts status
/tts provider openai
/tts limit 2000
@ -429,20 +430,22 @@ Notlar:
- Komutlar yetkili bir gönderici gerektirir (izin listesi/sahip kuralları yine geçerlidir).
- `commands.text` veya yerel komut kaydı etkin olmalıdır.
- `off|always|inbound|tagged`, oturum başına açma/kapama seçenekleridir (`/tts on`, `/tts always` için bir takma addır).
- `limit` ve `summary`, ana yapılandırmada değil, yerel tercihlerde saklanır.
- Yapılandırma `messages.tts.auto`, `off|always|inbound|tagged` kabul eder.
- `/tts on`, yerel TTS tercihini `always` olarak yazar; `/tts off`, `off` olarak yazar.
- `inbound` veya `tagged` varsayılanları istiyorsanız yapılandırmayı kullanın.
- `limit` ve `summary`, ana yapılandırmada değil yerel tercihlerde depolanır.
- `/tts audio`, tek seferlik bir sesli yanıt üretir (TTS'yi açmaz).
- `/tts status`, son deneme için yedek görünürlüğünü içerir:
- `/tts status`, son deneme için yedek kullanım görünürlüğü içerir:
- başarılı yedek: `Fallback: <primary> -> <used>` artı `Attempts: ...`
- başarısızlık: `Error: ...` artı `Attempts: ...`
- ayrıntılı tanılama: `Attempt details: provider:outcome(reasonCode) latency`
- OpenAI ve ElevenLabs API hataları artık ayrıştırılmış sağlayıcı hata ayrıntısını ve istek kimliğini (sağlayıcı tarafından döndürülürse) içerir; bu da TTS hata/günlüklerine yansıtılır.
- OpenAI ve ElevenLabs API hataları artık ayrıştırılmış sağlayıcı hata ayrıntısını ve istek kimliğini (sağlayıcı döndürürse) içerir; bu bilgiler TTS hata kayıtlarında/günlüklerinde gösterilir.
## Ajan aracı
`tts` aracı, metni konuşmaya dönüştürür ve
yanıt teslimi için bir ses eki döndürür. Kanal Feishu, Matrix, Telegram veya WhatsApp olduğunda,
ses bir dosya eki yerine sesli mesaj olarak teslim edilir.
ses dosya eki yerine sesli mesaj olarak teslim edilir.
## Gateway RPC