# Claude Code en iyi pratikler: uygulamalı kontrol listesi

Adres: https://agentvera.dev/blog/claude-code-en-iyi-pratikler/ · Yayın: 2026-10-27

Gerçek projelerde işe yarayan Claude Code en iyi pratikler: kısa CLAUDE.md, önce plan, çalıştırılacak bir kontrol, küçük görevler, /clear, izinler, hook’lar ve worktree.

**Kısaca:**

- CLAUDE.md’yi kısa tut ve yalnızca Claude’un koddan öğrenemeyeceklerini yaz: test, typecheck ve lint komutları, yanıltıcı noktalar ve reponun dışında alınmış kararlar.
- Her göreve Claude’un çalıştırabileceği bir kontrol ver: bir test, bir typecheck, bir build. Kanıt olarak komutu ve çıktısını iste, geçmesi şart olan kontrolleri bir Stop hook’uyla zorunlu kıl.
- Küçük ve net görevlerle çalış, alakasız işler arasında /clear kullan, kesin kuralları deny kurallarına ve hook’lara koy, paralel işlere kendi git worktree’sini ver.

En önemli Claude Code en iyi pratikleri basit: `CLAUDE.md`’yi kısa tut, büyük değişikliklerden önce plan yap, Claude’a çalıştırabileceği bir kontrol ver, küçük görevlerle çalış, aralarında bağlamı temizle, kesin kuralları düz yazı yerine yapılandırmayla zorunlu kıl ve paralel işleri ayrı git worktree’lerinde yürüt. Sonra diff’i oku ve sık commit at.

Bu sayfa bir kontrol listesi. Her madde ne yapacağını söylüyor, komutu ya da ayarı gösteriyor ve varsa daha ayrıntılı bir rehbere bağlantı veriyor. Buradaki her şey Ekim 2026 itibarıyla resmi Claude Code belgelerine dayanıyor; sürümler arasında değişen ayrıntılar belirtilmiş.

## Kontrol listesine hızlı bakış

| # | Pratik | Tek satırlık hali |
| --- | --- | --- |
| 1 | Kısa `CLAUDE.md` | Yalnızca komutlar, tuzaklar ve kararlar |
| 2 | Net prompt’lar | Belirti, yer, düzeldiğini nasıl kanıtlayacağın |
| 3 | Önce plan | Çok adımlı her iş için plan modu ya da yazılı bir spec |
| 4 | Çalıştırılacak bir kontrol | Testler, typecheck, lint; kanıt iste |
| 5 | Küçük görevler | Oturum başına tek hedef, görevler arasında `/clear` |
| 6 | Kesin kurallar yapılandırmada | Deny kuralları, hook’lar, sandbox |
| 7 | Erken yönlendir | `Esc`, `/rewind` ve iki başarısız düzeltmeden sonra `/clear` |
| 8 | Bilinçli alt ajanlar | Refleksle değil; paralel iş ve taze bir inceleme için |
| 9 | Paralel işe worktree | Oturum başına bir checkout |
| 10 | İncele ve commit at | Diff’i oku, küçük commit at, push’u kendin yap |

## 1. CLAUDE.md’yi kısa ve olgusal tut

Claude Code `CLAUDE.md`’yi her oturuma yükler; yani içindeki her satır, ilgili olsun olmasın, her görevde biraz dikkat harcar. Dosya en iyi, yalnızca Claude’un koddan çıkaramayacaklarını içerdiğinde çalışır:

- Bu repoda işin nasıl doğrulanacağı: tam test, typecheck ve lint komutları ve tek bir test dosyasının nasıl çalıştırılacağı.
- Kodun yanılttığı yerler: yeni kodun kopyalamaması gereken eski bir kalıp, ölü görünen ama ölü olmayan bir klasör.
- Repoda olmayan kararlar: ekibin hangi hata yardımcısını seçtiği, deploy’ların nasıl yapıldığı.
- İki kez düzeltmek zorunda kaldığın her şey.

Bu testi geçen bir dosya küçük kalır:

```markdown
# Commands
- Install: pnpm install
- Run one test file: pnpm vitest run path/to/file.test.ts
- Typecheck: pnpm tsc --noEmit

# Conventions
- Use the error helpers in src/lib/errors.ts, never throw raw strings
- src/legacy/ is still live but don't copy its patterns into new code

# Gotchas
- Integration tests need DATABASE_URL set, see .env.example
```

Mimarini ya da klasör yapını anlatmana gerek yok; Claude repoyu okur. `/init` ilk taslağı yazar, oradan sonrası çoğunlukla silmekten ibaret. Resmi bellek rehberi 200 satırın altında kalmayı öneriyor. `/context` dosyanın yüklendiğini doğrular, `/doctor` da neyin kısaltılabileceğini önerir. Kişisel tercihler `.gitignore`’a eklediğin `CLAUDE.local.md`’ye gider.

İki ilgili araç ana dosyayı yalın tutar. Yalnızca bir bölgede önemli olan kurallar `paths:` filtresiyle `.claude/rules/*.md`’ye gider; böylece sadece Claude orada çalışırken yüklenirler. Sürüm kontrol listesi gibi ekip prosedürleri `.claude/skills/<name>/SKILL.md` altında bir skill’e gider; Claude tam metne ihtiyaç duyana kadar yalnızca adını ve açıklamasını görür. Ayrıntılı anlatım [CLAUDE.md ve AGENTS.md nasıl yazılır](/blog/claude-md-nasil-yazilir/ "CLAUDE.md ve AGENTS.md nasıl yazılır") yazısında.

Claude bir satırı sürekli görmezden geliyorsa büyük harflerle IMPORTANT yazmak nadiren işe yarar. Ya dosya fazla uzun ya da o satır istisnası olmayan bir kural; o zaman yeri bir hook (6. maddeye bak).

## 2. Nerede, ne ve nasıl kontrol edileceğini söyleyen prompt’lar yaz

Belirsiz bir prompt Claude’u tahmin etmeye zorlar. Net bir prompt belirtiyi, nereye bakılacağını ve düzeltmenin nasıl kanıtlanacağını söyler:

```text
Kullanıcılar oturum zaman aşımına uğradıktan sonra girişin başarısız olduğunu bildiriyor. src/auth/ içindeki token yenilemeye bak, sorunu yeniden üreten başarısız bir test yaz, sonra düzelt.
```

Dosyaları `@` ile göster, ekran görüntüsü yapıştır ve logları anlatmak yerine boru ile ver. Ne istediğini henüz bilmiyorsan önce Claude’un seninle görüşme yapmasına izin ver:

```text
Herkese açık API’ye rate limiting eklemek istiyorum ama henüz üzerine düşünmedim. Spec’i yazabilecek kadar bilgi toplayana kadar bana sorular sor, sonra onu SPEC.md’ye yaz.
```

Sonra `SPEC.md`’den inşa eden yeni bir oturum başlat. İnşa temiz bir bağlamla ve yazılı bir “bitti” tanımıyla başlar; spec de daha sonra inceleyicinin karşılaştıracağı şeydir. Daha fazla prompt kalıbı [Kodlama ajanları için prompt yazmak](/blog/kodlama-ajanlari-icin-prompt-yazmak/ "Kodlama ajanları için prompt yazmak") yazısında.

Bırakabileceğin iki alışkanlık: “think hard” gibi ifadeler akıl yürütme eforunu artırmaz (`/effort high` kullan ya da tek bir prompt’a `ultrathink` yaz), BÜYÜK HARFLE vurgu da çoğunlukla Claude’un bir kuralı gereğinden fazla uygulamasına yol açar.

## 3. Çok adımlı değişikliklerden önce plan yap

Birkaç dosyaya dokunan her işte düşünmeyi düzenlemeden ayır. Plan modu Claude’un hiçbir şeyi değiştirmeden kodu okuyup bir plan önermesini sağlar. Ona `Shift+Tab` ile geçebilir ya da oturumu doğrudan bu modda başlatabilirsin:

```bash
claude --permission-mode plan
```

Planı oku, düzelt ve ancak ondan sonra Claude’un inşa etmesine izin ver. Planda yakalanan yanlış bir varsayım bir mesaja mal olur; diff’te yakalanırsa baştan yazmaya. Küçük, bariz düzeltmeler plan gerektirmez. Bir planı onaylamadan önce nasıl düzenleyeceğin de dahil ayrıntılar [Claude Code plan modu](/blog/claude-code-plan-modu/ "Claude Code plan modu") yazısında.

## 4. Claude’a çalıştırabileceği bir kontrol ver

En çok getirisi olan alışkanlık bu. Claude ancak çalıştıracağı bir şey varsa işin bittiğini bilebilir: bir test paketi, bir typecheck, bir lint komutu, bir build’in çıkış kodu, çıktıyı bir fixture ile karşılaştıran bir betik. Reponda böyle bir şey varsa `CLAUDE.md`’deki en faydalı satır onu çalıştıran komuttur.

Kontrolün ne kadar sıkı uygulanacağını sen seçersin:

- **Prompt’ta.** “Sonra auth testlerini çalıştır ve geçene kadar devam et.” Hiç kurulum gerektirmeden her görevde işe yarar.
- **Hedef olarak.** `/goal all tests in tests/auth pass and lint is clean`, her turdan sonra ayrı bir modelin kontrol ettiği bir koşul koyar. En çok uzun çalıştırmalarda faydalı.
- **Stop hook’u olarak.** Claude turunu bitirmeye çalıştığında Claude Code senin betiğini çalıştırır; betik 2 koduyla çıkarsa Claude’u geri gönderir.
- **Bağımsız bir inceleyiciyle.** `/code-review`, diff’i konuşmanı hiç görmemiş yeni bir alt ajanda inceler.

“Typecheck geçmeli” kuralının Stop hook’u hali `.claude/settings.json`’da durur:

```json
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          { "type": "command", "command": "pnpm tsc --noEmit 1>&2 || exit 2" }
        ]
      }
    ]
  }
}
```

Stderr, Claude’a henüz neden duramayacağının gerekçesi olarak geri gider; derleyici çıktısının oraya yönlendirilmesinin sebebi bu. Hook arada hiç araç çağrısı olmadan art arda sekiz durmayı engellerse Claude Code turu yine de bitirir; `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` bu sınırı yükseltir.

Hangisini seçersen seç kanıt iste: Claude’un çalıştırdığı komut ve çıktısı. Tek başına “tüm testler geçti” sana pek bir şey söylemez. Bir arayüz değişikliğinden sonra `/verify`, Claude’un uygulamayı derleyip çalıştırmasını ve sonuca bakmasını sağlar.

## 5. Görevleri küçük, bağlamı temiz tut

Bir oturum, bir hedef. Birbiriyle alakasız üç görev biriktirmiş bir konuşma, dördüncünün her turunda hepsini yeniden gönderir; bu hem daha pahalıdır hem de yanıtları daha az odaklı yapar.

- Alakasız görevler arasında `/clear`. `/clear oauth-migration` ayrıca ayrıldığın oturuma bir ad verir, böylece ona geri dönebilirsin.
- `/compact keep the API changes and the test commands`, önemli olanı tutarak uzun bir oturumu kısaltır. Uzun bir oturumda `/compact` kendisi de büyük bir istektir.
- `/usage` kullanımının nereye gittiğini gösterir; abonelik planlarında alt ajan, skill ve MCP sunucusu bazında da.

Ekim 2026 itibarıyla güncel modellerin çoğunda 1M token’lık bir pencere var ve sıkıştırma kendiliğinden çalışıyor, yani bağlamın tükenmesi nadir. Temizlemek hayatta kalmakla değil, odak ve maliyetle ilgili. Prompt önbelleği abonelikte yaklaşık bir saat, API anahtarında yaklaşık beş dakika sürer; öğle yemeği boyunca boşta kalmış bir oturuma devam etmek, yeni bir oturumdan daha pahalıdır. İşin mekaniği [Claude Code bağlam yönetimi](/blog/claude-code-baglam-yonetimi/ "Claude Code bağlam yönetimi") yazısında.

## 6. Esnemeyecek kuralları yapılandırmaya koy

`CLAUDE.md` yönergeler içerir ve Claude bir yönergenin geçerli olmadığına karar verebilir. “Neredeyse her zaman”ın yetmediği birkaç kural için Claude Code’un kendisinin uyguladığı kontrolleri kullan.

**İzin kuralları.** Güvenli ve sık olana izin ver, riskli olanı sorsun, asla olmaması gerekeni reddet:

```json
{
  "permissions": {
    "allow": ["Bash(pnpm tsc --noEmit)"],
    "ask": ["Bash(git push *)"],
    "deny": ["Read(./.env)", "Read(./.env.local)", "Read(./secrets/**)"]
  }
}
```

Deny kuralları her izin modunda geçerlidir ve `Read` kuralı `cat .env` gibi yaygın dosya okuma kabuk komutlarını da yakalar. Dosyayı açan bir betiği yakalamaz; bu yüzden güvenlik açısından hassas işlerde `/sandbox` ile sandbox’ı da aç. Sandbox kabuk komutlarını macOS, Linux ve WSL2’de işletim sistemi düzeyinde sınırlar.

**Hook’lar.** Her düzenlemeden sonra çalışan bir biçimlendirici artık Claude’un hatırlamasına bağlı değildir:

```json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command", "command": "npx prettier --write --ignore-unknown \"$(jq -r '.tool_input.file_path')\"" }
        ]
      }
    ]
  }
}
```

Hook’ları yalnızca hiç istisnası olmayan kurallar için kullan; “named export’ları tercih et” `CLAUDE.md`’de kalır. [Claude Code hooks rehberi](/blog/claude-code-hooks-rehberi/ "Claude Code hooks rehberi") her olayı ve çıkış kodunu anlatıyor.

**İzin modları.** Ekim 2026 itibarıyla yeni etkileşimli oturumlar auto modunda başlıyor; bu modda her adım için sana sormak yerine riskli eylemleri bir sınıflandırıcı inceliyor. İyi çalışıyor ama bu bir değerlendirme; dolayısıyla “asla” kuralların yine deny kurallarına ve hook’lara ait. Her adımı onaylamayı tercih edersen `Shift+Tab` ile Manual’a geç ya da `claude --permission-mode manual` ile başlat. Manual çok sık soruyorsa `/fewer-permission-prompts` sık kullandığın salt okuma komutlarını bir izin listesine ekler. İzinleri tamamen atlamanın neden kötü bir takas olduğu [Claude Code izinleri atlamak](/blog/claude-code-izinleri-atlamak/ "Claude Code izinleri atlamak") yazısında.

## 7. Erken yönlendir, tartışmak yerine sıfırla

Bir görevin ilk dakikasını izle. Kontroller az:

- `Esc` Claude’u eylemin ortasında durdurur ve o ana kadar olan her şeyi korur; böylece yönünü değiştirebilirsin.
- `/rewind` ya da boş bir prompt’ta iki kez `Esc`, kodu, konuşmayı ya da ikisini birden daha önceki bir prompt’a geri sarar.
- `/clear` baştan başlatır. İki başarısız düzeltmeden sonra üçüncüsü çoğunlukla Claude’un yeniden okuyacağı bir başarısız deneme daha ekler. Temizle ve öğrendiklerini içeren daha iyi tek bir prompt yaz.

Checkpoint’ler Claude’un kendi düzenleme araçlarıyla değiştirdiği dosyaları kapsar; yalnızca bir Bash komutunun dokunduğu dosya geri yüklenmez. Git’in yerine değil, yanında çalışırlar. Günlere yayılan işlerde `/rename oauth-migration` oturuma ad verir, `claude --resume oauth-migration` de onu daha sonra kaldığı yerden açar.

## 8. Alt ajanları bilinçli kullan

Claude Code zaten kendi kendine iş devrediyor: geniş aramalar yerleşik Explore ajanına gider ve alt ajanlar varsayılan olarak arka planda çalışır. Her alt ajan kendi isteklerini gönderir; yani token harcar ve bir yanıtı daha akıllı yapmaz. Onları şunlar için kullan:

- Aynı anda çalışabilecek bağımsız iş parçaları.
- Tam bir test çalıştırması gibi uzun çıktıları ana konuşmanın dışında tutmak.
- Kodun nasıl yazıldığını görmemiş bir inceleyici.
- Ana oturumdan daha az araca sahip olması gereken bir görev.

Salt okuma bir inceleyici, `.claude/agents/reviewer.md` konumunda kısa bir dosyadır:

```markdown
---
name: reviewer
description: Reviews changed files against the spec they were built from. Use after implementing a feature, before opening the PR.
tools: Read, Grep, Glob
---
You're reviewing code you didn't write. Compare the changed files against the spec you're given,
check that every requirement is implemented and the listed edge cases have tests,
and report only the gaps that affect correctness. Skip style.
```

Bir modülü import eden dosyaları toplamak gibi basit işler için tanıma `model: haiku` ekle. Sonra şöyle iste:

```text
İnceleyiciye rate limiter’ı SPEC.md ile karşılaştırt.
```

Daha fazla kalıp [Claude Code alt ajanlar](/blog/claude-code-alt-ajanlar/ "Claude Code alt ajanlar") yazısında.

## 9. Paralel işleri worktree’lerde çalıştır

Aynı checkout’u düzenleyen iki oturum birbirinin üzerine yazar. Her birine kendi [git worktree](/sozluk/git-worktree/ "Git worktree nedir")’sini ver:

```bash
claude -w feature-auth
```

Bir worktree sıfırdan bir checkout’tur; `.env` gibi gitignore’daki dosyalar orada yoktur ve bağımlılıklar kurulu değildir. Küçük gitignore dosyalarını repo kökündeki `.worktreeinclude`’a yaz; Claude Code onları oluşturduğu her worktree’ye kopyalar:

```text
.env
.env.local
config/dev-credentials.json
```

`node_modules`’ı oraya koyma; bağlamaz, kopyalar. Bunun yerine kurulum komutunu `CLAUDE.md`’de tut ya da `worktree.symlinkDirectories` ayarını kullan. Adsız bir worktree oturumundan hiç değişiklik yapmadan çıktığında Claude Code onu siler; aksi halde sorar. Tek büyük mekanik bir değişiklik için `/batch` işi birimlere böler, her birini kendi worktree’sinde çalıştırır ve birim başına bir PR açar. Daha fazlası [Git worktree ile paralel geliştirme](/blog/git-worktree-paralel-gelistirme/ "Git worktree ile paralel geliştirme") yazısında.

## 10. Diff’i oku, küçük commit at, push’u kendin yap

Ajan yazar; sen onaylarsın. Bir turu kabul etmeden önce özeti değil `git diff`’i oku. Çalışan her adımdan sonra commit at ki kötü bir sonraki adım bir `git reset` uzaklıkta olsun. Push’ları, merge’leri ve deploy’ları bir insanın arkasında tut: yukarıdaki `git push *` için `ask` kuralı tam olarak bunu yapar. `@src/middleware/rateLimiter.ts` dosyasını yazılırken izlememiş ikinci bir oturumun incelemesi, elindeki en ucuz bağımsız inceleyicidir.

## Bonus: Claude’u gözetimsiz bırakmadan önce

Resmi belgeler, kimsenin izlemediği her çalıştırma için beş soru sıralıyor. İyi bir son kontrol oluyorlar:

1. Bitmiş halin neye benzediğini biliyor mu? Bir hedef, bir spec dosyası, başarısız bir test.
2. Kendi işini kontrol edebiliyor mu? Testler, bir Stop hook’u, bir inceleme adımı.
3. Neye dokunabilir? İzin kuralları, `dontAsk`, sandbox, bir worktree.
4. Onu ne durdurur? `--max-turns`, `--max-budget-usd`, bir harcama limiti.
5. Sonuç nereye gidiyor ve kim onaylıyor? Bir PR ve merge’ü onaylayan bir insan.

Betikli ve CI çalıştırmaları için [Claude Code headless mod](/blog/claude-code-headless-mod/ "Claude Code headless mod") yazısına bak.

## AgentVera ile yapmak

Bu kontrol listesinin çoğu disiplinle ilgili; birden fazla oturum çalıştırdığında [AgentVera](/ajanlar/claude-code/ "AgentVera’da Claude Code") birkaç maddeyi kolaylaştırır. [Çalışma alanındaki](/ozellikler/calisma-alani/ "AgentVera çalışma alanı") her panel gerçek Claude Code terminalidir; `Shift+Tab`, plan modu, hook’lar ve `CLAUDE.md`’n her zamanki gibi çalışır. Git panelinden her ajan için bir worktree oluşturabilirsin; [ajan koordinasyonu](/ozellikler/ajan-koordinasyonu/ "Ajan koordinasyonu") da iki ajan aynı dosyayı düzenlediğinde uyarır.

4. madde için [otomatik kod incelemesi](/ozellikler/kod-incelemesi/ "Otomatik kod incelemesi"), seçtiğin bir Claude modeline her turun değişikliklerini inceletir, bulguları önem derecesi ve dosya:satır ile listeler ve bunları ajana geri gönderebilir. [Verify](/ozellikler/verify/ "AgentVera Verify") (Pro ve Team) mesajını kabul kriterlerine çevirir ve tur bittiğinde ayrı bir doğrulayıcının bunları kanıtla kontrol etmesini sağlar. 7. madde için [kontrol noktaları](/ozellikler/turlar-ve-oturum-tekrari/ "Turlar ve oturum tekrarı") her turun anlık görüntüsünü gizli bir git ref’ine alır ve ajan başına son 60 tanesini saklar. Izgara, worktree’ler, kod incelemesi ve kontrol noktaları ücretsiz planda; denemek için [AgentVera’yı indir](/indir/ "AgentVera’yı indir").

## Toparlarsak

Yalnızca üç maddeyi benimseyeceksen şunları al: gerçek komutlarını içeren kısa bir `CLAUDE.md`, Claude’un “bitti” demeden önce çalıştırdığı bir kontrol ve görevler arasında `/clear`. Asla olmaması gereken şeyler için deny kuralları ve hook’lar ekle, oturumları paralel çalıştırmaya başladığında worktree’lere geç; son incelemeyi ve push’u kendine sakla.

## Sık sorulanlar

**Claude Code’da en faydalı tek alışkanlık hangisi?** Claude’a kendi işini kontrol etmenin bir yolunu vermek. Tam test, typecheck ve lint komutlarını CLAUDE.md’ye yaz, prompt’unda kontrolü adıyla an ve Claude bitti dediğinde komutu ve çıktısını iste. Kontrol yoksa “bitti” yalnızca Claude’un durduğu anlamına gelir.

**CLAUDE.md ne kadar uzun olmalı?** Kısa. Claude Code onu her oturuma yükler, yani her satır her görevde biraz dikkat harcar. Resmi bellek rehberi 200 satırın altında kalmayı öneriyor. İlk taslak için /init çalıştır, sonra çoğunlukla sil: komutları, tuzakları ve kodda görünmeyen kararları tut.

**/clear mı kullanmalıyım, /compact mı?** Alakasız görevler arasında /clear kullan; hiçbir maliyeti yok ve sonraki görev eski geçmişin bedelini ödemeyi bırakır. Aynı göreve daha kısa bir geçmişle devam etmek istediğinde /compact’ı bir odakla kullan, örneğin “/compact keep the API changes and the test commands”.

**Claude Code’un sormadan komut çalıştırmasına izin vermek güvenli mi?** Ekim 2026 itibarıyla etkileşimli oturumlar auto modunda başlıyor; bu modda riskli eylemleri bir sınıflandırıcı inceliyor. Bu bir değerlendirme, kesin bir kural değil; asla olmaması gereken her şey deny kurallarına, hook’lara ya da sandbox’a ait. Her adımı onaylamak istersen Shift+Tab ile Manual moda geçersin.

**Birkaç Claude Code oturumunu çakışma olmadan aynı anda nasıl çalıştırırım?** Her oturuma kendi git worktree’sini ver, örneğin claude -w feature-auth ile. Her worktree kendi dalında ayrı bir checkout olduğu için düzenlemeler çakışamaz. .env gibi gitignore’daki dosyaları .worktreeinclude’a yaz ki yeni worktree’lere kopyalansı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/
