Hoppa till innehåll

För Cursor-användare

Cursor redigerar filen.
Maguyva ser repot.

Cursor är redigeraren. I ett monorepo behöver agenten ändå en karta över vilken fil som spelar roll. Maguyva indexerar din kodbas och levererar den tillbaka via MCP (semantiskt, AST-baserat, graf och text), så att ”var sker autentisering” ger det faktiska autentiseringsflödet, inte sju teststubbar.

Free-nivå: 3 repositorier, Upp till 50K indexerade repo-rader, inget kort.

Cursor redigerar det du pekar på. Maguyva talar om för agenten vilken fil den ska peka på.

Vad varje lager gör

Fyra delar. Var och en har sin uppgift.

// redigerare

Cursor

Där du faktiskt kodar.

// manuell kontext

@ -nämningar + pinningar

Manuell kontext vinner, tills repot blir stort.

// kodbas

Maguyva

Automatiska kodbasfakta via MCP.

// vem betalar

Arbetsytor, inte platser

Agenter betalar inte för platser. Se priser

Cursor är redigeraren. Använd den.

IDE:n är inte problemet. Tabbkompletteringen i Cursor, redigera-med-AI, multifilsredigeringar och .cursor/rules är utmärkta, och du använder redan dem för:

  • Infogade förslag och redigera-med-AI i den öppna filen.
  • Multifilsredigeringar när ändringen är lokal.
  • .cursor/rules för repokonventioner och stilregler.
  • @-nämningar för att dra in en specifik fil i kontexten.

Fortsätt med det. Inget av det försvinner.

Men i ett verkligt monorepo (TypeScript med workspace-beroenden, Python-tjänster, blandade paket) går agentens kontext sönder så fort den relevanta filen inte redan finns på din radar.

Manuella lösningar du redan provat — och var de brister

Fyra manuella lösningar parade med sina svagheter. Vänster = vad du gör idag. Höger = var det brister.

// the fix

// pinna filerna

Du @-nämner de tre filer du tror spelar roll. Cursor redigerar snyggt inom dem.

// where it breaks

// pinning är en gissning

Pinning fungerar när du redan vet vilka filer som är inblandade. Hela poängen med kontextverktyg är att lyfta fram de filer du inte visste att du skulle pinna.

// the fix

// klistra in kodsnuttar

Du klistrar in 200 rader från ett annat paket i chatten för att ge agenten tillräcklig kontext.

// where it breaks

// inklistrad kod blir inaktuell

Snutten du klistrade in klockan 9 speglar inte den rebase din kollega landade klockan 11. Agenten redigerar mot en spökversion av paketet.

// the fix

// skriv en kontextdokumentation

Du skriver en .cursor/rules-fil eller en arkitektur-markdown. Den stämmer idag.

// where it breaks

// dokumentation föråldras snabbare än kod

Allt du skriver för hand glider iväg. Koden är sanningen. En dokumentation som förklarar kölagret stämmer i en vecka, sedan är den fel för alltid.

// the fix

// behåll regelfilerna

Du lägger till .cursor/rules för namngivning, lint och byggkommandon. Utmärkt för beteende.

// where it breaks

// regler ≠ index

.cursor/rules är rätt plats för “kör alltid pnpm tsc -b före commits.” Det är inget sökbart index över varje symbol, fil och anropsplats i ditt monorepo.

Maguyva är lagret därunder

Inte en ersättning för Cursor. Kontextlagret för repot som ansluter via MCP-stödet i Cursor.

  • Semantiskt + AST + graf + text sök efter betydelse, struktur, beroende eller ordagrant. Varje träff ger en filsökväg och ett radnummer.
  • Paketöverskridande som standard anropsplatser och importerare i varje paket i monorepot, inte bara det som just nu är öppet.
  • Grenmedvetet Maguyva ser den version av koden som Cursor redigerar.
  • Kompletterande, inte konkurrerande .cursor/rules fortsätter göra sitt jobb. @-nämningar fortsätter göra sitt. Maguyva fyller det utrymme de inte fyller.

Cursor redigerar filen du pekar på.

Maguyva talar om för agenten vilken fil den ska peka på.

Tre monorepo-arbetsflöden

Paketöverskridande, språköverskridande. Förankrat i den faktiska anropsgrafen, inte grep i Cursor.

// workflow 01

Hitta autentiseringsflödet över paket, utan att pinna något

cursor> var sker autentiseringen i det här monorepot?

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

 4 ingångspunkter i 4 paket, rankade efter anropstäthet.
[exit 0]

Du pinnade ingen fil. Du klistrade inte in någon kodsnutt. Agenten har de fyra filer som spelar roll, i rätt rangordning, och kan göra en förankrad ändring.

// workflow 02

Hitta den verkliga implementationen, inte teststubben

cursor> hur hanterar normalizePhoneNumber E.164?

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

Namn ljuger. Mockar skuggar verklig kod. Maguyva rankar den verkliga implementationen över testmocken, i varje paket.

// workflow 03

Kontrollera påverkansradien innan du refaktorerar

cursor> vad anropar QueueDispatcher.publish i monorepot?

graph::callers(QueueDispatcher.publish)
  3 i packages/billing/*
  1 i packages/audit/*
  1 i packages/notifications/*
  1 i services/python-worker/*  ← språköverskridande via gRPC-stub
[exit 0]

Paketöverskridande, och språköverskridande om du har ett polyglot repo — anropsplatser dyker upp direkt i flödet. Diffen är förankrad i verkliga importerare, inte grep i Cursor.

Installation med Cursor

Tre steg. Free-nivå: 3 repositorier, Upp till 50K indexerade repo-rader, inget kort.

  1. // step 01

    Indexera ett repo på maguyva.ai

    Välj det monorepo där du känt av mest kontextsmärta.

  2. // step 02

    Lägg till Maguyva som en MCP-server i inställningarna för Cursor

    // ~/.cursor/mcp.json
    {
      "mcpServers": {
        "maguyva": {
          "url": "https://maguyva.tools/mcp",
          "headers": {
            "Authorization": "Bearer <your-key>"
          }
        }
      }
    }
  3. // step 03

    Ställ en fråga vars svar du redan känner till

    Börja inte med hela ditt företag. Börja med ett repo och en verifierbar fråga, som ”vad anropar formatInvoice över paket?”