Dashboard

Stan systemu i szybkie akcje

Capture—
Segmenty bufora—rolling buffer
Konta aktywne—OAuth + chat:write
Klipy gotowe—ostatnie 50

Szybkie sterowanie

Capture i ręczny klip

Pipeline: bufor → 720p → transkrypcja → klatki → jedno zapytanie OpenAI → drafty komentarzy dla wszystkich aktywnych kont.

Aktualny target

Kick + automatyczne źródło wideo

Kanał
—
Źródło wideo
—
Auto detector
—

Ostatnie klipy

Status przetwarzania

Kanał Kick

Wskazuje czat i broadcaster_user_id

Normalnie zostaw to pole puste. Bot używa yt-dlp do automatycznego wykrycia aktualnego źródła transmisji Kick. Ręczny HLS/RTMP/SRT jest tylko awaryjnym override.

Bufor i trigger

Ustawienia wykrywania klipu


Tryb okresowy: np. co 120 s bierze ostatnie 35 s z rolling buffera. Jeśli chwilę wcześniej zadziałał trigger audio albo worker nadal przetwarza klip, okresowy trigger poczeka zamiast dublować materiał.
Detektor audio i timer mogą działać jednocześnie. Do AI trafiają tylko gotowe klipy, nie cały stream.

Autoryzowane konta Kick

Każde konto musi samodzielnie przejść OAuth z zakresem user:read + chat:write

Bot nie tworzy kont i nie omija zabezpieczeń Kick. Tokeny są przechowywane zaszyfrowane. W v4 auto-send ustawia się osobno przy każdym autoryzowanym koncie. Używaj tej opcji dla kont, które są jawnie obsługiwane automatycznie.
Auto-send per konto: każde konto ma własny checkbox, minimalny score i cooldown. Jeden klip nadal jest analizowany tylko raz.
Kolejka wysyłki: żeby nie robić burstu requestów, wiadomości mają stały odstęp, a konto rozpoczynające batch jest rotowane round-robin. Możesz też ograniczyć liczbę kont reagujących na pojedynczy klip.

Klipy i drafty

Jeden klip → jedna analiza multimodalna → komentarz dla każdego aktywnego profilu

Kick Developer App

Jedna aplikacja dla wszystkich autoryzowanych kont

Redirect URI musi być identyczne z ustawieniem aplikacji w Kick Developer. Domyślnie: http://localhost:8080/api/kick/oauth/callback

OpenAI

Transkrypcja + vision + Structured Outputs

Koszt jest ograniczony: nawet przy dużej puli kont do jednego requestu trafia tylko rotowana grupa profili, np. 8, a model może zwrócić SKIP.
To nie jest pełna historia rozmowy. Do promptu trafiają tylko krótkie ostatnie teksty, żeby ograniczyć powtórzenia i koszt tokenów.
Wpisz dokładne nazwy emotek rozdzielone przecinkami. Bot może używać tylko tej listy. Renderowanie zależy od tego, czy dana emotka jest dostępna na docelowym czacie dla wysyłającego konta.

Media / 720p

Domyślny CPU encoder działa zarówno w Docker Desktop na Windows, jak i macOS