# DCOG-OS Client

Bu dizin, DCOG-OS (Decentralized Collective Cognitive Operating System) uygulamasını **tarayıcınız üzerinden bütün yetenekleriyle** çalıştırmanızı sağlayan istemci paketidir.

Yerel dosya sistemine erişim (okuma/yazma), terminal/kabuk (xterm) çalıştırma ve P2P ağ katmanına katılma özellikleri **yerel bir daemon** (Rust backend) üzerinden yürütülür. Başlatma betikleri bu daemon'ı çalıştırır ve tarayıcınızı otomatik açar.

## 🚀 İki Kullanım Modu

### A) SAHİP (kendi beynini çalıştırır)
1. Derle (ilk kez / backend değişince):
   ```bash
   cargo build --manifest-path src-tauri/Cargo.toml --release
   ```
2. Başlat:
   * **macOS / Linux**: `./start.sh`
   * **Windows**: `start.bat` (çift tık)
3. Adresler (port **5318**):
   * **Son-kullanıcı paneli**: `http://127.0.0.1:5318/app/`
   * **God panel (yalnız sahip)**: `http://127.0.0.1:5318/`
4. Arkadaşlarına açmak için: `bash expose-brain.sh` (cloudflared) → çıkan `https://….trycloudflare.com` adresini paylaş.

### B) ARKADAŞ (sahibin uzak beynine bağlanır)
**En kolay:** sahibin paylaştığı adresi tarayıcıda aç:
```
https://<sahibin-tüneli>.trycloudflare.com/app/
```
Bu kadar — indirme gerekmez, same-origin bağlanır.

**Alternatif (indirilen client paketiyle):**
* **macOS / Linux**: `./start.sh https://<sahibin-tüneli>.trycloudflare.com`
* **Windows**: `start.bat https://<sahibin-tüneli>.trycloudflare.com`
* Ya da client'ı aç; **"Brain not found"** ekranında sahibin adresini yapıştır → bağlanır (cihazında kaydedilir).

> ⚠️ Eski sürümlerde launcher yanlış porta (5298) gidiyordu ve adres girilemiyordu → "bağlanamadı". Düzeltildi: doğru port **5318**, `/app/` paneli, ve adres girme ekranı.

---

## 🧠 Graphify Entegrasyonu (Kod Haritalama ve Token Tasarrufu)

Siber komuta merkezimiz ve kod editörümüz, büyük kod dosyalarını sürekli okumak yerine verimli çalışmak için **Graphify** altyapısını kullanır. Graphify, projenizin soyut sözdizim ağacını (AST) çıkararak lokal bir bilgi grafiği oluşturur. 

Bu sayede:
* **%95'e Varan Token Tasarrufu**: AI modeline tüm proje dosyalarını okutmak yerine sadece ilgili fonksiyon ve sınıfların parçaları beslenir.
* **Hızlı Yanıt Süresi**: AI, kod dosyalarını aramak yerine grafik haritasını kullanarak hedef koda nokta atışı erişir.
* **Tamamen Güvenli & Yerel**: AST çıkarımı internete çıkmadan, yerelde `tree-sitter` kütüphaneleriyle sıfır maliyetle gerçekleşir.

### Graphify Kullanımı
İstemcinizin çalıştığı dizinde kod tabanını güncellemek için terminalde şu komutu çalıştırabilirsiniz:
```bash
graphify update .
```
Bu komut `graphify-out/` dizininde güncel bir kod ilişkileri haritası oluşturur. Ajanınız (Asena) bu haritayı otomatik olarak okur.
