VulCode

lokalny-bot

Bot Discorda wołany pingiem, który odpowiada Claude'em z subskrypcji Claude Code albo modelem z lokalnej Ollamy. Parametry przed treścią ustawiają model, kontekst kanału, temperaturę, limit, rolę i odpowiedź zaplanowaną na później, a tryb pomiaru puszcza ten sam prompt przez każdy lokalny model i oddaje tabelę wyników. Każdy kanał ma własną sesję, która przeżywa restart bota.

TypBot Discorda
JęzykNode.js
ModeleClaude Code, Ollama
UruchomienieUsługa systemd
lokalny-bot

Wprowadzenie

lokalny-bot to bot Discorda z dwoma źródłami odpowiedzi: Claude z subskrypcji Claude Code i modele działające lokalnie w Ollamie. Woła się go pingiem z pytaniem, a parametry przed treścią zmieniają model i sposób odpowiedzi.

discord · bash
@lokalny-bot co to za błąd: EADDRINUSE?
@lokalny-bot -m qwen3:14b -t 0.3 streszcz mi ten wątek

Claude bez billingu API

Claude nie idzie przez API, tylko przez podproces CLI Claude Code zalogowanego na tym koncie. Podproces nie dostaje żadnych narzędzi, bo ma rozmawiać, a nie działać jako agent z dostępem do dysku, i nie wczytuje ustawień, hooków ani wtyczek konta. Prompt idzie na standardowe wejście, więc ani cudzysłowy, ani długość treści nie rozbiją wywołania.

Każdy kanał ma własną sesję o identyfikatorze wyliczonym z identyfikatora kanału, więc rozmowa przeżywa restart bota. Historia kanału trafia do sesji raz, przy jej zakładaniu, a dalej rozmowę trzyma już sama sesja.

Modele z Ollamy

Lista modeli nigdy nie jest wpisana w kod: bot pyta o nią Ollamę przy każdym użyciu, razem z możliwościami każdego modelu, więc pobrany model sam pojawia się w pomocy. Nazwę modelu można skrócić do rodziny albo skrótu.

Parametry

Parametry przed treścią

ParametrCo robi
-mKtóry model odpowiada
-cIle poprzednich wiadomości kanału dociągnąć jako kontekst
-tTemperatura
-sOdpowiedź o wskazanej godzinie albo za wskazany czas
-rWłasny prompt systemowy
-lSufit długości odpowiedzi
--seedZiarno dla powtarzalnych odpowiedzi
--thinkMyślenie na głos na modelach, które to potrafią
--benchTen sam prompt na każdym modelu i tabela pomiarów

Pierwsze słowo, które nie jest parametrem, zaczyna treść, więc myślnik w zdaniu zostaje zwykłym tekstem. O parametrach, których CLI Claude nie obsługuje, bot mówi wprost pod odpowiedzią, zamiast udawać, że zadziałały.

Pomoc i uprawnienia

Komenda /help wypisuje tematy pomocy, a /help z nazwą tematu tłumaczy jeden parametr. Bot słucha tylko wskazanych operatorów, a bez tokenu albo operatora kończy pracę i mówi dlaczego.

Pytania o lokalny-bot

Więcej projektów

Inne realizacje z tej samej kategorii - zobacz, jak podchodzimy do podobnych wyzwań.

Masz podobny projekt?

Napisz do nas - wycena jest bezpłatna i wraca w godzinę.