# GitHub Copilot CLI Laravel: Pratik Kullanım Rehberi

Adres: https://agentvera.dev/blog/copilot-cli-ile-laravel/ · Yayın: 2026-11-01

GitHub Copilot CLI ile Laravel projelerinde verimli çalışın: kurulum, talimat dosyası, örnek promptlar, test döngüsü ve tuzaklar. Adım adım pratik rehber.

**Kısaca:**

- GitHub Copilot CLI, terminalde copilot komutuyla başlar ve Laravel projesinde doğrudan dosya ve komutlarla çalışır.
- Talimat dosyasına build, test, lint komutları ve Laravel kuralları yazmak ajanın doğru kod üretmesini sağlar.
- Küçük adımlarla çalışıp her değişiklikten sonra test çalıştırmak, ajanın hatalarını erken yakalar.

GitHub Copilot CLI’yi Laravel projenizde kullanmak, terminalde proje kök dizininde `copilot` komutuyla başlar. Bu rehber, ajana proje bağlamını nasıl vereceğinizi, tipik Laravel görevlerini nasıl yöneteceğinizi ve test döngüsünü nasıl kuracağınızı pratik olarak anlatır. Laravel’in komut satırı merkezli yapısı ve Copilot CLI’nin terminal odaklı çalışması iyi bir uyum sağlar; böylece ajan gerçek proje dosyaları üzerinde etkili olur.

## GitHub Copilot CLI Neden Laravel İşleri İçin Uygun?

Laravel, geliştirme sürecinin büyük kısmını terminalde yönetir: `php artisan` komutları, `composer` ile paket yönetimi, `pint` ile kod formatlama, `phpunit` veya `pest` ile test çalıştırma. GitHub Copilot CLI de aynı ortamda çalıştığı için proje yapısını doğrudan okuyabilir, dosyaları değiştirebilir ve komutları çalıştırarak sonuçları yorumlayabilir. Özellikle migration, model, controller, test gibi birbirine bağlı dosyaları birlikte üretme görevlerinde etkilidir. Ajan, `composer.json` ve `phpunit.xml` gibi yapılandırma dosyalarını okuyarak projenin test ve bağımlılık kurallarını anlar; siz de talimat dosyasıyla ona ek bağlam sağlayabilirsiniz. Laravel’in standart klasör yapısı (`app/Models`, `app/Http/Controllers`, `database/migrations`) ajanın doğru yerde dosya oluşturmasını kolaylaştırır. Ayrıca Artisan komutlarının üretilmesi, route tanımlarının güncellenmesi ve middleware eklenmesi gibi tekrarlayan işlerde ajan hızlı ve tutarlı sonuçlar verir. Daha fazla bilgi için [GitHub Copilot CLI](/ajanlar/copilot-cli/) sayfasına göz atabilirsiniz.

## Projeyi Ajan İçin Hazırlama: Talimat Dosyası

GitHub Copilot CLI, proje kökündeki `.github/copilot-instructions.md` veya `AGENTS.md` dosyasını okur. Laravel projesi için bu dosyaya build, test, lint komutları, klasör kuralları ve çerçeveye özgü kurallar yazın. Bu, her oturumda tekrar tekrar bağlam vermekten kurtarır ve tutarlılık sağlar. Dosya kısa ve öz olmalı; genel geçer kurallar yerine bu projeye özel kararları içermelidir. Örneğin, projenizde Pest kullanıyorsanız bunu belirtin; ajan yanlışlıkla PHPUnit tarzı test üretmesin. Aynı şekilde, formatter olarak Pint kullanılıyorsa komutları yazın. Aşağıda gerçekçi bir örnek verilmiştir. Detaylı açıklama için [Copilot CLI nasıl kullanılır?](/blog/copilot-cli-nasil-kullanilir/) rehberine bakın.

```
# Laravel Proje Talimatları

## Komutlar
- Kurulum: `composer install`
- Test: `php artisan test` (Pest kullanılıyor)
- Lint: `vendor/bin/pint --test`
- Format: `vendor/bin/pint`
- Static analiz: `vendor/bin/phpstan analyse --memory-limit=2G`

## Klasör Kuralları
- Modeller `app/Models` altında, tekil isimle.
- Migration'lar `database/migrations` altında, açıklayıcı adlarla.
- Form Request'ler `app/Http/Requests` klasöründe.
- Service sınıfları `app/Services` altında, arayüz uygulamasıyla.

## Laravel Kuralları
- Eloquent modellerinde `$fillable` tanımla; toplu atamada `$guarded` kullanma.
- İlişkilerde eager loading yap; N+1 oluşturma.
- Kontrolörler ince olsun; iş mantığını Service veya Action sınıflarına taşı.
- Migration'lar geri alınabilir olsun; `down()` metodunu doldur.
- Queue job'ları için `ShouldQueue` arayüzünü kullan.
- Testlerde `RefreshDatabase` trait'ini kullan; factory'leri model başına oluştur.
```

