Julians Storers, cilvēks aiz C++ bibliotēkas JUCE, 17. jūlijā publicēja Juggler — atvērtā koda AI kodēšanas aģentu ar grafisku saskarni. Nedēļas nogalē projekts Hacker News savāca 278 punktus, un pirmā publiskā versija v0.4.2 iznāca jau nākamajā dienā.
Storers pats ievadā rakstīja, ka pasaulei “noteikti vajag vēl vienu AI koda aģentu” — ar acīmredzamu ironiju. Aiz joka ir konkrēta sūdzība: viņš pavadījis daudz stundu, redzot, ko modeļi spēj paveikt, un vienlaikus nīstot komandrindas pieredzi. Juggler ir viņa atbilde uz jautājumu, kā šim darbam varētu izskatīties saskarne, kurā gribas strādāt.
Kurš to uzrakstīja
Storers ir vairāk nekā 30 gadus strādājis C++ izstrādātājs. Viņš radīja JUCE — ietvaru, uz kura būvēta liela daļa pasaules mūzikas spraudņu, tostarp Valhalla DSP produkti; Tracktion DAW skaņas ierakstu programmu; un Cmajor, valodu ciparu signālu apstrādei. Katrs no šiem rīkiem, viņa vārdiem, radās no viena un tā paša: viņu kaitināja tas, kas tobrīd bija jālieto, un viņš nolēma uztaisīt savu versiju.
Juggler radies pēc tā paša principa, bet ar vienu pagriezienu. JUCE šeit nav izmantots. Uz tiešu jautājumu forumā Storers atbildēja, ka Juggler ir “pretējs JUCE” — nekāda C++, viss uzrakstīts Go un JavaScript, un visas saskarnes ir HTML.
Saruna kā dokuments, nevis žurnālfails
Galvenā ideja ir vienkārša. Sesija ir dokuments, nevis žurnālfails. Katra saruna glabājas kā Yjs CRDT koks. To var sazarot apakšpavedienos, arī rekursīvi, un pēc tam ienirt dziļāk, atgriezties atpakaļ, rediģēt, atsaukt un atcelt atsaukšanu. Lietotājs redz visu: rīku izsaukumus, apstiprinājumus un neapstrādāto konteksta JSON, kas aiziet uz modeli.
“Sesija ir dokuments, nevis žurnālfails,” raksta Storers. Katrs pavediens sazarojas, un katru rīka izsaukumu var atvērt un apskatīt atsevišķi.
Saskarne balstīta uz Finder stila Miller kolonnām, nevis vienu garu ritināmu sarunu. Kreisajā pusē ir saknes elementi, blakus kolonnā to saturs, tālāk ligzdotais saturs. Tā ir tā pati navigācija, ko macOS lietotāji pazīst no failu pārlūka, tikai piemērota AI sarunai. Storers atzīst, ka pati saskarne, nevis arhitektūra, bijusi viņa galvenā motivācija, un komentāros no lietotājiem visvairāk cerējis dzirdēt tieši “saskarne ir tīra”.
Serveris tur, kur ir kods
Tā kā CRDT strādā aiz lokāla tīmekļa servera, vienai dzīvai sesijai vienlaikus var pieslēgties vairāki klienti pēc P2P principa: darbvirsmas programma, pārlūka cilne vai telefons. Bezgalvas serveri var palaist uz mašīnas, kur atrodas kods, un skatīties to no citurienes. Pēc noklusējuma serveris klausās tikai uz localhost; lai atļautu piekļuvi lokālajā tīklā, terminālī jānospiež taustiņš “p”.
Programma nāk gan kā darbvirsmas lietotne, gan kā juggler komandrindas serveris. Lejupielādēt to var no GitHub laidieniem vai vietnes juggler.studio.
Gandrīz viss ir spraudnis
Juggler paplašināmība iet dziļi. Gandrīz katra sastāvdaļa ir JavaScript spraudnis: konteksta elementi (lasīšana, rakstīšana, bash un citi), LLM cikla stratēģijas, slīpsvītras komandas un to saskarnes. Katru no tiem var apskatīt, atzarot vai aizstāt. Storers saka, ka pats maz pielāgo aģentus, bet grib redzēt, ko ar šo spraudņu API izdomās citi.
Modeļu atbalsts ir “atnes savu atslēgu” stilā. Juggler pieslēdzas Claude (caur CLI vai API), OpenAI un Codex, Gemini, Ollama, OpenRouter, DeepSeek un Z.AI. Jaunu piegādātāju pievienot, pēc autora vārdiem, ir viegli.
Zem pārsega ir Go aizmugure, Wails logu apstrādei (bez Electron), tipizēts JavaScript ar stingru JSDoc anotāciju un Yjs dokumentiem. GitHub repozitorijā koda sadalījums ir 54 % JavaScript, 40,7 % Go un 4,1 % CSS.
Licence un konkurenti
Pašas programmas kods ir zem AGPLv3. Paplašinājumu SDK un komplektā iekļautie paplašinājumi lietotu Apache-2.0 licenci, kas ļauj rakstīt arī slēgta koda spraudņus.
Storers savu projektu tieši salīdzina ar OpenCode un Pi — atvērtiem aģentiem, ap kuriem izveidojušās aktīvas kopienas tieši pateicoties to paplašināmībai un neatkarībai no viena modeļa. Viņš tos sauc par labiem projektiem, bet piebilst, ka daudzi, arī viņš pats, nīst būt iesprūduši terminālī šāda darba dēļ. Juggler tur cenšas piedāvāt to pašu brīvību ar peli un logiem. Forumā daži lietotāji jau ziņoja, ka programma bez problēmām instalējas uz Mac un labi savietojas ar viņu esošajiem CLI rīkiem.
Uz TODO saraksta Storers min worktree izolāciju, smilškastes režīmu un “skills”. Pašlaik pieejamā v0.4.2 ir jau desmitais laidiens.
Komentāri
Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.