MiniMax-M3.1-Flash and DeepSeek-V4.1-Flash-1017 are now live on CometAPI →
guide/CometAPI araştırması

OpenCode'da CometAPI nasıl yapılandırılır

OpenCode'da CometAPI'yi Claude, GPT ve DeepSeek örnekleriyle yapılandırın. Model değiştirme komutları, kodlama görevleri ve sorun giderme içerir.

CometAPI
Deon GoodwinAI model ve API araştırma ekibi
Güncellendi Oct 22, 2026 17 dk okuma
OpenCode'da CometAPI nasıl yapılandırılır
Bu kalıbı kullanın

İlk API çağrısını yapın.

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_COMETAPI_KEY",
    base_url="https://api.cometapi.com/v1",
)

response = client.chat.completions.create(
    model="gpt-5-mini",
    messages=[{"role": "user", "content": "Build this workflow."}],
)

print(response.choices[0].message.content)

TL;DR

CometAPI’yi OpenCode’da bir kez yapılandırın, ardından programlama göreviniz için Claude, GPT veya DeepSeek’i seçin. Bu kılavuz, resmi CometAPI OpenCode entegrasyon rehberini eksiksiz bir proje kurulumuna genişletir: tek bir CometAPI API anahtarı, üç model örneği içeren bir yapılandırma dosyası, model değiştirme komutları ve tekrarlanabilir kontrolü olan küçük bir JavaScript görevi.

Önemli Noktalar

  • OpenCode CometAPI kurulumu bir sağlayıcı kimliği, API temel URL’si, kimlik bilgisi ve model kimliği gerektirir.
  • Gerçek API anahtarını opencode.json dışında tutmak için {env:COMETAPI_KEY} kullanın.
  • Tek bir opencode.json içinde Claude, GPT ve DeepSeek örneklerini kaydedin; üçü de aynı CometAPI anahtarını ve geçidini kullanır.
  • Ayrı ayrı Anthropic, OpenAI ve DeepSeek anahtarları almadan OpenCode’da seçili sağlayıcı/modeli değiştirin.
  • Eksik ortam değişkenlerine, uyuşmayan API yollarına ve bekleyen gibi görünen onay istemlerine dikkat edin.

OpenCode Nedir ve Neden CometAPI ile Kullanılır?

OpenCode, terminal arayüzü, masaüstü uygulaması ve IDE uzantısı olan açık kaynaklı bir AI kodlama aracısıdır. Bir projede mevcut kodu açıklayabilir, bir değişikliği planlayabilir, dosyaları düzenleyebilir ve yapılandırılmış izinler altında komutları çalıştırabilir. Bu eğitim, terminal iş akışını kullanır: aracıya küçük bir programlama görevi verin, önerilen eylemleri inceleyin ve yerel bir test ile ortaya çıkan dosyaları doğrulayın. Kurulum ve kullanım için resmi OpenCode belgelerine bakın.

CometAPI, model erişim katmanını sağlar. Çok modelli bir iş akışı, aksi halde tedarikçiler arasında kimlik bilgilerini, faturalandırmayı ve bağlantı ayarlarını yönetmeyi içerir. Desteklenen modelleri tek bir CometAPI hesabı üzerinden yönlendirmek, bu projeye paylaşılan bir anahtar ve temel URL kazandırır; OpenCode ise depoyu ve görev talimatlarını tutar. Bu, aynı görevde modelleri karşılaştırırken veya seçili modeli projeyi yeniden düzenlemeden değiştirirken yararlıdır. Bir toplayıcı geçit isteğe bağlıdır: doğrudan tedarikçi erişimi, tek sağlayıcılı iş akışına veya belirli sözleşme gerekliliklerine daha uygun olabilir. Buradaki fayda, daha basit çok sağlayıcılı erişimdir; API formatları, model davranışı ve araç uyumluluğu yine de ayrı ayrı doğrulanmalıdır.

CometAPI, OpenAI uyumlu Chat Completions’ı destekler ve diğer API formatlarını da sunar. Resmi entegrasyon, her format için bir adaptör seçer. Burada, Claude Sonnet 5 Messages kullanır, GPT-6.1 Sol Responses kullanır ve DeepSeek V4.1 Flash Chat Completions kullanır; aşağıdaki örnekleri izler. Tüm istekler yine aynı anahtar ile CometAPI’ye gider. Bir tedarikçi adı ve bir API formatı farklı şeyleri açıklar; tek bir modelin her formatı kabul ettiği varsayılmamalıdır.

YapılandırmaCometAPI’de Claude Sonnet 5 APICometAPI’de GPT-6.1 Sol APICometAPI’de DeepSeek V4.1 Flash API
Model tedarikçisiAnthropicOpenAIDeepSeek
Model kimliğiclaude-sonnet-5gpt-6.1-soldeepseek-v4.1-flash
OpenCode sağlayıcı kimliğicometapi-messagescometapi-responsescometapi-chat
Burada kullanılan API formatıMessagesResponses/ chatChat Completions
Adaptör@ai-sdk/anthropic@ai-sdk/openai@ai-sdk/openai-compatible

CometAPI’yi OpenCode’da Yapılandırmadan Önce Neye İhtiyacınız Var?

Bir terminal, npm ile Node.js, API erişimi ve kullanılabilir bakiye olan bir CometAPI hesabı ve geçici bir proje dizini kullanın. Bash örnekleri macOS, Linux veya WSL için geçerlidir; etiketli PowerShell örnekleri Windows sözdizimini kullanır. Kılavuzun ilerleyen bölümündeki JavaScript kontrolü için aynı oturumda Node.js’nin de bulunması gerekir.

Bu adım adım anlatım OpenCode 1 yapılandırma stilini kullanır. Resmi belgeler OpenCode 1 ve OpenCode 2’yi ayırt eder; her ikisi de opencode komutunu kullanır. Başlamadan önce opencode --version kaydını alın ve büyük sürümünüze ait yapılandırma belgelerini kullanın. Aşağıdaki üç model iş akışı, beklenen çıktılarla bir entegrasyon yürütmesidir; uçtan uca tamamlanmış bir test iddiası değildir.

Örnekleri çalıştırırken CLI, Node.js, npm, işletim sistemi ve test tarihini kaydedin. API kullanımı CometAPI hesabınıza faturalandırılır. Aşağıdaki komutlar beklenen sonuçlara sahip uygulamalı bir yürüyüştür; model çıktısı veya üç modelin başarıyla entegre olarak çalıştırıldığı iddia edilmemektedir.

node --versionnpm --versionopencode --version

CometAPI’yi OpenCode’da Adım Adım Nasıl Yapılandırırsınız?

Adım 1: OpenCode’u yükleyin

OpenCode mevcut değilse resmi npm paketini yükleyin. Sabitlenmemiş kurulum mevcut paket sürümünü izler; yapılandırmayı kullanmadan önce yüklenen sürümü kaydedin. Kaynağa ait ortamı yeniden üretmeniz gerekiyorsa, belirtilen CLI sürümü 1.18.16’dır.

OpenCode CLI’yi yükleyin ve sürümünü gösterin.

npm install -g opencode-aiopencode --version

Yüklemeden sonra çalıştırılabilir dosya bulunamazsa yeni bir terminal açın. İlk aracı görevinin net bir sınırı olması için geçici bir proje dizini içinde devam edin.

Bir proje dizini oluşturun ve içine girin.

mkdir cometapi-opencode-democd cometapi-opencode-demo

Adım 2: Bir CometAPI API Anahtarı oluşturun

CometAPI hesabınızdan bir API anahtarı oluşturun ve OpenCode’u başlatmak için kullanılan aynı terminalde ayarlayın. Yerel olarak yer tutucuyu değiştirin. Anahtarı commit etmeyin, istemlere yapıştırmayın veya paylaşılan günlüklerde yer vermeyin.

Değişken, geçerli kabuk ve ondan başlatılan işlemler için geçerlidir. Gerçek bir belirteci ekran görüntüsü almayın. Aşağıdaki kontroller, değerini yazdırmadan değişkenin var olup olmadığını bildirir.

Geçerli Bash oturumu için CometAPI anahtarını ayarlayın.

export COMETAPI_KEY="YOUR_COMETAPI_KEY"

Geçerli PowerShell oturumu için CometAPI anahtarını ayarlayın.

$env:COMETAPI_KEY = "YOUR_COMETAPI_KEY"test -n "$COMETAPI_KEY" && printf "COMETAPI_KEY is set\n" || printf "COMETAPI_KEY is missing\n"if ([string]::IsNullOrWhiteSpace($env:COMETAPI_KEY)) {  "COMETAPI_KEY is missing"} else {  "COMETAPI_KEY is set"}

Adım 3: opencode.json oluşturun

opencode.json dosyasını proje kökünde oluşturun veya girdileri projeler arasında kullanılabilir kılmak için ~/.config/opencode/opencode.json kullanın. Proje dosyası, bu eğitimi kendi içinde tutar. Aşağıdaki üç girdiyi içeren tek bir sağlayıcı nesnesi kullanın; bir sağlayıcı nesnesi zaten varsa, duplike bir JSON anahtarı oluşturmak yerine girdilerini birleştirin.

Çakışan alanlar için proje yapılandırması global yapılandırmayı geçersiz kılar; çakışmayan alanlar korunur. Özel OPENCODE_CONFIG dosyası, global ve proje yapılandırması arasında yüklenir. Yönetilen veya satır içi ayarlar da mevcutsa belgelenmiş öncelik zincirini kontrol edin.

