Podstawowe koncepcje

Zarządzanie context window

Dowiedz się, jak działa context window Boba o pojemności 270 000 tokenów, jak każda kategoria wpływa na ich zużycie oraz jakie praktyki pomagają utrzymać task w skupieniu i zwiększyć efektywność kosztową.

Zrozumienie context window

Każdy task w panelu czatu ma context window, który jest budżetem tokenów dla tego wątku konwersacji. Limit wynosi 270 000 tokenów. Wszystko, co Bob ładuje, liczy się do tego limitu.

Co wypełnia context window

Najedź kursorem na token usage indicator w prawym górnym rogu panelu czatu, aby zobaczyć zestawienie tego, co zużywa twój context window:

Context window breakdown panel showing token usage by category
KategoriaCo zawiera
System promptPodstawowe instrukcje Boba na sesję
Tool definitionsSchematy wbudowanych narzędzi i definicje połączonych narzędzi MCP
MCP ToolsInstrukcje i opisy narzędzi udostępnianych przez połączone serwery MCP
RulesNiestandardowe instrukcje z plików reguł projektu i trybu (np. AGENTS.md lub .bob/rules-*)
SkillsInstrukcje ze skills załadowanych przez Boba na potrzeby rozmowy
MessagesTwoje prompty, odpowiedzi Boba i aktywność narzędzi w rozmowie. To jest transcript liczony w tokenach.

Wzmianki @, dane wyjściowe poleceń i wyniki narzędzi — wszystko wlicza się do Messages. Zawartość plików nie pojawia się jako osobna pozycja.

Pod Estimated breakdown:

  • Reserved for model response: tokeny zarezerwowane dla następnej odpowiedzi Boba (zazwyczaj 20,0k).
  • Available space: pozostałe wolne tokeny.

Bazowy narzut

Stałe kategorie zużywają tokeny, zanim zaczniesz pracować z Bobem. W przykładowym projekcie Galaxium Travels nawet prompt tak krótki jak "Quickly say hi back." daje łącznie ok. 8,5k tokenów. Większość to Tool definitions (5,1k), System prompt (1,5k), Rules (830) i Skills (454). Tylko 590 tokenów jest w Messages.

Bob ponownie wysyła cały stack narzutu przy każdym prompcie. Dodanie większej liczby serwerów MCP lub załadowanych skills zwiększa MCP Tools, Tool definitions i Skills, zanim wpiszesz choć jedno słowo.

Szczegółowe liczby i instrukcję resetu znajdziesz w Create a new context window.

Monitorowanie zużycia tokenów

Token usage indicator pokazuje procentowe zapełnienie oraz ułamek użytych/łącznych tokenów w stosunku do limitu 270 000 tokenów. Kliknij, aby otworzyć context window breakdown. Sprawdź, która kategoria rośnie.

Poniższa tabela pokazuje, co powoduje wzrost każdej kategorii:

KategoriaCo powoduje wzrost
System promptŁadowany przy starcie task. Nie zmienia się podczas normalnej pracy.
Tool definitionsSchematy wbudowanych narzędzi. Ustawiane przy starcie task. Nie zmieniają się podczas normalnej pracy.
MCP ToolsPołączone serwery MCP i włączone narzędzia. Rośnie, gdy dodajesz serwery lub narzędzia, nie przy wysyłaniu promptów.
RulesPliki reguł projektu i trybu (np. AGENTS.md). Ustawiane przy otwarciu task.
SkillsSkills ładowane przez Boba dla task. Może wzrosnąć, gdy Bob aktywuje skill w trakcie wątku.
MessagesTwoje prompty, odpowiedzi Boba, odczyty plików, dane wyjściowe narzędzi i wzmianki @. Rośnie z każdą turą i podczas eksploracji repozytorium.

W krótkim wymianie stałe kategorie często zajmują większość całości. Gdy poprosisz Boba o odczytanie plików lub uruchomienie narzędzi, Messages zazwyczaj staje się największą kategorią. Obserwuj tę zmianę.

Available space kurczy się, gdy rośnie jakakolwiek kategoria. Reserved for model response jest odłożony dla następnej odpowiedzi Boba i nie jest częścią łącznej sumy użytych tokenów wyświetlanej powyżej.

Zmierzone przykłady na prawdziwym repozytorium znajdziesz w Create a new context window.

Limity tokenów

Twarda granica to 270 000 tokenów na task. Bob zaczyna kompaktować, zanim osiągniesz limit. Kompakcja zazwyczaj zaczyna się przy ok. 190 000 tokenach łącznego użycia.

Automatyczna context compaction

