İçeriğe geç

Otomatik yakalama AI sağlayıcısı

Otomatik yakalama, teknik çalışmayı özetlemek ve bellek olarak kaydetmek için arka planda bir AI isteği çalıştırır. Aşağıdaki sağlayıcı yapılandırmalarından birine ihtiyaç duyar.

Önerilen: opencode’da zaten kimlik doğrulanmış ve yapılandırılmış çıktıyı destekleyen bir sağlayıcı kullanın:

"opencodeProvider": "anthropic",
"opencodeModel": "claude-haiku-4-5-20251001",

Eklenti, sağlayıcı uç noktalarını doğrudan çağırmak yerine yapılandırılmış çıktı isteklerini opencode’un oturum API’sine gönderir; böylece kimlik doğrulama, belirteç yenileme ve sağlayıcı yönlendirme opencode’a aittir. Sağlayıcı adı opencode providers list içindeki bir girdiyle eşleşmelidir ve seçilen model opencode üzerinden yapılandırılmış JSON çıktısını desteklemelidir.

İsteğe bağlı olarak "opencodeVariant": "xhigh" ile bir model muhakeme varyantını sabitleyin (örn. grok-4.7 için). Eklentinin dahili LLM çağrılarına uygulanır (otomatik yakalama özetleri, profil öğrenme, profil temizleme); opencodeModel "inherit" olsa bile, böylece arka plan çalışması etkileşimli oturumdan farklı bir muhakeme düzeyi kullanabilir.

Yavaş muhakeme modelleri (veya çok büyük profil prompt’ları) varsayılan 90 sn yapılandırılmış çıktı bütçesini aşabilir. Dahili yapılandırılmış çıktı çağrıları (otomatik yakalama özetleri, profil öğrenme) için uzatmak üzere "opencodeTimeoutMs" (milisaniye) ayarlayın — örn. 3 dakika için "opencodeTimeoutMs": 180000. Değerler 10000..600000’e sıkıştırılır; varsayılan 90000 kalır. Sayısal dizgeler zorlanır. Profil temizleme ayrı, daha uzun bir zaman aşımı kullanır.

Desteklenen sağlayıcılar: opencode providers list tarafından listelenen herhangi bir sağlayıcı (örn. anthropic, openai, github-copilot, …).

opencodeProvider ve opencodeModel ayarlanmışsa, aşağıdaki manuel memoryProvider ayarlarına göre önceliklidirler.

Oturum modelini izle: çağrı anında sabitlenmiş bir kimlik yerine somut bir OpenCode modeli kullanmak için "opencodeModel": "inherit" ayarlayın. Otomatik yakalama için her prompt chat.params kancası üzerinden kaydedilir ve yakalama isteği o prompt’un sağlayıcı/modelini yeniden kullanır. Profil öğrenme ve diğer yapılandırılmış çıktı yolları için (tek bir kullanıcı mesajına bağlı değildir), inherit önce host’un chat.params / V2 context kancasında bildirdiği son modeli yeniden kullanır; yoksa OpenCode’un model.json son listesine düşer (yapılandırılmış opencodeProvider tercih edilir). OpenCode v2 artık model.json yazmaz; orada birincil geri dönüş süreç içi oturum modelidir. Literâl model kimliği inherit göndermek asla geçerli değildir ve daha önce bu yollarda ProviderModelNotFoundError: Model not found: <provider>/inherit’e neden olmuştur. opencodeProvider yine de normal yapılandırma kapısı olarak gereklidir.

Yedek: Manuel API yapılandırması (opencodeProvider kullanılmıyorsa):

"memoryProvider": "openai-chat",
"memoryModel": "gpt-4o-mini",
"memoryApiUrl": "https://api.openai.com/v1",
"memoryApiKey": "sk-...",

API Anahtarı Biçimleri:

"memoryApiKey": "sk-..."
"memoryApiKey": "file://~/.config/opencode/api-key.txt"
"memoryApiKey": "env://OPENAI_API_KEY"

