FRST webes útmutató
Minden, amit a használathoz tudni kell – az első belépéstől a kész kód letöltéséig.
1. Mi az FRST?
Az FRST egy AI-fejlesztőcsapat: több modell dolgozik együtt egy szoftveren, szerepekre bontva. Az architekt megtervezi a projekt szerkezetét és szétosztja a munkát, a fejlesztők megírják a fájlokat, a tesztelő teszteket ír, a végén pedig a kapuőr dönti el, hogy a munka elkészült-e.
A csapat körökben dolgozik. Minden kör után az FRST kapukat futtat – modell nélkül, gépi ellenőrzéssel:
| Kapu | Mit ellenőriz |
|---|---|
| Syntax | Értelmezhető-e minden fájl (pl. php -l, py_compile, node --check). |
| Tests | Lefutnak-e a projekt tesztjei, és melyik bukik. |
| Security | Ismert veszélyes minták: SQL-befűzés, escape nélküli kimenet, gyenge jelszókezelés stb. |
| Build | Lefordul-e a projekt (pl. React/Vite esetén). |
Ha egy kapu elbukik, a hiba – fájllal és sorral – visszamegy annak a munkásnak, akié a fájl, és a következő körben javítja. Ha minden kapu zöld, a kapuőr ellenőrzi, hogy a cél teljesült-e. Csak az a futás „Kész”, amit a kapuőr jóváhagyott.
2. Belépés meghívóval
Az FRST zárt rendszer: fiókot csak meghívókóddal lehet létrehozni. A kódot a szerver üzemeltetőjétől kapod; egyszer használható.
- Nyisd meg a kezdőlapot, és kattints a Van meghívóm linkre.
- Add meg a meghívókódot, az e-mail címed és egy legalább 10 karakteres jelszót.
- A Fiók létrehozása után rögtön be is lépsz.
Tíz sikertelen belépési kísérlet után a fiók 10 percre zárolódik. A bejelentkezés 14 napig érvényes, utána újra be kell lépni.
3. Saját API-kulcsok
Az FRST a te kulcsaiddal hívja a modelleket. A modellhasználat díját a szolgáltató neked számlázza – az FRST szervere nem fizet helyetted, és nem is lát bele a számládba.
| Szolgáltató | Hol kapsz kulcsot | Modellnevek a csapatokban |
|---|---|---|
| Google Gemini | aistudio.google.com → Get API key | gemini-… |
| Anthropic Claude | console.anthropic.com → API Keys | claude-… |
| OpenAI | platform.openai.com → API keys | gpt-… |
| OpenRouter | openrouter.ai → Keys | openrouter/… |
| Groq | console.groq.com → API Keys | openai/gpt-oss… |
| SambaNova | cloud.sambanova.ai → API | samba/… |
A Kulcsok oldalon illeszd be a kulcsot, majd Mentés. A mentés után a kulcsot soha többé nem látod – csak az utolsó 4 karakterét, hogy felismerd. Cseréhez írj be újat, eltávolításához kattints a Törlés gombra.
4. Az első futás lépésről lépésre
- Kulcs: add meg legalább annak a szolgáltatónak a kulcsát, amelyiket a választott csapat használja (az Új futás oldal megmutatja).
- Új futás oldal → Projekt: válaszd az „+ Új projekt…” lehetőséget, és adj nevet (kisbetű, szám,
-és_; pl.receptkonyv). - Technológia: pl. PHP, Python/Flask, Node.js, React, statikus HTML.
- Csapat: a lista alatt látod a munkásokat, a modelljeiket és hogy mely kulcsok kellenek. Piros címke = hiányzó kulcs.
- Cél: írd le, mit építsen a csapat (lásd a következő részt).
- Költségplafon: első próbához 0,5–1 USD bőven elég. A jobb oldali Indítás oszlop ellenőrzőlistája mutatja, mi hiányzik még, és mekkora lesz a tényleges plafon.
- Meglévő tesztek védelme: alapból bekapcsolva. Ha a projektben már vannak zöld tesztek, a csapat nem igazíthatja őket a saját kódjához: átírás után is az eredeti változatuk dönt (a naplóban
MEGLEVO TESZT). Kapcsold ki, ha szándékosan változtatod a meglévő működést. Meglévő projektnél az Architect a meglévő kódot és a zöld teszteket is látja, és a terv nem írhatja felül őket. - Futás indítása – a futás oldalára kerülsz, ahol élőben látod a naplót.
5. Jó cél írása
A cél a csapat egyetlen információforrása arról, mit akarsz. Minél konkrétabb, annál kevesebb kör és pénz kell hozzá.
- Funkciók felsorolva, nem egy mondatban: mit tud a felhasználó csinálni, milyen oldalak vannak.
- Adatok: milyen mezők vannak (pl. recept: cím, hozzávalók, elkészítési idő, kép).
- Szabályok: ki mit láthat, mi kötelező, mi a validáció.
- Mi NEM kell: ez legalább annyira segít, mint a kérés.
- Elfogadási feltételek: „kész, ha…” – ebből ír a tesztelő tesztet, és ez alapján dönt a kapuőr.
Példa:
Receptkönyv PHP-ban, SQLite adatbázissal. Funkciók: - Receptlista a kezdőlapon (cím, elkészítési idő), legújabb elöl. - Recept oldal: cím, hozzávalók listája, leírás. - Admin felület jelszóval: recept létrehozása, szerkesztése, törlése. Szabályok: - A cím kötelező, legfeljebb 120 karakter. - Minden kimenet escape-elve, minden űrlapon CSRF token. Nem kell: regisztráció, képfeltöltés, keresés. Kész, ha: a kezdőlap 200-at ad, új recept létrehozás után megjelenik a listában, és admin nélkül a szerkesztő oldal átirányít a belépésre.
6. Csapat és technológia
A csapatokat a szerver üzemeltetője állítja össze, de sajátot is készíthetsz (lásd 11. fejezet); a választható lista az Új futás oldalon látszik. Egy csapatban általában van architekt, egy vagy több fejlesztő, tesztelő és kapuőr. A modellek erőssége és ára csapatonként eltér – a gyorsabb, olcsóbb modellel több kör kellhet.
A technológia határozza meg a kapukat és a szabályokat, amiket a csapat követ. PHP-nál például nincs composer és nincs framework: az eredmény egy sima megosztott tárhelyre is feltölthető.
7. A futás követése
A futás oldalán élőben látod, mit csinál a csapat. Ha bezárod az oldalt, a futás a szerveren tovább megy; visszatérve a teljes napló újra megjelenik. A fontosabb sorok:
| Sor | Jelentése |
|---|---|
Belepesi allapot | A kapuk eredménye a futás előtt. Meglévő projektnél ehhez méri, hogy egy kör rontott-e. |
MEGLEVO TESZT | A csapat átírt vagy törölt egy, a futás előtt zöld tesztet, és az eredeti változata az új kódon bukik – a meglévő működés megváltozott. A tesztkapu ilyenkor piros. |
=== 2. KOR === | Új kör kezdődik. |
… dolgozik: … | Egy munkás modellhívása. |
Syntax: PASS / FAIL | Egy kapu eredménye. A FAIL után a hiba helye áll. |
[KIMARADT] | A kapu nem futott le (pl. még nincs teszt, vagy hiányzik egy csomag). Nem hiba, de nem is bizonyít semmit. |
Kapuor … ellenoriz | Minden kapu zöld; a kapuőr nézi, teljesült-e a cél. |
git: … | Minden kör elmentődik a projekt git-történetébe. |
Ha egy kör rosszabb állapotot hagy, mint a legjobb addigi, az FRST automatikusan visszaállítja a legjobbat – a rontás nem marad a kódban.
A napló fölött a csapat-topológia élőben mutatja, ki dolgozik éppen: a borostyán, forgó gyűrűs kártya fut, a zöld kész (költséggel és fájlszámmal), a piros hiba, a halvány, szaggatott keretes kihagyva (az előző munkája jó volt, vagy a terv szerint nem kell). Legalul a kapuőr.
8. Állapotok
| Állapot | Jelentése |
|---|---|
| Sorban áll | A szerveren most több futás dolgozik; hamarosan sorra kerül. |
| Fut | A csapat dolgozik. |
| Kész | Minden kapu zöld, és a kapuőr jóváhagyta. |
| Nem készült el | Elfogytak a körök, elérte a költségplafont, vagy elakadt (ugyanaz a hiba ismétlődött). A kód a legjobb elért állapotban marad – egy újabb futással folytatható. |
| Hiba | A futás nem tudott dolgozni (pl. hibás kulcs, elérhetetlen modell, elfogyott tárhely). A napló vége megmondja, miért. |
| Leállítva | Te állítottad le. |
| Megszakadt | A szerver újraindult a futás közben. Indítsd újra. |
9. Az eredmény: fájlok és letöltés
A Projektek oldalon megnyithatod a projektet: bal oldalt a fájlok, jobbra a kiválasztott fájl tartalma. A Letöltés (.zip) a teljes projektet adja, a .git mappával együtt – így a körök története is nálad van (git log).
Futtatás a saját gépeden, technológiánként:
PHP: php -S 127.0.0.1:8000 (a projekt mappájában) Flask: pip install -r requirements.txt → python main.py Node: npm install → node server.js React: npm install → npm run dev Statikus: nyisd meg az index.html-t
PHP-projektnél, ha van telepítő, az első megnyitáskor az kéri be a beállításokat, és az hozza létre az adatbázist.
10. Továbbfejlesztés meglévő projekten
Válaszd ki a meglévő projektet az Új futás oldalon, és írd le, mit változtasson a csapat. Ilyenkor a csapat javítási módban dolgozik: csak az érintett részeket módosítja, nem írja újra a projektet, és a futás előtti állapothoz méri, hogy nem rontott-e el semmit, ami eddig működött.
Máshol készült projekt feltöltése
A Projektek oldal alján tölthetsz fel egy meglévő projektet .zip-ként, új projektnév alá. Ha a zipben minden egy mappában van (így csomagol a legtöbb program), a mappa tartalma lesz a projekt. Linkek nem kerülnek át, és a feltöltés mérete korlátos (alapból 50 MB tömörítve). Utána az Új futás oldalon válaszd ki, és írd le, mit változtasson a csapat.
Projekt törlése
A Projektek listában a Törlés a projekt minden fájlját törli (a futások előzménye megmarad). Futás közben a futás projektje nem törölhető. Előtte érdemes letölteni.
11. Saját csapat
A Csapatok oldalon a szerver csapatai mellett sajátot is összeállíthatsz – a legegyszerűbb egy meglévő másolatából. Amit megadhatsz:
- Munkások (2–8) a grafikus csapatépítőben: legfelül az architekt (ő tervez és osztja ki a fájlokat), alatta a munkások sorokban, legalul a kapuőr.
- Egymás mellé tett munkások párhuzamosan dolgoznak. Egymás alá tettek sorban: a későbbi sor megkapja a korábbi sorok ugyanabban a körben elkészült fájljait – például a frontend a kész backend API-ra épít.
- Húzd a kártyákat (vagy használd a ◀ ▶ ▲ ▼ gombokat); a + gombbal párhuzamos munkást, az Új sor gombbal új sort adsz hozzá. Szerkesztés: dupla kattintás vagy ✎ – név, szerep, modell és egy nem kötelező saját utasítás. A kapuőr kártyáján az ő modellje állítható: ő dönti el a végén, hogy a cél teljesült-e.
- Munkás-eszközök – a kártya alján lévő két ikon, munkásonként kapcsolható (alapból mind ki): a nagyító az önellenőrzés – a munkás vázlata a kör vége előtt átmegy a szintaxis- és build-ellenőrzésen, és ha a saját fájljaiban hiba van, egy javító hívást kap, így egy elgépelés nem visz el egy teljes plusz kört. A térkép az interfész-térkép – a munkás megkapja a projekt útvonalait, függvényeit és űrlapmezőit, hogy a mások fájljaira pontos nevekkel hivatkozzon. Az önellenőrzés kódot vagy sablont író munkásnak, a térkép a frontendnek és a tesztírónak ajánlott.
- Körök száma (1–12).
A modellnév előtagja dönti el, melyik kulcsod kell hozzá (gemini-, claude-, gpt-, openrouter/, samba/, openai/gpt-oss). Helyi modell nem választható. A saját csapatodat csak te látod.
12. Költség és leállítás
- A költségplafon futásonként érvényes. Ha a becsült költség eléri, a futás a kör végén megáll (Nem készült el). A szerver üzemeltetője felső határt is szabhat.
- A Leállítás gomb azonnal hat: a folyamatban lévő parancs (pl. egy lassú teszt) is megáll. A már elkészült kód megmarad.
- A pontos költséget a szolgáltatód felületén látod; az FRST becslése a nyilvános árakból számol. A futás végén a becsült költség a futáslistában és az Áttekintés oldalon is megjelenik.
- Költségkeret (Team, Enterprise): a szervezet tulajdonosa vagy adminja futásonkénti és havi keretet adhat a tagoknak. Ilyenkor a futás plafonja a kért összeg, a futásonkénti keret és a havi maradék közül a legkisebb; ha a havi keret elfogyott, abban a szervezetben nem indíthatsz futást. A saját, személyes workspace-edre a keret nem vonatkozik. A kereted a Fiók oldalon látod.
13. Korlátok
- Egyszerre egy futásod lehet. Ha a szerver foglalt, a futásod sorba áll.
- A futás közben a kód nem éri el az internetet. Csomagot telepíteni nem lehet: Pythonban csak a futtató környezetben lévő csomagok (pl. Flask, pytest) használhatók. Ha a projekt mást kér, a teszt-kapu KIMARADT jelzést kap, és megnevezi a hiányzó csomagot.
- Egy parancs legfeljebb 5 percig futhat; a futás memóriája 1 GB.
- A tárhelyed korlátos (alapból 500 MB, minden projekt együtt; a Projektek oldalon látod). Ha egy futás közben elfogy, a futás leáll; ha elfogyott, új futás nem indul – törölj egy projektet.
- A fájlnézőben 1 MB feletti fájl nem jelenik meg (a letöltésben benne van). A letöltés legfeljebb 200 MB.
- Csak felhőmodellek használhatók; helyi (Ollama) modell a webes változatban nincs.
14. Adatvédelem és biztonság
- A kulcsaid titkosítva tárolódnak. A felület és az API soha nem adja vissza őket. Futás közben a szerver visszafejti és a modellszolgáltatónak elküldi őket – ez a működés feltétele. A generált kód a kulcsokat nem látja.
- A projekted a szerveren, a saját mappádban van. Más felhasználó nem látja. A szerver üzemeltetője technikailag hozzáfér – ahogy bármely tárhelyszolgáltató.
- A modellszolgáltató megkapja a célt és a projekt releváns fájljait – ezek nélkül nem tud dolgozni. Titkot (jelszót, éles kulcsot) ne írj a célba, és ne tegyél a projektbe.
- Minden futás elzárt környezetben fut: hálózat nélkül, korlátozott erőforrásokkal, és csak a saját projektmappáját látja.
15. Gyakori hibák és megoldásuk
| Üzenet | Megoldás |
|---|---|
| „a csapathoz hiányzó kulcs: …” | Add meg a felsorolt szolgáltató kulcsát a Kulcsok oldalon, vagy válassz másik csapatot. |
| „már fut egy futásod” | Várd meg a végét, vagy állítsd le. |
| Hiba, a naplóban „… hiba: 400 / API key not valid” | A kulcs hibás vagy lejárt. Cseréld a Kulcsok oldalon. |
| Hiba, a naplóban „429” vagy „quota” | A szolgáltatónál elfogyott a keret vagy túl sűrűk a hívások. Várj, vagy emeld a keretet. |
| Nem készült el, a naplóban ugyanaz a hiba körről körre | A csapat elakadt. Pontosítsd a célt azon a ponton, és indíts új futást ugyanazon a projekten. |
| Tests: [KIMARADT] … nincs a futtató képben | A projekt olyan Python-csomagot kér, ami a webes környezetben nincs. Kérd a célban, hogy ne használja, vagy szólj az üzemeltetőnek. |
| „túl sok sikertelen próbálkozás” | 10 perc múlva újra beléphetsz. |
| Megszakadt | A szerver újraindult. Indítsd újra a futást – a projekt addigi állapota megmaradt. |
| Hiba, a naplóban „Architekt hiba … a futás leáll” | Az első modellhívás kétszer is elbukott (rossz kulcs, kimerült keret, kiesett szolgáltató). A munkások ilyenkor nem indulnak, így nem fizetsz feleslegesen. Javítsd a kulcsot, vagy válassz másik csapatot. |
| „elfogyott a tárhelyed” | Töröld a nem használt projekteket a Projektek oldalon (előtte letöltheted őket). |
| Feltöltés: „veszélyes útvonal a zipben” | A zipben van olyan bejegyzés, ami a projekt mappáján kívülre írna (../ vagy abszolút út). Csomagold újra a projekt mappáját. |
| Feltöltés: „ilyen nevű projekt már van” | Adj új nevet, vagy töröld előbb a régit. |
16. Fiók és jelszó
A Fiók oldalon változtathatod meg a jelszavad; ehhez a jelenlegi jelszó is kell. A csere után minden más eszközön kilépsz – ha egy gépen nyitva hagytad az FRST-et, ott újra be kell lépni.
Elfelejtett jelszó esetén szólj az üzemeltetőnek.
17. Cél-segéd
Az Új futás oldalon a Cél-segéd beszélgetve segít megírni a célt. Mondd el a saját szavaiddal, mit szeretnél; a segéd visszakérdez (kik használják, milyen oldalak, milyen adatok), majd megírja a célt az 5. fejezet szerinti formában: funkciók, adatok, szabályok, mi nem kell, „kész, ha…”.
- Látja a kiválasztott technológiát és csapatot, meglévő projektnél a fájllistát is – ilyenkor a változtatást írja le, nem az egész alkalmazást újra.
- Nagy ötletet szakaszokra bont, és csak az elsőt írja meg célként: egy futás egy jól körülhatárolt lépés legyen.
- Ha kész a cél, az Átvétel a Cél mezőbe gomb beírja. Utána még szabadon átírhatod.
- A cél mellé csapatot is javasol: szerepeket, sorokat és munkás-eszközöket. A modellt a kulcsaid közül az FRST választja (elöl az olcsó és bevált Gemini Flash). Ilyenkor a gomb neve Cél és csapat átvétele: a javasolt csapat a csapat-választó alatt jelenik meg, a grafikonon igazíthatod, és a Mentés és kiválasztás gombbal a saját csapataid közé kerül – magától nem ment semmit.
- Modell: a saját gépeden futó Claude (lásd a következő fejezetet), vagy egy API-modell a saját kulcsoddal (Claude, Gemini). A beszélgetés az oldal elhagyásával elvész.
18. Saját gépen futó Claude
A saját gépeden futó Claude Code is beállítható a csapatba és a Cél-segédhez. A gépeden egy kis program, az frst-bridge kapcsolódik a szerverhez: elviszi a kérdéseket, a helyi claude paranccsal megválaszolja, és visszaküldi. Beállítás a Helyi Claude oldalon: token létrehozása, majd a kiírt parancs futtatása a gépeden. Amíg fut, az oldalon „Csatlakozva” látszik.
- Saját csapatban válaszd a modellt a listából. A „legújabb” (
cli/opus,cli/sonnet,cli/fable,cli/haiku) mindig a család legújabb modellje; konkrét verzió is választható, pl.cli/claude-opus-5-5(Opus 5.5) vagycli/claude-opus-5(Opus 5). Ilyen csapattal a futás csak csatlakozott híddal indul. - A Próba gomb a Helyi Claude oldalon egy rövid, valódi kérdést küld: így derül ki, hogy a gépeden lévő Claude Code be van-e jelentkezve. A „Csatlakozva” csak azt jelenti, hogy a híd fut.
- A Claude eszközök nélkül fut: nem olvas és nem ír fájlt, nem futtat parancsot a gépeden – csak szöveget ad vissza. A kód a szerveren, a futás elszigetelt konténerében készül.
- A
cli/…hívásokat az FRST nem számolja a költségplafonba: a használat a Claude Code fiókodon jelenik meg. - A gépednek és a hídnak a futás végéig futnia kell.
19. Statisztika
A Statisztika menüben a saját projektjeid futásait látod (más felhasználóét nem). Fent szűrhetsz időszakra, projektre és technológiára; minden panel ugyanarra a szeletre vonatkozik.
- Mutatók: összköltség, sikerarány, átlagos költség és körszám, tokenek, önellenőrzési javítások, futásidő.
- Költség futásonként: időrendben; zöld ✓ = sikeres, piros ✕ = nem sikerült. Egy oszlopra kattintva az idővonal azt a futást mutatja.
- Modellek: modellenként a költség és a be- / kimenő tokenek.
- Kapu-hőtérkép: melyik ellenőrzés (szintaxis, build, tesztek, biztonság) hányszor bukott, körönként vagy technológiánként.
- Munkás-teljesítmény: munkásonként a hívások, a költség, az átlagos idő, az önellenőrzési javítások, és hogy hányszor miatta jött újabb kör (kapu, kapuőr vagy hibás válasz miatt). Az oszlopfejlécre kattintva rendezhető.
- Futás-idővonal: egy futás munkásai időben – ki mikor dolgozott, párhuzamosan vagy egymás után; a szín a kör. Régebbi futásnál az idővonal becsült.
Minden panel a Táblázat gombbal táblázatként is megnézhető.