Przejdź do głównej zawartości

Używanie zainstalowanego agenta programistycznego jako modelu czatu

Jeśli płacisz już za agenta programistycznego i jest on zalogowany na komputerze z Libre WebUI, możesz rozmawiać z nim w zwykłym czacie zamiast dodawać osobny klucz API. Libre WebUI wykrywa interfejs wiersza poleceń agenta i oferuje go w wyborze modeli tak jak każdy inny model.

Co jest wykrywane​

Przy każdym żądaniu listy modeli Libre WebUI szuka na PATH serwera następujących poleceń:

ModelPolecenieDostawca
Claude CodeclaudeAnthropic
CodexcodexOpenAI
OpenCodeopencodeSST
PipiMario Zechner

Wszystko, co zostanie znalezione, pojawia się w grupie Agents wyboru modeli. Aplikacja niczego nie instaluje i nie wymaga pliku konfiguracyjnego — jeśli polecenie działa w powłoce serwera, pojawi się na liście.

Ustawienia → Czat → Domyślne również oznacza te wpisy jako Agent, w tym Strands, gdy Twoje konto może z niego korzystać. Modele wtyczek zachowują nazwę dostawcy, a etykietę Ollama mają tylko modele Ollama. Wyłączenie Ollama nie ukrywa skonfigurowanych agentów ani wtyczek. Karta informacji pokazuje nazwę wyświetlaną i dostawcę wybranego wpisu, a rozmiar, rodzinę i format tylko wtedy, gdy dostarcza je katalog.

Wybór modelu, nie tylko CLI​

Każde CLI może udostępniać kilka pozycji w grupie Agents:

  • Claude Code oferuje zalogowany model domyślny oraz Sonnet, Opus i Haiku. Dostępne są również jawne wybory Sonnet 5.5 (claude-sonnet-5-5) i Opus 5.5 (claude-opus-5-5). Sonnet 5.5 wymaga Claude Code 2.1.284 lub nowszego, a Opus 5.5 wymaga Claude Code 2.1.280 lub nowszego, oba z dostępem przez zalogowane konto; uruchom claude update, aby zaktualizować CLI. Istniejące aliasy Sonnet i Opus nadal korzystają z bieżącego mapowania modeli CLI.
  • Codex oferuje skonfigurowany model domyślny oraz udokumentowaną rodzinę logowania ChatGPT: GPT-6 Astra, GPT-6.1 Sol (gpt-6.1-sol), GPT-6 Sol, GPT-6 Luna, GPT-5.6 Sol, Terra, Luna, GPT-5.5 i GPT-5.3 Codex Spark. Dostępność zależy od logowania CLI i uprawnień konta.
  • Pi działa z modelem skonfigurowanym w samym CLI.
  • OpenCode wyświetla modele wszystkich uwierzytelnionych dostawców (z opencode models) i zawsze wymaga jawnego wyboru — domyślna wartość CLI może wskazywać serwer lokalny niedostępny z hosta Libre WebUI.

Wbudowany silnik Strands również pojawia się w grupie Agenci, gdy Twoje konto może z niego korzystać. Nie jest to CLI: działa wewnątrz backendu i korzysta z Twoich modeli Ollama oraz modeli wtyczek dostawców. Zwykły wpis Strands (strands) używa Twojego domyślnego modelu czatu. Pozostałe wpisy (strands:<route>) są wymienione po jednym dla każdego dostępnego modelu, na przykład Strands · gpt-5.6-sol (Codex (ChatGPT)), i przypinają do rozmowy zarówno model, jak i jego dostawcę; podczas awarii inny dostępny dostawca nie może ich zastąpić. Pobranie listy wyborów nie uruchamia silnika.

Te same wpisy Strands mogą pełnić rolę modelu zadań w Ustawienia → Czat → Domyślne dla automatycznych tytułów i podsumowań rozumowania. Użyj obecnie uruchomionego modelu stosuje wybór Strands zapisany dla rozmowy. Te krótkie żądania tekstowe wywołują bezpośrednio model dostawcy; nie uruchamiają narzędzi agenta ani nie tworzą jego sesji. Inne profile CLI wymagają modelu zadań Ollama, wtyczki lub Strands do takich żądań pomocniczych.

Pi wykonuje każdą turę bez stanu (--no-session), z wyłączonymi narzędziami lokalnymi i neutralnym promptem systemowym, więc odpowiedzi nie są zabarwiane przez osobistą konfigurację Pi użytkownika systemowego serwera, a czaty nigdy jej nie dotykają.

Korzystanie​

  1. Zaloguj się jako administrator.
  2. Uruchom czat i otwórz wybór modeli.
  3. Wybierz pozycję z grupy Agents.
  4. Wysyłaj wiadomości jak zwykle. Odpowiedzi są przesyłane token po tokenie.