Aşağıdaki tam yapılandırmayı opencode.json olarak kaydedin. Her sağlayıcı, COMETAPI_KEY’i ortamdan okur. Varsayılan model bilerek atlanmıştır; üç örnekten birini açıkça seçmeniz beklenir.

Flash varyantı, istenen DeepSeek V4.1 örneğini açık hale getirir. GPT’yi araç kullanımı için Responses adaptöründe tutun; CometAPI DeepSeek rehberi burada kullanılan Chat Completions yolunu belgelendirir. Örnekleri çalıştırmadan önce hesabınızdaki model kullanılabilirliğini ve izinleri yeniden kontrol edin.

{  "$schema": "https://opencode.ai/config.json",  "provider": {    "cometapi-messages": {      "npm": "@ai-sdk/anthropic",      "name": "CometAPI Claude",      "options": {        "baseURL": "https://api.cometapi.com/v1",        "apiKey": "{env:COMETAPI_KEY}"      },      "models": {        "claude-sonnet-5": {          "name": "Claude Sonnet 5"        }      }    },    "cometapi-responses": {      "npm": "@ai-sdk/openai",      "name": "CometAPI GPT",      "options": {        "baseURL": "https://api.cometapi.com/v1",        "apiKey": "{env:COMETAPI_KEY}"      },      "models": {        "gpt-6.1-sol": {          "name": "GPT-6.1 Sol"        }      }    },    "cometapi-chat": {      "npm": "@ai-sdk/openai-compatible",      "name": "CometAPI DeepSeek",      "options": {        "baseURL": "https://api.cometapi.com/v1",        "apiKey": "{env:COMETAPI_KEY}"      },      "models": {        "deepseek-v4.1-flash": {          "name": "DeepSeek V4.1 Flash"        }      }    }  },  "permission": {    "edit": "ask",    "shell": "ask"  }}

Doğru baseURL: https://api.cometapi.com/v1. Yanlış baseURL: https://api.cometapi.com/v1/chat/completions. Uç nokta yolunu adaptör ekler. Örneği mevcut bir opencode.json dosyasına, ilgili olmayan ayarları kaldırmadan birleştirin.

edit ve shell ayarları, geçerli OpenCode izin kuralları kapsamında dosya değişiklikleri ve komutlar için onay ister. Kodlama örneklerini etkileşimli olarak çalıştırın ve bu istekleri inceleyin. OpenCode, başlatma işleminin işletim sistemi erişimlerini de devralır; bu egzersiz için geçici bir dizin kullanın.

Adım 4: Geçit Bağlantısını Kontrol Edin

Aşağıda, üç model bağlantı kontrolünün ardından isteğe bağlı Gemini kurulumu ve doğrulaması verilmiştir.

Aşağıdaki HTTP örneği, DeepSeek Chat Completions girdisini doğrudan kontrol eder. Bu, geçit bağlantısını OpenCode’dan yalıtmak için yararlıdır. Claude ve GPT, bir sonraki adımda seçili adaptör yollarını kullanır; bu HTTP isteği içindeki model kimliğini değiştirmek, protokolünü otomatik olarak değiştirmez.

Bash’ten minimal bir Chat Completions isteği gönderin.

curl --silent --show-error \  --output response.json \  --write-out "HTTP %{http_code}\n" \  https://api.cometapi.com/v1/chat/completions \  -H "Authorization: Bearer $COMETAPI_KEY" \  -H "Content-Type: application/json" \  -d '{"model":"deepseek-v4.1-flash","messages":[{"role":"user","content":"Reply with a short greeting."}]}'

Bu komut, HTTP durumunu response.json’dan ayırmak için curl write-out ve output seçeneklerini kullanır. Başarılı bir aktarım yine de bir HTTP hatası içerebilir; bu nedenle yazdırılan durumu ve JSON içeriğini inceleyin. Bu, 7.76.0 veya daha yeni bir curl gerektiren --fail-with-body’ye bağımlılığı önler.

Aynı isteği, kabuğa özgü JSON tırnaklaması olmadan PowerShell’den gönderin.

$body = @{  model = "deepseek-v4.1-flash"  messages = @(@{ role = "user"; content = "Reply with a short greeting." })} | ConvertTo-Json -Depth 4​$response = Invoke-WebRequest -UseBasicParsing -Method Post `  -Uri "https://api.cometapi.com/v1/chat/completions" `  -Headers @{ Authorization = "Bearer $env:COMETAPI_KEY" } `  -ContentType "application/json" `  -Body $body$response.Content | Set-Content -Encoding UTF8 response.json"HTTP $($response.StatusCode)"

