inso Nedir? Insomnia Komut Satırı Arayüzü

inso cli nedir? Insomnia'nın CLI'ına net bir rehber: kurulum, inso run test, Spectral aracılığıyla inso lint spec, spesifikasyonları nasıl bulduğu, CI kullanımı ve sınırlamaları.

INEZA Felin-Michel

INEZA Felin-Michel

17 June 2026

inso Nedir? Insomnia Komut Satırı Arayüzü

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

Insomnia API istemcisini kullandıysanız, istek göndermek, OpenAPI spesifikasyonları tasarlamak ve testler yazmak için grafiksel bir arayüze sahipsinizdir. Ancak grafiksel araçlar makinenizin sınırlarında durur. Aynı testleri bir CI hattında çalıştırmak istediğinizde veya her çekme isteğinde bir spesifikasyonu denetlemek istediğinizde, terminalde yaşayan bir şeye ihtiyacınız vardır. Bu şey inso'dur.

Bu rehber, inso'nun ne olduğunu, nasıl kurulacağını, günlük olarak kullanacağınız kesin komutları, spesifikasyonlarınızı ve koleksiyonlarınızı nasıl bulduğunu ve sınırlarının nerede ortaya çıktığını açıklamaktadır. Rehberin sonunda inso CLI'ın iş akışınıza uyup uymadığını ve uymuyorsa neye yönelmeniz gerektiğini bileceksiniz.

Düğme

inso nedir?

inso, şu anda Kong tarafından sürdürülen açık kaynaklı API istemcisi Insomnia'nın komut satırı arkadaşıdır. Insomnia'nın kullanıcı arayüzünde yaptığı üç şeyi alır ve onları betiklenebilir hale getirir: testleri çalıştırmak, istek koleksiyonlarını yürütmek ve API spesifikasyonlarını denetlemek. Bu, Insomnia'yı masaüstünüzde ve CI/CD'de istediğiniz otomatik kontroller arasında bir köprü haline getirir.

"inso nedir"in kısa versiyonu: Insomnia'yı açmadan Insomnia işinizi nasıl çalıştıracağınızdır. Onu bir tasarım belgesine veya bir koleksiyona isme göre yönlendirirsiniz ve uygulamanızın zaten bildiği aynı veriler üzerinde yürütür.

inso CLI'yi Yükleme

Birkaç belgelenmiş yolunuz var. Dağıtım şeklinize uygun olanı seçin.

Homebrew, macOS ve Linux'ta en basitidir:

brew install inso

Docker, yerel bir araç zincirini yönetmek istemediğiniz CI çalıştırıcıları için en temiz seçimdir:

docker pull kong/inso:latest

Doğrudan indirme de yapabilirsiniz. Kong, inso CLI dokümantasyon sitesinde Windows, Linux ve macOS zip arşivleri yayınlamaktadır; bu, bir yapı yapıtında sabit bir sürüm istediğinizde kullanışlıdır.

Geçmişte inso, npm üzerinde de insomnia-inso olarak dağıtılıyordu. Bu yol hala mevcut olsa da, belgelenmiş ve önerilen yollar artık Homebrew, Docker ve doğrudan indirmelerdir. Yeni bir şey kuruyorsanız, bunları tercih edin.

Kurulumun çözümlendiğini doğrulayın:

inso --version

Temel inso komutları

inso'nun küçük ve odaklanmış bir yüzeyi vardır. İşte gerçek örneklerle, gerçekten kullanacağınız komutlar.

inso run test

Insomnia'da oluşturduğunuz bir birim testi paketini, belirtilen bir ortama karşı çalıştırın:

inso run test "Payments API tests" --env "Staging"

Paket ve ortam, Insomnia verilerinizde göründükleri gibi, isme göre referans alınır. inso run test komutu, herhangi bir iddia başarısız olursa sıfır olmayan bir kodla çıkar; bu da onu bir CI geçidi olarak kullanılabilir hale getirir.

inso run collection

Bir koleksiyondaki her isteği sırayla, yine belirtilen bir ortama karşı çalıştırın:

inso run collection "Checkout flow" --env "Staging"

Bu, kullanıcı arayüzünde "tüm klasörü oynat"ın en yakın eşdeğeridir. Bir dizi uç noktanın beklendiği gibi yanıt verdiğini doğrulamak istediğiniz duman testleri için kullanışlıdır.

inso lint spec

Bir OpenAPI tasarım belgesini doğrulayın:

inso lint spec "Orders API"

Kulislerde, inso lint spec, Stoplight'tan açık kaynaklı OpenAPI ve JSON denetleyicisi olan Spectral'i kullanır. Bu, açıkça belirtmeye değer gerçek bir güçtür: yüzeysel bir sözdizimi kontrolü değil, olgun bir kural seti ile gerçek, kural tabanlı spesifikasyon denetimi elde edersiniz. Ekibiniz spesifikasyonlar üzerinde stil kılavuzu uygulamasına önem veriyorsa, bu komut birçok kişinin inso'yu el altında tutmasının nedenidir.

inso export spec

Bir tasarım belgesini diskteki bir dosyaya çekin:

inso export spec "Orders API" --output orders.yaml

Spesifikasyonu başka bir jeneratöre beslemek, bir anlık görüntü kaydetmek veya düz bir YAML dosyası bekleyen bir araca vermek istediğinizde kullanışlıdır.

inso script

Insomnia verilerinizde tanımlanmış bir adlandırılmış betiği, kimliğe göre bir ortamı geçirerek çalıştırın:

inso script deploy-smoke --env env_9f2a

Bu, kendi özel adımlarınızı zincirlemek için bir kaçış deliğidir.

