Od przeglądarki do terminala
Na początku semestru rozmawiasz z modelem w okienku czatu. Na końcu wydajesz zadania agentowi, który pracuje na plikach w Twoim komputerze, i uruchamiasz model na własnej karcie graficznej. Oczywiście w dużej przenośni: nikt nie każe Ci wyrzucać przeglądarki. Chodzi o kierunek, od pytania do celu, od rozmowy do narzędzi, od chmury do własnej maszyny.
Dlaczego terminal
W przenośni. Okno czatu jest jak rozmowa przez okienko w urzędzie: podajesz kartkę, dostajesz odpowiedź, a co działo się po drugiej stronie, nie wiesz. Terminal to wejście na zaplecze. Widzisz pliki, programy i każde polecenie, które ktoś (Ty albo agent) wykonał.
Dosłownie. Terminal to tekstowe okno, w którym wydajesz komputerowi polecenia. W Windows są dwa: PowerShell i starszy Wiersz polecenia. Wyglądają surowo, bo nie muszą niczego udawać.
Agent pracuje tam, gdzie są pliki
Czat w przeglądarce widzi tylko to, co mu wkleisz. Agent w terminalu czyta pliki z katalogu, uruchamia programy i zapisuje wyniki. Tak działa „model mówi, program liczy” z M06.
Polecenia są powtarzalne
Polecenie to tekst. Można je zapisać, wkleić koledze, uruchomić jutro i dostać ten sam wynik. Rozmowy z czatem nie da się tak odtworzyć.
Język inżyniera z maszyną
Programy obliczeniowe, serwery, modele lokalne i agenci mówią tym samym językiem poleceń. Kto go zna, nie jest skazany na przyciski, które ktoś przewidział.
Kontrola, nie nostalgia
Nie chodzi o czarny ekran jak z filmu o hakerach. Chodzi o to, żeby wiedzieć, co się wykonało, na jakich danych i z jakim skutkiem.
Schody semestru
Sześć stopni. Każdy moduł dokłada jeden krok w stronę terminala. Nie trzeba przeskakiwać: wystarczy nie stać w miejscu.
| Stopień | Moduły | Gdzie pracujesz | Co zmienia się w głowie |
|---|---|---|---|
| 1. Okno czatu | M01 | przeglądarka | Wiesz, czym różni się model, czat, narzędzie i agent. Widzisz, gdzie jesteś na mapie. |
| 2. Czat świadomie | M02-M05 | przeglądarka, pierwsze polecenia w terminalu | Polecenie piszesz jak specyfikację, odpowiedź sprawdzasz poza modelem, źródło przestaje być ozdobnikiem. |
| 3. Program liczy | M06 | program liczy na rzutniku, dla chętnych ćwiczenie „Płuczka K-1” w terminalu | Liczby daje program, model je opisuje. Skrypt ma wejście, wyjście i zawsze ten sam wynik. |
| 4. Agent | M07-M09 | terminal agenta (pokaz), protokół jego pracy | Agent to pętla: plan, polecenie, obserwacja, korekta. Każde polecenie agenta wykonuje się na prawdziwym komputerze. |
| 5. Własna maszyna | M10-M12 | terminal: ollama run, ollama ps | Model to plik na dysku, a jego szybkość zależy od pamięci karty. Dane mogą zostać w sali. |
| 6. Projekt | M13-M14 | katalog projektu z danymi, skryptami i przepisem | Wynik zespołu da się odtworzyć z zapisanych poleceń. To jest różnica między „AI mi powiedziało” a raportem inżynierskim. |
Pierwsza godzina w terminalu
Wszystko poniżej działa na zwykłym koncie studenta, bez praw administratora. Otwórz menu Start, wpisz PowerShell i uruchom Windows PowerShell. Zobaczysz znak zachęty, na przykład PS C:\Users\student>. Litery PS oznaczają PowerShell. Bez nich jesteś w Wierszu polecenia (Win+R, wpisz cmd).
Dwanaście poleceń na start
| PowerShell | Wiersz polecenia | Co robi |
|---|---|---|
pwd | cd (bez argumentu) | pokazuje, w jakim katalogu jesteś |
cd k1, cd .. | tak samo | wchodzi do katalogu, wraca piętro wyżej |
dir albo ls | dir | wypisuje zawartość katalogu |
mkdir k1 | mkdir k1 | tworzy katalog |
type plik.txt albo cat plik.txt | type plik.txt | wyświetla zawartość pliku tekstowego |
Set-Content plik.txt "tekst" | echo tekst > plik.txt | zapisuje tekst do pliku |
dir > lista.txt, >> | tak samo | przekierowanie: wynik polecenia trafia do pliku zamiast na ekran (>> dopisuje na końcu) |
notepad pvyp.py | tak samo | otwiera plik w Notatniku (tworzy go, jeśli nie istnieje) |
python pvyp.py | tak samo | uruchamia skrypt Pythona, o ile Python jest w sali (czasem działa tylko py pvyp.py) |
ollama list | tak samo | pokazuje modele pobrane na dysk (od M10) |
ollama run gemma3:4b | tak samo | rozmowa z modelem lokalnym, wyjście /bye. Z pytaniem w cudzysłowie: jedna odpowiedź i koniec |
ollama ps | tak samo | pokazuje, który model jest w pamięci i czy siedzi na GPU |
cls czyści ekran, ale niczego nie kasuje. A jeśli chcesz mieć zapis całej sesji do zeszytu, zacznij od Start-Transcript -Path sesja.txt, a skończ poleceniem Stop-Transcript.Ćwiczenie. Płuczka K-1 w terminalu
- Utwórz katalog roboczy w miejscu wskazanym przez prowadzącego i wejdź do niego:
mkdir k1-terminal cd k1-terminal
- Zapisz odczyty lepkościomierza Fann 35 do pliku, jeden wiersz na prędkość obrotową (obr/min i odczyt w stopniach):
Set-Content fann.txt "600 62","300 40","200 32","100 23","6 8","3 6" type fann.txt
W Wierszu polecenia zrób to samo sześcioma wierszami:echo 600 62 > fann.txt, potemecho 300 40 >> fann.txti tak dalej. - Sprawdź, czy jest Python:
python --version, a jeśli nie zadziała,py --version. Wersja Pythona albo komunikat błędu - Otwórz Notatnik poleceniem
notepad pvyp.py, wklej poniższy skrypt i zapisz.# pvyp.py: lepkość plastyczna i granica płynięcia z odczytów lepkościomierza Fanna dane = open("fann.txt", "rb").read() # PowerShell 5.1 zapisuje plik operatorem > w kodowaniu UTF-16, Set-Content w ANSI if dane[:2] in (b"\xff\xfe", b"\xfe\xff"): tekst = dane.decode("utf-16") else: tekst = dane.decode("utf-8-sig") odczyt = {} for wiersz in tekst.splitlines(): if wiersz.strip(): rpm, stopnie = wiersz.split() odczyt[int(rpm)] = float(stopnie) pv = odczyt[600] - odczyt[300] # mPa*s yp = odczyt[300] - pv # lbf/100 ft2 yp_pa = yp * 0.511 # Pa, przy 0,511 Pa na stopień lsyp = 2 * odczyt[3] - odczyt[6] # lbf/100 ft2 wynik = (f"PV = {pv:.0f} mPa*s\n" f"YP = {yp:.0f} lbf/100 ft2 (= {yp_pa:.1f} Pa)\n" f"LSYP = {lsyp:.0f} lbf/100 ft2\n") print(wynik, end="") open("wynik.txt", "w", encoding="utf-8").write(wynik) - Uruchom:
python pvyp.py. Na ekranie powinno się pojawić PV = 22 mPa⋅s, YP = 18 lbf/100 ft² (≈ 9,2 Pa) i LSYP = 4 lbf/100 ft². Gwiazdka wmPa*sto tylko zapis znakami, które konsola zawsze wyświetli. Wynik z ekranu - Sprawdź, co powstało:
dir, potemtype wynik.txt. Zapisz listę plików poleceniemdir > lista.txti obejrzyj ją. Jakie pliki są w katalogu? - Od M10, gdy masz Ollamę: niech model ubierze wynik w słowa, a liczby zostaw programowi.
$w = Get-Content wynik.txt -Raw ollama run gemma3:4b "Napisz dwa zdania notatki z badania płuczki. Nie zmieniaj żadnej liczby: $w"
Czy model przepisał liczby bez zmian? Czy coś dodał od siebie? - Do zeszytu: jedno zdanie o tym, czym ten sposób pracy różni się od zapytania czatu o PV i YP. Twój wniosek
$t600 = 62; $t300 = 40; $pv = $t600 - $t300; $yp = $t300 - $pv; "PV = $pv, YP = $yp". Mniej elegancko, ale wynik ten sam i też jest zapisany w poleceniu.> zapisuje plik w kodowaniu UTF-16, a Set-Content w kodowaniu systemowym. Dla oka plik wygląda tak samo, dla programu nie. Dlatego skrypt na początku sprawdza, z czym ma do czynienia. Takich rzeczy czat w przeglądarce nigdy Ci nie pokaże, bo nie widzi Twoich plików.Agenci w terminalu
Agent wiersza poleceń to program uruchamiany w terminalu, który rozmawia z modelem językowym i za Twoją zgodą czyta pliki w katalogu, edytuje je i wykonuje polecenia. To ta sama pętla co w M07 (plan, działanie, obserwacja, korekta), tylko działanie nie jest już tekstem w okienku, ale poleceniem na Twoim komputerze. Poniżej narzędzia, których działanie i wymagania potwierdziliśmy w oficjalnej dokumentacji (stan z października 2026, warunki kont potrafią się zmieniać).
| Narzędzie | Konto i opłaty | Model lokalny przez Ollamę | Instalacja w Windows |
|---|---|---|---|
| Claude Code (Anthropic) | z modelami Anthropic wymaga płatnego planu Claude albo konta deweloperskiego, darmowy plan go nie obejmuje. Przy modelu z Ollamy wymóg logowania zależy od wersji narzędzia, dlatego na zajęciach używamy czatu w przeglądarce i Ollamy bez agenta. | tak, według dokumentacji Ollamy: ollama launch claude | polecenie w PowerShell, bez uprawnień administratora (wprost w dokumentacji), Node.js niepotrzebny |
| Codex CLI (OpenAI) | logowanie kontem ChatGPT (według pomocy OpenAI także w planie darmowym, z limitami) albo kluczem API | tak: codex --oss albo ollama launch codex | instalator w PowerShell albo npm (wtedy potrzebny Node.js), w sali bez praw administratora może się nie zainstalować, dlatego na zajęciach go nie wymagamy |
| Gemini CLI (Google) | darmowy dostęp z osobistym kontem Google, z dziennym limitem zapytań, albo klucz API | dokumentacja nie przewiduje, pracuje z modelami Google | npm, wymaga Node.js 20 lub nowszego i Windows 11 24H2 lub nowszego |
| OpenCode (otwarte oprogramowanie) | konto potrzebne tylko u dostawcy modelu w chmurze, z lokalnym modelem nie | tak: ollama launch opencode | npm (Node.js), Scoop, Chocolatey albo gotowy plik z GitHuba |
| Aider (otwarte oprogramowanie) | jak wyżej: płacisz tylko za model w chmurze, jeśli go wybierzesz | tak: aider --model ollama_chat/<model> | instalator w PowerShell, który w razie potrzeby sam dociąga Pythona 3.12 |
Bezpieczeństwo agenta w terminalu
Czat w przeglądarce może Ci najwyżej coś źle doradzić. Agent w terminalu może coś zrobić: skasować plik, wysłać dane, uruchomić program. Dlatego reguły są twardsze niż w M09.
Osobny katalog roboczy
Agenta uruchamiasz w pustym katalogu z kopią danych, na przykład k1-terminal. Nigdy w katalogu domowym, na Pulpicie ani w Dokumentach.
Każde polecenie czytasz
Agent pyta o zgodę przed wykonaniem polecenia. Zatwierdzasz dopiero, gdy rozumiesz, co ono robi. Trybów „wykonuj bez pytania” nie włączasz.
Żadnych prywatnych danych obok
Hasła, klucze, prywatne zdjęcia i cudze dokumenty nie mogą leżeć tam, gdzie agent ma wstęp. Czego nie ma w katalogu, tego nie przeczyta.
Treść plików to dane, nie polecenia
Zasada z M09 obowiązuje podwójnie. Jeśli w pliku, mailu albo na stronie stoi „zignoruj poprzednie instrukcje”, agent ma to zgłosić, a nie wykonać. Ty też.
Dwie uwagi praktyczne. Polecenia instalacyjne w rodzaju irm adres | iex pobierają i od razu wykonują cudzy skrypt, więc uruchamiasz je tylko z oficjalnej strony producenta i za zgodą prowadzącego. Dokumentacja Claude Code podaje też wprost, że na zwykłym Windowsie (bez podsystemu WSL 2) nie działa izolacja w piaskownicy. Wtedy jedyną ochroną jest katalog roboczy i Twoje „tak” przy każdym poleceniu.
- Terminal daje kontrolę: widać, co się wykonało, na jakich danych i z jakim wynikiem.
- Zapisane polecenie da się powtórzyć jutro i dać koledze. Rozmowy z czatem nie.
- Program liczy z pliku, model opisuje wynik. Liczby sprawdzasz w pliku, nie w odpowiedzi modelu.
- Agent w terminalu działa na prawdziwym komputerze: osobny katalog, zgoda na każde polecenie, treść plików to dane.
- Model lokalny na karcie 8 GB to dobry pomocnik do krótkich zadań i dobra lekcja o granicach sprzętu.
Dla dociekliwych
- Claude Code: przewodnik po terminalu dla początkujących (po angielsku, przydatny niezależnie od narzędzia)
- PowerShell: przekierowanie wyniku do pliku
- Ollama: polecenia wiersza poleceń i długość kontekstu
- Ollama i OpenCode: agent na modelu lokalnym