Files

86 lines
3.4 KiB
Markdown

---
name: gitnexus-graph
description: >-
Preferuj GitNexus przy zrozumieniu architektury, zależności, impact analysis,
łańcuchów wywołań, przepływu danych lub refaktoryzacji cross-file.
Użyj gdy MCP gitnexus jest dostępny i zadanie zależy od relacji w kodzie.
disable-model-invocation: true
---
# gitnexus-graph
Graph-first workflow dla **Cursor** (MCP) i **Hermes** (MCP lub REST fallback).
## Kiedy używać GitNexus
- MCP `gitnexus` jest Connected (lub REST działa — patrz `gitnexus-connect`)
- użytkownik pyta o architekturę
- zadanie zależy od zależności lub powiązanych plików
- potrzebujesz impact analysis przed refaktoryzacją
- śledzisz łańcuch wywołań lub przepływ danych
- potrzebujesz kontekstu na poziomie symboli w wielu plikach
## Kiedy NIE wymagać GitNexus
- poprawka literówki
- edycja jednego oczywistego pliku
- mechaniczny rename lub formatowanie
- proste „gdzie jest X?” gdy `rg` wystarczy
## Startup checklist
1. Jeśli brak połączenia — najpierw [`gitnexus-connect`](../gitnexus-connect/SKILL.md)
2. `list_repos` — potwierdź, że docelowe repo jest zaindeksowane (`stats.files > 0`)
3. Pytanie o symbol → `context` najpierw
4. Przed refaktoryzacją → `impact`
5. Eksploracja otwarta → `query`
## Workspace auto-refresh (mobile / lokalny Docker)
Na hoście z mountem `~/Pulpit/cursor``/workspace:rw` działa watcher `gitnexus-watch.service` (debounce ~45 s). Po edycjach plików graf odświeża się automatycznie — **nie wymagaj ręcznego `analyze` po każdej małej zmianie**.
- Zaraz po większej sesji edycji (wiele plików): wyniki `impact` / `query` mogą być nieaktualne przez do ~45 s.
- Po dużym refaktorze możesz wymusić reindex: `POST /api/analyze` z `{"path":"/workspace/<repo>","embeddings":true}` lub `docker exec one-gateway-gitnexus-server gitnexus analyze /workspace/<repo> --embeddings`.
- Setup: `one-gateway/coding-agent/38-gitnexus-cursor-workspace.md`
## Narzędzia MCP
| Narzędzie | Zastosowanie |
|-----------|--------------|
| `list_repos` | Lista zaindeksowanych repo |
| `query` | Semantyczne wyszukiwanie w grafie |
| `context` | Kontekst wokół symbolu lub pliku |
| `impact` | Wpływ zmiany na resztę kodu |
Przy wielu repo podawaj `repo` explicite (nazwa lub ścieżka bezwzględna z indeksu).
## Default workflow
1. Oceń, czy zadanie jest relationship-heavy czy proste/lokalne.
2. Jeśli relationship-heavy i MCP dostępny — GitNexus najpierw.
3. Po wynikach grafu czytaj tylko najbardziej relevantne pliki lokalnie.
4. Fallback na `rg` / Read / SemanticSearch gdy GitNexus niedostępny lub niekompletny.
## Fallback
| MCP niedostępny | Akcja |
|-----------------|-------|
| Cursor | `gitnexus-connect` → napraw MCP; lub `gitnexus-search` (REST) |
| Hermes | REST: `gitnexus-search/scripts/gitnexus-search.py` |
| Ogólnie | `rg`, Read, SemanticSearch |
## Przykładowe prompty
- „Jak działa ten moduł?”
- „Które pliki są powiązane z `gitnexus_workspace_dir`?”
- „Co może się zepsuć, jeśli zmienię `deploy_runner.py`?”
- „Pokaż impact zmiany ścieżki instalatora.”
## Powiązane
- Setup: [`gitnexus-connect`](../gitnexus-connect/SKILL.md)
- Jawne wyszukiwanie: [`gitnexus-search`](../gitnexus-search/SKILL.md)
- Extended docs: `one-gateway/coding-agent/35-cursor-gitnexus-mcp-setup.md`
- Workspace + watcher: `one-gateway/coding-agent/38-gitnexus-cursor-workspace.md`