Bir HTTP hatasında, PowerShell, son iki satır çalışmadan önce bir özel durum yükseltebilir. Bu başarısızlıktan durumu ve gizlenmiş hata ayrıntılarını yakalayın; bunu başarılı bir yanıt olarak kaydetmeyin.

DeepSeek isteği için beklenen sonuç: HTTP 200 ve choices[0].message.content içinde boş olmayan metin. Sadece HTTP 200’ü kabul etmek yerine kaydedilen response.json dosyasını inceleyin. Aşağıdaki eklemeler, yanıt şeklini ve üç yapılandırılmış yolu nasıl kontrol edeceğinizi gösterir. Örnekler açıklayıcıdır; bu revizyon canlı CometAPI test sonuçları iddiasında bulunmaz. Sadece metin içeren bir istek, akış veya araç çağrılarını doğrulamaz.

Açıklayıcı DeepSeek yanıt şekli: selamlama, kullanım değerleri ve diğer alanlar gerçek isteğe bağlıdır. Aşağıdaki JSON kasıtlı olarak kısaltılmış bir örnektir; yakalanmış bir API yanıtı değildir.

{"choices":[{"message":{"role":"assistant","content":"Hello!"}}]}

Gerçek bir başarılı HTTP isteğinin ardından, durum satırı HTTP 200 yazmalıdır ve response.json boş olmayan bir yardımcı metin içermelidir. Kendi çalıştırmanız için gerçek durumu ve gövdeyi saklayın; örneği test kanıtı olarak kopyalamayın.

Adım 5: Claude, GPT ve DeepSeek arasında geçiş yapın

Bu adımdaki komutlar, istenen yardımcı belirteçleri döndürmelidir. Açıklayıcı yardımcı metin; terminal başlıkları, zamanlama ve meta veriler çıkarılmıştır:

Claude:   CLAUDE_READYGPT:      GPT_READYDeepSeek: DEEPSEEK_READY

Bu satırlar yalnızca beklenen içeriği gösterir. Bir terminal dökümü değildir. Her sağlayıcı için gerçek çıktıyı ve süreç çıkış durumunu kaydedin; eksik bir belirteç veya başarısız bir istek araştırma gerektirir.

opencode.json dosyasının bulunduğu dizinde başlayın. Her yapılandırılmış sağlayıcı için modelleri listeleyin, ardından her girdiye kısa bir metin isteği gönderin. Bu komutlar seçili modeli ve adaptörü değiştirir; CometAPI anahtarı ve temel URL aynı kalır.

Üç girdinin de görünür olduğunu ve metin döndürebildiğini kontrol etmek için bu komutları kullanın.

opencode models cometapi-messagesopencode models cometapi-responsesopencode models cometapi-chat​opencode run --model cometapi-messages/claude-sonnet-5 "Reply exactly with: CLAUDE_READY"opencode run --model cometapi-responses/gpt-6.1-sol "Reply exactly with: GPT_READY"opencode run --model cometapi-chat/deepseek-v4.1-flash "Reply exactly with: DEEPSEEK_READY"

Etkileşimli geçiş için opencode’u başlatın, /models girin ve CometAPI Claude, CometAPI GPT veya CometAPI DeepSeek’i seçin. OpenCode, o girdinin sağlayıcı/model çiftini kullanır. Üç tedarikçi hesabına veya üç API anahtarına ihtiyacınız yoktur. Bu ortam destekli yapılandırmada, ikinci bir kimlik bilgisi sağlamak için /connect kullanmayın; eksik bir COMETAPI_KEY, başlatan kabukta düzeltilmelidir.

Beklenen sonuç: her kısa istek, istenen belirtecini döndürür. Her model için gerçek sonucu kaydedin. Görünen bir model girdisi, kaydı doğrular; başarılı bir metin yanıtı, istek yolunu doğrular. Hiçbiri tek başına dosya araçlarının çalıştığını kanıtlamaz.

Gemini ayrı bir sağlayıcı ve protokol kullanır. Yukarıdaki Claude, GPT ve DeepSeek girdilerini koruyun; aşağıdaki girdiyi mevcut sağlayıcı nesnesine birleştirin. Aşağıdaki temel URL, değerlendirici tarafından sağlanan CometAPI yapılandırmasını izler. Kullanımdan önce hesabınızdaki geçerli rotayı ve model erişimini doğrulayın.

Google adaptörü, özel bir baseURL’yi destekler ve apiKey’i x-goog-api-key kullanarak gönderir. Resmi AI SDK Google sağlayıcı referansına bakın. Bu, adaptör ayarlarını doğrular; belirli bir Gemini modelinin CometAPI geçidinde etkin olduğunu kanıtlamaz.

