Přeskočit na obsah

Pro uživatele Goose

Goose běží na rozšířeních. Přidejte jedno, které zná váš repozitář.

Goose dělá svou práci přes rozšíření a každé rozšíření je MCP server. Maguyva je to, které indexuje vaši codebase, takže se Goose ptá, kde co je, místo aby vypisoval adresáře.

Free tarif: 3 repozitáře, Až 50K zaindexovaných řádků repa, bez kreditní karty.

.goosehints na to, jak pracovat. Maguyva na to, co kód říká teď.

Co potřebujete vědět o Goose

Čtyři fakta specifická pro Goose.

// konfigurační soubor

config.yaml

Rozšíření patří pod extensions v ~/.config/goose/config.yaml. goose configure → Add Extension za vás zapíše stejný druh záznamu.

// transport

Vzdálené rozšíření

Maguyva je rozšíření streamable_http, takže se Goose k endpointu připojí sám: žádný lokální proces, žádný Node.js. URL patří do uri, ne do url.

// klíč

headers

Goose posílá mapu headers s každým požadavkem, takže klíč jde do hlavičky Authorization. Goose ho umí doplnit i z proměnné prostředí uvedené v env_keys.

// filtr nástrojů

available_tools

Rozšíření může zpřístupnit jen část svých nástrojů: vypište ty, které chcete, v available_tools, nebo nechte prázdné pro všechny.

Nápovědy Goose jsou dohoda o spolupráci. Používejte je.

# .goosehints
- Používej pnpm, ne npm.
- Než změnu prohlásíš za hotovou, spusť integrační testy.

Goose ve výchozím stavu načítá AGENTS.md a .goosehints: globální nápovědy z ~/.config/goose/.goosehints, nápovědy projektu z repozitáře a při práci v podsložkách i vnořené soubory. Nápovědy vyžadují rozšíření Developer. Jsou to správné místo pro:

  • Volbu nástrojů a příkazy.
  • Konvence, kterými se má Goose řídit.
  • To, kde leží dokumentace.

Nápovědy popisují projekt. Neodpoví na “co na tomhle závisí?”

Kde nápovědy a shell přestávají stačit

Tři mezery, které Goose zaplňuje příkazy shellu, soubor po souboru.

// výpis není mapa

V neznámém repozitáři se Goose orientuje výpisy adresářů a čtením souborů. Každý z nich spotřebuje kontext dřív, než úkol vůbec začne.

// grep najde řetězce, ne volající

Textové hledání nerozliší skutečné volání od komentáře, mocku nebo metody se stejným jménem.

// nápovědy se rozjíždějí

Soubor s nápovědami napsaný v minulém čtvrtletí popisuje rozložení z minulého čtvrtletí. Goose se jím stejně řídí.

Maguyva jako rozšíření Goose

Jeden záznam v extensions dá Goose:

  • 11 nástrojů nad vaším indexovaným repozitářem sémantické, strukturální (AST), grafové a textové vyhledávání, plus vyhledávání symbolů, závislé a načítání souborů.
  • Odpovědi s cestami k souborům a čísly řádků napříč 285+ jazyky.
  • Nástroje, které jen čtou Nástroje Maguyva se dotazují indexu. Žádný z nich neupravuje vaše soubory.

Nápovědy říkají Goose, jak pracovat.

Maguyva dává Goose mapu kódu.

Dva pracovní postupy

Nejdřív mapa, pak ať Goose pracuje.

// workflow 01

Vystopujte chybu až ke zdroji

goose> proč některé exporty skončí s nulou řádků?

semantic_search("export job empty result")
  src/export/runner.ts:118   flushBatch()
  src/export/filters.ts:40   applyTenantFilter()

→ Goose přečte dva soubory, ne celý balíček export.
[exit 0]

Seřazené výsledky zúží hledání dřív, než Goose otevře shell.

// workflow 02

Zkontrolujte závislé před refaktoringem

goose> rozděl třídu Notifier na e-mail a SMS

dependency_search("Notifier", dependents)
  11 odkazů v 5 balíčcích

→ Plán pokryje všech jedenáct ještě před první úpravou.
[exit 0]

Goose dostane úplný seznam závislých jedním voláním místo řetězce grepů.

Nastavení v Goose

Tři kroky. Free tarif: 3 repozitáře, Až 50K zaindexovaných řádků repa, bez kreditní karty.

  1. // step 01

    Indexujte repozitář na maguyva.ai

    Vyberte si takový, který už znáte, abyste mohli posoudit odpovědi.

  2. // step 02

    Přidejte Maguyva do extensions v config.yaml

    ~/.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
    
  3. // step 03

    Nahraďte zástupný text a spusťte relaci

    Nahraďte mgv_xxxx svým API klíčem, spusťte goose session a položte otázku, na kterou už znáte odpověď. YAML je citlivý na odsazení: mezery, ne tabulátory.