OpenCode 1.18.6 wprowadza izolację cache’a repozytoriów i poprawki dla desktopa

OpenCode 1.18.6 wprowadza izolację cache’a repozytoriów i poprawki dla desktopa

OpenCode otrzymał 27 lipca 2026 aktualizację v1.18.6, która rozwiązuje problem z cache'owaniem repozytoriów oraz poprawia stabilność aplikacji desktopowej. Główna zmiana dotyczy izolacji gałęzi: odświeżenie jednej referencji nie nadpisuje już checkoutu innej gałęzi.

Co nowego w wydaniu

  • Izolowane cache'e repozytoriów zapobiegają przenoszeniu checkoutu jednej gałęzi podczas odświeżania innej.
  • Synchronizacja listy dostawców po zakończeniu OAuth przywraca widoczność nowo autoryzowanych providerów bez restartu.
  • Naprawione przewijanie selektora projektów w desktopie ułatwia pracę przy wielu repozytoriach.
  • Usunięty margines paska tytułowego w trybie pełnoekranowym na macOS eliminuje defekt wizualny.

Izolacja cache'a — dlaczego to ma znaczenie

W środowiskach wspomaganych przez AI agent operuje na konkretnym stanie repozytorium. Jeśli odświeżenie cache'a jednej gałęzi przypadkowo przesunie checkout innej, agent może analizować lub modyfikować pliki z niewłaściwego kontekstu. To szczególnie problematyczne przy zautomatyzowanych przepływach pracy, które utrzymują wiele gałęzi jednocześnie.

OpenCode korzysta ze współdzielonej usługi lokalnej działającej w tle — nie tworzy osobnych procesów dla terminala, interfejsu webowego i desktopa. Architektura ta sprawia, że precyzja w zarządzaniu katalogami, projektami i gałęziami staje się kluczowa. Sesja reprezentowana jest przez pole directory, natomiast tożsamość projektu i lokalizacja repozytorium są obsługiwane oddzielnie.

Wcześniejsza dokumentacja zgłaszała przypadki, gdzie sesje utworzone w desktopie błędnie zwijały wybrany podkatalog do korzenia repozytorium Git. Lipcowe poprawki adresują tę granicę między cache'em repozytorium, selektorem projektów w desktopie a obsługą katalogów w API.

Desktop i API — co się zmieniło

Aktualizacja wprowadza kilka poprawek w interfejsie desktopowym. Selektor projektów zyskał przewijanie dla długich list, co jest przydatne, gdy pracuje się z wieloma repozytoriami lub katalogami projektów jednocześnie. W trybie pełnoekranowym na macOS usunięto dodatkowy margines paska tytułowego, który powodował nieestetyczne przesunięcie układu.

Paleta poleceń również doczekała się poprawki: nieaktualne wpisy nie pojawiają się już ponownie po ich usunięciu lub unieważnieniu. Choć może to brzmieć drobno, przy intensywnym korzystaniu z palety takie artefakty mogą skutecznie rozpraszać.

Po stronie dostawców modeli przywrócono odświeżanie listy po zakończeniu przepływu OAuth. Oznacza to, że nowo autoryzowany provider pojawia się w interfejsie natychmiast, bez konieczności restartowania aplikacji.

MCP i follow-up w v1.18.6

Krótko po głównym wydaniu pojawiły się poprawki, które rozszerzyły kompatybilność z nowszymi serwerami MCP. Dodano mechanizm ponownego łączenia po wygaśnięciu sesji SDK oraz dopracowano odświeżanie stanu połączenia providerów w desktopie.

OpenCode w obecnej architekturze rozróżnia negocjację legacy MCP od nowszych rewizji protokołu. Tryby kompatybilności obejmują starszy handshake, automatyczne wykrywanie nowszej wersji oraz tryb ścisły wymagający konkretnej rewizji. Poprawki z lipca nie ograniczały się tylko do wsparcia nowego protokołu — musiały też zachować niezawodne odświeżanie stanu dla starszych konfiguracji MCP.

Co to oznacza w praktyce

Izolacja cache'a gałęzi to jedna z poprawek, które trudno docenić, dopóki coś nie pójdzie nie tak. Wyobrażenie agenta, który po odświeżeniu repozytorium zaczyna pracować na plikach z innej gałęzi, ukazuje konsekwencje dla zautomatyzowanego testowania czy deploymentu.

Szerszy kontekst tych zmian to stabilizacja granicy między trzema elementami: zarządzaniem cache'em repozytoriów i gałęzi, desktopowym selektorem projektów oraz lokalnym API sesji z obsługą katalogów. OpenCode konsekwentnie scala te warstwy wokół jednej usługi lokalnej, a każda poprawka na tym styku przekłada się na mniej frustracji przy codziennym kodowaniu.


Źródła

Komentarze

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *