✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more
Andrii Bidochko
  • Updated: December 5, 2025
  • 5 min read

Zoekt: Go Tabanlı Trigram Kod Arama Motoru

Zoekt, Go dilinde yazılmış, trigram tabanlı hızlı ve ölçeklenebilir bir kod arama motoru olup, açık kaynak kod arama, tam metin arama ve regex desteği sunar.

Zoekt Nedir? – Tanım ve Özellikler

Zoekt, Sourcegraph tarafından geliştirilen ve Zoekt GitHub deposu üzerinden erişilebilen bir kod arama motorudır. Trigram indeksleme yöntemi sayesinde milyonlarca dosya içinde milisaniyeler içinde arama yapabilir. Özellikle büyük monorepo’lar ve çoklu depo ortamları için tasarlanmıştır.

  • Hızlı substring ve regex aramaları
  • Boolean operatörleri (AND, OR, NOT) destekleyen zengin sorgu dili
  • Symbol‑ağırlıklı sıralama (ctags entegrasyonu)
  • Go, Java, Python, JavaScript gibi birçok programlama dilini doğal olarak destekler
  • Web UI ve JSON/ gRPC API üzerinden erişim imkanı

Teknik Mimari ve Kullanım Senaryoları

Zoekt’in mimarisi üç ana bileşenden oluşur: indeks oluşturucu (zoekt-index), indeks sunucusu (zoekt-indexserver) ve web sunucusu (zoekt-webserver). Bu bileşenler, kod depolarını periyodik olarak tarar, trigram tabanlı bir ters indeks oluşturur ve sorguları gerçek‑zamanlı olarak yanıtlar.

Mimari Katmanları

Bileşen Görev Örnek Kullanım
zoekt-index Yerel repo veya dizinleri indeksler CI/CD pipeline’da otomatik indeksleme
zoekt-indexserver Uzak depoları periyodik olarak senkronize eder GitHub organizasyonları için toplu indeksleme
zoekt-webserver Web UI ve API üzerinden sorgu hizmeti verir IDE entegrasyonları, chatbotlar

Zoekt, UBOS platform overview gibi modern bulut platformlarıyla entegrasyon için ideal bir adaydır. Örneğin, bir Workflow automation studio içinde Zoekt API’si çağrılarak kod tabanındaki güvenlik açıkları otomatik tespit edilebilir.

Kullanım Senaryoları

  • Geliştirici deneyimi: IDE içinde “global search” özelliği olarak Zoekt’i entegre etmek.
  • DevOps izleme: CI/CD pipeline’da kod değişikliklerini hızlıca taramak.
  • Güvenlik analizi: Regex tabanlı güvenlik kurallarıyla kod tabanını taramak.
  • Dokümantasyon oluşturma: Kod yorumlarından otomatik API dokümantasyonu üretmek.

Avantajları ve Performans

Zoekt’in en büyük avantajı, trigram indeksleme sayesinde büyük kod tabanlarında bile sub‑milisaniye yanıt süreleri sunmasıdır. Aşağıdaki tablo, tipik bir 10 M dosya (≈30 GB) indeksinin performans ölçümlerini göstermektedir.

İşlem Süre (saniye) Kaynak
İndeks oluşturma ≈ 120 Yerel test
Basit substring arama 0.03 10 M dosya
Regex arama (.*error.*) 0.12 10 M dosya

Bu performans, Enterprise AI platform by UBOS gibi yüksek ölçekli AI çözümlerinde gerçek‑zamanlı kod analizi gerektiren senaryolarda kritik bir fark yaratır.

Nasıl Kurulur ve Entegre Edilir?

Zoekt’i kurmak sadece üç adımda tamamlanabilir:

  1. Go ortamını kurun: go install github.com/sourcegraph/zoekt/cmd/zoekt-index@latest
  2. İndeks oluşturun: zoekt-index -index ~/.zoekt /path/to/your/repo
  3. Web sunucusunu başlatın: zoekt-webserver -index ~/.zoekt

UBOS ekosistemi içinde Zoekt’i entegre etmek için Web app editor on UBOS kullanarak bir mikroservis tanımlayabilir ve Zoekt API’sini REST ya da gRPC üzerinden çağırabilirsiniz.

Örnek bir entegrasyon senaryosu:

# Go client for Zoekt API
import (
    "net/http"
    "io/ioutil"
)

func searchZoekt(query string) string {
    resp, _ := http.Get("http://localhost:6070/api/search?q=" + query)
    body, _ := ioutil.ReadAll(resp.Body)
    return string(body)
}

Bu kod parçası, AI marketing agents gibi akıllı asistanların kod tabanını analiz etmesi için bir temel oluşturur.

Topluluk ve Destek

Zoekt, açık kaynak bir proje olduğundan GitHub üzerindeki 1.3k yıldız ve aktif bir topluluk tarafından desteklenir. Katkı sağlamak isteyenler için CONTRIBUTING.md dosyası kapsamlı bir rehber sunar.

UBOS ekosistemi, Zoekt entegrasyonları için developer resources bölümü altında örnek şablonlar ve SDK’lar sağlar. Örneğin, AI SEO Analyzer şablonu, Zoekt’in kod arama sonuçlarını SEO meta verileriyle eşleştirerek içerik optimizasyonu yapabilir.

Sonuç ve SEO Anahtar Kelimeler

Zoekt, açık kaynak kod arama ihtiyaçlarını karşılamak için yüksek performanslı, ölçeklenebilir ve tamamen özelleştirilebilir bir çözümdür. Geliştiriciler, DevOps mühendisleri ve teknik liderler, Zoekt’i mevcut CI/CD akışlarına ve AI destekli platformlara (ör. UBOS partner program) entegre ederek kod kalitesini, güvenliğini ve bulunabilirliğini artırabilir.

Bu makalede kullanılan SEO anahtar kelimeler:

  • Zoekt
  • kod arama motoru
  • açık kaynak kod arama
  • Sourcegraph
  • tam metin arama
  • Go dili
  • yazılım geliştirme
  • geliştirici araçları

Görsel ve Bağlantılar

Zoekt’in mimarisini görselleştiren bir şema aşağıda yer almaktadır:

Zoekt kod arama motoru mimarisi

İlgili kaynaklar ve UBOS ekosistemi içindeki diğer faydalı bağlantılar:

Zoekt’i denemek ve UBOS platformu ile entegrasyonunu keşfetmek için UBOS homepage adresini ziyaret edin.


Andrii Bidochko

CTO UBOS

Andrii Bidochko is an AI entrepreneur and researcher focused on AI agents, reinforcement learning, and autonomous systems. He writes about the technologies shaping the future of machine intelligence, from frontier models and agent architectures to real-world AI applications.

Sign up for our newsletter

Stay up to date with the roadmap progress, announcements and exclusive discounts feel free to sign up with your email.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.