Bu dosya, ajanın Laravel projesinin kurallarını hatırlamasını sağlar. Ayrıca AGENTS.md yazımıyla ilgili ipuçları için [CLAUDE.md nasıl yazılır?](/blog/claude-md-nasil-yazilir/) rehberine bakabilirsiniz. Talimat dosyasını projenin başında oluşturun ve ekip kararları değiştikçe güncelleyin; örneğin, yeni bir formatter benimsendiğinde veya test çerçevesi değiştiğinde dosyayı düzenleyin. Kısa ama spesifik olmak, ajanın doğru kararlar vermesine yardımcı olur.

## Çalışma Döngüsü ve Örnek Promptlar

Copilot CLI ile verimli çalışmak için şu döngüyü izleyin: önce görevi net bir şekilde tanımlayın, sonra ajanın küçük bir değişiklik yapmasını isteyin, ardından testleri çalıştırın ve son olarak `git diff` ile değişiklikleri inceleyin. Tek seferde büyük bir özellik istemek yerine adım adım ilerlemek hata ayıklamayı kolaylaştırır. Her adımda ajanın ne yaptığını anlamak için ona açıklama yaptırabilirsiniz. İşte tipik Laravel görevleri için örnek promptlar (liste):

- "Yeni bir `Post` modeli oluştur, migration’ını yaz ve `title`, `body`, `user_id` alanlarını ekle. `User` ile `belongsTo` ilişkisi kur."
- "`Post` modeli için factory oluştur ve `PostTest` adında bir Pest testi yaz; temel CRUD’u test et, `RefreshDatabase` kullan."
- "`SendWelcomeEmail` adında bir queued job oluştur, `ShouldQueue` implement et ve `User` kaydı sonrası dispatch et."
- "Blade bileşenlerini refactor et: `resources/views/components` altındaki form alanlarını tekrar kullanılabilir bileşenlere ayır."
- "`php artisan test` çalıştır, hataları listele ve sırayla düzelt."

Bu promptlarla ajan, Laravel’in yapı taşlarını doğru kullanacaktır. Ancak her adımdan sonra testleri çalıştırmayı ve değişiklikleri gözden geçirmeyi unutmayın. Gerekirse ajanın önerdiği değişiklikleri kısmen uygulayın veya geri alın. `git diff` çıktısını okuyarak beklenmeyen dosya değişikliklerini yakalayın. Ajan, bazen yan etki olarak ilgili olmayan dosyaları da düzenleyebilir; bu yüzden diff incelemesi kritiktir.

## Hangi Görevlerde İyi, Nerelerde Dikkatli Olmalı

GitHub Copilot CLI, boilerplate üretiminde çok başarılıdır: migration, model, controller, Form Request, policy, test ve Artisan komutu oluşturma. Ayrıca mevcut kodun refactor edilmesi, eksik testlerin yazılması ve basit hata düzeltmeleri için uygundur. Ancak Laravel’in bazı incelikleri ajanın gözünden kaçabilir; üretilen kodu her zaman inceleyin. Aşağıdaki tablo, sık karşılaşılan tuzakları ve dikkat edilecek noktaları özetler:

| Görev | Dikkat Edilecek Nokta |
|-------|----------------------|
| Migration oluşturma | `down()` metodunu eksik bırakabilir; geri alınabilirliği kontrol edin. |
| Eloquent ilişkileri | Eager loading yapmadan N+1 sorgu oluşturabilir; `with()` kullanımını denetleyin. |
| Mass assignment | `$fillable` yerine `$guarded = []` önerebilir; güvenlik açığına yol açar. |
| Queue job’ları | Job’ı dispatch etmeyi unutabilir veya `tries`/`timeout` ayarlarını atlayabilir. |
| Form Request validasyonu | Kural eklemeyi unutabilir veya `authorize()` metodunu yanlış doldurabilir. |
| Cache kullanımı | Cache invalidation’ı atlayabilir; model güncellemelerinde cache temizlemeyi unutabilir. |

Bu tuzaklara karşı ajanın ürettiği kodu inceleyin; özellikle güvenlik ve performans açısından Laravel’in best practice’lerine uygunluğunu kontrol edin. Örneğin, ilişkilerde `with()` kullanımı, controller’larda ince yapı, Form Request’te yetkilendirme gibi konulara dikkat edin. Ayrıca ajan, middleware tanımlarını yanlış sıraya koyabilir veya route model binding kullanırken tip belirtmeyi unutabilir. Policy sınıflarında `before` metodunu atlayabilir. Bu yüzden üretilen kodun Laravel konvansiyonlarına uygunluğunu manuel olarak doğrulayın.

## Test Etme ve Doğrulama

