Sistem Gereksinimleri

GOGIES IDE son derece hafif ve hızlı çalışacak şekilde optimize edilmiştir. Sunucuda karmaşık Node.js bağımlılıkları olmadan doğrudan standart web sunucularında çalışır.

  • Web Sunucusu: Apache, Nginx veya PHP yerleşik sunucusu.
  • PHP Sürümü: PHP 7.4 veya üzeri (PHP 8.x önerilir).
  • PHP Eklentileri: curl, sqlite3, zip ve data/ klasörüne yazma izinleri.
  • İstemci Tarayıcısı: ES6 Javascript etkinleştirilmiş modern web tarayıcısı (Chrome, Firefox, Safari, Edge).
  • İsteğe Bağlı Yapay Zeka Ajanı Bağımlılıkları: GOGIES Yapay Zeka Ajanının tüm özelliklerini açmak için bunları ana sisteminize kurun:
    • Node.js: Derleme araçlarını (npm/vite gibi), geliştirme sunucularını ve otomasyon çalışma zamanlarını açar.
    • Docker: Kodların ve servislerin sandbox (kum havuzu) içinde güvenli, yalıtılmış testlerini sağlar.
    • ImageMagick: Ajanın web performansı için görselleri optimize etmesini, kırpmasını ve dönüştürmesini sağlar.

Kurulum

GOGIES IDE'yi kendi barındırdığınız sunucu ortamında konuşlandırmak için aşağıdaki adımları izleyin:

1. Kod Deposunu Klonlayın

Depoyu doğrudan web sunucunuzun genel belge kök dizinine klonlayın:

git clone https://github.com/alhelalat/GOGIES-AI-IDE.git /var/www/html/ide

2. Dizin İzinlerini Yapılandırın

IDE oturum geçmişlerini, ayarları, veritabanı yedeklerini data/ dizinine yazar. Web sunucusu kullanıcısına yazma yetkisi verin (genellikle Ubuntu/Debian'da www-data):

cd /var/www/html/ide
chmod -R 775 data
chown -R www-data:www-data data
Güvenlik İpucu

IDE yetkili kullanıcılara terminal erişimi sağladığından, yerel ağınızdaki diğer cihazlardan erişimi engellemek için web sunucunuzu 0.0.0.0 yerine localhost (127.0.0.1) adresine bağlamalısınız.

İlk Kurulum

Dizinler yapılandırıldıktan sonra web tarayıcınızı açın ve kurulum sihirbazına gidin:

http://localhost/ide/install.php

Kurulum sihirbazı aşağıdaki adımlarda size rehberlik edecektir:

  1. Yol Doğrulama: Kurulum dizininin yazma izinlerini otomatik olarak tarar.
  2. Yönetici Hesabı: Ana yönetici kullanıcı adınızı ve şifrenizi oluşturun.
  3. İlk Çalışma Alanı: İlk çalışma alanınızı oluşturun. Kod yazmak istediğiniz sunucudaki klasör yolunu belirtin.

İşlem bittiğinde sihirbaz config.php dosyasını oluşturur ve giriş paneline yönlendirilirsiniz.

Çalışma Alanı Yönetimi

Çalışma alanları, farklı proje klasörlerini ayırmanıza olanak tanır. Örneğin, farklı projeler için ayrı alanlar oluşturabilirsiniz.

Aktif çalışma alanları arasında geçiş yapmak için sol alttaki menüyü kullanın. Bu, oturumdaki yolları günceller ve dosya gezginini yeniden yükler.

Çalışma alanları ve kullanıcı yönetimi ekranı

Dosya Yönetimi

IDE panelinin solundaki ağaç yapısı, aktif proje dizinleriyle etkileşim kurmanıza izin verir:

  • Yeni Dosya/Klasör: Boş kaynaklar oluşturmak için gezginin üstündeki yeni dosya veya klasör butonlarına tıklayın.
  • Sağ Tık Menüsü: Bağlamsal eylemleri tetiklemek için bir dosyaya veya klasöre sağ tıklayın:
    • Rename: Seçilen kaynağı yeniden adlandırın.
    • Copy: Geçerli klasörde anlık kopyasını oluşturun.
    • Download: Dosyaları doğrudan indirin.
    • Decompress: Sunucu üzerinde ZIP arşivlerini doğrudan açın.
    • Delete: Dosya ve klasörleri kalıcı olarak silin (onay gerektirir).

Kod Düzenleyici

Düzenleme deneyimi Ace Editor tabanlıdır. CSS, JS, HTML, PHP, Markdown, JSON ve Python için renklendirmeyi destekler.

Yazma korumalı dosyalar salt okunur modda açılır ve kaydetme butonu gizlenir.

Ace Editor arayüzü ve ayarları

Kullanıcı İzinleri

Kullanıcı izinleri data/users/users.php dosyasında saklanır. Yöneticiler * yetkisine sahiptir ve tam kontrole sahiptir.

Standart kullanıcılar, kendilerine atanmayan çalışma alanlarına erişim sağlayamaz.

Veritabanı

Tarayıcıdan SQLite, MySQL ve PostgreSQL yapılarını incelemenizi ve sorgular çalıştırmanızı sağlar.

Entegre SQL yönetim konsolu

Desteklenen Veritabanları

Bağlantı hesap bilgileri ve anahtarlar sunucuda güvenli şekilde saklanır.

İnceleme ve Sorgular

  • Tablo İnceleyici: Tablo yapılarını, indeksleri ve anahtarları analiz edin.
  • SQL Konsolu: Sonuçları sayfalayarak doğrudan SQL kodu çalıştırın.

Yedekle & Geri Yükle

Projenizi ve ilgili veritabanı kayıtlarını tek bir ZIP arşivi olarak dışa aktarabilirsiniz.

Yedekleme ve geri yükleme geçmişi paneli

Bütünleşik Yedekler

Yedekleme sırasında şunlar arşivlenir:

  1. Aktif projenin tüm kaynak kodları.
  2. Veritabanı bağlantı profili bilgileri.
  3. PDO tranzaksiyonları kullanılarak veritabanı tabloları.

Sonuç yedek arşivi sunucu verilerinde depolanır.

Kolay Geri Yükleme

Geçmiş listesinden bir ZIP seçerek geri yüklemeyi başlatın.

GOGIES Yapay Zeka Ajanı

Otonom yapay zeka asistanıyla çift kodlama yapın.

Yapay Zeka sohbet ekranı

Çalışma Prensibi

Ajan sohbet içindeki XML etiketlerini yakalayarak komutları yürütür.

İş Sırası

İşlemler arka planda asenkron olarak yürütülür ve durum güncellenir.

Özel Kurallar (agent_rules.md)

Ajanı kodlama tarzınız hakkında bilgilendirmek için proje köküne bir kurallar dosyası yerleştirin.

Onay Modları

Yapay zeka asistanının dosya yazma izinlerini belirleyin:

  • Sor (Varsayılan): Değişiklik önizlemesini (diff) gösterir ve onay bekler.
  • Otomatik Onayla: Değişiklikleri anında uygular.
  • Otomatik Reddet: Dosya yazma işlemlerini tamamen engeller.

Yapay Zeka Sağlayıcı Entegrasyonu

Bulut ticari API'lerini veya çevrimdışı yerel modelleri seçebilirsiniz.

Sağlayıcı ayarları paneli

1. Bulut API Kurulumu

İlgili erişim anahtarlarını ayarlayın:

  • OpenAI: gpt-4o için URL ve anahtar yapılandırın.
  • Anthropic: claude-3-5-sonnet-latest için URL ve anahtar yapılandırın.
  • Google Gemini: gemini-2.5-flash için endpoint yapılandırın.

2. Yerel Ollama Kurulumu

Veri gizliliği için yerel modeller çalıştırın:

  1. Ollama Hazırlığı: Resmi yazılım istemcisini edinin:
    curl -fsSL https://ollama.com/install.sh | sh
  2. Model Çek: Modeli komutla indirin. Örn: ollama pull qwen2.5-coder:7b:
    ollama pull qwen2.5-coder:7b
  3. IDE Yapılandırması: Yerel API adresini (genellikle http://localhost:11434/v1) yapılandırın.

API Referansı

Sistemle api.php dosyası üzerinden haberleşir.

Mevcut Eylemler

  • get_file_content: Dosya içeriğini getirir.
    POST api.php?action=get_file_content&path=index.php
  • save_file_content: Değişiklikleri kaydeder.
    POST api.php?action=save_file_content
    Body parameters: path=index.php, content=your_code
  • list_files: Kaynak listesini getirir.
    POST api.php?action=list_files&path=assets/css