Režim kódu
V Nastavenia → Elowen AI otvorte u pripojeného poskytovateľa Nastavenia a v časti Pokročilé zapnite Režim kódu. Režim kódu umožňuje modelu spúšťať JavaScript, ktorý v jednom ťahu volá niekoľko nástrojov; hodí sa to, keď ďalšie volania nástrojov závisia od predchádzajúcich výsledkov. Každé volanie naďalej dodržiava oprávnenia účtu a pravidlá schvaľovania.
Zapnite režim kódu
V Nastavenia → Elowen AI otvorte Nastavenia pripojeného poskytovateľa v časti Prepojené účty alebo Poskytovatelia AI a prepnite na Pokročilé. Zapnite Režim kódu pre tohto poskytovateľa. Nastavenie platí pre všetky modely daného poskytovateľa. Prepínač môže zmeniť len administrátor.
Prepínač sa zobrazuje len pri poskytovateľoch, ktorí ho podporujú: účty ChatGPT, účty Meta a xAI a pripojenia OpenAI, ktoré používajú rozhranie Responses API. Najlepšie fungujú modely trénované pre tento formát nástrojov, napríklad GPT-5.6 a novšie; kým prepínač zapnete pre iný model, vyskúšajte skutočnú úlohu.
Čo model dokáže
Model dostane nástroj exec pre čistý JavaScript a nástroj wait na kontrolu skriptu, ktorý ešte beží. Ostatné dostupné nástroje možno vnútri skriptu volať cez tools.<name>. Nástroj AskUserQuestion zostáva k dispozícii, keď máte vybrať z možností.
Vnútri skriptu sú k dispozícii tieto pomocné funkcie:
text(value)pridá text do výstupu. Objekty prevedie pomocouJSON.stringify.image(value)aaudio(value)pridajú obrázok alebo zvukovú ukážku. Obe prijímajú adresudata:s kódovaním base64.notify(value)pošle priebežnú poznámku vám aj modelu.store(key, value)aload(key)uchovajú hodnoty JSON pre ďalšie skripty v tej istej konverzácii.setTimeout(callback, delayMs)aclearTimeout(id)naplánujú a zrušia spätné volania.yield_control()vráti doterajší výstup, kým skript beží ďalej.ALL_TOOLSvypíše nástroje, ktoré skript môže volať, s ich názvom a opisom.exit()ukončí skript predčasne a úspešne. Nič za ním sa už neprejaví, vrátane blokovcatchafinally; hodnoty uložené pred ním zostanú.
Skript zvládne niekoľko závislých volaní nástrojov bez samostatného ťahu modelu pre každé z nich. Môže tiež odovzdať riadenie, kým práca pokračuje, a potom pokračovať cez wait. Každé volanie nástroja zo skriptu sa v prepise objaví ako samostatný riadok nástroja. Kým model skript ešte píše, prepis zobrazuje poznámku volania, ktoré skript píše. Samotný skript nemá priamy prístup k súborovému systému ani k sieti; na také akcie použite dostupné nástroje.
Režim kódu nedáva žiadny prístup navyše. Každé volanie nástroja v skripte prechádza rovnakou kontrolou účtu, Projektu, oprávnení na nástroje a schválení ako priame volanie.
Nastavenia Načítanie nástrojov platia aj tu. Úplne sú popísané len základné nástroje (Bash, Read, Edit, Grep a Write). Odložené názvy a deklarácie nástrojov sa do počiatočného promptu nedostanú. Zostávajú volateľné zo skriptu a model ich v zozname ALL_TOOLS hľadá podľa názvu a opisu, pred prvým volaním si potom prečíta úplnú deklaráciu. Keď je nainštalovaných veľa nástrojov pluginov a MCP, zostane prvá požiadavka konverzácie malá. Režim kódu nepoužíva samostatný nástroj Tool Search.
Práca s bunkami JavaScriptu
Každé volanie exec spustí novú bunku JavaScriptu. Pri dlho bežiacej práci môže skript odovzdať riadenie a vrátiť ID bunky. Potom zavolajte wait s týmto ID, aby ste získali ďalší výstup alebo dokončenie. Bežiacu bunku zastavíte volaním wait s parametrom terminate: true. Dokončenú ani ukončenú bunku už obnoviť nemožno.
Volanie wait má vlastné argumenty yield_time_ms a max_tokens.
Prvý riadok začínajúci // @exec: mení čas sledovania a rozpočet výstupu pre jedno konkrétne volanie exec. Objekt JSON za predponou prijíma yield_time_ms a max_output_tokens a skript začína na ďalšom riadku:
// @exec: {"yield_time_ms": 60000, "max_output_tokens": 2000}
text(await tools.ListDir({ path: "src" }));
Limity režimu kódu
Neexistuje žiadny ďalší strop počtu otvorených buniek, strop pamäte aplikácie ani lehota nečinnosti. Médiá v jednom sledovaní môžu mať celkovo najviac 20 MiB, jeden obrázok alebo zvuková ukážka najviac 10 MiB.
Skripty bežia v sandboxovanom javascriptovom engine QuickJS s vlastnou pamäťovou politikou. Hodnoty uložené cez store patria konverzácii, a pri zdieľanej miestnosti tomu, kto napísal správu. Zmenené hodnoty prežijú aj bežné zlyhanie skriptu. Každé sledovanie exec čaká predvolene 10 sekúnd a rovnako aj každé volanie wait. Okno sledovania skript nezastaví. Ak počas čakania modelu na skript pošlete správu, čakanie hneď skončí, aby si model vašu správu prečítal; skript beží ďalej.
V Nastavenia → Elowen AI → Beh zvoľte Upraviť behové prostredie a zmeňte Predvolené čakanie exec, teda predvolenú hodnotu pre exec, v rozsahu 10 až 600 sekúnd. Nástroj wait má vlastnú pevnú predvolenú hodnotu 10 sekúnd, ktorú toto nastavenie nemení.
Výstup má predvolene 10 000 tokenov na jedno sledovanie. Maximálny výstup code-mode v tom istom dialógu túto predvolenú hodnotu mení v rozsahu 1 000 až 50 000 tokenov. Volanie môže požiadať o vlastný rozpočet pomocou max_output_tokens v predpone prvého riadku alebo pomocou max_tokens pri wait.
Obrázky a zvuk sa do rozpočtu textových tokenov nepočítajú. Zvuk prijímajú len pripojenia účtu ChatGPT; iné pripojenia poskytovateľov ho odmietnu s chybou. Zvuková ukážka WAV kratšia ako 25 ms sa nahradí textovou poznámkou.
Poznámky z notify() k vám dorazia hneď. Model ich dostáva počas ťahu tej istej osoby. Ak žiadny ťah nebeží, čakajú na ďalší ťah, a keď bunka skončí skôr, zahodia sa. Dokončený výstup zostáva dostupný, kým si ho nevyzdvihnete.
Bunky patria konverzácii, ktorá ich vytvorila. Iná konverzácia ich ID použiť nemôže a na bunku môže čakať vždy len jeden pozorovateľ. Bežiace bunky sa zastavia, keď stlačíte Stop, vrátane buniek spustených v skorších ťahoch, a tiež pri resete konverzácie, prepnutí modelu alebo reštarte Elowenu a pri vymazaní, zmazaní alebo obnovení jej relácie. ID z času predtým sa ohlási ako nenájdené a k novšej bunke sa nikdy nedostane.
V zdieľanej chatovej miestnosti patria bunky aj uložené hodnoty tiež tomu, kto napísal správu, vrátane členov bez prepojeného účtu Elowen. Iný člen ich nemôže čítať ani na ne čakať. Osobné nástroje člena, napríklad jeho vlastné servery MCP, sa opisujú a vypisujú len v jeho ťahoch.
Vypnite režim kódu
Vráťte sa do Nastavenia → Pokročilé daného poskytovateľa a Režim kódu vypnite. Samostatný slash príkaz neexistuje.