Hoppa till innehåll

För användare av GitHub Copilot CLI

Copilot startar varje session blint.

Anpassade instruktioner talar om för Copilot hur det ska bete sig. De talar inte om vad som finns i ditt repo. Maguyva indexerar kodbasen och levererar den tillbaka via MCP, så att GitHub Copilot CLI redigerar som om det redan hade läst koden.

Free-nivå: 3 repositorier, Upp till 50K indexerade repo-rader, inget kreditkort krävs.

Använd instruktioner för beteende. Använd Maguyva för aktuella kodbasfakta.

Stacken, lager för lager

Fyra idéer. Var och en gör sitt jobb.

// överenskommelse

copilot-instructions.md

Hur Copilot ska uppträda i det här repot.

// transport

MCP

Hur Copilot når externa verktyg och kontext.

// kodbas

Maguyva

MCP-servern som returnerar förankrade fakta om repot.

// vem betalar

Arbetsytor, inte användarlicenser

Agenter medför inga separata licensavgifter. Se priser

Anpassade instruktioner är en arbetsöverenskommelse. Använd dem.

# .github/copilot-instructions.md
- Föredra de befintliga modulgränserna.
- Kör repots testkommando innan du föreslår en merge.
- Hitta inte på filsökvägar. Fråga innan du skapar ett nytt paket.

Beständiga instruktioner hör hemma i .github/copilot-instructions.md. Det är rätt plats för:

  • Build-, test- och lint-kommandon som Copilot ska köra.
  • “Gör alltid X / gör aldrig Y”-regler avgränsade till detta repo.
  • Namngivningskonventioner och granskningspreferenser.
  • Hänvisningar till beslutsloggen — inte en dump av varje symbol.

Den filen var aldrig ett sökbart index över repot. Den talar om för Copilot hur det ska arbeta. Den talar inte om vad som finns där.

Där anpassade instruktioner slutar hålla i stor skala

Fyra felmodus som Copilot inte kan åtgärda från en markdown-fil.

// instruktioner är inget index

Telling Copilot how to behave does not tell it which class owns parseConfig, or which package actually implements the public API. Den första ändringen i ett okänt träd är en gissning om filstrukturen.

// dokument blir inaktuella, kod gör inte

Ett instruktionsblock som beskriver förra kvartalets auth-flöde är helt fel den dag någon delar upp session-lagret. Copilot will prefer the file you committed over the code that shipped.

// beroenden finns inte i markdown

“Vad importerar detta?” is a graph question. Instruktioner kan inte lista varje anropare, och det skulle du inte vilja ändå.

// kontextfönster har en budget

Att stoppa in mer av repot i instruktioner byter resonemangstokens mot en inaktuell ögonblicksbild. Efter några KB betalar du för en sämre karta.

Maguyva som det extra lagret

Copilot tänker redan i instruktioner och verktyg.

copilot-instructions.md

överenskommelse

hur Copilot beter sig

MCP

kanalen

hur det når fram

Maguyva

kodbasfakta

vad det ser

  • En sökbar karta över repot levererad via MCP som en fjärransluten streamable-HTTP-server.
  • 11 kundvända verktyg över semantisk, strukturell (AST-), graf- och textsökning, plus symboler, beroenden och filhämtning.
  • Rangordnade resultat med filsökvägar och radnummer över mer än 284 språk och textbaserade tekniker.
  • En konfiguration Samma workspace svarar i Copilot, Claude Code, Cursor, Codex och alla andra MCP-kompatibla klienter.

Anpassade instruktioner talar om för Copilot hur det ska bete sig.

Maguyva ger Copilot en sökbar karta över koden.

Tre arbetsflöden

Fråga kartan innan du accepterar diffen.

// workflow 01

Hitta den verkliga implementationen, inte teststubben

copilot> hur hanterar normalizePhoneNumber E.164?

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

→ Copilot öppnar implementationen, inte mocken.
[exit 0]

Namn ljuger. Mockar döljer verklig kod. Maguyva rangordnar den verkliga implementationen över testmocken.

// workflow 02

Kontrollera blastradien innan du refaktorerar

copilot> vad anropar QueueDispatcher.publish?

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

→ Diffen grundas på verkliga importörer.
[exit 0]

Anropspunkter mellan paket visas inline. Diffen grundas på verkliga importörer, inte Copilots grep.

// workflow 03

Byt namn på en delad klass, hitta varje beroende först

copilot> rename PaymentClient → BillingClient

graph::callers(PaymentClient)            12 referenser i 7 paket
graph::importers(src/payments/client.ts)  9 importörer
graph::extends(PaymentClient)             2 subklasser (RetryClient, MockClient)

→ Copilot föreslår en migrering med fillistan inline.
[exit 0]

Copilot frågar Maguyva om beroenden innan det börjar redigera. Migreringslistan kommer tillbaka grundad på den verkliga grafen, inte Copilots minne.

Installation i GitHub Copilot CLI

Tre steg. Free-nivå: 3 repositorier, Upp till 50K indexerade repo-rader, inget kreditkort krävs.

  1. // step 01

    Indexera ett repo på maguyva.ai

    Välj ett du redan känner till, så du kan bedöma svaren. Registrera dig gratis, anslut GitHub, vänta på indexeringen.

  2. // step 02

    Lägg till Maguyva som en fjärransluten 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

    Ställ en fråga vars svar du redan vet

    Börja inte med hela företaget. Ställ en fråga vars svar du redan vet, öppna sedan den citerade filen.