Yapay zeka destekli otonom kod tamir ve gelistirme kutuphanesi
Project description
🛡️ AutoFix: Yapay Zeka Destekli Otonom Kod Tamir ve Geliştirme Motoru
AutoFix, Python projelerindeki sözdizimi (Linter/Flake8) ve çalışma zamanı (Runtime/Pytest) hatalarını derinlemesine AST (Abstract Syntax Tree) analiziyle lokal veya bulut LLM'leri kullanarak otonom olarak iyileştiren ve koda yeni özellikler entegre edebilen bir Self-Healing & Feature Development kütüphanesidir.
✨ Özellikler
- Derinlemesine Proje Sağlık Taraması: Sadece hedef dosyayı değil, o dosyanın import ettiği tüm yerel bağımlılıkları (utils.py vb.) otomatik tarar.
- AST Ameliyat Modu (Fonksiyon İzolasyonu): Hatalı satırı tüm dosyayı bozmadan, AST ile sadece ilgili fonksiyon bloğunu cımbızla çekerek izole bir şekilde tamir eder.
- Çift Modlu Çalışma Mimarisi:
- Tamir Modu: Kodda hata varsa otonom olarak ardışık iyileştirme (Iterative Healing) döngüsünü başlatır.
- Geliştirme Modu (Feature Mode): Proje temizse, terminalden verilen --komut talimatına göre mevcut yapıyı bozmadan yeni özellikleri otonom olarak koda ekler.
- Esnek Kimlik Doğrulama (.env Desteği): Bulut motoru (Groq API) kullanırken isterseniz API anahtarınızı parametre olarak geçebilir, isterseniz de proje kökündeki bir .env dosyasından otomatik okunmasını sağlayabilirsiniz.
- Hibrit Motor Desteği: Groq API (Llama 3.3) ile bulut veya Ollama (Qwen 2.5 Coder) ile %100 yerel/offline çalışabilir.
- Güvenli Yamalama (Safe Rollback): Kodda ters giden bir şey olduğunda Git veya .bak yedeği üzerinden otonom olarak orijinal koda geri döner.
🚀 Kurulum
Proje kök dizinindeyken terminalden geliştirici modunda kurun:
pip install -e .
🔑 Kimlik Doğrulama Seçenekleri (.env Kullanımı)
Bulut motorunu (Groq) kullanabilmek için API anahtarınızı sisteme iki farklı seçenekle tanıtabilirsiniz:
Seçenek A: .env Dosyası İle (Önerilen)
Projenizin kök dizinine bir .env dosyası oluşturup API anahtarınızı eklemeniz yeterlidir. AutoFix bu dosyayı otomatik olarak algılar ve okur:
GROQ_API_KEY=gsk_your_secret_api_key_here
Seçenek B: Ortam Değişkeni İle
Alternatif olarak, terminal oturumunuza veya işletim sisteminize ortam değişkeni olarak da ekleyebilirsiniz:
export GROQ_API_KEY="gsk_your_secret_api_key_here"
💻 Kullanım Şekilleri
1. Terminal CLI Modu (Doğrudan Çağrı)
Proje pyproject.toml standartlarına bağlandığı için terminalden doğrudan autofix kelimesiyle koşturulabilir:
Hata Tarama ve Otonom Tamir:
autofix --dosya main.py
Temiz Koda Yeni Özellik/Fonksiyon Ekleme veya Formatlama:
autofix --dosya main.py --komut "toplama fonksiyonu ekle ve tip ipuclarini (type hints) unutma"
2. Python Kod İçi Kütüphane Modu
Yazdığınız agentic workflow'lara veya multi-agent sistemlere bir alt motor olarak entegre edebilirsiniz:
import os from autofix import tek_dosya_otonom_tamir
basari = tek_dosya_otonom_tamir( dosya_yolu="uygulama.py", ozel_komut="Yazilan kodlardaki tum aciklama satirlarini Turkce yap.", api_key=os.environ.get("GROQ_API_KEY", ""), # .env dosyası varsa burayı boş da bırakabilirsiniz tur_bilgisi="Agent-Core" )
if basari: print("Kod otonom olarak güncellendi!")
🛠️ Klasör Mimarisi
PyCharmMiscProject/ │ ├── autofix/ # Ana Kütüphane Klasörü │ ├── init.py # Paket Arayüzü │ └── engine.py # V12 Çift Modlu Ana Motor │ ├── .env # API Anahtarı Saklama Dosyası (Opsiyonel) ├── pyproject.toml # Modern Paket Yönetim Dosyası └── README.md # Dokümantasyon
👤 Geliştirici
- Abdullah Topak - Software Engineering Student & AI Developer
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file code_healer-1.0.3.tar.gz.
File metadata
- Download URL: code_healer-1.0.3.tar.gz
- Upload date:
- Size: 5.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1c7cca216145ae95c3405575539c119eca16784da7b402ddaddccfeabfafa7a
|
|
| MD5 |
bf116f6811b26d42af37bf0ff9a1ed3c
|
|
| BLAKE2b-256 |
2ded9a0814e058d46b29c6a69ba9e7b2e9ebdf4c88403c35be47f29ea834591b
|
File details
Details for the file code_healer-1.0.3-py3-none-any.whl.
File metadata
- Download URL: code_healer-1.0.3-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
67ef38c357a18373890ccde61cc818db6084f28a394c4cf75cdb65b2c7dd0d61
|
|
| MD5 |
a7f7652d36c4caec778aa25cbd4440dd
|
|
| BLAKE2b-256 |
c75993a28db78852cc09ed69959a70ad50828fc36cae5f57c65fe4f29a1cd6f7
|