Končno je tu, kar ste želeli! Ralph TUI, vizualizacija Ralph Loop
Končno je tu, kar ste želeli! Ralph TUI, vizualizacija Ralph Loop
Pred tem sem napisal vadnico o ralph-loop, in veliko prijateljev je po izvedbi poročalo o enaki stvari: Super je, Claude Code se končno lahko izvaja dolgo časa. Vendar, ko ga opazujete, se zdi, da se ne premika, in se ne morete izogniti dvomu: "Ali napreduje ali se vrti na mestu?"
To je razlog, zakaj sem se nedavno ukvarjal z ralph-tui.

ralph-tui ne vsiljuje vezave na Claude Code, temveč podeduje in razvija bistvo ralph loop, vizualizira izvajanje nalog in proces, kar močno znižuje prag za dolgotrajno delo velikih modelov. Lahko priključite druge agente, druge modele, domače, poceni, tiste, ki jih lahko dolgoročno poganjate. Z ralph-tui je za nas navadne ljudi to enako, kot če bi ročni menjalnik zamenjali za avtomatskega s tempomatom.
Kaj to sploh je?
ralph-tui si lahko predstavljate kot "orkestrator zanke za AI coding agenta", vendar ni zadovoljen s tem, da "lahko teče", bolj ga zanima, da "lahko vidite, nadzirate in obnovite".
Njegov osnovni način delovanja je preprost:
- Daste mu kup nalog (lahko iz PRD, lahko iz drugih sistemov nalog)
- Izbere tistega z najvišjo prioriteto
- Sestavi prompt
- Zažene agenta za izvedbo
- Presodi, ali je naloga končana
- Zapiše stanje
- Naslednji krog se nadaljuje
Ključno je: vse to lahko vidite v terminalu in ga lahko kadar koli ustavite ali prevzamete. Uradno je tudi njegova pozicija zapisana zelo jasno: agent loop orchestrator z interaktivnim TUI, ki podpira TUI / headless / remote.
Zakaj pravim, da je bolj primeren za "dolgotrajno izvajanje"?
Največja težava pri izvajanju zanke s skriptom ni, da se ne more zagnati, ampak da ne veste, kje se je ustavil.
Gledate, kako se dnevniki hitro posodabljajo, ventilator se veselo vrti, vendar niste prepričani:
- Ali ponavlja popravljanje iste napake?
- Ali ves čas spreminja isto kodo in jo nato spreminja nazaj?
- Ali je že končal, samo ni zapustil?
- Ali je obtičal v neskončni zanki na nekem testu?

Rešitev ralph-tui je zelo "inženirska":
- Ima koncept seje, stanje se shrani na disk (.ralph-tui/session.json)
- Če se sesuje, se lahko nadaljuje z izvajanjem (crash recovery)
- Ima mehanizem zaklepanja, da se izognete odpiranju več primerkov, ki bi uničili imenik
- Lahko ga celo zaženete v headless načinu v CI ali celo odprete poslušalca na oddaljenem koncu in se lokalni TUI poveže z njim
Na kratko: bolj je, kot da "upravljate delavca, ki zna pisati kodo", kot da "opazujete skript, ki se obnaša čudno".
Kako ga namestiti
ralph-tui je ekosistem Bun/TypeScript, zato je namestitev precej enostavna. Uradna stran ponuja tudi stran za namestitev.
Najprej preverite, ali imate na svojem računalniku bun:
bun --versionnato namestite ralph-tui (tukaj je tipična namestitev, za podrobnosti glejte uradno stran za namestitev):
bun add -g ralph-tuiPo namestitvi preverite:
ralph-tui --helpČe ste privrženec Node in se ne želite dotikati bun, je tudi v redu:
npm i -g ralph-tui
Ne delajte velikih stvari takoj, zaženite minimalno zaprto zanko
Priporočam, da pri prvi uporabi ne začnete s čim podobnim "refaktoriranjem celotnega repozitorija". Storite samo eno stvar: poskrbite, da bo izvedel majhno, sprejemljivo nalogo.
Inicializacija
Odprite poljuben imenik:
mkdir ralph-tui-demo && cd ralph-tui-demo ralph-tui setupTo bo vstopilo v interaktivni vodnik, kar pomeni "namestitev ralph-tui v to skladišče", to bo storilo:
- Samodejno zazna, katere agente imate nameščene na vašem računalniku (na primer Claude Code, OpenCode itd.)
- Ustvari konfiguracijsko datoteko v projektu: .ralph-tui/config.toml
- Mimogrede namesti veščine, povezane z generiranjem PRD/pretvorbo nalog (kasneje vam jih ne bo treba ročno nameščati)
Osebno priporočam: prvič ne bodite leni, setup je treba izvesti enkrat.
Generiranje PRD projekta
Ko je setup končan, je naslednji korak najbolj osrednji del uradnega priročnika in tudi najbolj primeren za pisanje demo predstavitve: create-prd.
Ukaz ralph-tui create-prd --chat bo vstopil v pogovorni proces, ki vas bo kot vodja izdelka spraševal o ciljih, mejnih pogojih in merilih sprejemljivosti. Po končanem spraševanju bo neposredno izpisal dve stvari v projektu (to je bistvo):
- Datoteko PRD v formatu markdown: ./tasks/prd-feature.md
- Datoteko z nalogami, ki jo je mogoče neposredno izvesti: ./prd.json
V tej fazi ste resnično vstopili v "standardno zaprto zanko" ralph-tui:
Zahteva (PRD) → Naloga (prd.json) → Izvedba (run)
Zaženite
Ko imate prd.json, je izvedba logična:
ralph-tui run --prd ./prd.json Videli boste, da se TUI zažene in začne z zanko: izbira naloge → izvedba → presoja dokončanja → pisanje stanja → konec ali naslednji krog.
Pri prvem zagonu močno priporočam, da dodate zgornjo mejo iteracij, da jo najprej zaprete v kletko:
ralph-tui run --prd ./prd.json --iterations 5 Po zagonu si oglejte spremembe, zaženite teste in preverite, ali PRD in naloge ustrezajo pričakovanjem. Ko potrdite, da je ta povezava prehodna, sprostite iteracije in preklopite na headless/remote, to je zanesljiv ritem.
V tem trenutku lahko v bistvu potrdite: Ta zanka res deluje.
Kako izbrati model/agenta? O varčevanju denarja je treba govoriti pošteno
Vem, da mnoge najbolj zanima: "Ali mi ni treba uporabljati Claude Code? Ali lahko uporabljam cenejše modele?"
Odgovor je: Da.
ralph-tui vam omogoča, da določite agenta in model (v uradni dokumentaciji run so primeri).
Na primer, uporabite Claude Opus:
ralph-tui run --prd ./prd.json --agent claude --model opus Ampak pošteno povedano, sam ne bi uporabil Opus za opravljanje "dopolnjevanja testov, popravljanja lint" tega dela, je predrago. Moja navada je razslojevanje:
- Cenejši modeli: izvajajo veliko ponavljajočega se dela (dopolnjevanje testov, dopolnjevanje komentarjev, popravljanje formatiranja, dodajanje meja)
- Dragi modeli: se pojavijo samo na ključnih točkah (prilagoditev arhitekture, težavni hrošči, osrednja logika)
Če ste običajni razvijalec, je ta miselnost še pomembnejša. Ker nimate proračuna velikega podjetja, morate nadzorovati stroške, da lahko delate dlje.
Želite še bolj uživati? Prepustite tudi "pisanje PRD" agentu
ralph-tui ima zasnovo, ki mi je všeč: podpira skills (preprosto povedano, gre za nabor zunanjih ukazov agenta).
Uradni način namestitve je z add-skill:
bunx add-skill subsy/ralph-tui --all Ali pa ga namestite na določenega agenta, na primer claude-code:
bunx add-skill subsy/ralph-tui -a claude-code -g -y Po namestitvi lahko v pogovoru z agentom uporabite ukaz slash:
/ralph-tui-prd /ralph-tui-create-json /ralph-tui-create-beads To je podobno, kot če bi v IDE namestili vtičnik, le da je ta vtičnik namenjen agentu. Njegov namen je skrajšati čas "ročnega prenašanja zahtev" in narediti zahtevo → nalogo → izvedbo bolj podobno tekočemu traku.
Kdaj ga uporabiti? Kdaj ga ne uporabiti?Ne maram preveč naracije "vse se da rešiti z AI", ker je zavajajoča. Orodje je orodje, vredno je le v ustreznem scenariju.
Scenariji, kjer je ralph-tui primeren
Imate kup takšnih opravil:
- Popravljanje testov (še posebej pri starih projektih)
- Popravljanje lint / formatiranja
- Majhne refaktorizacije (združevanje ponavljajoče se kode)
- Množično dodajanje tipov, popravljanje robnih primerov
- Razčlenjevanje zahtev in počasno izvajanje po vrsti nalog
Tem opravilom je skupno naslednje: veliko nalog, visoka stopnja ponavljanja, možnost sprejema, možnost iterativnega napredovanja.
Scenariji, kjer ralph-tui ni primeren
Če želite narediti to:
- Enkratna velika refaktorizacija, nejasna merila sprejema
- Zahteva je sama po sebi nejasna, odvisna od vašega implicitnega znanja
- Potrebna je obsežna komunikacija/potrditev med ekipami
- Potrebujete presojo izdelka
Pri takšnih nalogah bo agent loop samo povečal zmedo.
Kakšna je razlika med ralph-tui in ralph-loop (ralph-claude-code)?
ralph-claude-code je bolj kot "avtopilotni vtičnik za Claude Code": skript ga zažene, izvaja zanke, izhodno zaznavanje, omejevanje hitrosti in odklopnik so vam zagotovljeni. Če želite "hitrost", jo boste dobili.
ralph-tui je bolj kot "inženirska konzola za agent loop": ne veže se na določen model ali sistem nalog. Želi rešiti inženirske težave, kot so "dolgotrajno delovanje, opazovanje, nadzor, obnovitev, oddaljenost".
Torej, kako izbrati?
- Ste uporabnik Claude Code in ga želite hitro zagnati → ralph-claude-code
- Želite priključiti različne modele, prihraniti denar, upravljati z loop kot storitvijo → ralph-tui
Na koncu: ne dovolite, da vaše skladišče postane laboratorij
Sam imam nekaj železnih pravil pri izvajanju agent loop, ki jih zapišem tukaj, da jih upoštevate, da zmanjšate verjetnost nesreče:
- Izvajajte na veji, ne se igrajte na main.
- Pri prvem zagonu vedno dodajte --iterations, da najprej potrdite, da ne bo ponorel.
- Naloga mora biti sprejemljiva: bodisi lahko izvaja teste, bodisi lahko izvaja lint, bodisi lahko primerja izhodne datoteke.
- Naučiti se morate ustaviti: če vidite, da začenja krožiti, je pametneje ustaviti kot nadaljevati z zapravljanjem denarja.
- Poceni modeli za groba dela, dragi modeli za ključna dela: stroški se upravljajo, ne pa se jih prosi.Projektna stran: https://github.com/subsy/ralph-tui





