# GitHub Copilot CLI ile Python Geliştirme Rehberi

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

GitHub Copilot CLI ile Python’da sanal ortam, pyproject.toml, pytest, ruff ve mypy kullanımı; örnek talimat dosyası, promptlar ve doğrulama adımları.

**Kısaca:**

- GitHub Copilot CLI’yi proje kökünde çalıştırıp .github/copilot-instructions.md ile Python komutlarını ve kurallarını tanımlayın.
- Her değişiklikten sonra python -m pytest, ruff ve mypy çalıştırarak diff’i doğrulayın.
- Tip hatalarını # type: ignore ile geçiştirmesine ve sanal ortamı atlamasına izin vermeyin.

GitHub Copilot CLI, Python projesinde terminalden `copilot` komutuyla çalışan bir kodlama ajanıdır. Bu rehberde sanal ortam, pyproject.toml, pytest, ruff ve mypy ile birlikte nasıl kullanılacağını; ajanın nerede iyi çalıştığını ve nerelerde denetim gerektirdiğini pratik olarak anlatıyorum. Kod örnekleri ve çalışma döngüsüyle doğrudan uygulayabilirsiniz. Daha genel bir başlangıç için [GitHub Copilot CLI](/ajanlar/copilot-cli/) sayfasına bakabilirsiniz.

## Python işleri için neden GitHub Copilot CLI

Python projeleri genellikle net bir yapıya sahiptir: `pyproject.toml` bağımlılıkları ve araç ayarlarını tutar, `src/` düzeni paketi, `tests/` düzeni testleri barındırır. GitHub Copilot CLI bu yapıyı okuyabilir, sanal ortamı etkinleştirip `pytest`, `ruff` ve `mypy` komutlarını çalıştırabilir. Böylece sadece kod üretmekle kalmaz, hata ayıklama döngüsüne de girer. Python’daki tip hataları ve import sorunları genellikle çalışma zamanında ortaya çıkar; ajanın test ve tip denetimi çıktılarını yorumlaması bu sorunları erken yakalar. Ayrıca `pyproject.toml` içindeki araç yapılandırmasını değiştirmeden, mevcut kurallara uyarak diff üretir. Adım adım temel kullanım için [GitHub Copilot CLI nasıl kullanılır? Adım adım rehber](/blog/copilot-cli-nasil-kullanilir/) yazısına göz atabilirsiniz.

## Projeyi ajan için hazırlama

GitHub Copilot CLI, proje kökünde `.github/copilot-instructions.md` veya `AGENTS.md` dosyasındaki talimatları okur. Python projesi için bu dosya kısa ve net olmalıdır: hangi sanal ortamın kullanılacağı, test/lint/tip komutları, klasör düzeni ve Python’a özgü kurallar. Aşağıdaki örnek gerçek bir projeden uyarlanmıştır:

```markdown
# Python proje talimatları

## Ortam
- Sanal ortam: `.venv` (global paket kullanma)
- Etkinleştir: `source .venv/bin/activate` veya Windows için `.venv\Scripts\activate`
- Kurulum: `pip install -e ".[dev]"`

## Komutlar
- Test: `python -m pytest -q`
- Lint: `python -m ruff check .`
- Format kontrolü: `python -m ruff format --check .`
- Tip kontrolü: `python -m mypy src`

## Klasör düzeni
- Kaynak kod `src/`, testler `tests/` altında.
- Test dosyaları `test_*.py` desenine uyar.

## Python kuralları
- Yeni fonksiyonlara ve metotlara eksiksiz tip ekle; `Any` kullanma.
- mypy `strict` modda çalışır; `# type: ignore` eklemek yerine kodu düzelt.
- Import sırası: standart kütüphane, üçüncü parti, yerel modüller.
- Modül seviyesinde yan etki üretme; ağ/disk erişimi fonksiyon içinde olsun.
```

Doğru `python -m` ön eki, PATH sorunlarını azaltır ve ajanın hangi ortamı kullandığını netleştirir. Talimat dosyasına `pytest` eklentileri veya `ruff` kural istisnaları da ekleyebilirsiniz; ancak dosyayı uzun tutmayın. Ajanın görev sırasında en çok ihtiyaç duyacağı komutlar ve sınırlar yeterlidir.

## Çalışma döngüsü

Python’da GitHub Copilot CLI ile verimli çalışmak için planla, küçük adım at, doğrula, diff’i incele döngüsünü kullanın. Önce ajanla mevcut dosyayı ve hedefi konuşun; tek seferde büyük bir refactor istemeyin. Ajan küçük bir diff üretsin, ardından siz veya ajan `python -m pytest -q`, `python -m ruff check .` ve `python -m mypy src` komutlarını çalıştırıp çıktıyı değerlendirin. En son `git diff` ile yalnızca istenen değişikliklerin olduğunu kontrol edin.

Aşağıdaki tablo, tipik Python görevleri için doğrudan kullanabileceğiniz prompt örneklerini gösterir:

| Görev | İyi bir prompt |
|---|---|
| Tip hatası temizliği | `src/order_service.py` içindeki `calculate_total` fonksiyonuna eksik tipleri ekle; davranışı değiştirme ve `Any` kullanma. |
| Test ekleme | `tests/test_order_service.py` dosyasına `calculate_total` için indirim, vergi ve sıfır tutar senaryolarını kapsayan 3 yeni test yaz. |
| Lint düzeltme | `ruff check .` çıktısındaki F401 ve E501 hatalarını temizle; import sırasını bozma. |
| Tip yapılandırması | `pyproject.toml` içindeki mypy bölümünü `strict` yap ve ortaya çıkan hataları `# type: ignore` eklemeden düzelt. |
| Diff öncesi kontrol | Bu değişikliği incele: yalnızca tip ekle, çalışma zamanı davranışını değiştirme; sonra `python -m pytest -q` ve `python -m mypy src` çalıştır. |

Promptlarda mutlaka kapsamı sınırlayın: dosya adı, fonksiyon adı ve istenen çıktı. Böylece ajanın alakasız modüllere dokunmasını önlersiniz.

## Python’da iyi gittiği işler ve dikkat edilecek noktalar

GitHub Copilot CLI özellikle şu Python işlerinde iyi sonuç verir: eksik tip ekleme, mevcut davranıştan test yazma, `ruff` ve `mypy` hatalarını giderme, küçük fonksiyon refactorleri, import düzenleme, traceback yorumlama ve `pyproject.toml` bölümleri oluşturma. Bunlar genellikle sınırlı kapsamlıdır ve testlerle doğrulanabilir.

Buna karşılık dikkatli olmanız gereken Python’a özgü tuzaklar vardır. Ajan, mypy hatasını gerçekten düzeltmek yerine `# type: ignore` ekleyebilir; bu, tip güvenliğini sessizce azaltır. Büyük refactor isteğinde bulunduğunuzda import döngüleri veya modül seviyesindeki yan etkiler ortaya çıkabilir. Sanal ortam konusunda tutarsız davranabilir; global paketlerle çalışırsa testler yanlış bağımlılıklarla çalışır. Ayrıca `requirements.txt` yerine `pyproject.toml` kullanıyorsanız, ajanın eski alışkanlıkla `requirements.txt` oluşturmaya çalışmasını engelleyin. Test yazarken davranış yerine implementasyonu test eden kırılgan testler üretebilir; bu yüzden test isterken senaryoları açıkça belirtin. Son olarak, `python -m pytest` yerine doğrudan `pytest` çalıştırması PATH sorunlarına yol açabilir; talimat dosyanızda komutları `python -m` ile sabitleyin.

## Python’da test ve doğrulama

