- 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:
- Go ortamını kurun:
go install github.com/sourcegraph/zoekt/cmd/zoekt-index@latest - İndeks oluşturun:
zoekt-index -index ~/.zoekt /path/to/your/repo - 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:

İlgili kaynaklar ve UBOS ekosistemi içindeki diğer faydalı bağlantılar:
- Zoekt overview on UBOS
- Code search tools
- UBOS templates for quick start
- AI Article Copywriter
- AI Chatbot template
- AI SEO Analyzer
- AI YouTube Comment Analysis tool
- AI Video Generator
- AI Image Generator
- AI Email Marketing
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.