Wersja 1.39.0 terminalowego agenta Kimi Code CLI wprowadza istotne usprawnienia w zarządzaniu umiejętnościami, integracji z backendami typu thinking-mode oraz stabilności działania. Wydanie koncentruje się na dostosowaniu agenta do konkretnych projektów oraz poprawie jego funkcjonalności w terminalu. Kimi Code CLI, stworzony przez Moonshot AI, umożliwia automatyzację zadań związanych z rozwojem oprogramowania, takich jak czytanie i edycja kodu, wykonywanie poleceń shell oraz przeszukiwanie internetu.
Najważniejsze zmiany w wydaniu 1.39.0
- Nowy system discovery umiejętności – agent skuteczniej odnajduje umiejętności skonfigurowane dla konkretnego projektu, preferując je przed globalnymi. Dodano obsługę płaskich struktur plików
<nazwa>.md. - Rozszerzenie opcji konfiguracji – nowe pole
extra_skill_dirsumożliwia dodanie niestandardowych katalogów z umiejętnościami, niezależnych od głównych źródeł. - Lepsza kompatybilność z backendami thinking-mode – automatyczne round-tripping treści reasoning dla backendów typu DeepSeek V4, co rozwiązuje problem błędów API 400.
- Poprawki UI terminala i schematów – ulepszone monitorowanie zadań w tle, naprawiony rendering kursora w promptach oraz rozwiązanie błędów walidacji schematów JSON z MCP.
Silniejsze discovery umiejętności i priorytetyzacja projektu
Kluczową zmianą w 1.39.0 jest nowy mechanizm odnajdywania i priorytetyzacji umiejętności. Dotychczas Kimi Code CLI skanował katalogi zdefiniowane w konfiguracji extraKnownMarketplaces w pliku settings.json. Nowa wersja wprowadza hierarchię źródeł: Project > User > Extra > Built-in. Jeśli w katalogu projektu (np. .kimi/skills/) istnieje umiejętność o nazwie foo, będzie ona wybierana przed wersją globalną z katalogu użytkownika czy marketplace.
Dodano obsługę płaskich plików <nazwa>.md jako umiejętności, równolegle do standardowej struktury podkatalogów <nazwa>/SKILL.md. To ułatwia migrację kolekcji dokumentacji markdown do systemu skills. W przypadku konfliktu nazw w tym samym katalogu, podkatalog ma pierwszeństwo, a system informuje użytkownika.
Nowe pole konfiguracji extra_skill_dirs pozwala na dodanie dowolnych, absolutnych lub względnych ścieżek do katalogów z umiejętnościami. Ścieżki są kanoniczowane, a nieistniejące lub błędne katalogi są ignorowane, co nie przerywa procesu discovery. To otwiera możliwości dla prywatnych, zespołowych czy środowiskowych zestawów umiejętności, które nie są dostępne w publicznych marketplace.
Automatyczny round-trip reasoning dla backendów thinking-mode

Wiele modeli AI z trybem thinking, takich jak DeepSeek V4, wymaga, aby treść reasoning (wnioskowania) wygenerowana w jednym turze była przekazywana z powrotem do API w kolejnym żądaniu. Wcześniej brak tego mechanizmu prowadził do błędów 400 typu The reasoning_content in the thinking mode must be passed back to the API.
Wydanie 1.39.0 rozwiązuje ten problem dla providerów typu openai_legacy. Domyślnie klucz reasoning_key jest ustawiony na "reasoning_content", a odpowiedzi zawierające takie treści są automatycznie przechowywane w historii i przekazywane w kolejnych turach. Użytkownicy mogą również skorzystać z opcjonalnego pola konfiguracyjnego reasoning_key w LLMProvider, które pozwala na użycie niestandardowej nazwy pola (np. "reasoning") lub całkowite wyłączenie round-tripping przez pustą wartość.
Dodano także obsługę zmiennej środowiskowej KIMI_MODEL_THINKING_KEEP, która przekazuje wartość do API Moonshot jako thinking.keep. Umożliwia to korzystanie z funkcjonalności Preserved Thinking (np. export KIMI_MODEL_THINKING_KEEP=all), która zachowuje historyczne reasoning_content między turami, co zwiększa koszty tokenów.
Poprawki stabilności i użyteczności terminala

Wydanie zawiera szereg mniejszych, ale istotnych poprawek zwiększających stabilność i użyteczność agenta w codziennej pracy. Naprawiono rendering kursora blokowego w promptach zatwierdzania (AskUserQuestion), który teraz poprawnie odwzorowuje pozycję w tekście.
W obszarze integracji z MCP (Model Context Protocol) rozwiązano problem błędów walidacji schematów JSON, gdy serwer MCP eksponuje narzędzia z parametrami mającymi tylko enum bez zdefiniowanego typu (np. truncateMode z JetBrains Rider). Provider Kimi teraz dynamicznie uzupełnia schemat, dedukując typ z wartości enum lub ustawiając domyślny "string".
Naprawiono również błąd powodujący wysyłanie pustego pola content wraz z tool_calls do API Moonshot, co skutkowało błędami 400. Jeśli treść asystenta jest pusta (brak tekstu lub tylko whitespace/think parts), pole content jest teraz całkowicie pomijane.
Wnioski: agent staje się bardziej niezależny i kontekstowy
Wydanie 1.39.0 Kimi Code CLI rozwija agenta w kierunku większej niezależności, kontekstowej adaptacji i stabilności integracji. Priorytetyzacja umiejętności projektowych sprawia, że agent lepiej rozumie i stosuje specyficzne dla repo konwencje i automatyzacje. Rozszerzenie możliwości konfiguracji katalogów umiejętności otwiera nowe możliwości dla zespołów i środowisk.
Lepsza obsługa backendów thinking-mode, szczególnie istotna dla modeli o zaawansowanych zdolnościach wnioskowania, czyni Kimi Code CLI bardziej interoperacyjnym.


Dodaj komentarz