Ajanla çalışırken doğrulamayı her adımın parçası yapın. Değişiklik sonrası şu üç komutu sırayla çalıştırın: `python -m ruff check .`, `python -m mypy src` ve `python -m pytest -q`. Ajan komutları kendisi çalıştırabilir ancak çıktıyı size göstermesini isteyin. Başarısız bir test veya tip hatası varsa ajanın düzeltme önerisini beklemeden önce diff’i kendiniz okuyun; bazen ajan yanlış kök nedeni düzeltmeye çalışır. Testleri çalıştırmadan önce sanal ortamın etkin olduğundan emin olun ve `which python` veya `python -c "import sys; print(sys.executable)"` ile doğrulatabilirsiniz. `git diff --check` boşluk hatalarını yakalar. Ajanın `pytest` çıktısını özetlemesi yerine ham çıktıyı görmek daha sağlıklıdır; özellikle parametrik testler ve fixture hataları özet sırasında kaybolabilir. Python projelerinde test ve tip denetimi birbirini tamamlar; birini atlayan bir değişikliği kabul etmeyin.

## Aynı Python projesinde birden fazla ajan: AgentVera

Python projelerinde farklı yaklaşımları denemek veya paralel görev dağıtmak isterseniz AgentVera, GitHub Copilot CLI dahil birçok ajanı yan yana gerçek terminal panellerinde çalıştırır. Her ajan kendi git worktree’sinde ilerlediği için dosyalar birbirinin üzerine yazmaz; birinin ürettiği pytest/mypy hataları diğerinin çalışmasını bozmaz. Bir ajanın sırası bitince ikinci bir model otomatik kod incelemesi yapar ve bulguları `dosya:satır` olarak gösterir; bu, Python’daki tip hatalarını veya import düzensizliklerini yakalamada pratiktir. Ayrıca her turun checkpoint’i alındığından kötü bir refactor tek tıkla geri alınabilir. Daha geniş ajan seçimi için [Copilot CLI mı Claude Code mu? 2026’da nasıl seçilir](/blog/copilot-cli-mi-claude-code-mu/) yazısına bakabilirsiniz.

## Özet

GitHub Copilot CLI, Python projelerinde terminalden çalışan pratik bir ajandır. En iyi sonuç için projeye `.github/copilot-instructions.md` veya `AGENTS.md` ekleyin, küçük adımlarla ilerleyin ve her diff sonrası `pytest`, `ruff` ve `mypy` ile doğrulama yapın. Ajanın tip hatalarını örtbas etmesine veya yanlış sanal ortam kullanmasına izin vermeyin. Aynı projede birden fazla ajanla çalışacaksanız AgentVera gibi iş akışı araçları çakışmaları azaltır.

## Sık sorulanlar

**GitHub Copilot CLI Python projesinde nasıl başlatılır?** Terminalde proje kök dizinine gidin ve copilot yazıp çalıştırın. Ajan, .github/copilot-instructions.md veya AGENTS.md dosyasındaki talimatları okur. İlk görevde sanal ortamı etkinleştirmesini ve pyproject.toml’a uymasını isteyebilirsiniz.

**GitHub Copilot CLI için Python projesine hangi talimat dosyası eklenmeli?** .github/copilot-instructions.md veya AGENTS.md ekleyin. Build/test/lint komutları, klasör yapısı, tip kontrolü ve kod stili kuralları yazın. Örneğin source .venv/bin/activate, python -m pytest, python -m ruff check ., python -m mypy src gibi komutları belirtin.

**GitHub Copilot CLI Python’da testleri kendi çalıştırır mı?** Evet, siz isterseniz ajan testleri, linter ve tip denetleyicisini çalıştırıp çıktıyı yorumlayabilir. Ancak her komutu sizin onayınızla veya gözetiminizde çalıştırması daha güvenlidir. Sonuçları diff ile birlikte inceleyin.

**GitHub Copilot CLI ile Python’da en riskli görevler nelerdir?** Büyük refactorler, bağımlılık ekleme/çıkarma, import düzeni ve tip hatalarını sessizce geçiştirme riskli olabilir. Özellikle runtime import yan etkileri ve döngüsel importlar konusunda dikkatli olun; her adımda pytest ve mypy çalıştırın.

---

**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/
