Ana içeriğe geç

Sohbet Araçları

Chat, modelin araç çağırmasına izin verebilir. Araçlı tur yerel çok turlu döngü çalıştırır: model ister, Libre WebUI çağıran kullanıcının kimliği ve izinleriyle yürütür, sonucu modele verir ve yanıt gelene kadar sürer — tur başına sekiz tur ve tur başına sekiz çağrı. Durdurma modeli, çalışan aracı ve bekleyen onayı iptal eder.

Çağrılar (chat.tool-call.v1, chat.tool-result.v1, chat.approval.v1) olayları olarak özel WebSocket ve kalıcı olay akışında aynı biçimde taşınır; yenileme aynı durumu oynatır. Tamamlanan tur çağrıları sınırlı sonuç önizlemeleriyle asistan mesajında saklar.

Araçları Etkinleştirme​

Varsayılan kapalıdır. Yönetici, Ayarlar → Kullanıcı Yönetimi → Erişim ve ilkeler → Araç erişimi altında yalnız yöneticilere veya herkese açar; her tur düzenleyicideki anahtar simgesiyle katılır. Seçici ana şalter ve yerleşik araç/sunucu başına kutu sunar, böylece yalnız seçilenler çalışır. Profilin bağladığını daraltabilir, genişletemez. Gizli sohbetler araç sunmaz; dış eylem onay ve denetim izi bırakabilir.

Araç erişimi anahtarı hemen kaydeder. Üzerine tıklayın ya da Tab ile odaklanıp Space ile değiştirin. Erişimi değiştirmek Ayarlar penceresini ve kaydırma konumunu yerinde bırakır.

Asistan profili sunucuları, yerleşik araç alt kümesini, becerileri ve bilgi koleksiyonlarını sınırlayabilir.

Yerleşik Araçlar​

On üç araç vardır; Not ve Takvim değişiklikleri dışında tümü salt okunurdur:

  • web_search — yönetici araması, erişim moduna uyar.
  • search_documents — kullanıcının ve paylaşılan koleksiyonların hibrit araması; profil koleksiyonları daraltabilir, geçit kaynak konumuyla alıntılanır.
  • list_documents — sohbet kapsamındaki belge ID, tür ve boyutları.
  • read_document — ID ve ofsetle sınırlı belge penceresi ve kaynak konumu.
  • load_skill — slug ile tam beceri talimatı; açıklama etkin beceri manifestini taşır, dosya envanteri eklenir.
  • read_skill_file — slug ve göreli yolla eşlik eden bir dosya.
  • list_notes — kendi ve paylaşılan Notlar.
  • read_note — bir Notun tam içeriği.
  • create_note — onay gerektiren oluşturma.
  • update_note — önceki durumu geri yüklenebilir sürüm olarak tutan onaylı değiştirme.
  • list_calendar_events — dönem-milisaniye aralığında kendi ve paylaşılan etkinlikler.
  • create_calendar_event — onaylı etkinlik oluşturma.
  • delete_calendar_event — ID ile onaylı silme.

Araç Sunucuları​

Yöneticiler Ayarlar → Araçlar altında dış sunucu kaydeder; başlangıç şablonları güvenli açık demo dâhil formu doldurur:

  • OpenAPI: JSON OpenAPI 3.x bir kez alınır ve SHA-256 ile sabitlenir. Her işlem araç olur; GET salt okunur, diğerleri yönetici değiştirmedikçe yan etkidir. Çağrı sabitlenmiş işlemden yeniden kurulur; model hedefi seçmez.
  • MCP (Streamable HTTP): araç listesi JSON-RPC ile alınır ve sabitlenir. annotations.readOnlyHint salt okumayı işaretler. stdio MCP bilinçli desteklenmez; dış süreç web sürecinde çalışmaz.

Envanter değişikliği yalnız yönetici yenileyince geçer ve araç başına geçersiz kılmaları korur. Kullanılabilirlik yalnız yöneticiler, herkes veya ortak kaynak izinleriyle kullanıcı/grup tabanlı olabilir.

Kimlik Bilgileri​

Kimlik doğrulamalı sunucular kullanıcı başına bearer token veya adlı başlık kullanır. Her sır, kesin kullanıcı ve sunucuya ek doğrulanmış veriyle bağlanıp şifrelenir, kullanıcı tarafından Ayarlar → Araçlar altında girilir ve hesaplar arasında paylaşılmaz.

Etkileşimli OAuth (MCP)​

Bir MCP sunucusu her kişiyi kendi adına da oturum açtırabilir. Sunucuyu Etkileşimli OAuth kimlik doğrulama moduyla kaydedin; Libre WebUI, sunucunun yanıtladığı WWW-Authenticate sınamasını okur, korumalı kaynak meta verisine, ardından yetkilendirme sunucusunun meta verisine gider ve yetkilendirme sunucusu kayıt sunuyorsa bir istemciyi dinamik olarak kaydeder (RFC 7591). İstemcileri otomatik kaydetmeyen sağlayıcılar, kayıt formunda yöneticinin sağladığı bir istemci kimliğini (ve isteğe bağlı bir gizli anahtarı) alır; gizli anahtar, keşfedilen uç noktalarla birlikte şifrelenir.

Ardından her kişi sunucunun kartındaki Bağlan'a basar ve sağlayıcıya yönlendirilir. Akış, CSRF durumu ve o tek sunucuyla sınırlı bir HttpOnly çerezde tutulan PKCE doğrulayıcısıyla PKCE (S256) kullanır. Geri çağırma kodu sunucuda değiştirir, belirteçleri statik bir sırla aynı kullanıcı-ve-sunucu bağlamasıyla şifrelenmiş saklar ve tarayıcıyı bir durum bayrağıyla uygulamaya geri gönderir — erişim ve yenileme belirteçleri hiçbir zaman sayfaya ulaşmaz. Erişim belirteçleri süresi dolmadan bir dakika önce, birkaç araç çağrısı yarışsa bile kişi ve sunucu başına yalnızca bir kez otomatik olarak yenilenir. Bir yenileme olanaksız olduğunda araç çağrısı sessizce başarısız olmak yerine yeniden bağlanmayı isteyen bir yanıtla döner. Bağlantıyı kes, o kişinin belirteçlerini kaldırır ve kaydı yerinde bırakır; sunucuyu silmek keşfedilen yapılandırmayı da unutur.

Kimlik doğrulanmamış bir araç listelemesini reddeden bir sunucu yine de kaydedilir: envanteri ilk başarılı bağlantıda (ve her yönetici yenilemesinde) sabitlenir, böylece bir modele bilinmeyen hiçbir şey sunulmaz.

Çıkış Politikası​

Her istek hedefini kendisi çözer; özel, loopback ve metadata adreslerini reddeder ve DNS rebind yönlendirmesin diye bağlantıyı çözülen adrese sabitler. Yönlendirmeler reddedilir. Yanıt boyutu ve zaman sınırı vardır. Tam iç ana bilgisayarlar TOOLS_PRIVATE_NETWORK_ALLOWLIST ile virgülle izinlenebilir; yine sabitlenir ve sınırlanır. Araç çıktısı modele güvenilmeyen metin olarak döner.

Onaylar​

Salt okunur araçlar sormadan çalışır. Yan etkili araç turu durdurur ve bir kez, bu sohbet için, bu sunucuda her zaman izin veya reddetme sorar. “Her zaman” yeniden başlatmayı aşar ve ayarlardan geri alınabilir; bekleyen istek iki dakikada reddedilmiş sayılır. Ret ve zaman aşımı çağrıyı yürütmez. Her karar ve çağrı düzeltilmiş güvenlik denetimi bırakır.

Örnekler​

Önce anahtar simgesini açın.

web_search — bilgi bulma​

Son SQLite sürümünde ne değişti? Yanıtlamadan önce web’de ara.

Model web_search aracını {"query": "SQLite latest release changelog"} gibi çağırır ve bulunanlara kaynak verir. Arama yapılandırılmış ve hesabınıza izinli olmalıdır.

search_documents — kendi dosyalarınızı sorma​

Belgelerimde fesih maddesini bul ve tam alıntıla.

Model {"query": "termination clause"} ile kaynak etiketli geçitler alır.

load_skill — beceri uygulama​

Ayarlar → Beceriler altında $release-notes oluşturun:

Bu fark için $release-notes kullanarak sürüm notları hazırla.

Model load_skill {"slug": "release-notes"} çağırır. $ beceri sluglarını tamamlar.

