// editor
Windsurf
Der du og Cascade faktisk jobber.
For Windsurf-brukere
Windsurf er editoren og Cascade er agenten. I et monorepo trenger agenten likevel et kart over hvilken fil som er relevant. Maguyva indekserer kodebasen din og gir den tilbake over MCP (semantisk, AST, graf og tekst), slik at «hvor skjer autentisering» gir den faktiske auth-flyten, ikke sju test-stubber.
Free tier: 3 repoer, Opptil 50K indekserte kodelinjer, uten kort.
Windsurf redigerer det du peker på. Maguyva forteller Cascade hvilken fil den skal peke på.Fire deler. Hver har sin jobb.
// editor
Der du og Cascade faktisk jobber.
// manuell kontekst
Manuell kontekst vinner, helt til repoet blir stort.
// kodebase
Automatiske kodebasefakta over MCP.
// hvem betaler
Agenter betaler ikke seter. Se priser
IDE-en er ikke problemet. Cascade, tab-fullføring, redigering av flere filer samtidig, og .windsurfrules er utmerkede, og du bruker dem allerede til:
.windsurfrules for repo-konvensjoner og stilregler.@-mentions for å hente en bestemt fil inn i konteksten.Fortsett med det. Ingenting av det forsvinner.
Men i et ekte monorepo (TypeScript med workspace-avhengigheter, Python-tjenester, blandede pakker) bryter agentkonteksten sammen i det øyeblikket den relevante filen ikke allerede er på Cascades radar.
Fire manuelle løsninger paret med sin feilmodus. Venstre = det du gjør i dag. Høyre = hvor det svikter.
// the fix
Du @-nevner de tre filene du tror er relevante. Cascade redigerer rent i dem.
// where it breaks
Det fungerer når du allerede vet hvilke filer som er involvert. Hele poenget med kontekstverktøy er å avdekke filene du ikke visste du burde nevne.
// the fix
Du limer inn 200 linjer fra en annen pakke i Cascade for å gi den nok kontekst.
// where it breaks
Utdraget du limte inn klokken 9 gjenspeiler ikke rebasen kollegaen din landet klokken 11. Cascade redigerer mot en fantomversjon av pakken.
// the fix
Du skriver en .windsurfrules-fil eller en arkitektur-markdown. Den stemmer i dag.
// where it breaks
Alt du skriver for hånd drifter. Koden er sannheten. Et dokument som forklarer kølaget stemmer i en uke, og er feil for alltid deretter.
// the fix
Du legger til .windsurfrules for navngiving, lint og byggekommandoer. Flott for atferd.
// where it breaks
.windsurfrules er riktig sted for “kjør alltid pnpm tsc -b før commits.” Det er ikke en søkbar indeks over hvert symbol, hver fil og hvert kallsted i monorepoet ditt.
Ikke en erstatning for Windsurf. Repo-kontekstlaget som henger på Cascades MCP-støtte.
.windsurfrules fortsetter å gjøre jobben sin. @-mentions fortsetter å gjøre sin. Maguyva fyller hullet de ikke fyller.Cascade redigerer filen du peker på.
Maguyva forteller agenten hvilken fil den skal peke på.
På tvers av pakker og språk. Forankret i den faktiske kallgrafen, ikke Cascades grep.
// workflow 01
cascade> hvor skjer autentisering i dette monorepoet? 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 inngangspunkter fordelt på 4 pakker, rangert etter kallsted-tetthet. [exit 0]
Du nevnte ingen fil. Du limte ikke inn noe utdrag. Cascade har de fire filene som betyr noe, i riktig rekkefølge, og kan gjøre en forankret endring.
// workflow 02
cascade> hvordan håndterer normalizePhoneNumber E.164? semantic::query("normalize phone E.164") packages/shared/util/phone.ts:88 normalizePhoneNumber() ← ekte impl packages/api/test/phone.spec.ts:14 jest.mock(...) ← stub [exit 0]
Navn lyver. Mocks skygger for ekte kode. Maguyva rangerer den ekte implementasjonen over test-mocken, i alle pakker.
// workflow 03
cascade> hva kaller QueueDispatcher.publish i hele monorepoet? graph::callers(QueueDispatcher.publish) 3 i packages/billing/* 1 i packages/audit/* 1 i packages/notifications/* 1 i services/python-worker/* ← på tvers av språk via gRPC-stub [exit 0]
På tvers av pakker, og på tvers av språk når du har et polyglot repo, dukker kallstedene opp direkte. Diffen er forankret i faktiske importører, ikke Cascades grep.
Tre steg. Free tier: 3 repoer, Opptil 50K indekserte kodelinjer, uten kort.
// step 01
Velg monorepoet der du har kjent mest på kontekstsmerte.
// step 02
// ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"maguyva": {
"serverUrl": "https://maguyva.tools/mcp",
"headers": {
"Authorization": "Bearer <your-key>"
}
}
}
}// step 03
Ikke start med hele selskapet ditt. Start med ett repo og ett verifiserbart spørsmål, som «hva kaller formatInvoice på tvers av pakker?»