Secretul prin care Aider înțelege arhitectura globală a unui proiect fără a citi toate fișierele este Harta Repositoriului (Repo Map): un graf compact de simboluri (clase, metode, funcții, semnături de tipuri) extras cu instrumentul `tree-sitter` și ordonat prin algoritmul PageRank.
Parametrul --map-tokens controlează cu precizie câți tokeni din fereastra de context a fiecărui prompt sunt rezervați pentru această hartă globală. Valoarea implicită este de 1.024 tokeni.
Pe un proiect mic, 1.024 de tokeni sunt suficienți pentru a acoperi întregul cod. Pe un monorepo gigantic cu zeci de mii de fișiere, mărirea valorii la `2048` sau `4096` oferă agentului o vizibilitate mult mai clară asupra relațiilor dintre module. Dimpotrivă, dacă lucrezi la o sarcină izolată într-un singur fișier, setarea `–map-tokens 0` dezactivează complet harta, reducând costurile la minimum.
Sintaxă, opțiuni și concepte cheie
| Opțiune / Concept | Descriere practică |
|---|---|
--map-tokens |
Numărul maxim de tokeni alocați pentru harta de simboluri a proiectului (uzual între 512 și 4.096). |
--map-tokens 0 |
Dezactivează complet generarea hărții de repo pentru economie maximă de viteză și tokeni. |
PageRank Re-ranking |
Algoritmul prin care fișierele cele mai importate și cele mai citite primesc prioritate în reprezentarea compactă. |
Tree-sitter Parsing |
Motorul nativ de parsare sintactică ce extrage clasele și funcțiile fără a executa codul. |
Exemple practice de terminal și cod
Exemplul 1: Hartă mai mare pentru un proiect TypeScript cu sute de fișiere
aider --map-tokens 4096 --model anthropic/claude-sonnet-5-5
> /map
Greșeli frecvente și bune practici
- Setarea unei valori astronomice (ex. `–map-tokens 20000`) pe modele cu context mic, ceea ce lasă prea puțin spațiu pentru răspunsul efectiv de cod.
- Dezactivarea hărții pe proiecte mari unde nu știi pe de rost căile tuturor fișierelor, forțând agentul să ghicească unde sunt definite funcțiile.