OpenAPI sunucusu — hava durumu​

  1. Ayarlar → Araçlar → Sunucu kaydet: Weather, OpenAPI, https://api.example-weather.dev, https://api.example-weather.dev/openapi.json, bearer.

  2. getForecast (GET, okuma) ve createAlert (POST, yan etki) gibi işlemler araç olur.

  3. Her kullanıcı kendi API anahtarını kaydeder.

  4. Sohbette:

    Montreal’de bu hafta sonu hava nasıl?

    weather__getForecast {"city": "Montreal"} hemen çalışır.

    Bu gece -20’nin altına düşerse uyar.

    weather__createAlert Bir kez izin ver, Bu sohbet için, Her zaman veya Reddet kartını gösterir. Seçime kadar gönderilmez.

Exa MCP — web'de arama ve getirme​

Ayarlar → Araçlar → Bir şablonla başlayın altında Exa'yı seçerek MCP kaydını şu adresle doldurun:

https://mcp.exa.ai/mcp?tools=web_search_exa,web_fetch_exa

Adres, Exa'nın araç seçim parametresi ile web_search_exa ve web_fetch_exa araçlarını seçer. Şablon kimlik doğrulaması kullanmaz ve erişimi varsayılan olarak yöneticilerle sınırlar. Formu gözden geçirip Kaydet'i seçerek bağlanın ve araç envanterini sabitleyin. Şablonu açmak veya iptal etmek Exa ile iletişim kurmaz. Bu araçlar çalıştığında arama sorguları ve istenen adresler Exa'ya gönderilir.

MCP sunucusu — issue takipçisi​

  1. Issues, MCP, https://mcp.example-tracker.dev/mcp, header, X-Api-Key olarak kaydedin.

  2. search_issues gibi salt okunur araçlar hemen, create_issue gibi diğerleri onayla çalışır.

  3. Sohbette:

    “database lock” geçen açık issue’ları bul ve örüntüyü özetleyen yenisini aç.

    issues__search_issues hemen çalışır; issues__create_issue onaydan önce kesin argümanları gösterir.

Ortam Değişkenleri​

DeğişkenEtki
TOOLS_ACCESS_MODEÖzelliği admins veya all-users olarak sabitler ve yönetici anahtarını kilitler.
TOOLS_PRIVATE_NETWORK_ALLOWLISTÖzel adreslere çözülebilen tam ana bilgisayarların virgüllü listesi.

Sınırlar​

  • Araçlar WebSocket yolunda ve kalıcı sohbetlerin üretim yolunda çalışır. Gizli oturum aktarımı tasarım gereği dışarıdadır; eski REST akışı döngüyü çalıştırmaz.
  • Kanal @model anmaları aynı döngüyü anan üyenin kataloğuna karşı çalıştırır, tek farkla: sorulacak kimse yoktur, bu yüzden kalıcı bir onayı bulunmayan yan etkili bir araç beklemek yerine hemen reddedilir. Salt okunur araçlar normal çalışır.
  • Work ajanları aynı sunucuları aynı ağ geçidi üzerinden çağırır: yalnız ağ erişimli çalışmalar, kimlik bilgisi bulunmayan sunucular sunum sırasında elenir, yan etkili araçlar Work onaylarından geçer.
  • Gemini ve CLI ajanı modelleri araç almaz; Ollama, OpenAI uyumlular, Responses API ve Anthropic alır.
  • Etkileşimli OAuth yalnız MCP içindir: bir OpenAPI sunucusu hâlâ statik kullanıcı başına kimlik bilgisi kullanır. Akış, PKCE ile yetkilendirme kodu izinidir; aygıt kodu ve istemci kimlik bilgisi akışları sunulmaz ve hiç meta veri (ya da kayıt uç noktası ve yönetici tarafından sağlanan bir istemci kimliği) yayımlamayan bir yetkilendirme sunucusuna bağlanılamaz.
  • Keşfedilen OAuth uç noktaları https olmalıdır; düz http yalnız loopback için, yani geliştirme sırasında aynı makinede çalışan bir sağlayıcı için kabul edilir.
  • Yönlendirme URI'si BASE_URL'den (veya ilk CORS_ORIGIN'den) türetilir, bu yüzden bu değer tarayıcının gerçekten eriştiği adres olmalı ve yönlendirme URI'sini sabitleyen sağlayıcılarda kayıtlı olmalıdır.