# Zed pantas. Ejennya masih perlu mencari kod.

Canonical source: https://maguyva.ai/ms/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).

Ejen Zed bekerja daripada fail yang anda buka dan arahan yang anda beri. Maguyva mengindeks seluruh repo dan menyajikannya semula melalui MCP, jadi ejen bertanya di mana sesuatu simbol berada dan bukan meneka.

> Satu entri context_servers: satu URL dan satu pengepala Authorization.

## Apa yang perlu diketahui tentang Zed

Empat fakta khusus untuk Zed. Tiada yang sukar.

### settings.json

Pelayan jauh diletakkan di bawah `context_servers`. Buka fail dengan `zed: open settings file`, atau tambah pelayan daripada Settings → AI → MCP Servers.

### Jauh, melalui URL

Zed bersambung ke titik akhir jauh Maguyva melalui HTTP. Tiada proses tempatan, tiada Node.js.

### Pengepala literal

Panduan ini meletakkan kunci terus dalam pengepala `Authorization`, kerana pengembangan pemboleh ubah persekitaran dalam pengepala Zed belum disahkan di sini. Simpan dalam tetapan pengguna anda, bukan dalam fail yang anda commit.

### Kebenaran alat

Secara lalai, Zed meminta kelulusan sebelum setiap panggilan alat. Benarkan alat Maguyva satu demi satu di bawah `agent.tool_permissions.tools`, dengan kunci seperti `mcp:maguyva:find_symbol`.

## Arahan projek ialah persetujuan kerja. Gunakannya.

```text
# .rules
- Jalankan arahan ujian repo sebelum menganggap perubahan selesai.
- Hadkan suntingan dalam pakej yang diminta untuk diubah.
```

Zed memuatkan satu fail arahan projek: padanan pertama daripada senarai tetap yang bermula dengan `.rules` dan merangkumi `AGENTS.md` serta `CLAUDE.md`. Arahan peribadi diletakkan dalam `~/.config/zed/AGENTS.md`. Gunakannya untuk:

- Arahan build, ujian dan lint.
- Konvensyen yang asyik disalah buat oleh ejen.
- Direktori yang tidak boleh disentuh oleh ejen.

Fail arahan memberitahu ejen cara bekerja. Ia tidak dapat memberitahu yang mana antara empat ribu fail memanggil fungsi yang hendak diubahnya.

## Apabila penimbal yang terbuka tidak mencukupi

Tiga perkara yang ejen Zed tidak dapat pelajari daripada fail di hadapannya.

### // fail yang terbuka bukan repo

Ejen melihat apa yang anda buka dan apa yang ia grep. Fungsi pembantu bernama sama dalam pakej lain kelihatan serupa sehingga yang salah dihantar.

### // pemanggil tiada di skrin

“Apa yang rosak jika saya ubah tandatangan ini?” ialah soalan graf. Tanpa indeks, ejen membaca fail satu demi satu sehingga kehabisan giliran atau konteks.

### // konteks ada bajet

Setiap fail yang dibuka ejen untuk orientasi menggunakan token yang tidak dapat dibelanjakan untuk perubahan itu. Satu jawapan tersusun dengan file:line lebih murah daripada sepuluh bacaan penerokaan.

## Maguyva sebagai pelayan konteks Zed

Satu entri context_servers memberi ejen Zed:

- **11 alat merentasi repo anda yang diindeks**: carian semantik, struktur (AST), graf dan teks, ditambah carian simbol, dependen dan pengambilan fail.
- **Jawapan dengan laluan fail dan nombor baris**: merentasi 285+ bahasa, jadi ejen membuka fail yang betul dahulu.
- **Senarai alat yang sentiasa terkini**: Zed memuat semula alat sesuatu pelayan apabila pelayan mengumumkan perubahan, tanpa mula semula.

> Zed memberi ejen *editor yang pantas*.
> Maguyva memberi ejen *peta kod*.

## Dua aliran kerja

Tanya peta dahulu, kemudian sunting.

### 01. Cari pelaksanaan sebelum ejen membuka tab

```text
zed agent> di mana dasar cuba semula untuk webhook keluar?

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

→ Ejen membuka dispatch.ts:41, bukan mock.
[exit 0]
```

Satu carian tersusun menggantikan satu pusingan grep. Jawapan kembali sebagai laluan dan baris yang boleh terus dibuka oleh ejen.

### 02. Semak dependen sebelum mengubah tandatangan

```text
zed agent> tambah argumen timeout pada fetchInvoice

dependency_search("fetchInvoice", dependents)
  7 pemanggil merentasi 4 pakej

→ Ejen mengemas kini ketujuh-tujuh tapak panggilan sekali gus.
[exit 0]
```

Lingkungan impak tiba sebelum suntingan pertama, bukan selepas build gagal.

## Sediakan Zed

Tiga langkah. Peringkat Free: 3 repositori, Sehingga 50K baris repo terindeks, tanpa kad.

### 01. Indeks repo di maguyva.ai

Pilih satu yang anda sudah kenali, supaya anda boleh menilai jawapannya.

### 02. Tambah Maguyva pada context_servers dalam tetapan Zed anda

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

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

### 03. Ganti pemegang tempat dan tanya satu soalan

Tukar `mgv_xxxx` kepada kunci API anda dan simpan. Tanya ejen satu soalan yang anda sudah tahu jawapannya, kemudian buka fail yang disebut.

[Dokumentasi MCP](https://zed.dev/docs/ai/mcp) Zed sendiri merangkumi pelayan konteks, profil ejen dan kebenaran alat.

## Indeks satu repo yang anda sudah kenali.

Sambung Zed melalui MCP, kemudian tanya satu soalan yang boleh anda semak.