{  "provider": {    "cometapi-gemini": {      "npm": "@ai-sdk/google",      "name": "CometAPI Gemini",      "options": {        "baseURL": "https://api.cometapi.com/v1beta",        "apiKey": "{env:COMETAPI_KEY}"      },      "models": {        "YOUR_GEMINI_MODEL_ID": {          "name": "CometAPI Gemini (account-selected model)"        }      }    }  }}

YOUR_GEMINI_MODEL_ID değerini hem JSON anahtarında hem de aşağıdaki komutta, CometAPI hesabınız için etkinleştirilmiş tam Gemini model kimliğiyle değiştirin. Bu bir yer tutucudur, gerçek bir model kimliği değildir. Bu sağlayıcı girdisini, üst düzey provider anahtarını çoğaltmadan birleştirin ve COMETAPI_KEY’in ayarlı olduğu aynı kabuktan OpenCode’u başlatın.

opencode models cometapi-geminiopencode run --model cometapi-gemini/YOUR_GEMINI_MODEL_ID "Reply exactly with: GEMINI_READY"

Beklenen yardımcı metin: GEMINI_READY. Listelenen bir model, yerel kaydı doğrular; belirtecin alınması, metin isteğini doğrular. Gerçek yanıtı ve çıkış durumunu kaydedin. Kodlama araçlarını doğrulamak için, opencode --model cometapi-gemini/YOUR_GEMINI_MODEL_ID komutunu yeni geçici bir dizinde başlatın ve aşağıdaki greet.cjs/check.cjs görevini tekrar edin. Yalnızca metin başarısı, akış, düzenleme veya araç çağrılarını doğrulamaz.

Claude, GPT ve DeepSeek ile bir Kodlama Görevi Nasıl Çalıştırılır?

Her model için aynı küçük görevi kullanın: bir selamlama fonksiyonu oluşturun, bir doğrulama ekleyin ve çalıştırın. İkinci modelin, ilk model tarafından oluşturulan dosyaları basitçe yeniden kullanmaması için üç temiz dizin tutun. Bu, iş akışı entegrasyonunu kontrol eder; makaleyi performans sıralamasına dönüştürmez.

prepare-runs.cjs dosyasını opencode.json ile aynı yere kaydedin ve bir kez çalıştırın. Üç yeni dizin oluşturur ve yalnızca paylaşılan yapılandırmayı kopyalar. Herhangi bir hedef dizin zaten varsa durur; böylece önceki çalışmaların üzerine yazılmaz.

const fs = require("node:fs");const path = require("node:path");const root = __dirname;const names = ["claude-demo", "gpt-demo", "deepseek-demo"];const config = path.join(root, "opencode.json");if (!fs.existsSync(config)) throw new Error("Missing opencode.json");for (const name of names) {  if (fs.existsSync(path.join(root, name))) {    throw new Error(`Directory already exists: ${name}`);  }}for (const name of names) {  const dir = path.join(root, name);  fs.mkdirSync(dir);  fs.copyFileSync(config, path.join(dir, "opencode.json"));}node prepare-runs.cjscd claude-demoopencode --model cometapi-messages/claude-sonnet-5# After exiting OpenCode:cd ..cd gpt-demoopencode --model cometapi-responses/gpt-6.1-sol# After exiting OpenCode:cd ..cd deepseek-demoopencode --model cometapi-chat/deepseek-v4.1-flash# After exiting OpenCode:cd ..

Aşağıdaki oturumlardan birini bir seferde, üst proje dizininden başlayarak çalıştırın. Sonraki örneğe geçmeden önce oturumdan çıkın. Her oturumda aşağıdaki aynı görevi gönderin ve önerilen düzenlemeleri ve komutları inceleyin. OpenCode’u başlatan süreç için Node.js mevcut olmalıdır.

Aracıdan küçük bir JavaScript fonksiyonu oluşturmasını ve doğrulamasını isteyin.

Create greet.cjs in this directory.Export a function named greet(name) that returns "Hello, " + name + "!".Create check.cjs using node:assert/strict.Assert that greet("Ada") equals "Hello, Ada!".Run node check.cjs and report its actual exit status.Do not modify opencode.json or unrelated files.

Beklenen sonuç: aracı, yapılandırılmış onayları ister, her iki dosyayı da oluşturur ve node check.cjs komutunu 0 çıkış durumu ile tamamlar. Gerçekte olanları kaydedin. Dosyaları inceleyin ve kontrolü kendiniz yeniden çalıştırın; yalnızca düz yazı halinde ilan edilen bir başarı yeterli değildir. Bir araç çağrısı reddedilir veya hatalı biçimlendirilirse, bekleyen bir onaydan ayrı olarak yol uyumluluğunu araştırın.

