Graphify-Labs/graphify
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.
Hızlı değerlendirme
Özet
Graphify, AI coding assistant’lar üzerinden codebase ve ilişkili dokümanları sorgulanabilir bir knowledge graph’a dönüştürür.
Profiline uyum
Knowledge graph ve MCP desteği, aktif kullandığınız RAG ve agent mimarileriyle örtüşerek kod tabanlarını yapısal biçimde sorgulamanıza yardımcı olabilir.
Neden yükseliyor
177 günlük yaşına karşılık 121.707 yıldız ve son 28 günde 353 commit ile yüksek ilgi ve belirgin geliştirme temposu var; 17 farklı yazar katkısı da faaliyetin tek yazara dayanmadığını gösteriyor. Bu göstergeler dikkat çekici olsa da tek başına düzenli kullanımın veya kurumsal benimsenmenin kanıtı değil.
Problem
Büyük codebase’lerde kod, doküman ve yapılandırmalar arasındaki ilişkileri dosya dosya aramadan bulmak ve bir kavramın bağlamını izlemek zordur.
Çözüm
Kod için tree-sitter AST parsing kullanarak yerel ve deterministik bir graph oluşturur; dokümanlar, PDF’ler ve diğer içerikler için AI modelinden semantik çıkarım alabilir. İlişkileri kaynaktan doğrudan çıkarılan veya graphify tarafından çıkarımlanan olarak etiketler ve graph’ı AI coding assistant içindeki /graphify skill’iyle sorgulatır.
Yenilik
AST tabanlı, yerel ve LLM’siz code parsing’i kaynak/çıkarım ayrımı gösteren ilişkilerle birleştirmesi ve sonucu AI coding assistant’lardan sorgulatması kullanışlı bir bütünlük sunuyor; knowledge graph veya codebase aramasını baştan icat etmiyor.
Teknolojiler
- Python
- tree-sitter
- Claude Code
- Cursor
- Codex
- Gemini CLI
- knowledge graph
Riskler
- Kod dışındaki içeriklerin semantik işlenmesi model kullanımına bağlı; modele göre maliyet, kalite ve gizlilik koşulları değişebilir.
- Graph’ın doğruluğu parser desteğine ve çıkarılan ilişkilerin kalitesine bağlı; eksik veya hatalı graph, sorgu sonuçlarını yanıltabilir.
- Vector store kullanmayan yaklaşım, benzerlik tabanlı arama bekleyen iş akışları için uygun olmayabilir.
- AI coding assistant entegrasyonları ve skill davranışı platforma göre farklılık gösterebilir.
- README, doküman ve medya içeriklerinin işlenmesi için kod parsing’inden farklı bir semantik aşama gerektiğini belirtiyor; bu nedenle bütün içerikler için yerel ve deterministik işleme varsayılmamalı.
Detaylı değerlendirme
Uyum profiline göre: bu işime yarar mı?
Ne yapar
Graphify, bir codebase'i kod, dokümantasyon, SQL schema, config dosyaları ve isteğe bağlı PDF/media içerikleriyle birlikte queryable bir knowledge graph'a dönüştürür. AI coding assistant içinde `/graphify .` veya platforma özel eşdeğer komutla çalışır; çıktı olarak `graph.html`, `GRAPH_REPORT.md` ve sorgulanabilir `graph.json` üretir. Amaç, yalnızca grep veya dosya bazlı arama yerine bileşenler, çağrılar, imports, inheritance, doküman referansları ve mimari gerekçeler arasındaki bağlantıları takip etmektir.
Nasıl çalışır
Code, tree-sitter AST ile local ve deterministic olarak parse edilir; yaklaşık 40 dil için `calls`, `imports`, `inherits` gibi edge'ler çözülür. Edge'ler `EXTRACTED`, `INFERRED` veya `AMBIGUOUS` olarak etiketlenir; böylece kaynaktan doğrudan okunan ilişki ile çözümleme sonucu çıkarılan ilişki ayrılır. Leiden ile community detection, bağlantı sayısı yüksek `God nodes`, path traversal, `explain` ve doğal dil tabanlı `query` komutları sağlanır. Docs, PDFs, images ve video/audio için semantic pass kullanılabilir; bu katmanda assistant'ın modeli veya yapılandırılmış bir backend/API devreye girebilir. Varsayılan yaklaşım embedding veya vector store kullanmaz; graph yerel olarak `graph.json` içinde tutulur. İsteğe bağlı olarak MCP, Neo4j, FalkorDB, PostgreSQL introspection ve çeşitli LLM backend'leri desteklenir.
Kullanım alanları
- Kaliwa monorepo'sunda Next.js route, React component, TypeScript module ve Supabase Edge Functions arasındaki çağrı/import ilişkilerini keşfetmek
- Supabase/PostgreSQL SQL schema ile uygulama kodu arasındaki tablo, dependency ve referans ilişkilerini incelemek
- Yeni bir agent veya RAG özelliği geliştirirken mevcut MCP config'lerini, package manifest'lerini ve ilgili source code yollarını haritalamak
- Büyük bir codebase'te mimari review, onboarding ve etki analizi yapmak; örneğin bir database table veya shared TypeScript type değişikliğinin hangi modüllere uzandığını görmek
- ADR, `# NOTE:`, `# WHY:` ve docstring içeriklerini ilgili kod düğümleriyle birlikte incelemek
- Vector search yerine deterministik code navigation gereken local ve gizlilik hassasiyeti yüksek analizler yapmak
Kimler için
AI coding assistant kullanan ve birden fazla repository, dil veya doküman türü içeren codebase'lerde mimari keşif yapan ekipler için. Özellikle Claude Code, Cursor, Codex ve Gemini CLI kullanan geliştirici ekiplerine doğrudan entegre oluyor. Graph tabanlı gezinmenin değerli olduğu büyük projelerde anlamlı; küçük ve iyi bilinen bir repository için ek katman oluşturabilir.
Olgunluk
Beta / erken aşama. Olumlu sinyaller: 152 günde 199 sürüm, son 28 günde 285 commit ve 25 farklı yazar, PyPI paketi, çok sayıda platform entegrasyonu ve Apache-2.0 lisansı. Buna karşılık README, public v1 öncesi early access olduğunu açıkça belirtiyor; ayrıca bazı platformlarda hook desteği sınırlı, `leiden` Python 3.13'te desteklenmiyor ve bazı parser'lar optional dependency veya regex fallback kullanıyor. Üretim uygulamasının runtime dependency'si olmaktan çok geliştirme aracı olarak denenebilir.
Kurulum
Düşük-orta zahmetli. Python 3.10+ ve tercihen `uv` veya `pipx` gerekir: `uv tool install graphifyy`, ardından `graphify install` ve AI coding assistant içinde `/graphify .`. Kaliwa repository'sinde ilk deneme için `graphify install --project` kullanılabilir; SQL için `graphifyy[sql]`, canlı PostgreSQL introspection için `graphifyy[postgres]`, MCP için `graphifyy[mcp]` eklenir. Büyük repository'lerde graph build süresi README'de verilmediği için bunu gerçek bir Kaliwa checkout'unda ölçmek gerekir. Code parsing local olsa da docs/PDF/media semantic pass'i model veya API erişimi gerektirebilir; bu nedenle tamamen offline davranış tüm dosya türleri için garanti edilmiyor.
Bizim için
Somut kullanım
Kaliwa repository'sinde `uv tool install "graphifyy[sql,mcp,anthropic]"` ile project-scoped bir pilot kurulabilir. `graphify install --project` sonrasında graph üretip `graph.html` üzerinden Next.js app, Supabase Edge Functions, SQL schema, MCP server config ve RAG/agent modüllerinin kümelerini inceleyebiliriz. Somut bir test olarak şu sorular karşılaştırılmalı: belirli bir PostgreSQL table'ının hangi TypeScript dosyalarında kullanıldığı, bir Edge Function'ın hangi auth ve data-access katmanlarına bağlandığı, bir shared type değişikliğinin hangi route/component'leri etkilediği ve bir agent'ın hangi MCP server'larına eriştiği. `graphify path` ile bu ilişkilerin edge bazında açıklanması, onboarding ve refactor impact analysis için kullanılabilir. Ancak graphify'nin `graph.json` çıktısını doğrudan Kaliwa'nın end-user RAG retrieval katmanına koymak yerine önce developer tooling olarak konumlandırmak daha doğru.
Uyum gerekçesi
Kaliwa'nın Next.js, React ve TypeScript ağırlıklı codebase'i doğrudan desteklenen parser kapsamına giriyor; SQL schema, MCP config'leri, RAG/agent dokümanları ve PostgreSQL de proje kapsamıyla güçlü biçimde örtüşüyor. Anthropic backend seçeneği ve MCP extra'sı mevcut LLM yığınımızla uyumlu. Local tree-sitter parsing, codebase içeriğini dışarı çıkarmadan analiz etme açısından Supabase tabanlı ürün geliştirme akışına uygun. Skoru aşağı çeken noktalar, aracın Python CLI olması, graph'ın varsayılan olarak production veri katmanına bağlı olmaması, sürekli background update yerine on-demand kullanım ve docs/media semantic pass'inde model/API gereksinimi.
Engeller
- Python 3.10+ ve ek bir CLI/toolchain kurulumu gerekiyor; ana teknoloji yığınımız TypeScript/Deno olsa da bu runtime'a ait değil.
- `graphifyy` PyPI package adı ile `graphify` CLI adı farklı; PATH, `uv`/`pipx` ve Python environment ayrımı kurulum hatalarına yol açabilir.
- Code parsing local olsa da docs, PDFs, images ve video/audio semantic pass'i assistant modeli veya yapılandırılmış API kullanabilir; hassas kaynaklar için veri akışı incelenmeli.
- README'de bazı dil/parser desteğinin optional dependency, C compiler veya regex fallback gerektirdiği belirtiliyor; edge doğruluğu tüm dosya türlerinde aynı olmayabilir.
- Varsayılan graph çıktısı dosya tabanlı; ekip içinde paylaşım, incremental update, cache ve CI entegrasyonu için README'den tam operasyonel model anlaşılmıyor.
- Leiden extra'sı Python < 3.13 ile sınırlı olarak listelenmiş; ekipte Python sürüm standardı varsa ayrıca doğrulanmalı.
- AI assistant'a instruction file veya hook eklenmesi, mevcut Kaliwa repository kuralları ve developer workflow ile çakışabilir.
- README benchmark sonuçlarını veriyor ancak Kaliwa benzeri Next.js + Supabase codebase'inde build süresi, memory kullanımı ve edge precision ölçümleri sunulmuyor.
Ne zaman kullanılır
Kaliwa'da bir repository'nin mimarisini hızlıca anlamak, Supabase schema ile TypeScript/Edge Functions kodu arasındaki ilişkileri incelemek veya agent'ın doğru dosya ve modüllere yönlendirilmesini sağlamak gerektiğinde kullanılır. Özellikle mevcut RAG pipeline'ına embedding eklemeden önce deterministik code graph'ın retrieval kalitesini karşılaştırmak için kısa bir pilot uygundur. İlk pilotta aynı soruları `grep`/mevcut RAG ve `graphify query` ile sorup doğru dosyaya ulaşma, yanlış edge oranı ve graph build süresini ölçmek gerekir.
Ne zaman kullanılmaz
Kullanıcıya yönelik production query backend'i, sürekli güncellenen hosted knowledge graph veya Supabase içine doğal biçimde gömülen bir servis arandığında doğrudan uygun değildir; README'deki CLI ağırlıklı kullanımın yanında hosted platformun henüz public v1 öncesi olduğu belirtiliyor. Embedding tabanlı semantic similarity, vector retrieval veya conversational memory ana ihtiyacıysa graphify bunların yerine geçmez. Küçük repository'lerde graph üretimi ve assistant instruction/hook kurulumu, doğrudan dosya aramasından daha fazla operasyonel maliyet getirebilir. Parser'ın desteklemediği veya regex fallback kullandığı dillerde edge doğruluğu ayrıca kontrol edilmeden sonuçlara güvenilmemelidir.
Dikkat edilecekler
- İlk denemeyi `graphify install --project` ile yalnızca bir test repository'sine kurun; global assistant davranışını başlangıçta değiştirmeyin.
- `EXTRACTED` ile `INFERRED` edge'leri ayrı raporlayın; özellikle database usage ve cross-module `calls` sonuçlarını source code üzerinden örneklemeli doğrulayın.
- SQL schema extraction ile canlı PostgreSQL introspection'ı ayırın; production database credential'larını ilk pilotta vermeyin ve mümkünse schema dump kullanın.
- Graph çıktısında secret, environment variable veya özel doküman içeriğinin yer alıp almadığını kontrol edin; `graph.json` ve `GRAPH_REPORT.md` repository içinde kalabilir.
- Benchmark'taki LOCOMO/LongMemEval sonuçlarını doğrudan Kaliwa code search başarısı olarak yorumlamayın; README'de verilen sonuçlar farklı bir değerlendirme bağlamına ait.
- Mevcut pgvector/RAG pipeline'ını kaldırmadan A/B test yapın: code-navigation sorularında graphify, doğal dil doküman sorularında mevcut RAG kullanılabilir.
- Başarı kriterlerini ölçün: graph build süresi, `query` yanıtının doğru source dosyasına ulaşma oranı, yanlış inferred edge oranı ve geliştirici başına haftalık harcanan süre.
- Git hook veya strict mode'u ancak ekip workflow'unda graph'ın gerçekten güncel tutulduğu doğrulandıktan sonra açın; stale graph, assistant'ı yanlış yöne zorlayabilir.