# Zed hızlı. Ajanın yine de kodu bulması gerekiyor.

Canonical source: https://maguyva.ai/tr/for-zed

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Zed ajanı, açtığınız dosyalar ve verdiğiniz talimatlarla çalışır. Maguyva tüm repoyu dizinler ve MCP üzerinden geri sunar; böylece ajan tahmin etmek yerine bir sembolün nerede olduğunu sorar.

> Tek bir context_servers girdisi: bir URL ve bir Authorization başlığı.

## Zed hakkında bilmeniz gerekenler

Zed’e özgü dört gerçek. Hiçbiri zor değil.

### settings.json

Uzak sunucular `context_servers` altında tanımlanır. Dosyayı `zed: open settings file` ile açın ya da Settings → AI → MCP Servers üzerinden bir sunucu ekleyin.

### URL ile uzak bağlantı

Zed, Maguyva’nın uzak uç noktasına HTTP üzerinden doğrudan bağlanır. Yerel süreç yok, Node.js yok.

### Olduğu gibi bir başlık

Bu kılavuz anahtarı doğrudan `Authorization` başlığına yazar, çünkü Zed başlıklarında ortam değişkeni genişletmesi burada doğrulanmadı. Anahtarı commit ettiğiniz bir dosyada değil, kullanıcı ayarlarınızda tutun.

### Araç izinleri

Zed varsayılan olarak her araç çağrısından önce onay ister. Maguyva araçlarına `agent.tool_permissions.tools` altında, `mcp:maguyva:find_symbol` gibi anahtarlarla tek tek izin verin.

## Proje talimatları bir çalışma sözleşmesidir. Kullanın.

```text
# .rules
- Bir değişikliği bitti saymadan önce reponun test komutunu çalıştır.
- Yalnızca değiştirmen istenen paketi düzenle.
```

Zed tek bir proje talimat dosyası yükler: `.rules` ile başlayan ve `AGENTS.md` ile `CLAUDE.md` dosyalarını içeren sabit bir listedeki ilk eşleşme. Kişisel talimatlar `~/.config/zed/AGENTS.md` dosyasına gider. Şunlar için kullanın:

- Derleme, test ve lint komutları.
- Ajanın sürekli yanlış yaptığı kurallar.
- Ajanın dokunmaması gereken dizinler.

Bir talimat dosyası ajana nasıl çalışacağını söyler. Değiştirmek üzere olduğu fonksiyonu dört bin dosyadan hangilerinin çağırdığını söyleyemez.

## Açık arabelleğin yetmediği yer

Zed ajanının önündeki dosyalardan öğrenemeyeceği üç şey.

### // açık dosya repo değildir

Ajan, sizin açtığınızı ve grep ile bulduğunu görür. Başka bir paketteki aynı adlı yardımcı fonksiyon, yanlış olanı yayına çıkana kadar birebir aynı görünür.

### // çağıranlar ekranda değil

“Bu imzayı değiştirirsem ne bozulur?” bir graf sorusudur. Dizin olmadan ajan, turları ya da bağlamı tükenene kadar dosyaları tek tek okur.

### // bağlamın bir bütçesi var

Ajanın yönünü bulmak için açtığı her dosya, değişikliğin kendisine harcayamayacağı token’ları tüketir. file:line içeren tek bir sıralı yanıt, on keşif okumasından daha ucuzdur.

## Zed bağlam sunucusu olarak Maguyva

Tek bir context_servers girdisi Zed ajanına şunları verir:

- **Dizinlenmiş reponuz üzerinde 11 araç**: anlamsal, yapısal (AST), graf ve metin araması; ayrıca sembol arama, bağımlılar ve dosya alma.
- **Dosya yolları ve satır numaralarıyla yanıtlar**: 285+ dilde; böylece ajan doğru dosyayı ilk seferde açar.
- **Güncel kalan bir araç listesi**: Sunucu bir değişiklik bildirdiğinde Zed, yeniden başlatmadan o sunucunun araçlarını yeniden yükler.

> Zed ajana *hızlı bir editör* verir.
> Maguyva ajana *kodun haritasını* verir.

## İki iş akışı

Önce haritaya sorun, sonra düzenleyin.

### 01. Ajan bir sekme açmadan uygulamayı bulun

```text
zed agent> giden webhook’ların yeniden deneme politikası nerede?

find_symbol("retryPolicy")
  src/webhooks/dispatch.ts:41   retryPolicy()   ← uygulama
  src/webhooks/__mocks__/dispatch.ts:9   ← mock

→ Ajan mock’u değil, dispatch.ts:41’i açar.
[exit 0]
```

Tek bir sıralı arama, bir tur grep’in yerini alır. Yanıt, ajanın doğrudan açabileceği bir yol ve satır olarak gelir.

### 02. İmza değişikliğinden önce bağımlıları kontrol edin

```text
zed agent> fetchInvoice’a bir timeout argümanı ekle

dependency_search("fetchInvoice", dependents)
  4 pakette 7 çağıran

→ Ajan yedi çağrı noktasının hepsini tek seferde günceller.
[exit 0]
```

Etki yarıçapı, derleme başarısız olduktan sonra değil, ilk düzenlemeden önce gelir.

## Zed’de kurulum

Üç adım. Free katmanı: 3 repo, 50K'ya kadar indekslenmiş repo satırı, kart gerektirmez.

### 01. maguyva.ai’de bir repo dizinleyin

Yanıtları değerlendirebilmek için zaten bildiğiniz birini seçin.

### 02. Maguyva’yı Zed ayarlarında context_servers altına ekleyin

`~/.config/zed/settings.json`

```json
{
  "context_servers": {
    "maguyva": {
      "url": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer mgv_xxxx"
      }
    }
  }
}
```

### 03. Yer tutucuyu değiştirin ve bir soru sorun

`mgv_xxxx` değerini API anahtarınızla değiştirip kaydedin. Ajana yanıtını zaten bildiğiniz bir soru sorun, ardından alıntılanan dosyayı açın.

Zed’in kendi [MCP belgeleri](https://zed.dev/docs/ai/mcp) bağlam sunucularını, ajan profillerini ve araç izinlerini anlatır.

## Zaten bildiğiniz bir reponuzu dizinleyin.

Zed’i MCP üzerinden bağlayın, ardından doğrulayabileceğiniz bir soru sorun.
