# Copilot ziet je workspace. Maguyva brengt de repo in kaart.

Canonical source: https://maguyva.ai/nl/for-vscode

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

De agent in VS Code leest de bestanden die je toevoegt en de bestanden die hij zelf vindt. Maguyva indexeert de hele repo en levert die via MCP, zodat de agent vóór het bewerken vraagt waar een symbool staat en wie het aanroept.

> Eén servers-item in .vscode/mcp.json: een URL en een Authorization-header.

## Wat VS Code moet weten

Vier feiten specifiek voor VS Code.

### .vscode/mcp.json

Servers horen onder `servers`, niet onder `mcpServers`. Voor al je workspaces voer je `MCP: Open User Configuration` uit en voeg je hetzelfde item toe aan de `mcp.json` van je profiel.

### type: http

VS Code maakt via Streamable HTTP verbinding met het endpoint van Maguyva en valt alleen terug op SSE als een server dat niet ondersteunt. Lokaal draait niets.

### Een verwijzing naar een omgevingsvariabele

De header luidt `Bearer ${env:MAGUYVA_API_KEY}`, die VS Code oplost uit de omgeving waarin het is gestart, dus de sleutel blijft buiten het bestand dat je commit. Liever een prompt? Een invoervariabele vraagt één keer en bewaart de sleutel.

### Workspace Trust

Servers in `.vscode/mcp.json` starten zonder aparte prompt zodra je de workspace vertrouwt, en nooit in de beperkte modus. Met Configure Tools in de chatinvoer zet je afzonderlijke tools aan of uit.

## Aangepaste instructies zijn een werkafspraak. Gebruik ze.

```text
# .github/copilot-instructions.md
- Draai npm test voordat je een wijziging af noemt.
- Bewerk nooit gegenereerde bestanden onder src/gen/.
```

VS Code leest projectbrede instructies uit `.github/copilot-instructions.md` of `AGENTS.md`, en gerichte instructies uit `.github/instructions/*.instructions.md`-bestanden met een `applyTo`-patroon. Gebruik ze voor:

- Build-, test- en lintcommando’s.
- Conventies die de agent steeds verkeerd doet.
- Mappen waar de agent af moet blijven.

Instructies vertellen de agent hoe hij moet werken. Ze kunnen hem niet vertellen welke van vierduizend bestanden het type importeren dat hij zo gaat hernoemen.

## Waar het zicht op de workspace ophoudt

Drie dingen die de agent niet leert uit de bestanden die hij open heeft.

### // toegevoegd is niet alles

De agent werkt met wat jij toevoegt en wat zijn zoekopdrachten opleveren. De aanroeper in een ander pakket die na de wijziging breekt, stond op geen van beide lijsten.

### // een teksttreffer is geen referentie

Zoeken in de workspace vindt de string. Het ziet geen verschil tussen een echte aanroep en een commentaar, een mock of een methode met dezelfde naam in een andere klasse.

### // elke leesactie kost context

Elk bestand dat de agent opent om zich te oriënteren, kost context die hij voor de wijziging nodig heeft. Eén gerangschikt antwoord met file:line kost minder dan tien verkennende leesacties.

## Maguyva als MCP-server in VS Code

Eén servers-item geeft de agent:

- **11 tools voor je geïndexeerde repo**: semantisch, structureel (AST-), graaf- en tekstzoeken, plus symbolen opzoeken, afhankelijken en bestanden ophalen.
- **Antwoorden met bestandspaden en regelnummers**: over meer dan 285 talen, zodat de agent meteen het juiste bestand opent.
- **Tools die alleen lezen**: De tools van Maguyva bevragen de index. Geen enkele bewerkt je bestanden, dus elke goedkeuring gaat over lezen, niet over schrijven.

> VS Code geeft de agent *je workspace*.
> Maguyva geeft de agent *een kaart van de repo*.

## Twee workflows

Vraag eerst de kaart, bewerk daarna.

### 01. De tests vinden voordat je een parser wijzigt

```text
vscode agent> welke tests raken parseConfig?

dependency_search("parseConfig", dependents)
  tests/config/parse.test.ts:12
  tests/cli/flags.test.ts:88

→ Na de wijziging draait de agent deze twee bestanden, niet de hele suite.
[exit 0]
```

Het antwoord noemt de twee testbestanden die de parser bereiken, dus de agent controleert de wijziging waar die kan breken.

### 02. Een hernoeming inschatten vóór de eerste wijziging

```text
vscode agent> hernoem OrderStatus.PENDING naar OrderStatus.QUEUED

find_symbol("OrderStatus", references)
  23 referenties in 9 bestanden

→ De agent plant één ronde over negen bestanden.
[exit 0]
```

Het aantal referenties komt vóór de wijziging binnen, niet pas als de typechecker faalt.

## Instellen in VS Code

Drie stappen. Free-abonnement: 3 repositories, Tot 50K geïndexeerde repo-regels, geen creditcard nodig.

### 01. Indexeer een repo op maguyva.ai

Kies er een die je al kent, zodat je de antwoorden kunt beoordelen.

### 02. Voeg Maguyva toe aan .vscode/mcp.json

`.vscode/mcp.json`

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

### 03. Stel je sleutel in en start de server

Stel `MAGUYVA_API_KEY` in in de omgeving waaruit je VS Code start en start de server via de code lens boven het item. Stel de agent één vraag waarvan je het antwoord al weet.

De [MCP-documentatie](https://code.visualstudio.com/docs/agent-customization/mcp-servers) van VS Code behandelt invoervariabelen, het draagbare .mcp.json-formaat en vertrouwen in servers.

## Indexeer één repo die je al kent.

Verbind VS Code via MCP en stel één vraag die je kunt controleren.