Manuel memoryProvider modları:

  • openai-chat: Araç/fonksiyon çağrısıyla OpenAI Chat Completions uyumlu API. Seçilen üst akış modeli ve proxy araç çağrılarını koruduğunda LiteLLM gibi uyumlu proxy’lerle çalışabilir.
  • openai-responses: Fonksiyon çağrısı çıktısıyla OpenAI Responses API.
  • anthropic: Araç kullanımıyla Anthropic Messages API.
  • minimax: MiniMax Anthropic Messages uyumlu uç noktası. memoryApiUrl’yi küresel uç noktaya (https://api.minimax.io) veya Çin uç noktasına (https://api.minimax.cn) ayarlayın; /anthropic/v1/messages yolu ve x-api-key başlığı otomatik uygulanır. MiniMax-M3.1-Flash (önerilen) veya MiniMax-M3 kullanın; her ikisi de 1.000.000 jeton bağlamına sahiptir. Flash her zaman düşünür; isteğe bağlı olarak memoryExtraParams’ı { "output_config": { "effort": "max" } } olarak low, medium, high, xhigh veya max (varsayılan) ile ayarlayın. Flash, devre dışı düşünmeyi ve effort none değerini reddeder ve service_tier desteklemez. Bu uç noktada M3 düşünmesi varsayılan olarak kapalıdır; { "thinking": { "type": "adaptive" } } ile etkinleştirin. Model kimlikleri açıkça yapılandırılmaya devam eder; mevcut özel veya eski kimlikler değiştirilmeden iletilir. Bkz. MiniMax uyumluluk referansı.
  • orcarouter: Ad alanlı model kimlikleriyle OpenAI uyumlu model ağ geçidi. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://api.orcarouter.ai/v1 ve orcarouter/auto’dur (istek başına yetenekli bir model seçen bir yönlendirme takma adı). memoryModel ayarlarsanız openai/gpt-5.5 veya deepseek/deepseek-v4-flash gibi ad alanlı bir kimlik kullanın; OrcaRouter çıplak model adlarını reddeder. Örnek:
    "memoryProvider": "orcarouter",
    "memoryApiKey": "<OrcaRouter API key>",
    OrcaRouter aynı uç noktada AI ajanları için ağ geçidi düzeyinde, sıfır güven güvenlik de çalıştırır — her prompt/yanıtı tarar ve varsayılan-reddet temelinde her araç çağrısını yönetir; uygulama kodu değişikliği gerekmez.
  • atlas-cloud: Atlas Cloud için OpenAI uyumlu Chat Completions ön ayarı. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://api.atlascloud.ai/v1 ve deepseek-ai/deepseek-v4-pro’dur. memoryApiKey atlanırsa ortamdan ATLASCLOUD_API_KEY kullanılır. Örnek:
    "memoryProvider": "atlas-cloud",
    "memoryApiKey": "env://ATLASCLOUD_API_KEY",
    Bu sağlayıcı seçildiğinde otomatik yakalama / profil prompt’ları, model yanıtları ve ilgili konuşma bağlamı https://api.atlascloud.ai adresine iletilir.
  • cheaper-inference: Cheaper Inference için OpenAI uyumlu Chat Completions ön ayarı. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://api.cheaperinference.com/v1 ve gpt-5.4-mini’dir. memoryApiKey atlanırsa ortamdan CHEAPER_INFERENCE_API_KEY kullanılır. Örnek:
    "memoryProvider": "cheaper-inference",
    "memoryApiKey": "env://CHEAPER_INFERENCE_API_KEY",
    Bu sağlayıcı seçildiğinde otomatik yakalama / profil prompt’ları, model yanıtları ve ilgili konuşma bağlamı https://api.cheaperinference.com adresine iletilir.
  • api-route: API Route için OpenAI uyumlu Chat Completions ön ayarı. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://global.api-route.com/v1 ve gpt-6.1-sol’dir. memoryApiKey atlanırsa ortamdan API_ROUTE_API_KEY kullanılır. Örnek:
    "memoryProvider": "api-route",
    "memoryApiKey": "env://API_ROUTE_API_KEY",
    Bu sağlayıcı seçildiğinde otomatik yakalama / profil prompt’ları, model yanıtları ve ilgili konuşma bağlamı https://global.api-route.com adresine iletilir.
  • runcrate: Runcrate için OpenAI uyumlu Chat Completions ön ayarı. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://api.runcrate.ai/v1 ve deepseek-ai/DeepSeek-V4.1-Flash’dir. memoryApiKey atlanırsa ortamdan RUNCRATE_API_KEY kullanılır. Örnek:
    "memoryProvider": "runcrate",
    "memoryApiKey": "env://RUNCRATE_API_KEY",
    Bu sağlayıcı seçildiğinde otomatik yakalama / profil prompt’ları, model yanıtları ve ilgili konuşma bağlamı https://api.runcrate.ai adresine iletilir.
  • cloudgpu: CloudGPU için OpenAI uyumlu Chat Completions ön ayarı. memoryApiUrl ve memoryModel isteğe bağlıdır — varsayılanları https://cloudgpu.app/v1 ve deepseek-v4.1-flash’tir. memoryApiKey atlanırsa ortamdan CLOUDGPU_API_KEY kullanılır (anahtar oluşturma: https://cloudgpu.app/api/console; API belgeleri: https://cloudgpu.app/api/docs). Örnek:
    "memoryProvider": "cloudgpu",
    "memoryApiKey": "env://CLOUDGPU_API_KEY",
    Bu sağlayıcı seçildiğinde otomatik yakalama / profil prompt’ları, model yanıtları ve ilgili konuşma bağlamı https://cloudgpu.app adresine iletilir.

Sorun giderme:

  • Otomatik yakalama hataları manuel memory araç kullanımını engellemez.
  • Otomatik yakalama bir sağlayıcının bağlı olmadığını bildirirse, sağlayıcı adını opencode providers list ile doğrulayın ve önce o sağlayıcıyı opencode’da yapılandırın.
  • Bir proxy veya özel sağlayıcı yapılandırılmış/araç çıktısı yerine düz metin döndürürse, başka bir model/sağlayıcı seçin veya yukarıdaki manuel sağlayıcı modlarından birini kullanın.
  • temperature reddeden modeller için manuel API yapılandırması kullanırken "memoryTemperature": false ekleyin.
  • Zorlanmış araç çağrılarını (tool_choice: "required", örn. bazı düşünme modları) reddeden modeller için openai-chat / orcarouter / atlas-cloud / cheaper-inference / api-route / runcrate / cloudgpu kullanırken "forceToolChoice": false ekleyin.
  • opencodeProvider / opencodeModel için (örn. DeepSeek V4 thinking), OpenCode yapılandırılmış çıktı için hâlâ zorlanmış tool_choice gönderir. opencode-mem dahili opencode-mem-structured ajanında düşünmeyi devre dışı bırakır (ve varyant birleştirmesinden sonra bunu chat.params içinde yeniden uygular); böylece otomatik yakalama ve profil öğrenme tamamlanabilir. Etkileşimli sohbet ajanınız değişmez. Yakalama hâlâ bir thinking/tool_choice hatasıyla başarısız olursa, opencodeModel için düşünmeyen bir model seçin veya eksiksiz bir manuel yedek yapılandırın (memoryModel + memoryApiUrl).
  • opencode-claude-auth / Claude Code: otomatik yakalama, kimlik doğrulanmış anthropic sağlayıcınızla OpenCode kullanır. Zorlanmış format: json_schema Claude-auth ile sık sık döngüye girer; bu nedenle opencode-mem opencodeProvider: "anthropic" için kimlik doğrulamayı koruyan bir metin-JSON yolu kullanır (zorlanmış StructuredOutput araçları yok; yanıt Zod ile ayrıştırılır). Bir adım watchdog’u hâlâ 2 adımdan sonra kaçak dahili oturumları iptal eder. Yakalama hâlâ başarısız olursa, eksiksiz bir manuel Anthropic API anahtarı yedeği yapılandırın (memoryProvider: "anthropic" + memoryModel + memoryApiUrl + memoryApiKey) — Claude Pro/Max OAuth OpenCode dışında yeniden kullanılamaz.
  • Desteklenmeyen platformlar: Intel Mac (darwin/x64) desteklenmez — @tursodatabase/database ve sabit onnxruntime-node sürümleri (sabitlenmiş 1.31.1) x64 yerel bağlayıcı yayınlamaz. Apple Silicon, Linux veya Windows kullanın; ya da embeddingApiUrl + embeddingApiKey ile uzak bir embedding uç noktası. MLX desteklenmez.