Referans Dosyalar ve Yerel Doğrulama

Aşağıdaki dosyalar, istenen görevin başvuru uygulamasıdır. Bu rehber için doğrudan yazılmışlardır; model tarafından oluşturulmuş eserler olarak sunulmazlar. Görülebilir davranışlarının eşleşmesi, aracı çalıştırmanız için kabul koşuludur.

function greet(name) {  return "Hello, " + name + "!";}​module.exports = { greet };const assert = require("node:assert/strict");const { greet } = require("./greet.cjs");​assert.equal(greet("Ada"), "Hello, Ada!");node check.cjsprintf "exit=%s\n" "$?"node check.cjs"exit=$LASTEXITCODE"

Yerel referans kontrolü: Windows, Node.js v24.19.0, 22 Ekim 2026; node check.cjs, standart çıktı olmadan 0 çıkış durumu döndürdü. Bu yalnızca iki referans dosyayı kontrol eder. OpenCode kurulumu, CometAPI erişimi, onay istemleri veya model araç çağrılarını doğrulamaz.

ÇalıştırmaSeçili model girdisiKaydedilecekler
Claudecometapi-messages/claude-sonnet-5Yanıt, oluşturulan dosyalar, onaylar, test çıkış kodu
GPTcometapi-responses/gpt-6.1-solYanıt, oluşturulan dosyalar, onaylar, test çıkış kodu
DeepSeekcometapi-chat/deepseek-v4.1-flashYanıt, oluşturulan dosyalar, onaylar, test çıkış kodu

Model başına bir sonuç kaydı tutun: seçili sağlayıcı/model, yanıt gelip gelmediği, greet.cjs ve check.cjs’nin oluşturulup oluşturulmadığı, onayların görünüp görünmediği ve node check.cjs’nin çıkış kodu. Başarısızlıkları başarısızlık olarak kaydedin; referans uygulamadan başarı çıkarmayın.

Kimlik Bilgilerini Koruyun ve Güvenilirliği Doğrulayın

COMETAPI_KEY değerini, yapılandırma dosyaları veya paylaşılan günlükler yerine bir ortam değişkeninde saklayın. Dosya düzenleme ve kabuk komut onaylarını etkin tutun ve yeni yapılandırmaları geçici bir projede test edin.

Doğrudan API isteğini, OpenCode yanıtını ve dosya düzenleme iş akışını ayrı ayrı doğrulayın. Hataları ve test sonuçlarını kaydedin, yalnızca geçici hataları yeniden deneyin ve yarıda kesilen görevleri tekrar etmeden önce çalışma alanını inceleyin.

CometAPI, modeller arasında geçişi basitleştirir, ancak OpenCode bu yapılandırma üzerinden otomatik çapraz model hata toleransı sağlamaz. Bir model kullanılamaz hale gelirse, doğrulanmış başka bir modeli manuel olarak seçin ve kabul kontrolünü tekrar edin.

Opencode’u CometAPI ile kullanmanın maliyeti nedir?

CometAPI fiyatları ve faturalandırma yapısı

CometAPI, aylık abonelik ücreti olmaksızın yalnızca gerçek API kullanımı için ücretlendiren kullanım başına ödeme fiyatlandırması sunar. Resmi model oranları, genel olarak tedarikçilerin standart fiyatlarına kıyasla genellikle yüzde 20 daha düşüktür ve ek hacim indirimleri mevcuttur. Geliştiriciler, tek bir hesap üzerinden Claude, GPT, DeepSeek ve diğer modellere erişebilir ve seçilen modelin token tüketimine göre ödeme yapar. Güncel oranlar için CometAPI fiyatlandırma sayfasını kontrol edin.

Önbellekleme veya ek ücretler olmayan isteklerde:

Maliyet = (Girdi tokenları × Girdi oranı + Çıktı tokenları × Çıktı oranı) / 1,000,000

Örneğin, varsayımsal olarak girdi için $1/M token ve çıktı için $4/M token oranlarında, 20.000 girdi ve 2.000 çıktı tokenı kullanımı $0,028 tutar. Bunlar açıklayıcı oranlardır; gerçek model fiyatları değildir.

Her görev için token kullanımını, toplam API ücretlerini, yürütme süresini ve test sonuçlarını kaydedin. Maliyetleri azaltmak için gereksiz bağlamları sınırlayın, kısa istemler kullanın, tekrar eden başarısız isteklerden kaçının ve aynı kalite gereksinimlerini karşılayan daha düşük maliyetli modelleri tercih edin.

OpenCode API Maliyet Optimizasyon Stratejileri

