Hopp til innhold

For brukere av GitHub Copilot CLI

Copilot starter hver økt blindt.

Tilpassede instruksjoner forteller Copilot hvordan det skal oppføre seg. De forteller ikke hva som er i repoet ditt. Maguyva indekserer kodebasen og leverer den tilbake via MCP, slik at GitHub Copilot CLI redigerer som om det allerede har lest koden.

Free-planen: 3 repoer, Opptil 50K indekserte kodelinjer, uten kredittkort.

Bruk instruksjoner for atferd. Bruk Maguyva for aktuelle kodebasefakta.

Den lagdelte stacken

Fire ideer. Hver gjør én jobb.

// avtale

copilot-instructions.md

Hvordan Copilot skal oppføre seg på dette repoet.

// transport

MCP

Hvordan Copilot strekker seg etter eksterne verktøy og kontekst.

// kodebase

Maguyva

MCP-serveren som gir forankrede repo-fakta.

// hvem betaler

Arbeidsområder, ikke seter

Agenter utløser ingen setekostnader. Se priser

Tilpassede instruksjoner er en arbeidsavtale. Bruk dem.

# .github/copilot-instructions.md
- Foretrekk de eksisterende modulgrensene.
- Kjør repoets testkommando før du foreslår en merge.
- Ikke finn på filstier. Spør før du oppretter en ny pakke.

Vedvarende instruksjoner hører hjemme i .github/copilot-instructions.md. Det er riktig sted for:

  • Build-, test- og lint-kommandoer Copilot skal kjøre.
  • “Gjør alltid X / gjør aldri Y”-regler avgrenset til dette repoet.
  • Navnekonvensjoner og gjennomgangspreferanser.
  • Henvisninger til beslutningsloggen — ikke en dump av hvert symbol.

Den filen var aldri en søkbar indeks over repoet. Den forteller Copilot hvordan det skal jobbe. Den forteller ikke hva som er der.

Der tilpassede instruksjoner slutter å holde i stor skala

Fire feilmodus som Copilot ikke kan fikse fra en markdown-fil.

// instruksjoner er ikke en indeks

Telling Copilot how to behave does not tell it which class owns parseConfig, or which package actually implements the public API. Den første endringen i et ukjent tre er en gjetning om filstrukturen.

// dokumenter blir foreldet, kode blir ikke

En instruksjonsblokk som beskriver forrige kvartals auth-flyt, tar tydelig feil den dagen noen deler opp session-lageret. Copilot will prefer the file you committed over the code that shipped.

// avhengigheter er ikke i markdown

“Hva importerer dette?” is a graph question. Instruksjoner kan ikke liste opp hver kaller, og det ville du heller ikke ønske.

// kontekstvinduer har et budsjett

Å presse mer av repoet inn i instruksjoner bytter resonnement-tokens mot et foreldet øyeblikksbilde. Etter noen få KB betaler du for et dårligere kart.

Maguyva som det ekstra laget

Copilot tenker allerede i instruksjoner og verktøy.

copilot-instructions.md

avtale

hvordan Copilot oppfører seg

MCP

kanalen

hvordan det når frem

Maguyva

kodebasefakta

hva det ser

  • Et søkbart kart over repoet levert via MCP som en ekstern streamable-HTTP-server.
  • 11 kundevendte verktøy på tvers av semantisk, strukturelt (AST-), graf- og tekstsøk, pluss symboler, avhengige og filhenting.
  • Rangerte resultater med filstier og linjenumre på tvers av over 284 språk og tekstbaserte teknologier.
  • Én konfigurasjon Det samme workspacet svarer i Copilot, Claude Code, Cursor, Codex og enhver annen MCP-kompatibel klient.

Tilpassede instruksjoner forteller Copilot hvordan det skal oppføre seg.

Maguyva gir Copilot et søkbart kart over koden.

Tre arbeidsflyter

Spør kartet før du godtar diffen.

// workflow 01

Finn den ekte implementasjonen, ikke test-stubben

copilot> hvordan håndterer normalizePhoneNumber E.164?

semantic::query("normalize phone E.164")
  src/util/phone.ts:88   normalizePhoneNumber()   ← ekte impl.
  test/util/phone.spec.ts:14  jest.mock(...)      ← stub

→ Copilot åpner implementasjonen, ikke mocken.
[exit 0]

Navn lyver. Mocker skjuler ekte kode. Maguyva rangerer den ekte implementasjonen over test-mocken.

// workflow 02

Sjekk blast radius før du refaktorerer

copilot> hva kaller QueueDispatcher.publish?

graph::callers(QueueDispatcher.publish)
  3 i src/billing/*    1 i src/audit/*    1 i src/notifications/*

→ Diffen er forankret i ekte importører.
[exit 0]

Kallesteder på tvers av pakker vises inline. Diffen er forankret i ekte importører, ikke Copilots grep.

// workflow 03

Gi nytt navn til en delt klasse, finn hver avhengighet først

copilot> rename PaymentClient → BillingClient

graph::callers(PaymentClient)            12 referanser i 7 pakker
graph::importers(src/payments/client.ts)  9 importører
graph::extends(PaymentClient)             2 underklasser (RetryClient, MockClient)

→ Copilot foreslår en migrering med fillisten inline.
[exit 0]

Copilot spør Maguyva om avhengigheter før det begynner å redigere. Migreringslisten kommer tilbake forankret i den ekte grafen, ikke Copilots hukommelse.

Oppsett i GitHub Copilot CLI

Tre steg. Free-planen: 3 repoer, Opptil 50K indekserte kodelinjer, uten kredittkort.

  1. // step 01

    Indekser et repo på maguyva.ai

    Velg ett du allerede kjenner, så du kan vurdere svarene. Registrer deg gratis, koble til GitHub, vent på indekseringen.

  2. // step 02

    Legg til Maguyva som en ekstern MCP-server i Copilot

    copilot mcp add --transport http --header "Authorization: Bearer mgv_xxxx" maguyva https://maguyva.tools/mcp

    ~/.copilot/mcp-config.json

    {
      "mcpServers": {
        "maguyva": {
          "type": "http",
          "url": "https://maguyva.tools/mcp",
          "headers": {
            "Authorization": "Bearer mgv_xxxx"
          }
        }
      }
    }
  3. // step 03

    Still et spørsmål du allerede vet svaret på

    Ikke start med hele selskapet. Still et spørsmål du allerede vet svaret på, åpne så den siterte filen.