Przy progu kompakcji Bob:

  1. Zachowuje najnowszy i najbardziej trafny context.
  2. Podsumowuje lub usuwa starsze fragmenty rozmowy.
  3. Utrzymuje krytyczne instrukcje systemowe, tool definitions, rules i skills.
  4. Kontynuuje ze skompaktowanym context.

Kompakcja jest stratna. Szczegóły z początku Messages mogą nie przetrwać. Rozpocznij nowy task przyciskiem + (New task), gdy zmieniasz temat lub gdy Messages jest wystarczająco duże, by obniżać jakość.

Wpływ na Bobcoins

Bobcoins śledzi zużycie tokenów. Liczą się zarówno tokeny wejściowe, jak i wyjściowe.

  • Każda wiadomość ponownie wysyła cały aktywny context, łącznie ze stałym narzutem.
  • Bob ponownie przetwarza to, co jest już załadowane, przy każdym wysłaniu.
  • Długie wątki z rozbudowanymi Messages kosztują więcej przy każdym kolejnym prompcie.

Dobre praktyki

Note:

Context window to nie magazyn. To aktywny budżet tokenów dostępny dla Boba na każdym kroku. Kontroluj, co do niego trafia. Resetuj lub kompaktuj, gdy wątek zapełni się przestarzałymi treściami. Sprawdzaj wynik testami, a nie tylko odpowiedzią Boba.

Ograniczaj zakres task i rozmowy

Używaj jednego task na cel roboczy i zacznij od konkretnego promptu. Podaj cel, oczekiwany wynik i ograniczenia, zanim poprosisz Boba o eksplorację repozytorium. Wymieniaj pliki i funkcje z nazwy. Unikaj niejasnych próśb w stylu „przeczytaj całe repo" lub „sprawdź backend". Kliknij + (New task), gdy temat się zmienia, bo niezwiązana zawartość w Messages podnosi koszty i może mylić Boba.

Utrzymuj stały context w ryzach

Stałe kategorie zużywają tokeny, zanim cokolwiek wpiszesz. Aby ten narzut był niski:

  • Trzymaj custom rules i AGENTS.md krótko. Wpisuj tam tylko komendy konfiguracyjne, testowe i styl (np. pnpm test, mvn verify).
  • Podłączaj tylko te serwery MCP, narzędzia i skills, których wymaga bieżąca praca. Odłączaj to, czego nie używasz, i preferuj konfigurację MCP na poziomie projektu zamiast globalnej.
  • Zachowaj Messages dla sytuacyjnych dowodów specyficznych dla tego task: bug, logi i odpowiednie pliki. Nie powtarzaj stałych rules w każdym prompcie.

Dodawaj context wtedy, gdy go potrzebujesz

Zamiast wklejać duże bloki treści do wątku, pozwól Bobowi wyszukiwać i czytać konkretne pliki. Korzystaj z context mentions, by odwołać się do konkretnego pliku lub zakresu linii, i unikaj rozległych wzmianek katalogów:

✓ @/src/utils/validation.ts:45-67 Fix the email validation logic
✗ @/src @/tests @/docs Review everything and suggest improvements

Możesz też zaznaczyć tekst w edytorze i użyć Cmd + L (Mac) lub Ctrl + L (Windows/Linux), aby dodać go bezpośrednio do czatu.

Pracuj etapami: znajdź prawdopodobne pliki, przejrzyj odpowiednie, zaplanuj, zmień i sprawdź. Do szerokich odczytów repozytorium używaj subagents, aby task otrzymywał skompaktowane wyniki zamiast lądować każde wywołanie read_file w Messages. Gdy źródła są sprzeczne, ufaj działającemu kodowi i testom bardziej niż starym komentarzom czy przestarzałym notatkom w README.

Więcej taktyk dla dużych repozytoriów znajdziesz w Working with large projects.

Resetuj lub kompaktuj, gdy Messages się zapełnia

W trakcie długiej rozmowy Messages gromadzi powtarzające się zawartości plików, porzucone plany i przestarzałe wyniki narzędzi. Rozpocznij nowy task przyciskiem + (New task), gdy cel roboczy się zmienia lub gdy wątek jest wystarczająco duży, by obniżać jakość. Zachowaj ograniczenia, dowody i otwarte pytania. Resztę usuń.

Bob też automatycznie kompaktuje starsze fragmenty, ale kompakcja jest stratna i szczegóły z początku Messages mogą nie przetrwać. Preferuj małe, zatwierdzone zmiany zamiast jednego dużego autonomicznego przebiegu, aby diff-y były przeglądalne, a Bob trzymał się kursu.

Dowiedz się więcej

Zajrzyj do Create a new context window, aby otworzyć zestawienie w przykładowym projekcie Galaxium Travels i poćwiczyć reset.

Jak oceniasz ten temat?