Kaliteyi bozmadan OpenCode maliyetlerini azaltmak için model seçimine, token verimliliğine ve gereksiz API isteklerine odaklanın.

  • Doğru modeli seçin: Rutin kodlama görevleri için DeepSeek gibi daha düşük maliyetli modelleri kullanın; Claude veya GPT’yi karmaşık hata ayıklama, yeniden yapılandırma ve akıl yürütme için ayırın.
  • Token tüketimini azaltın: İstemleri kısa tutun, yalnızca ilgili proje dosyalarını sağlayın ve depodaki büyük miktarda bağlamı tekraren göndermekten kaçının.
  • İstem önbellekleme kullanın: Proje talimatları ve kod referansları gibi tekrarlanan bağlamlar için desteklenen önbellekleme özelliklerinden yararlanarak girdi maliyetlerini azaltın.
  • Gereksiz yeniden denemelerden kaçının: İstekleri yeniden denemeden önce yapılandırma ve kimlik doğrulama hatalarını düzeltin ve yinelenen çalışmayı önlemek için önceki çıktıları gözden geçirin.
  • Gerçek harcamayı izleyin: CometAPI üzerinden token kullanımı, API ücretleri ve başarılı görev başına maliyeti takip edin. Sadece token fiyatlarını değil, başarılı görev başına maliyeti karşılaştırın.

CometAPI’nin indirimli, kullanım başına ödeme fiyatlandırmasıyla birlikte bu uygulamalar, geliştiricilerin OpenCode’da harcamaları kontrol ederken güvenilir performansı sürdürmesine yardımcı olur.

CometAPI Yapılandırmasını Nasıl Genişletebilirsiniz?

Başka bir model eklemek için, model kimliğini desteklediği API formatının bulunduğu sağlayıcı altına yerleştirin veya gerekli adaptöre sahip yeni bir sağlayıcı girdisi ekleyin. Ardından /models üzerinden o sağlayıcı/modeli seçin. Kimlik bilgilerini COMETAPI_KEY’te tutun ve mevcut girdileri koruyun; böylece geçiş bir seçim işlemi olarak kalır.

Resmi rehber dört API formatını kapsar, Gemini dahil. Bu makale, Claude, GPT ve DeepSeek için gereken üç girdiyi kullanır. Birkaç seçili model Chat Completions’ı destekliyorsa, tek bir cometapi-chat models haritasını paylaşabilirler. Yalnızca harita sayısını azaltmak için, sadece Responses veya sadece Messages kullanan bir rotayı bu haritaya taşımayın.

Adaptörü, çağırmayı amaçladığınız yola göre ve modeli, programlama görevine göre seçin. Tedarikçi değişikliği yeni bir CometAPI anahtarı gerektirmez; API formatı değişikliği, eşleşen adaptörün yapılandırılmasını gerektirir.

OpenCode’da CometAPI Nasıl Sorun Giderilir?

İlk başarısız aşamayı izleyin: HTTP isteği → OpenCode sağlayıcısı → dosya araçları. HTTP başarısızsa, kimlik bilgilerini, model erişimini ve uç nokta ayrıntılarını inceleyin. HTTP çalışıyor ancak OpenCode başarısızsa, yapılandırmayı ve başlatma ortamını inceleyin. Her iki metin kontrolü de çalışıyor ancak dosya eylemleri başarısızsa, izinleri ve araç çağrısı uyumluluğunu inceleyin.

Belirtiİlk kontrolSonraki adımTanılama komutu / kanıt
401 yanıtAnahtar değeri ve Authorization başlığıAnahtarı geçerli terminalde ayarlayın; yanlışlıkla boşluk bırakmadığınızı kontrol edin.Anahtarın değerini yazdırmadan varlığını kontrol edin; HTTP durumunu ve gizlenmiş hatayı saklayın.
403 veya hesap kısıtlamasıHata gövdesi ve hesap izinleriCometAPI’de model erişimini ve hesap durumunu doğrulayın.Gizlenmiş hata yanıtını kaydedin ve hesap erişimini doğrulayın.
404 yanıtSunucu adı, uç nokta yolu ve model kimliğiİsteği seçili modelin API belgeleriyle karşılaştırın.response.json’u istenen model ve uç nokta ile karşılaştırın.
OpenCode’da model yokProje dizini ve sağlayıcı yapılandırmasıGeçerli JSON ve eşleşen sağlayıcı/model adlarını kontrol edin; düzenlemeden sonra yeniden başlatın.opencode models cometapi-chat, opencode models cometapi-messages ve opencode models cometapi-responses komutlarını çalıştırın; opencode --version kaydını alın.
Metin çalışıyor, araçlar yokAraç çağrısı yanıtı ve adaptör uyumluluğuYol desteğini doğrulayın; reddedilen bir araç çağrısını onay isteminden ayırt edin.Kısa metin isteğini başarısız araç eylemi ile karşılaştırın; hatayı saklayın.
Komut onay bekliyorEtkileşimli oturum ve izin ayarlarıNiyet edilen eylemi gözden geçirip onaylayın; bekleyen isteği API kesintisi olarak değerlendirmeyin.Etkileşimli oturumu kullanın; istenen eylemi ve onay sonucunu kaydedin.
429 veya geçici sunucu hatasıHata ayrıntıları ve kullanım sınırlarıİstek eşzamanlılığını azaltın; sürekli yeniden denemek yerine varsa yeniden deneme yönergelerini izleyin.HTTP durumunu ve yeniden deneme yönergelerini saklayın; eşzamanlılığı azaltın.

Bir sorunu paylaşırken OpenCode sürümünü, işletim sistemini, model kimliğini, uç nokta yolunu ve gizlenmiş hata metnini ekleyin. API anahtarlarını ve özel depo içeriğini hariç tutun. En küçük çoğaltılabilir isteği koruyun; böylece yapılandırma ve araç hataları ayrı ayrı incelenebilir.

SSS

Neden OpenCode yeni bir terminalde CometAPI anahtarımı kaybediyor?

Yukarıdaki export ve PowerShell komutları, geçerli oturum ve onun alt süreçleri için bir ortam değişkeni ayarlar. Ayrı açılan bir terminal veya zaten çalışan bir editör bunu devralmayabilir. OpenCode’u başlatan ortamda anahtarı ayarlayın ve o süreci yeniden başlatın. Kalıcı kurulum için, sırları bir depo dosyasına gömmek yerine ortamınızın kimlik bilgisi yönetimini kullanın.

OpenCode, COMETAPI_KEY’i otomatik olarak bir .env dosyasından yüklüyor mu?

{env:COMETAPI_KEY} ifadesi süreç ortamını okur. Sadece bir .env dosyası oluşturmak, değişkenin yüklendiği anlamına gelmez. OpenCode’u başlatmadan önce kabuğunuzu veya açıkça yapılandırılmış bir ortam yükleyicisini kullanın. Sağlayıcının kullanılamadığı varsayımı yerine, başlatan süreçte boş bir değeri teşhis edin.

Global bir OpenCode yapılandırması bu proje kurulumunu değiştirebilir mi?

OpenCode, yapılandırmayı tamamen değiştirmek yerine birleştirir. Proje dosyası, global dosyadaki çakışan alanları geçersiz kılar; ilişkisiz global ayarlar ise kalır. Özel bir OPENCODE_CONFIG dosyası aralarında yüklenir. Davranış depolar arasında farklıysa, yerel dosyanın tek girdi olduğunu varsaymak yerine bu kaynakları ve yönetilen veya satır içi ayarları karşılaştırın.

Model listesini yenilemek CometAPI erişimini etkinleştirir mi?

Hayır. Model yenileme seçeneği models.dev önbelleğini günceller; hesabınıza erişim vermez veya bir uç noktanın bir model kimliğini kabul ettiğini kanıtlamaz. Manuel yapılandırılmış bir girdi, başarılı bir istekten önce görünür olabilir. Rotayı kontrol etmek için gerçek bir istek kullanın ve erişim kısıtlamaları için CometAPI hesap ayarlarına bakın.

Neden curl çalışırken OpenCode CometAPI’yi çağıramıyor?

İki süreç farklı kimlik bilgileri yüklemiş, farklı model kimlikleri kullanmış veya farklı istek şekilleri göndermiş olabilir. Önce başarılı HTTP isteğiyle aynı terminalden kısa metin istemini yeniden çalıştırın. Ardından sağlayıcı temel URL’sini, adaptörü ve seçili modeli karşılaştırın. Basit metin çalışıyor ancak aracı görevi başarısızsa, araçla ilgili hatayı ayrı saklayın; yalnızca HTTP bağlantısı, araç uyumluluğunu göstermez.

Sonuç

Artık Claude, GPT ve DeepSeek örneklerine sahip tek bir opencode.json dosyanız, paylaşılan bir CometAPI kimlik bilgisi ve etkin modeli değiştirmek için komutlarınız var. Erişimi kontrol etmek için kısa metin isteklerini kullanın, ardından kodlama iş akışını doğrulamak için aynı dosya oluşturma görevini ayrı dizinlerde çalıştırın. Daha büyük bir depoya uygulamadan önce gözlenen sonuçları ortam ayrıntılarınızla birlikte saklayın.

Öğrenmeye devam et

Bu makaleyi sonraki karara bağlayın.

Tüm konuları gör
Yayınlanma tarihi Oct 22, 2026
Son güncelleme Oct 22, 2026
0 görüntülenme
Netlik, kaynak ataması ve güncel API terminolojisi açısından gözden geçirildi.

Devamını Oku