Visi projektai

OpenClaw mini vartai

Minimalus headless šliuzas, maršrutinantis agentų/LLM srautą per prievadą, su SSE srautu ir OAuth įrenginio prisijungimu.

TypeScriptTelegramLLM gateways
01

Iššūkis

Pilnos agentų platformos yra sunkios, kai tereikia mažų nuolat veikiančių vartų modelių ir kanalų kvietimams maršrutizuoti eksperimente.

02

Ką darėme

Nulupta OpenClaw šaka be sąsajos ir priedų — tik backend, paleidžiama su „OPENCLAW_PORT=18889 pnpm start“ — kad veiktų kaip lengvas nuolatinis servisas.

03

Rezultatas

Maži vartai, kuriuos gali pakelti ant prievado agentų ar LLM srautui priimti, nepaleisdamas viso OpenClaw steko.

Dev-story straipsnis

Kaip buvo kuriamas projektas: OpenClaw mini vartai

Pradėjome nuo pilno agento vykdymo variklio, sukurto aplink pokalbių sąsają ir daugybę žinučių kanalų, bet mums iš tikrųjų reikėjo visai kitko: headless proceso, kuris prisiriša prie prievado, persiunčia kodavimo agentų ir LLM srautą, grąžina tokenus srautu ir tvarko prisijungimą. Įtampa buvo chirurginė — išlaikyti maršrutizavimo, srauto ir autentifikacijos vidų nepaliestą, tuo pačiu iškerpant sąsają, web modulius ir visus kanalus, išskyrus tą, kuris naudojamas saugojimui, kad į programą panašus TypeScript medis nesipriešintų kuriant atskirą dist.

Skyriai

05

Moduliai

05

Stackas

TypeScript + Telegram

01

Kodėl projektas atsirado

Pilnos agentų platformos yra sunkios, kai tereikia mažų nuolat veikiančių vartų modelių ir kanalų kvietimams maršrutizuoti eksperimente.

Pradėjome nuo pilno agento vykdymo variklio, sukurto aplink pokalbių sąsają ir daugybę žinučių kanalų, bet mums iš tikrųjų reikėjo visai kitko: headless proceso, kuris prisiriša prie prievado, persiunčia kodavimo agentų ir LLM srautą, grąžina tokenus srautu ir tvarko prisijungimą. Įtampa buvo chirurginė — išlaikyti maršrutizavimo, srauto ir autentifikacijos vidų nepaliestą, tuo pačiu iškerpant sąsają, web modulius ir visus kanalus, išskyrus tą, kuris naudojamas saugojimui, kad į programą panašus TypeScript medis nesipriešintų kuriant atskirą dist.

02

Ką sukūrėme

Nulupta OpenClaw šaka be sąsajos ir priedų — tik backend, paleidžiama su „OPENCLAW_PORT=18889 pnpm start“ — kad veiktų kaip lengvas nuolatinis servisas.

Minimalus tik backend tinklų sietuvas, kuris klauso OPENCLAW_PORT ir persiunčia užklausas kodavimo agentų tiekėjams, atsakymus srautindamas per SSE. Jis turi device-code OAuth prisijungimą prie tiekėjų, kontekstą kiekvienam vartotojui pagal x-user-id antraštę ir autentifikacijos režimą, kurį galima visai išjungti lokaliam paleidimui. Telegram lieka tik kaip saugojimo/kanalo backend; sąsajos nėra.

03

Pagrindiniai moduliai ir vartotojo kelias

M01

Redukcija iki tik backend: pašalinti sąsaja, web moduliai ir visi kanalai išskyrus Telegram, tada pridėtas minimalus vienatikslis sietuvo įėjimas, kuris prisiriša prie OPENCLAW_PORT ir vengia senų kanalų priklausomybių

M02

Device-code OAuth prisijungimo pagalbininkai kodavimo agentų tiekėjams, plius auth.mode 'none', kad lokali instancija galėtų veikti visai be prisijungimo

M03

SSE srautas buvo jautriausia dalis — realaus laiko srauto išplovimas ir SSE analizė perėjo atšaukimo-ir-pakartotinio-pritaikymo ciklą, kol tokenų vamzdis atlaikė apkrovą

M04

Kiekvieno vartotojo profilio ir atminties kontekstas maršrutizuojamas pagal x-user-id antraštę, kad vienas sietuvas aptarnautų atskirus vartotojus be persidengimo

M05

Kūrimo chirurgija, kad į programą panašus TS medis emituotų švarų dist: .ts importų kelių perrašymas į .js, tsc emit konfigūracijos derinimas ir config/state numatytoji vieta ~/.openclaw-mini

04

Architektūra ir technologiniai sprendimai

Sukurta su TypeScript, Telegram, LLM gateways.

TypeScript ant Node, statoma su pnpm, maitinama device-code OAuth prieš kodavimo agentų tiekėjus ir srautinama atgal per Server-Sent Events; didžioji darbo dalis buvo trynimas plius tsc privertimas emituoti paleidžiamą atskirą dist.

05

Rezultatas ir pamokos

Maži vartai, kuriuos gali pakelti ant prievado agentų ar LLM srautui priimti, nepaleisdamas viso OpenClaw steko.

Lieknas headless sietuvas, kurį paleidi su vienu env kintamuoju ir viena komanda — be sąsajos, be kanalų pertekliaus — kuris prisijungia, maršrutizuoja agentų srautą ir srautindamas grąžina atsakymus; sąžiningai kalbant, tai forkas, apkarpytas iki vienos užduoties, o ne naujas produktas.

Toliau skaityti

Šie projektai turi artimų technologinių arba produkto sprendimų, todėl padeda matyti, kaip tas pats principas veikia kitame kontekste.

Turite panašią idėją?

Aptarti projektą