Rozmowa jest przechowywana jak każdy inny czat, więc możesz ją opuścić i wrócić, zmienić nazwę oraz znaleźć w palecie poleceń. Każda tura wysyła agentowi transkrypcję ostatniej rozmowy i przesyła jego odpowiedź.

Kto może używać funkcji i do czego ma ona dostęp​

Funkcja jest dostępna wyłącznie dla administratorów — z ważnego powodu. Agent działa na hoście jako ten sam użytkownik systemu operacyjnego co backend Libre WebUI, a nie wewnątrz kontenera Work. Dziedziczy więc poświadczenia agentów tego użytkownika i cały dostęp, jaki normalnie mają te agenty, w tym możliwość czytania plików i wykonywania poleceń na serwerze, jeśli agent tak zdecyduje.

Traktuj włączenie tej funkcji jak przyznanie agentowi dostępu do powłoki komputera. Dlatego jest ona dostarczana jako wyłączona: administrator musi ją włączyć w Ustawienia → Zarządzanie użytkownikami → Dostęp i zasady → Modele agentów CLI. Ustawienie jest trwałe i działa natychmiast, bez ponownego uruchomienia.

Zmiana tego ustawienia natychmiast odświeża katalog modeli: kategoria Agenci zawiera bezpośrednie wpisy CLI, a Modele wtyczek integracje API dostawców, takie jak Codex (ChatGPT). Strands jest wymieniony w tej samej kategorii, ale podlega własnemu ustawieniu dostępu Silnik Strands, a nie temu przełącznikowi, więc może się pojawić, gdy modele agentów CLI są wyłączone. Wykrywanie jego modeli nie może blokować wykrywania zainstalowanych agentów CLI.

Istniejące instalacje dziedziczą poprzednią zapisaną decyzję dotyczącą Agentów, dopóki nie zostanie zapisane niezależne ustawienie CLI.

Aby przypiąć decyzję na poziomie wdrożenia niezależnie od przełącznika środowiska wykonawczego, ustaw zmienną środowiskową w dowolnym kierunku (blokuje to również przełącznik w interfejsie):

AGENT_CLI_MODELS_ENABLED=false # or true

Jeśli model ma działać na plikach, ale pozostać w piaskownicy, użyj zamiast tego Work: uruchamia modele obsługujące narzędzia w zamkniętym kontenerze z izolowanym obszarem roboczym.

Śledzenie użycia​

Otwórz Użycie dostawców (/usage) i znajdź sekcję Agenci u góry. Claude Code, Codex, OpenCode, Pi i Strands mają osobne wpisy, z wyraźnym komunikatem, gdy w wybranym okresie nie zapisano żadnych wywołań.

Wywołania CLI przez LWUI zapisują wynik, czas trwania i zgłoszone użycie tokenów. Każde wywołanie tworzy jedno zdarzenie użycia; powtarzane migawki i raporty poszczególnych kroków nie dublują zdarzeń ani tokenów. Brakujące liczniki pozostają niezgłoszone. Zatrzymanie odpowiedzi zapisuje anulowanie, a nieudane zakończenie CLI nie jest uznawane za sukces tylko dlatego, że wygenerowano część tekstu. Wywołania CLI spoza LWUI nie są importowane.

Wywołania Strands są przypisywane do agenta Strands. Szczegóły i ograniczenia opisano w sekcji Użycie agentów.

Konfiguracja​

ZmiennaDomyślnieCel
AGENT_CLI_MODELS_ENABLEDnieustawionaPrzypina funkcję do true/false; brak wartości używa przełącznika administratora (domyślnie wyłączone)
AGENT_CLI_TIMEOUT_MS600000Czas pojedynczej tury agenta przed jej zakończeniem

Rozwiązywanie problemów​

Grupa Agents nie pojawia się. Potwierdź, że funkcja jest włączona w Ustawienia → Zarządzanie użytkownikami → Dostęp i zasady → Modele agentów CLI (domyślnie wyłączona) i że zalogowano się jako administrator. Następnie sprawdź, czy polecenie znajduje się na PATH procesu backendu — nie tylko interaktywnej powłoki. Menedżer usług, kontener Docker lub program uruchamiający aplikację desktopową często zaczyna z dużo mniejszym PATH niż terminal logowania.

Odpowiedź natychmiast się nie udaje. Uruchom to samo polecenie ręcznie jako użytkownik serwera (claude -p "hello" lub codex exec "hello"). Najczęściej agent prosi o ponowne logowanie po wygaśnięciu sesji albo osiągnięto limit subskrypcji. Szczególnie OpenCode zgłasza wygaśnięcie logowania dostawcy tylko we własnych dziennikach; ponownie uruchom opencode auth login jako użytkownik serwera.

Odpowiedzi zatrzymują się w połowie. Długa tura mogła osiągnąć AGENT_CLI_TIMEOUT_MS. Zwiększ wartość albo podziel żądanie na mniejsze etapy.

Powiązane​