inso spesifikasyonlarınızı ve koleksiyonlarınızı nasıl bulur?

Bu, insanların kafasını karıştıran kısımdır, bu yüzden kesin olmakta fayda var. inso kendisi hiçbir şey depolamaz. İki yerden birinden okur:

  1. Çalışma dizininizdeki bir .insomnia dizini. Bu, Insomnia'nın Git Senkronizasyonu'nun ürettiği şeydir, bu yüzden API projenizi bir depoya kaydettiğinizde, inso onu doğrudan check-out'tan okuyabilir. Bu, CI için istediğiniz desendir.
  2. Uygulama makineye kuruluysa, Insomnia uygulama veri dizini. Bu yerel olarak kullanışlıdır ancak uygulamayı hiç yüklememiş temiz bir CI çalıştırıcısında işe yaramaz.

Kaynağı açıkça geçersiz kılabilirsiniz:

inso lint spec "Orders API" --workingDir ./api-project
# veya tam bir kaynağı işaret edin
inso run test "Payments API tests" --src ./api-project/.insomnia

Temel zihinsel model: inso her şeyi isme (veya kimliğe) göre referans alır ve bu isimler, bulduğu veri kaynağına göre çözümlenir. Bir isim .insomnia dizininde veya uygulama verilerinde yoksa, inso onu çalıştıramaz. inso'yu gevşek bir OpenAPI dosyasına yönlendirip "bunu test et" deme kavramı yoktur, tabii ki o dosya bir Insomnia proje yapısı içinde yaşamıyorsa.

Minimal bir CI örneği

İşte, Git senkronize .insomnia dizinini depoya kaydederek, her push işleminde bir spesifikasyonu denetleyen ve bir test paketini çalıştıran bir GitHub Actions işi:

name: API checks
on: [push]

jobs:
  inso:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install inso
        run: |
          curl -sSL https://github.com/Kong/insomnia/releases/latest/download/inso-linux-x64.zip -o inso.zip
          unzip inso.zip && sudo mv inso /usr/local/bin/
      - name: Lint the spec
        run: inso lint spec "Orders API" --workingDir .
      - name: Run the test suite
        run: inso run test "Payments API tests" --env "CI" --workingDir .

Her iki komut da başarısızlık durumunda sıfır olmayan bir kodla çıktığı için, bozuk bir spesifikasyon veya başarısız bir iddia işi başarısız kılar. Bu kontrolleri GUI'den çıkarmanın tüm amacı budur.

Dürüst sınırlamalar

inso işini iyi yapar, ancak gerçek sınırlara sahiptir.

Insomnia'nın veri kaynaklarına bağlıdır. Spesifikasyonlarınız, koleksiyonlarınız ve paketleriniz, ya Git Senkronizasyonu ya da yüklü uygulama aracılığıyla ortaya çıkarılan bir Insomnia projesinde yaşamalıdır. Ekibiniz Insomnia'yı doğruluk kaynağı olarak kullanmıyorsa, inso'nun üzerinde çalışacak hiçbir şeyi yoktur.

Her şey isme göre referans alınır. Bu okunabilir, ancak kırılgandır. Kullanıcı arayüzünde bir paketin adını değiştirirseniz, eski adı sabit kodlayan bir CI işi, bir sonraki çalışmaya kadar sessizce bozulur. Adların da düzgün bir şekilde çözümlenecek kadar benzersiz olması gerekir.

Kapsam tasarım gereği dardır. inso testleri çalıştırır, koleksiyonları çalıştırır, spesifikasyonları denetler, dışa aktarır ve betikleri çalıştırır. Bir tasarım-taklit-belge-test platformu değildir. Bu eylemlerin ötesindeki her şey için tekrar GUI'ye dönersiniz veya başka araçlara uzanırsınız.

inso vs entegre alternatif

inso, Insomnia zaten istemciniz olduğunda güçlü bir terminal arkadaşıdır. Dezavantajı, parçaları bir araya getiriyor olmanızdır: tasarım ve hata ayıklama için Insomnia, CI için inso, denetim için Spectral kuralları ve taklitler ve belgeler için ayrı araçlar.

Apidog ise tam tersi bir duruş sergiler. Tasarım, taklit, dokümantasyon ve test işlemlerini tek bir platformda bir araya getirir ve Apidog CLI, test senaryolarınızı ve koleksiyonlarınızı aynı doğruluk kaynağından, veri odaklı test, çoklu raporlayıcı formatları ve kod olarak kaynak ve dal özellikleri ile çalıştırır. Burada adil olmak gerekirse: Apidog CLI, inso'nun Spectral ile yaptığı gibi bağımsız bir spesifikasyon denetleyicisi sunmaz, bu nedenle Spectral tarzı stil kılavuzu uygulamanız önceliğiniz ise, inso'nun burada gerçek bir avantajı vardır. Apidog'un öne çıktığı nokta entegrasyondur. Beş aracı birbirine yapıştırmıyorsunuz.

İkisini kafa kafaya karşılaştırmak isterseniz, Apidog CLI vs inso (Insomnia CLI) makalesine bakın veya inso (Insomnia CLI) nedir başlıklı yazıda daha derin arka planı okuyun. inso'nun doğru yer olmadığına karar verdiyseniz, en iyi inso alternatifi özeti ve inso'dan Apidog CLI'a geçiş rehberi adımı adım açıklıyor. GUI istemcilerinin kendileri hakkında daha geniş bir bağlam için, Apidog vs Insomnia ve Insomnia ile API nasıl test edilir iyi başlangıç noktalarıdır.

inso kurulumunuzla entegre yaklaşımı yan yana görmek isterseniz Apidog'u ücretsiz indirebilirsiniz.

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin