// konfigurationsfil
config.yaml
Udvidelser ligger under extensions i ~/.config/goose/config.yaml. goose configure → Add Extension skriver den samme slags post for dig.
Til Goose-brugere
Goose udfører sit arbejde gennem udvidelser, og hver udvidelse er en MCP-server. Maguyva er den, der indekserer din kodebase, så Goose spørger, hvor tingene ligger, i stedet for at liste mapper.
Free-niveau: 3 repos, Op til 50K indekserede repo-linjer, intet kreditkort.
.goosehints til, hvordan du arbejder. Maguyva til, hvad koden siger nu. Fire fakta, der gælder netop Goose.
// konfigurationsfil
Udvidelser ligger under extensions i ~/.config/goose/config.yaml. goose configure → Add Extension skriver den samme slags post for dig.
// transport
Maguyva er en streamable_http-udvidelse, så Goose forbinder selv til endpointet: ingen lokal proces, ingen Node.js. URL’en står i uri, ikke i url.
// nøgle
Goose sender headers-mappet med hver forespørgsel, så nøglen går i Authorization-headeren. Goose kan også udfylde den fra en miljøvariabel, der står under env_keys.
// værktøjsfilter
En udvidelse kan nøjes med at eksponere en del af sine værktøjer: list dem, du vil have, under available_tools, eller lad feltet stå tomt for dem alle.
# .goosehints
- Brug pnpm, ikke npm.
- Kør integrationstestene, før du kalder en ændring færdig.Goose indlæser som standard AGENTS.md og .goosehints: globale hints fra ~/.config/goose/.goosehints, projekthints fra repoet og indlejrede filer, når det arbejder i undermapper. Hints kræver udvidelsen Developer. De er det rette sted til:
Hints beskriver projektet. De svarer ikke på “hvad afhænger af det her?”
Tre huller, Goose fylder med shell-kommandoer, én fil ad gangen.
I et ukendt repo orienterer Goose sig med mappelister og fillæsninger. Hver af dem bruger kontekst, før opgaven overhovedet starter.
En tekstsøgning kan ikke skelne et rigtigt kald fra en kommentar, en mock eller en metode med samme navn.
En hints-fil skrevet sidste kvartal beskriver sidste kvartals opbygning. Goose følger den alligevel.
Én post under extensions giver Goose:
Hints fortæller Goose, hvordan det skal arbejde.
Maguyva giver Goose et kort over koden.
Kortet først, lad så Goose køre.
// workflow 01
goose> hvorfor ender nogle eksporter med nul rækker? semantic_search("export job empty result") src/export/runner.ts:118 flushBatch() src/export/filters.ts:40 applyTenantFilter() → Goose læser to filer, ikke hele export-pakken. [exit 0]
Rangerede resultater indsnævrer søgningen, før Goose åbner en shell.
// workflow 02
goose> del klassen Notifier op i e-mail og sms dependency_search("Notifier", dependents) 11 referencer i 5 pakker → Planen dækker alle elleve før første rettelse. [exit 0]
Goose får den fulde liste over afhængige i ét kald i stedet for en kæde af greps.
Tre trin. Free-niveau: 3 repos, Op til 50K indekserede repo-linjer, intet kreditkort.
// step 01
Vælg et, du allerede kender, så du kan vurdere svarene.
// step 02
~/.config/goose/config.yaml
extensions:
maguyva:
name: maguyva
type: streamable_http
uri: https://maguyva.tools/mcp
enabled: true
headers:
Authorization: Bearer mgv_xxxx
timeout: 300
// step 03
Udskift mgv_xxxx med din API-nøgle, kør goose session, og stil ét spørgsmål, du allerede kender svaret på. YAML er følsom over for indrykning: brug mellemrum, ikke tabulatorer.