DeepSeek Harness bir döngüdür. Aracı, çalışma alanınızı okur, dosyaları düzenler, bash aracı aracılığıyla komutları çalıştırır ve çıktıya göre ne yapacağına karar verir. Peki, API testleriniz neden bu döngüde değil? Bir grafik kullanıcı arayüzünün (GUI) arkasında Apidog'da dururlar ve birisi tıklamayı hatırladığında çalıştırılırlar. Aracı onlara asla dokunmaz.
Çözüm tek bir yapılandırma bloğudur. Apidog CLI, Apidog'da oluşturduğunuz test senaryolarını doğrudan bir terminalden çalıştıran bir npm paketidir, apidog-cli. CLI yüklendiğinde ve DeepSeek Harness onun varlığını bildiğinde, aracı bir Apidog senaryosunu birim testlerinizi çalıştırdığı gibi çalıştırır: komutu ateşle, çıkış kodunu oku, kırmızıysa kodu düzelt.
Bunu yapmak için bir jeton argümanı da bulunmaktadır. API'nizin hala çalıştığını işleyici kodunu yeniden okuyarak ve yanıt şekilleri hakkında akıl yürüterek doğrulayan bir aracı, her geçişte bağlamı tüketir. Tek bir komut çalıştıran bir aracı, birkaç satırda kesin doğru bilgiyi geri alır. CLI, "API doğru mu?" sorusunu bir çıkış koduna sıkıştırır ve aracı bunun yerine bağlamını düzeltme işlemine harcar.
Bu kılavuz, genel yükleme kılavuzunun atladığı bağlama özgü kısmı ele almaktadır: DeepSeek Harness'in aslında hangi talimat dosyasını okuduğu, bash aracının apidog run'ı nasıl yürüttüğü ve döngüyü nasıl dürüst tutacağınız. CLI'yi henüz yüklemediyseniz, önce bunu yapın. Bir AI kodlama aracısıyla Apidog CLI nasıl kurulur, npm yüklemesini, kimlik doğrulamasını ve ilk çalıştırmayı adım adım açıklar. Bu makale, apidog --version komutunun bir sayı yazdırdığını ve makinenizin kimliğinin doğrulandığını varsaymaktadır.
Bu yazı hangi DeepSeek Harness hakkında
Komut satırında dsh olarak bilinen DeepSeek Harness, DeepSeek'in 13 Ağustos 2026'da yayınladığı açık kaynak aracı iskeletidir ve API'deki V4-Pro ile birlikte piyasaya sürülmüştür. MIT lisanslıdır, github.com/deepseek-ai/deepseek-harness adresinde yer almaktadır ve 20 Ağustos itibarıyla 169 bin yıldızı geçmiştir. Onu npx @deepseek-ai/dsh web ile başlatırsınız, bu da http://127.0.0.1:3080 adresinde yerel bir web kullanıcı arayüzü sunar. Orada, başlattığınız proje dizini olan bir çalışma alanı seçersiniz ve aracı içinde çalışır: dosyaları okur ve düzenler, komutları çalıştırır ve aktif izin politikası altında onay gerektiren işlemlerden önce sorar.
Aşağıdaki her şeyi iki şey şekillendirir. Birincisi, iskelet bir geliştirici önizlemesidir. README büyük harflerle, uyumluluğu bozan değişiklikler olacağı konusunda uyarır; bu nedenle dosya adlarını ve yapılandırma anahtarlarını Ağustos 2026 sonu için doğru kabul edin ve bir şey yüklenmezse repo belgelerini tekrar kontrol edin. İkincisi, dsh'deki her şey, Cordis mimarisi üzerine kurulu bir eklentidir ve bu da aşağıdaki pratik soruyu yanıtlanabilir kılar: proje kurallarınızı hangi eklenti okur ve ne arar? Daha geniş bir tur için DeepSeek Harness'in ne olduğuna bakın; mevcut rakibine karşı nasıl durduğunu görmek için DeepSeek Harness vs Claude Code'a bakın.
Adım 1: CLI'yi AGENTS.md'ye yerleştirin
DeepSeek Harness, @deepseek-ai/dsh-agent-instructions eklentisi aracılığıyla çalışma alanı talimatlarını okur ve diğer aracıları kullandıysanız varsayılanlar kullanışlıdır. Eklentinin kaynağına ve yapılandırma kataloğuna göre, yükleyici oturumun çalışma dizininden proje kökünüze (.git ile işaretlenmiş) doğru yukarıya doğru ilerler ve yol boyunca her dizinde AGENTS.md'yi, yedek olarak CLAUDE.md'yi yükler. AGENTS.local.md veya CLAUDE.local.md adlı yerel katmanlar temel dosyalardan sonra yüklenir ve $DSH_HOME içindeki (varsayılan olarak ~/.dsh) sabit bir kullanıcı-genel AGENTS.md tüm projelere uygulanır. 1 MiB üzerindeki dosyalar yok sayılır, ki kural dosyanız asla bu boyuta yaklaşmayacaktır.
Pratik sonuç: deponuzda Codex için zaten bir AGENTS.md veya Claude Code için bir CLAUDE.md varsa, DeepSeek Harness bunu sıfır ek kurulumla alır. Ona kısa bir Apidog bloğu ekleyin:
## Apidog CLI ile API testi
- API'yi test etmek için Apidog senaryosunu çalıştırın. GUI üzerinden tıklama yapmayın.
- Komut: apidog run -t <scenario_id> -e <env_id> -r cli
- Çıkış kodu 0, her onaylamanın geçtiği anlamına gelir. Sıfır olmayan bir değer, bir hata olduğu anlamına gelir; raporu okuyun ve kodu düzeltin.
- Makine zaten doğrulanmış durumda. Asla bir --access-token bayrağı eklemeyin ve asla bu dosyaya bir jeton koymayın.
Kural dosyasının sohbeti neden yendiği budur. Oturum oluşturucuya yazılan bir senaryo kimliği, oturum sona erdiğinde kaybolur. AGENTS.md'ye yazılan bir senaryo, depoyu klonlayan her makinede, her ekip üyesi için her yeni oturuma yüklenir. Birden fazla projede çalışıyorsanız, kullanıcı-genel ~/.dsh/AGENTS.md alışkanlığı ("API değişikliklerini her zaman projenin apidog çalıştırma komutuyla doğrulayın") taşırken, her deponun kendi dosyası gerçek kimlikleri taşır.
Adım 2: Komutu Apidog'dan alın
Senaryo ve ortam kimliklerini tahmin etmek zorunda değilsiniz. Apidog'da test senaryosunu açın, CI/CD sekmesine gidin ve oluşturulan komutu kopyalayın. Şuna benzer:
apidog run -t 123456 -e 789012 -r cli
-t bayrağı test senaryosu kimliğidir, -e ortam kimliğidir ve -r cli sonuçları satır içi yazdıran raporlayıcıyı seçer, bu da bir aracının tam olarak okuması gereken şeydir. Gerçek kimlikleri AGENTS.md bloğunuza yapıştırın, böylece aracı bir tahmin yerine Apidog'un oluşturduğu komutu çalıştırır.
Adım 3: Aracının testi çalıştırmasını sağlayın
Çalışma alanınız seçili olarak dsh web kullanıcı arayüzünde bir oturum başlatın. Talimat yükleyici, AGENTS.md dosyanızı aracının bağlamına zaten beslediği için, CLI'nin var olduğunu bilir. API'nizi etkileyen bir değişiklik yapın veya sadece sorun:
Apidog test senaryosunu çalıştır ve bana çıkış kodunu söyle.
Aracı bunu bash aracı aracılığıyla yürütür ve bu aracın nasıl davrandığını bilmek, size daha sonra bir hata ayıklama oturumunu kurtarır. Araç kataloğuna göre, varsayılan bash aracı her komutu yeni bir kabukta çalıştırır: çağrılar arasında çalışma dizini, değişkenler veya fonksiyonlar kalıcı olmaz ve workdir geçirilmedikçe komutlar oturum çalışma alanından çalışır. apidog run gibi tek ve kendi kendine yeten bir komut için uygun, ancak aracı önce bir yere cd yapıp testi ikinci bir adım olarak çalıştıramaz. Senaryonuzun bir alt dizinden çalışması gerekiyorsa, tam çağrıyı kural dosyanızda tek bir satıra koyun.
Bilmeye değer iki davranış daha var. Sıfır olmayan çıkışlar açık bir [exit code: N] işareti olarak geri döner, bu nedenle geçme/kalma sinyali uzun çıktının sonu kesilse bile kalır. Ve komutlar bir dosya korumalı alanı altında çalışabilir: engellenen bir işlem, bir komut hatası olarak değil, bir politika reddi olarak rapor edilir. Salt okunur bir test çalışması bunu nadiren tetikler, ancak ./apidog-reports'a yazan HTML raporlayıcısı, aktif politikaya bağlı olarak tetikleyebilir.
Çalıştırmanın önce sizin tıklamanıza ihtiyacı olup olmadığı aynı izin politikasına bağlıdır. Web kullanıcı arayüzü, kullanıcı kılavuzuna göre, onay gerektiren işlemlerden önce sorar. apidog run için sorduğunda onaylayın: bir hazırlık ortamına karşı bir test senaryosu, onay akışının geçmesine izin vermek için var olan tam da o türden güvenli, çoğunlukla okuma komutudur.
Adım 4: Raporu okuyun
Bir çalıştırma kırmızıya döndüğünde, cevap rapordadır. -r cli ile, aracı satır içi okunabilir bir döküm alır: her istek, her onaylama ve hangisinin beklenen ile gerçek değerle birlikte başarısız olduğu. Başarısız olan onaylama, tam alanı veya durum kodunu belirtir, bu da genellikle aracının sizin çeviri yapmanıza gerek kalmadan düzeltmeyi bulması için yeterlidir.
Bir tarayıcıda açabileceğiniz veya bir ekip arkadaşınıza verebileceğiniz bir rapor için HTML raporlayıcıyı ekleyin:
apidog run -t 123456 -e 789012 -r cli,html
html raporlayıcısı, ./apidog-reports dizinine kendi içinde eksiksiz bir dosya yazar. cli'yi listede tutun, böylece aracı bir sonraki adımına karar vermek için okuduğu satır içi çıktıyı almaya devam eder.
Döngü, baştan sona
İşte bu kurulumun size kazandırdıkları. Diyelim ki aracı bir ödeme işleyiciyi düzenliyor. CLI olmadan, döngüsü "kod doğru görünüyor" noktasında biter. AGENTS.md'deki blokla döngü genişler: işleyiciyi düzenler, apidog run -t 123456 -e 789012 -r cli komutunu çalıştırır ve sonucu okur. Yeşilse, devam eder. Kırmızıysa, [exit code: 1] görür, hangi onaylamanın başarısız olduğunu okur (200 beklenen yerde 500, eksik bir total alanı, yanlış bir para birimi kodu), işleyiciyi yamalar ve yeniden çalıştırır. API sözleşme kontrolü, aracının birim testlerinizi zaten çalıştırdığı aynı düzenleme-test etme-düzeltme döngüsünün bir parçası haline gelir.
Aracının yapmadığı şeyi fark edin: API'nin çalıştığına ikna olmak için her rota dosyasını yeniden okumak. Senaryo, API'nin sahibi kim olursa olsun Apidog'da görsel olarak oluşturulan beklenen davranışı zaten kodlar. Aracı doğrulamayı deterministik bir araca devreder ve jetonlarını yargının gerekli olduğu yerlerde harcar. Bu iş bölümü tüm deseni oluşturur: dsh kod yazar, CLI API katmanını doğrular ve siz Apidog'da hiç test kodu yazmadan senaryolar oluşturursunuz.
dsh'nin gerçekten çalıştırdığını doğrulayın
Aracılar kazanmadıkları başarıları rapor eder ve bir geliştirici önizlemesi iskeleti, düz yazıyı inançla kabul edilecek bir yer değildir. Sorunları yakaladıkları sıraya göre üç kontrol.
İlk olarak, komutun çalıştığını doğrulayın. dsh web kullanıcı arayüzü, aracının araç çağrılarını ve bunların oturumdaki çıktılarını gösterir. Gerçek apidog run ... bash çağrısını ve sonucunu arayın. Eğer aracı testleri çalıştırdığını söylüyor ancak böyle bir çağrı görünmüyorsa, hiç yapmadığı bir şeyi özetlemiştir. Tekrar çalıştırmasını ve ham çıktıyı göstermesini isteyin.
İkinci olarak, çıkış kodunu doğrulayın. Doğrudan sorun: "o apidog çalıştırma komutunun çıkış kodu neydi?" İskelet, başarısızlık durumunda aracıya açık bir [exit code: N] işareti verir, bu nedenle arkasına saklanacak bir belirsizlik yoktur. Aracının özeti "testler geçti" dediğinde ancak işaret sıfır olmadığını söylediğinde, işaret doğrudur.
Üçüncü olarak, gerçek senaryoyu kullandığını doğrulayın. Bir "senaryo bulunamadı" hatası genellikle aracının bir kimliği uydurduğu veya yanlış hatırladığı anlamına gelir. -t ve -e değerlerini AGENTS.md bloğunuzla ve Apidog'un CI/CD sekmesindeki komutla tekrar kontrol edin. Kural dosyasındaki kimlikler gerçektir; aracının yazdığı her şey bir tahmindir.
İsteğe Bağlı: Belirtim erişimi için Apidog MCP sunucusunu ekleyin
Senaryoları çalıştırmak doğrulamayı kapsar. Aracının kod yazarken API belirtiminizi okumasını da istiyorsanız, bu MCP'nin işidir ve burada dürüst tablo önemlidir: Ağustos 2026 sonu itibarıyla, MCP desteği DeepSeek Harness'in temel README'sinde veya kullanıcı kılavuzunda belgelenmemiştir. Mevcut olan, ekosistemin geri kalanı gibi dsh-plugin GitHub konusu aracılığıyla keşfedilen bir topluluk eklentisidir, hyqhyq3/dsh-mcp-manager. Bu eklenti, Ayarlar altında bir MCP sayfası ekler, uzak HTTP ve yerel stdio sunucularını destekler, araçları mcp__<ad>__* olarak kaydeder ve <çalışma_alanı>/.dsh/dshmm/mcp.json adresinden proje başına sunucu tanımlarını okur.
Bu aracılığıyla Apidog MCP sunucusuna bağlanabilirsiniz, bu sunucu API belirtimlerinizi MCP üzerinden açığa çıkarır, böylece aracı senaryo başarısız olduktan sonra değil, işleyiciyi yazmadan önce bir uç noktanın gerçek şemasını kontrol edebilir. Topluluk eklentisi ve geliştirici önizleme ana bilgisayarı, bu eşleşmenin her iki tarafın güncellemesinde de bozulabileceği anlamına gelir, bu yüzden bunu ek bir katman olarak kabul edin. Yukarıdaki CLI yolu, yük taşıyan yoldur: sadece bir kabuğa ihtiyacı vardır.
Önizleme uyarıları ve bu yolun nereye gittiği
DeepSeek Harness hızlı ilerler ve size bir şeyleri bozacağı konusunda uyarır. Değişme olasılığı en yüksek olan ayrıntılar burada adlandırılanlardır: talimat eklentisinin dosya adayları, bash aracının korumalı alan raporlaması ve topluluk MCP eklentisinin dokunduğu her şey. Ancak, desen taşınabilirdir. "API'yi bu tek komutla doğrulayın" diyen bir kural dosyası ve temiz bir çıkış kodu döndüren bir CLI, dsh'de bugün, Claude Code'da ve bu serideki diğer tüm iskeletlerde çalıştığı aynı nedenle çalışır: aracılar komut çıktısını okumakta iyidir ve onsuz güvenilir olmada kötüdür.
Öyleyse: Apidog'u indirin, görsel olarak bir test senaryosu oluşturun, CI/CD sekmesinden apidog run komutunu kopyalayın ve bloğu deponuzda muhtemelen zaten bulunan AGENTS.md'ye bırakın. DeepSeek Harness API kodunuza bir dahaki dokunduğunda, size bittiğini söylemeden önce kendi işini kontrol edecektir.
Sıkça Sorulan Sorular
DeepSeek Harness, AGENTS.md'yi yerel olarak okur mu? Evet. @deepseek-ai/dsh-agent-instructions eklentisi, proje kökünüzden ve oturumunuzun çalışma dizininin üzerindeki dizinlerden AGENTS.md'yi (veya yedek olarak CLAUDE.md'yi) yükler; ayrıca AGENTS.local.md/CLAUDE.local.md katmanlarını ve ~/.dsh içindeki kullanıcı-genel bir AGENTS.md'yi de yükler. Diğer aracılar için zaten bir AGENTS.md tutuyorsanız, dsh onu olduğu gibi alır.
dsh'de Apidog CLI kullanmak için ücretli bir DeepSeek planına ihtiyacım var mı? Hayır. İskelet MIT lisanslı açık kaynak kodludur ve kendi modelinizi getirirsiniz: katalog sağlayıcıları Anthropic, OpenAI, Bedrock, Vertex ve Azure'u kapsar ve özel ağ geçitleri, DeepSeek Harness'te herhangi bir modelin nasıl çalıştırılacağı konusunda açıklandığı gibi settings.yaml aracılığıyla çalışır. Apidog CLI'nin kendisi ücretsiz bir npm paketidir; belirli bir model değil, bir Apidog test senaryosu ve kimlik doğrulaması gerektirir.
Aracının ikinci komutu, birincisinin değiştirdiği dizini neden unutur? Tasarım gereği. Varsayılan dsh bash aracı her çağrıyı yeni bir kabukta çalıştırır, bu nedenle cd komutlar arasında kalıcı olmaz. Aracın workdir parametresini geçirin veya daha basiti, unutulacak hiçbir şey olmaması için tam apidog run çağrısını kural dosyanızda tek bir satırda tutun.
dsh, bana her seferinde sormadan senaryoyu çalıştırabilir mi? Bu, aktif izin politikasına bağlıdır. Web kullanıcı arayüzü, onay gerektiren işlemlerden önce sorar; kullanıcı kılavuzu politika seviyelerini listelemez, bu nedenle dağıtımınızın neye izin verdiğini görmek için yapınızdaki Ayarları kontrol edin. Sorduğunda, bir hazırlık ortamına karşı bir apidog run'ı onaylamak güvenli bir evettir.
