Relaywbudowany w binarkę
cmdop server to relay, do którego podłącza się Twoja flota — i jest dostarczany w tej samej podpisanej binarce co agent i interfejs webowy. Uruchom `cmdop server`, skieruj na niego maszyny: agenty wydzwaniają na zewnątrz (bez portów przychodzących, przyjazne dla NAT), klienty sięgają ich przez HTTP i WebSocket.
Jedna binarka to kręgosłup
Nie ma klastra do postawienia. Relay, konsola webowa i agent to jedna podpisana binarka — uruchom ją, a cała płaszczyzna staje. Agenty mówią gRPC; klienty mówią HTTP i WebSocket; wszystko jest ograniczone do floty i audytowane.
HTTPPowierzchnia skierowana do klienta — uwierzytelnianie, obecność, odczyty maszyn i flot, a także wbudowana konsola webowa, wszystko obsługiwane przez jedną binarkę.
gRPCTransport agenta. Maszyny wydzwaniają na zewnątrz i utrzymują dwukierunkowy strumień — przepływają tędy operacje terminala, wykonywania i plików, nawet na loopbacku.
WebSocketKanał push przez HTTP. Strumieniuje wyjście na żywo, obecność i zdarzenia do podłączonych klientów — na komputerze i w dowolnej przeglądarce.
tunnelsDosięgnij usługę za maszyną bez otwierania portu na internet — maszyna wydzwania na zewnątrz, a relay routuje połączenie z powrotem.
schedulerTrwałe harmonogramy, odroczone zadania i prace porządkowe działają wewnątrz binarki — bez osobnego procesu pracownika, bez kolejki do obsługi.
orchestratorKoordynator floty (Jarvis) działa jako goroutine in-process, który dołącza do relay jako wirtualna maszyna i koordynuje flotę.
Kontrakt gRPC żyje w proto/agentv1 (cmdop.agent.v1) i jest jedynym źródłem prawdy — stuby agenta Go są z niego generowane.
Zobacz relayod środka
Każdy zrzut ekranu poniżej to prawdziwa konsola administracyjna cmdop server — powierzchnia operatora, którą dostajesz, gdy samodzielnie hostujesz relay.
Agenty wydzwaniają na zewnątrz.Bez portów przychodzących.
Każda maszyna otwiera wychodzący strumień gRPC do relay i pozostaje przez niego osiągalna — nie ma portu nasłuchującego do wystawienia, dziury w zaporze ani przechodzenia NAT do pielęgnowania. Relay routuje wiadomości między agentami a klientami; maszyny nigdy nie przyjmują połączeń przychodzących.
Izolowanydla każdego klienta
Każde konto dostaje własną domenę relay, zapewnianą wyłącznie dla Twojej floty — terminacja TLS i routing, których nie współdzieli żaden inny klient. Obecność, audyt i historia pozostają w obrębie Twojej floty; nic nie jest routowane przez granice dzierżawców.
Koordynatorktóry żyje w relay
Jarvis to serwerowy agent AI, który dołącza do relay jako wirtualny węzeł maszyny. Ograniczony do floty i zawsze włączony, może dosięgnąć inne agenty — zapytać jednego, rozesłać do wielu — i koordynować pracę w obrębie floty bez niczego działającego na Twojej własnej maszynie.
Brama zgodna z OpenAIpod /v1
Relay udostępnia wnioskowanie pod /v1 — chat completions, embeddingi i modele — mówiąc w formacie wire OpenAI. Serwer przechowuje klucze dostawców i routuje per flota z wydatkami i limitem, więc agenty dostają jeden endpoint uwierzytelniany tokenem bearer zamiast stosu poświadczeń dostawców.
Uruchom relay samodzielnie
Relay to nie osobna usługa do wdrożenia — to ta sama podpisana binarka, którą instalujesz wszędzie. Zainstaluj cmdop, uruchom `cmdop server` i skieruj na niego swoje maszyny. Jedno polecenie stawia razem relay, konsolę webową i koordynatora.
Bez klastra, bez pliku compose: `cmdop server` to jeden proces, który obsługuje HTTP (:63141) i gRPC (:63142) oraz uruchamia koordynatora jako goroutine in-process. Postaw przed nim własny reverse proxy, gdy chcesz TLS i stabilny adres.
Uruchom kręgosłup flotysamodzielnie
Postaw relay, skieruj na niego swoje agenty i przejmij całą płaszczyznę od końca do końca.





