İçeriğe geç
Muhammet Şafak
CommitBrief CLI çıktısı — terminalde renkli severity kartları halinde listelenmiş kod inceleme bulguları

CommitBrief

Devam ediyor

CommitBrief, git diff'leri üzerinde LLM destekli yerel kod incelemesi yapan, sağlayıcıdan bağımsız bir Go CLI aracıdır. Staged/unstaged değişikliklerden tek bir commit'e ya da PR tarzı üç noktalı aralıklara kadar her kapsamı; terminalden çıkmadan, diff'i dışarı sızdırmadan ve özelleştirilebilir proje kurallarıyla denetler.

Rolüm
Founder & Developer
Süre
Nisan 2026 — Devam ediyor

Teknolojiler

Go Cobra go-git Anthropic Claude OpenAI Google Gemini Ollama YAML Goreleaser Astro Tailwind CSS

Yetenekler

CLI Development Software Architecture Provider Abstraction Git Internals LLM Integration Prompt Engineering Caching Strategy Cross-Platform Development Open Source Maintenance Release Engineering i18n Test-Driven Development

CommitBrief, bir kod değişikliğini başka bir insan (ya da gelecekteki kendin) görmeden önce hızlı ve yapılandırılmış bir “ikinci göz” incelemesi sunmak için geliştirdiğim açık kaynak bir Go CLI aracıdır. Aracın temel kullanım vaadi şudur: commitbrief yazdığında staged diff’in incelenir; commitbrief diff main...feature/x dediğinde bir PR aralığı, commitbrief diff HEAD dediğinde çalışma ağacın denetlenir. Çıktı terminalde renklendirilmiş bir kart görünümünde, dosyaya markdown olarak ya da otomasyon için katı JSON şeması olarak alınabilir. Diff’in ve inceleme çıktısının makineden çıkmaması ilkesi tasarımın çekirdeğinde yer alır; tek dış çağrı kullanıcının seçtiği LLM sağlayıcısınadır.

Mimari olarak proje, Provider arayüzü etrafında database/sql tarzı bir kayıt sistemiyle inşa edildi: Anthropic, OpenAI, Gemini ve Ollama API tabanlı sağlayıcılar, claude-cli ile gemini-cli ise kullanıcının mevcut aboneliğini yeniden kullanan subprocess tabanlı sağlayıcılar olarak gelir; yeni bir sağlayıcı eklemek tek bir paket ve tek bir blank import demektir. Git tarafında hibrit bir yaklaşım var: commit-tabanlı işlemler için önce go-git denenir, çalışma ağacı/index gerektiren senaryolarda git binary’sine düşülür — her iki yol aynı Repo arayüzünü uygular. SHA256 tabanlı yerel önbellek (diff + system prompt + sağlayıcı + model + dil) aynı diff’in yeniden çalıştırılmasını tek disk okumasına indirir; her çağrı sonrası “Saved: $X” satırı tasarrufu raporlar. Üç katmanlı bir filtre (built-in defaults → .commitbriefignoreCOMMITBRIEF.md semantik filtre), --fail-on=<severity> ile CI entegrasyonu, EN/TR i18n parite testleri ve gönderim öncesi gizli bilgi tarayıcısı projenin diğer öne çıkan parçaları.

CommitBrief, ürünün ötesinde bir mühendislik disiplini örneği olarak geliştirildi. Proje 14 mimari karar (ADR), kilitlenmiş bir JSON şema v1 kontratı, ~530 testlik bir paket, golden-file sürüklenme koruması, Goreleaser ile imzalanan binary’ler ve Homebrew tap ile Scoop bucket için otomatik dağıtım altyapısı içerir. v1.0.0 ile birlikte CLI flag yüzeyi, JSON şeması ve config anahtarları semver garantisi altına alındı; üst sürümler arası geçişler CHANGELOG.md’de migration guide olarak belgelendi. Lisans GPL-3.0-or-later, modül github.com/CommitBrief/commitbrief, kurulum brew install, scoop install ya da go install ile tek satır.

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi