← Biblioteka · Przewodnik
Koog i agenci AI w Kotlinie — co to jest i do czego służy
Koog to framework JetBrains do budowania agentów AI w Kotlinie i Javie. Skupia się na praktycznej architekturze: strategiach, narzędziach, pamięci, śledzeniu działania, długim kontekście i wdrożeniach JVM.
Krótka wersja: Koog to próba JetBrains, by dać agentom AI w świecie Kotlin/JVM to, co dobry framework webowy daje aplikacjom webowym: powtarzalną strukturę zamiast stosu posklejanych wywołań modelu. Agent to nie „prompt z nóżkami”. To sterowany system: strategie, narzędzia, stan, pamięć, logi i testy.
Czym jest agent AI
Agent AI to system, w którym model językowy nie tylko odpowiada, ale decyduje o kolejnych krokach. Może wywołać narzędzie, przeczytać dane, zmienić plik, zapytać użytkownika, sprawdzić wynik i kontynuować aż do końca zadania.
Chatbot mówi, co można zrobić. Agent może część pracy naprawdę wykonać. Dobry agent ma granice, stan i kontrolę. Zły agent to LLM wypuszczony do aplikacji jak demon w sklepie z porcelaną.
Przykład: „przygotuj raport finansowy”. Chatbot pisze ogólne rady. Agent może pobrać dane, wywołać wewnętrzne API, przygotować szkic, poddać go kontroli zgodności, poprawić błędy i zapisać wynik.
Czym jest Koog
Koog to otwartoźródłowy framework JetBrains do budowy agentów AI w Kotlinie i Javie. Jest przeznaczony dla zespołów JVM/Kotlin, które chcą tworzyć agentów w istniejących backendach, aplikacjach Android, projektach wieloplatformowych i narzędziach wewnętrznych.
Zapewnia elementy, które zwykle trzeba łączyć ręcznie:
- integracje z dostawcami LLM,
- definicje narzędzi,
- strategie i przepływy pracy jako grafy,
- długą historię i kompresję kontekstu,
- trwały stan agenta,
- pamięć i wyszukiwanie wiedzy,
- przesyłanie strumieniowe i równoległe wywołania narzędzi,
- śledzenie działania i obserwowalność,
- MCP i pokrewne integracje.
Od Koog 1.0 JetBrains obiecuje stabilniejsze podstawowe API i wyraźniejszy podział na moduły stabilne oraz beta. Nudne. Dokładnie tej nudy chce produkcja.
Do czego jest dobry
Koog ma sens, gdy aplikacja już żyje w Kotlin/JVM i nie chcesz warstwy agentowej w zupełnie innym stosie technologicznym.
1. Wewnętrzni agenci firmowi
Wyszukiwanie w dokumentacji, raporty, kontrola zgłoszeń, rutynowe przepływy pracy i wsparcie. Narzędzia i strategia zostają w JVM.
2. Produktowe funkcje AI
Asystenci w IDE, bankowości, CRM i panelach administracyjnych. Nie chodzi tylko o ładną odpowiedź. Chodzi o bezpieczne wywoływanie wewnętrznych funkcji, stan, logi i zasadę najmniejszych uprawnień.
3. Kotlin Multiplatform
Koog celuje w JVM, JS, WasmJS, Android i iOS. Przydatne, gdy część logiki agentowej ma być współdzielona między backendem a klientami.
4. Wielokrokowy przepływ pracy zamiast jednego wielkiego „zrób to”
Wartość nie leży w samym wywołaniu modelu. Leży w podziale pracy: zbierz dane, przygotuj szkic, sprawdź, napraw, opublikuj. Każda faza może mieć inne narzędzia, model i reguły.
Kluczowa idea: wąskie korytarze
Najmocniejsza myśl z prezentacji Vadima Briliantova: LLM nie powinien dostać całego wszechświata narzędzi. Powinien dostać wąski korytarz.
Daj modelowi wszystkie funkcje aplikacji i polecenie „rozwiąż to”, a zacznie improwizować: pętle, zbędne wywołania narzędzi, spalone tokeny. Droga loteria.
Lepszy projekt:
- Ustal fazy zadania.
- W każdej fazie pozwól tylko na potrzebne narzędzia.
- Daj jasny cel fazy.
- Po ważnych krokach rób kontrolę.
- Zapisuj ślad wykonania, żeby dało się zbadać, dlaczego coś się stało.
Koog modeluje te korytarze jako strategie i grafy. To zdrowsze niż jeden wielki prompt udający architekturę. Ta sama lekcja dotyczy agentów programistycznych: zamknięta pętla bez ściśle ograniczonych narzędzi i weryfikacji to tylko generator diffów z brandingiem JVM.
Model myślowy Koog
- Model — OpenAI, Anthropic, Google, Ollama, OpenRouter albo inny dostawca.
- Narzędzia — funkcje aplikacji, API, bazy, pliki, narzędzia MCP.
- Strategia — kolejność i warunki kroków.
- Stan i historia — co już było, co jest ważne, co można odrzucić.
- Obserwowalność — logi i ślady wykonania, żeby agent nie był czarną skrzynką.
- Ewaluacje i testy — dowód, że nowa wersja nie zepsuła starych przepływów pracy.
Model to tylko silnik. Agent to cała maszyna wokół niego.
Praktyczny przykład: raport
Źle:
„Masz bazę, Slacka, dokumenty i arkusze. Zrób raport.”
Lepiej:
- Zbieranie — tylko odczyt danych, lista faktów.
- Analiza — praca tylko na zebranych faktach, trendy.
- Szkic — pisanie dokumentu bez dalszego pobierania danych.
- Kontrola — osobny krok sprawdza liczby, zgodność i brakujące źródła.
- Naprawa — w razie niepowodzenia powrót do konkretnej fazy.
- Publikacja — dopiero po przejściu kontroli.
To różnica między „magią AI” a inżynierią.
Czym Koog nie jest
Nie zastępuje dobrego projektowania produktu. Nie naprawia zepsutego przepływu pracy. Nie daje bezpieczeństwa samym istnieniem. Nie dowodzi, że każdy przypadek użycia ma być agentem.
Nie jest też dowodem, że Kotlin nagle wygrywa całe AI. Python wciąż rządzi ekosystemem badań ML. Koog odpowiada na węższe pytanie: co jeśli nasze aplikacje, zespoły i operacje już żyją w Kotlin/JVM i chcemy budować warstwę agentową tam?
Najczęstsze pułapki
- Za dużo narzędzi → model błądzi.
- Brak śladów wykonania → awarie są tajemnicą.
- Brak ewaluacji → każda zmiana promptu to eksperyment religijny.
- Długi kontekst bez kompresji → płacisz za historię, której model już nie używa dobrze.
- Agent zamiast przepływu pracy → część pracy ma zostać deterministycznym kodem.
- Bezpieczeństwo na koniec → uprawnienia, sandbox i akceptacja należą do projektu od początku.
Kiedy bym sięgnęła po Koog
Tak, jeśli:
- zespół pisze Kotlin/Javę i nie chce kolejnego środowiska uruchomieniowego Pythona,
- agent musi wołać istniejącą logikę JVM,
- zadanie ma wiele kroków i potrzebuje stanu,
- liczą się śledzenie działania, testy i operacje,
- chcesz ścieżkę od asystenta do bardziej autonomicznych przepływów pracy.
Nie jako pierwszy wybór do czysto badawczego prototypu ML w notebookach Pythona. To zbędna objazdówka.
Źródła
- Koog documentation
- JetBrains/koog na GitHubie
- Koog 1.0 release
- JetBrains AI Blog: Koog 1.0 Is Out
- Meet Koog
- Kotlin docs: AI-powered app development
- Building AI Agents in Kotlin with Koog
Co zapamiętać
Koog jest ciekawy nie dlatego, że „Kotlin też ma framework AI”. Jest ciekawy, bo traktuje agentów jak problem inżynierii oprogramowania: strategia, narzędzia, stan, obserwowalność, pamięć, testy i przydatność w środowisku produkcyjnym. Dobry agent to nie wolny geniusz. To model prowadzony wąskim korytarzem, z narzędziami, których umie użyć, i śladem, który później da się zbadać.