// kontekst
GEMINI.md
Jak Gemini powinien się zachowywać w tym repo.
Dla użytkowników Gemini CLI
GEMINI.md ustala kontekst roboczy. MCP pozwala Gemini sięgać po narzędzia. Maguyva to serwer MCP, który daje Gemini przeszukiwalną mapę twojego repo, więc pierwsza edycja nie jest zgadywaniem struktury plików.
Plan Free: 3 repozytoria, Do 50 tys. zindeksowanych linii repo, bez karty.
GEMINI.md to kontekst. MCP to kanał. Maguyva to mapa.Cztery idee. Każda robi jedno zadanie.
// kontekst
Jak Gemini powinien się zachowywać w tym repo.
// transport
Jak Gemini sięga po zewnętrzne narzędzia i kontekst.
// baza kodu
Serwer MCP, który zwraca ugruntowane fakty o repo.
// kto płaci
Agenci nie płacą za stanowiska. Zobacz cennik
Trwałe instrukcje należą do GEMINI.md. To dobre miejsce na:
Trzymaj to zwięźle. Ogranicz zakres. Commituj.
Ale GEMINI.md nigdy nie miał być przeszukiwalnym indeksem każdego symbolu, pliku i miejsca wywołania w twoim repo.
Cztery tryby awarii, po jednym na kartę.
Powiedzenie Gemini jak pracować nie mówi mu, co istnieje. Pierwsza edycja w nieznanym pakiecie to zgadywanie ścieżek plików i nazw funkcji. GEMINI.md nie może wymienić każdego symbolu i wcale byś tego nie chciał.
Blok GEMINI.md opisujący topologię twojej kolejki jest poprawny, dopóki ktoś nie wprowadzi nowego konsumenta. Kod jest teraz źródłem prawdy, a dokument jest pewny siebie i nieaktualny. Gemini czyta ten zły.
„Co odwołuje się do tej klasy?” nie da się odpowiedzieć na podstawie pliku markdown. Gemini albo grep-uje i się modli po całym monorepo, albo prosi cię o wklejenie miejsc wywołań do czatu.
Duże okno to nie to samo co przeszukiwalny indeks. Ładowanie GEMINI.md, aż Gemini „wie wystarczająco dużo”, i tak zamienia budżet na wnioskowanie na objętość statycznego kontekstu.
Użytkownicy Gemini już myślą w tym kształcie. Strona powinna to uwidocznić.
GEMINI.md
kontekst
jak zachowuje się Gemini
MCP
kanał
jak sięga
Maguyva
fakty o kodzie
co widzi
GEMINI.md mówi Gemini jak pracować.
Maguyva daje Gemini coś, od czego może zacząć.
Specyficzne dla Gemini. Ugruntowane na rzeczywistym grafie wywołań, a nie na grep Gemini.
// workflow 01
gemini> zmień nazwę PaymentClient → BillingClient graph::callers(PaymentClient) 12 odwołań w 7 pakietach graph::importers(src/payments/client.ts) 9 importerów graph::extends(PaymentClient) 2 podklasy (RetryClient, MockClient) → Gemini proponuje migrację z 21 edycjami wraz z listą plików od razu. [exit 0]
Gemini pyta Maguyva o zależności zanim zacznie edytować. Lista migracji wraca ugruntowana w rzeczywistym grafie, a nie w pamięci Gemini.
// workflow 02
gemini> jak normalizePhoneNumber obsługuje E.164? semantic::query("normalize phone E.164") src/util/phone.ts:88 normalizePhoneNumber() ← prawdziwa impl. test/util/phone.spec.ts:14 jest.mock(...) ← atrapa [exit 0]
Nazwy kłamią. Atrapy przesłaniają prawdziwy kod. Maguyva stawia prawdziwą implementację wyżej niż atrapę testową.
// workflow 03
gemini> co wywołuje QueueDispatcher.publish? graph::callers(QueueDispatcher.publish) 3 w src/billing/* 1 w src/audit/* 1 w src/notifications/* [exit 0]
Miejsca wywołań między pakietami pojawiają się od razu. Diff jest ugruntowany na rzeczywistych importerach, a nie na grep Gemini.
Trzy kroki. Plan Free: 3 repozytoria, Do 50 tys. zindeksowanych linii repo, bez karty.
// step 01
Wybierz repo, które dobrze znasz, żeby móc zweryfikować odpowiedzi.
// step 02
// ~/.gemini/settings.json
{
"mcpServers": {
"maguyva": {
"httpUrl": "https://maguyva.tools/mcp",
"headers": {
"Authorization": "Bearer <your-key>"
}
}
}
}// step 03
Nie zaczynaj od całej firmy. Zacznij od jednego repo i jednego sprawdzalnego pytania.