Laravel’de test, Copilot CLI ile çalışmanın ayrılmaz parçasıdır. Ajan testleri oluşturabilir, mevcut testleri çalıştırabilir ve hataları düzeltebilir. Çalışma döngüsünde her değişiklikten sonra `php artisan test` veya `pest` komutunu çalıştırın. Ajanın test çıktılarını yorumlamasını isteyebilirsiniz: "Testler başarısız, hata mesajlarını oku ve düzelt" gibi. Ayrıca yeni özellik eklerken test-first yaklaşımı uygulayın: önce testi yazdırın, sonra implementasyonu yaptırın. Bu, ajanın doğru API tasarımını benimsemesine yardımcı olur.

Testlerde `RefreshDatabase` trait’i migration’ları her testte tazeler, factory’ler veri oluşturmayı kolaylaştırır. Ajanın bu araçları kullanmasını sağlayın. Ayrıca `--filter` ile tek test çalıştırarak hızlı geri bildirim alın. Büyük test suite’lerinde `paratest` gibi paralel çalıştırma araçları kullanıyorsanız, ajanın bu komutu bilmesini talimat dosyasına ekleyin. Son olarak, ajanın ürettiği testlerin anlamlı olduğundan emin olun; sadece boş geçen testler veya yanlış assertion’lar üretebilir. Her testin gerçekten beklenen davranışı doğruladığını kontrol edin. Ayrıca spec odaklı geliştirme hakkında daha fazla bilgi için [Yapay zekâ ajanlarıyla spec odaklı geliştirme rehberi](/blog/spec-odakli-gelistirme/) yazısına göz atabilirsiniz.

## Laravel Projesinde Birden Fazla Ajan Çalıştırma: AgentVera

Birden fazla ajanı aynı Laravel projesinde paralel çalıştırmak gerektiğinde AgentVera masaüstü uygulaması işe yarar. Özellikle her ajanın kendi git worktree’sinde çalışabilmesi, dosya çakışmalarını önler; böylece biri migration üzerinde çalışırken diğeri test yazabilir. Ajanın turu bittiğinde ikinci bir model otomatik kod incelemesi yapar; bu, Laravel’e özgü hataları yakalamada ek güvenlik sağlar. Ayrıca her turun snapshot’ı alınır ve tek tıkla geri alınabilir; yanlış bir migration veya model değişikliğini hızla geri döndürmek için kritiktir. Token bütçeleri ise maliyet kontrolü sağlar. Bu özellikler, Laravel’in çok dosyalı yapısında paralel çalışmayı güvenli kılar.

GitHub Copilot CLI, Laravel projelerinde terminal odaklı iş akışını benimseyen geliştiriciler için pratik bir yardımcıdır. Doğru talimat dosyası, küçük adımlı çalışma döngüsü ve sürekli test ile ajanın üretkenliğini artırabilirsiniz. Ancak üretilen kodu her zaman gözden geçirin; Laravel’in güvenlik ve performans kurallarına uygunluğu sizin sorumluluğunuzdadır.

## Sık sorulanlar

**GitHub Copilot CLI Laravel projesinde nasıl başlatılır?** Proje kök dizininde terminalde copilot komutunu çalıştırın. Ajan, mevcut dizindeki dosyaları okuyarak çalışmaya başlar; talimat dosyanız varsa onu da dikkate alır.

**GitHub Copilot CLI ile Laravel migration oluşturabilir miyim?** Evet, modele uygun migration, factory ve seeder üretebilir. Ancak down() metodunun eksiksiz olduğunu ve alan tiplerinin doğru seçildiğini kontrol etmelisiniz.

**GitHub Copilot CLI testleri çalıştırabilir mi?** Evet, php artisan test veya pest komutlarını çalıştırıp çıktıyı yorumlayabilir, hataları düzeltebilir. Test öncesi ve sonrası komutlar talimat dosyasında belirtilmelidir.

**GitHub Copilot CLI için AGENTS.md dosyasına ne yazmalıyım?** Build, test, lint komutlarını, klasör yapısını ve Laravel’e özgü kuralları (ör. $fillable, eager loading, queue job ayarları) yazın. Kısa ve projeye özel tutun.

---

**AgentVera hakkında.** AgentVera, Solviera Teknoloji tarafından geliştirilen macOS, Windows ve Linux masaüstü uygulamasıdır. 18 yapay zeka kodlama ajanını (Claude Code, Codex, Gemini CLI, Copilot, Cursor, Antigravity, opencode, Hermes, Qwen Code, Kimi Code, Kiro, Amp, Droid, Goose, Vibe, Crush, Aider, Cline) proje bazında, gerçek terminallerde ve kullanıcının kendi CLI kurulum ve girişleriyle yan yana çalıştırır. Ücretsiz planda sınırsız ajan vardır. İndir: https://agentvera.dev/indir/ · Fiyatlar: https://agentvera.dev/fiyatlar/
