# Cursor edituje soubor. Maguyva vidí repozitář.

Canonical source: https://maguyva.ai/cs/for-cursor

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).

Cursor je editor. V monorepu agent pořád potřebuje mapu toho, který soubor je důležitý. Maguyva indexuje vaši codebase a vrací ji přes MCP (sémantika, AST, graf a text), takže „kde se řeší auth“ vrátí skutečný auth flow, ne sedm testovacích stubů.

> Cursor edituje to, na co ukážete. Maguyva agentovi řekne, na co má ukázat.

## Co dělá každá vrstva

Čtyři části. Každá má svůj úkol.

### Cursor

Kde skutečně programujete.

### @ zmínky + piny

Manuální kontext funguje, dokud repozitář nezačne být velký.

### Maguyva

Automatická fakta o kódové základně přes MCP.

### Za pracovní prostor, ne za uživatele

Za agenty se neúčtují samostatné licenční poplatky. [Zobrazit ceník](https://maguyva.ai/cs/pricing)

## Cursor je editor. Používejte ho.

IDE není problém. Doplňování textu, edit-with-AI, editace více souborů najednou a `.cursor/rules` v nástroji Cursor jsou skvělé a už je používáte pro:

- Inline návrhy a edit-with-AI v otevřeném souboru.
- Editace více souborů, když je změna lokální.
- `.cursor/rules` pro konvence repozitáře a stylistická pravidla.
- `@`-zmínky, kterými vtáhnete konkrétní soubor do kontextu.

Pokračujte v tom. Nic z toho nezmizí.

Ale ve skutečném monorepu (TypeScript se závislostmi mezi workspaces, Python služby, smíšené balíčky) se agentův kontext rozpadne ve chvíli, kdy relevantní soubor ještě není na vašem radaru.

## Manuální opravy, které jste už zkusili, a kde selhávají

Čtyři ruční postupy a jejich slabá místa. Vlevo = co děláte dnes. Vpravo = kde to selže.

### // připněte soubory

Pomocí `@` zmíníte tři soubory, o kterých si myslíte, že jsou důležité. Cursor v nich edituje čistě.

### // připnutí je odhad

Připnutí funguje, když už víte, které soubory jsou zapojené. Celý smysl kontextových nástrojů je ukázat soubory, o kterých jste nevěděli, že je máte připnout.

### // vložte úryvky

Vložíte 200 řádků z jiného balíčku do chatu, aby měl agent dost kontextu.

### // vložený kód zastará

Úryvek, který jste vložili v 9 ráno, neodráží rebase, který kolega odeslal v 11. Agent edituje proti fantomové verzi balíčku.

### // napište kontextový dokument

Napíšete soubor `.cursor/rules` nebo architektonický markdown. Dnes to sedí.

### // dokumentace zastarává rychleji než kód

Cokoli napíšete ručně, časem zastará. Kód je zdroj pravdy. Dokument popisující vrstvu fronty je správný tak týden, pak už navždy ne.

### // nechte si soubory s pravidly

Přidáte `.cursor/rules` pro pojmenování, lint a build příkazy. Skvělé pro chování.

### // pravidla ≠ index

`.cursor/rules` je správné místo pro „vždy spusť pnpm tsc -b před commitem.“ Není to prohledávatelný index každého symbolu, souboru a místa volání ve vašem monorepu.

## Maguyva je vrstva pod tím

Není to náhrada za Cursor. Je to vrstva kontextu repozitáře, která se napojuje na MCP podporu Cursoru.

- **Sémantika + AST + graf + text**: hledejte podle významu, struktury, závislosti nebo doslovného textu. Každý zásah vrátí cestu k souboru a číslo řádku.
- **Napříč balíčky ve výchozím nastavení**: místa volání a importéry napříč všemi balíčky v monorepu, ne jen tím, co máte zrovna otevřené.
- **Zohledňuje větev**: Maguyva vidí tu verzi kódu, kterou Cursor zrovna edituje.
- **Doplňkové, ne konkurenční**: `.cursor/rules` dál dělá svou práci. `@`-zmínky dál dělají svou. Maguyva vyplňuje mezeru, kterou nepokrývají.

> Cursor edituje soubor, na který ukážete.
> Maguyva agentovi řekne, *na co má ukázat.*

## Tři workflow napříč monorepem

Napříč balíčky, napříč jazyky. Podložené skutečným grafem volání, ne grepem v nástroji Cursor.

### 01. Najděte auth flow napříč balíčky, aniž byste cokoli připínali

```text
cursor> kde se v tomhle monorepu řeší autentizace?

graph::query("authentication flow")
  packages/web/src/auth/session.ts:42       middleware
  packages/api/src/auth/jwt.ts:88           token verify
  packages/shared/src/auth/types.ts:12      AuthContext
  packages/admin/src/auth/admin-only.ts:31  rbac gate

→ 4 vstupní body napříč 4 balíčky, seřazené podle hustoty míst volání.
[exit 0]
```

Nepřipnuli jste soubor. Nevložili jste úryvek. Agent má čtyři důležité soubory, ve správném pořadí, a může udělat podložený edit.

### 02. Najděte skutečnou implementaci, ne testovací stub

```text
cursor> jak normalizePhoneNumber zachází s E.164?

semantic::query("normalize phone E.164")
  packages/shared/util/phone.ts:88     normalizePhoneNumber()  ← skutečná impl
  packages/api/test/phone.spec.ts:14   jest.mock(...)          ← stub
[exit 0]
```

Jména lžou. Mocky zastiňují skutečný kód. Maguyva řadí skutečnou implementaci nad testovací mock, napříč každým balíčkem.

### 03. Zkontrolujte rozsah dopadu, než refaktorujete

```text
cursor> co volá QueueDispatcher.publish napříč monorepem?

graph::callers(QueueDispatcher.publish)
  3 in packages/billing/*
  1 in packages/audit/*
  1 in packages/notifications/*
  1 in services/python-worker/*  ← napříč jazyky přes gRPC stub
[exit 0]
```

Napříč balíčky, a v polyglotním repozitáři i napříč jazyky, se místa volání zobrazí přímo ve výsledku. Diff vychází ze skutečných míst importu, ne z grepu v nástroji Cursor.

## Nastavení v nástroji Cursor

Tři kroky. Free tarif: 3 repozitáře, Až 50K zaindexovaných řádků repa, bez kreditní karty.

### 01. Indexujte repozitář na maguyva.ai

Vyberte monorepo, kde vám chybějící kontext působil největší potíže.

### 02. Přidejte Maguyva jako server MCP v nastavení nástroje Cursor

`~/.cursor/mcp.json`

```json
{
  "mcpServers": {
    "maguyva": {
      "url": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer ${env:MAGUYVA_API_KEY}"
      }
    }
  }
}
```

### 03. Položte jednu otázku, jejíž odpověď už znáte

Nezačínejte s celou firmou. Začněte jedním repozitářem a jednou ověřitelnou otázkou, třeba „co volá `formatInvoice` napříč balíčky?“

## Indexujte jeden repozitář, který už znáte.

Otestujte jednu otázku, jejíž odpověď dokážete ověřit.
