---
title: "Robion changelog — co která verze změnila"
description: "Poznámky k vydání každé verze Robionu, nejnovější první: co se změnilo v macOS aplikaci, linuxovém serveru, telefonu, TUI a nástrojích agenta."
url: "https://robion.app/cs/changelog/"
lang: cs
---

# Co která verze změnila.

Stejné poznámky, které aplikace ukáže po aktualizaci (Nápověda → Co je nového), nejnovější první. Nainstalované aplikace se aktualizují samy z GitHub releases; server příkazem robion-server update.

## 0.20.38 (2026-10-09)

- Slackové události přicházejí k pravidlům v pořadí, v jakém dorazily. Každá zpráva si dosud dohledávala jména sama za sebe, takže odpověď ve vlákně mohla předběhnout zprávu před sebou, když její odesílatel ještě nebyl v cache jmen — a vlákno pokračující jako jeden task (0.20.36) by dostalo pokračování v opačném pořadí. Události se teď zpracovávají jedna po druhé; dotaz, který vyprší, zdrží další událost o timeout klienta, nikdy ji nezablokuje.
- stavy tasků zase drží na Claude Code 2.1.293 a novějším. V sezení spuštěném na těchto buildech už k modulu hooků nedorazily události, ze kterých Robion stav četl (prompt, konec tahu, žádost o oprávnění): task ukazoval „pracuje“ jen po dobu běhu nástroje, každá dokončená odpověď se po pár sekundách objevila jako „přerušeno“ a dialog oprávnění se nikdy neukázal jako „čeká“. Modul teď tyto události skládá z vlastních událostí enginu Claude Code — začátek a konec tahu, každé volání nástroje a jeho verdikt, subagenti, konec sezení — a stavy, karty v telefonu i Inbox jdou za nimi jako dřív. Dialog oprávnění se čte ze session souboru Claude Code do dvou sekund a telefon na něj odpovídá psaním do terminálu jako desktop; volání nástroje subagentem už nezavře otevřenou otázku hlavního agenta.
- prompt napsaný, zatímco agent pracuje, už nenechá task na „hotovo“ po celou další odpověď: Claude Code takový prompt ohlásí ve chvíli napsání a nic dalšího neřekne, když ho po běžícím tahu vezme, takže task šel na konci toho tahu na „hotovo“ a zůstal tam. Teď ho na „pracuje“ přepne vlastní „začátek tahu“ enginu. A „hotovo“ tahu počká 400 ms na tah, který mu jde v patách — doběhlá úloha na pozadí, která agenta probudí, prompt z fronty — než se pošle push na telefon, Inbox dostane položku a timeline řádek: takových pulzů „hotovo“ bylo v logu od srpna šestnáct, každý do desetiny sekundy následovaný agentem, který pracuje dál.

## 0.20.37 (2026-10-08)

- telefon na tabletu na výšku: task má celý displej a přehled se vysouvá přes něj. Displej široký 768 až 1023 px (tablet na výšku, okno prohlížeče) dosud ukotvil přehled vedle tasku jako na šířku a pevných 340 px seznamu nechalo tasku necelé tři pětiny 800px tabletu. Teď task zabere celou šířku a „‹ zpět“ v záhlaví nahradí „ukázat přehled“ (ikona panelu): vysune přehled i se spodní lištou přes task od levého okraje — totéž udělá tažení od levého okraje. Výběr tasku nebo záložky spodní lišty ho zavře, stejně jako ťuknutí na ztmavený task. Od 1024 px (tablet na šířku) zůstává přehled ukotvený jako dřív; pod 768 px ukazuje telefon jednu obrazovku jako dřív.

## 0.20.36 (2026-10-07)

- dotaz bokem z výběru: označ text v terminálu s Claude Code (tažením, nebo tažením s ⌥) a pod ním se objeví tlačítko „Vysvětli mi to“ — jedno kliknutí položí bokem dotaz „Vysvětli mi: „…““ a otevře okno, kam přijde odpověď. S označeným textem otevře tlačítko v záhlaví i Task → Zeptat se bokem okno s tímto dotazem předvyplněným, aby šel nejdřív upravit. Dotaz je v jazyce aplikace; ⚙ → Aplikace → „Dotaz bokem z výběru“ nastaví vlastní znění ({text} = označený text), třeba aby se ptal a odpovídal česky pod anglickým rozhraním. Zkratka ⌥⌘A z 0.20.35 zmizela: stačí tlačítko pod výběrem a tlačítko v záhlaví.
- desktop v prohlížeči: celé okno Robionu — rail, terminály, strom a git, každý panel — jako webová stránka, kterou server servíruje na /d/. ⚙ → Vzdálený přístup → „desktop v prohlížeči“: „otevřít v prohlížeči na tomto Macu“ ho rovnou otevře ve výchozím prohlížeči, spárovaný; se zapnutým vzdáleným přístupem „odkaz pro jiné zařízení“ vydá jednorázový odkaz pro prohlížeč nebo tablet v tvém tailnetu, kde jde stránka i nainstalovat jako aplikace. Agenti, terminály a soubory zůstávají na serveru; záložka prohlížeče je pohled, stejně jako okno. Servíruje ho i linuxový server (robion-server pair --desktop), takže bezhlavý box už nepotřebuje Mac.
- v prohlížeči mají zkratky, které si prohlížeč nechává pro sebe, podobu s Ctrl: ⌃⇧T nový task, ⌃⇧N nový terminál, ⌃⇧W zavřít panel, ⌃, nastavení, ⌃0 přehled a ⌃1–9 tasky; ⌘/ je vypíše. Co prohlížeč neumí, zůstává desktopové aplikaci: Finder, přetažení souborů jako cest (přenesou se jako data, jako na vzdálený server), SpaceMouse, velikost rozhraní (použij zoom prohlížeče), párování dalších serverů, screenshoty náhledu a výběr prvku pro agenta (sezení jen s prohlížečem dostane „preview tools need the desktop app“) a tunel k náhledu dev serveru z jiného stroje (panel místo toho ukáže příkaz ssh -L).
- automatizace pro slackové vlákno: task.create má dedupeKey (pro Slack kanál a nový klíč vlákna) — první zpráva vlákna založí task, každá odpověď se do něj zapíše jako pokračování, dokud je otevřený, a po zavření tasku další zpráva založí nový; pokračování se nepočítá do „Tasků za den“. Podmínky umí not / not_in („všichni kromě mě“) a „me“ funguje i pro Slack, jakmile vyplníš ⚙ → Automatizace → Slack → „Tvoje Slack member ID“ — prázdné znamená, že taková podmínka nikdy neplatí, takže pravidlo omylem nevystřelí na tvoje vlastní zprávy.
- agent se při testu pravidla nejdřív dozví, jestli by podmínky danou událost pustily a která ji zastaví; umí přečíst celou definici jednoho pravidla a spravovat pravidla jiného projektu stejného serveru bez tasku v něm. Pravidlo, které agent pošle znovu jen s přidanými podmínkami, zůstává zapnuté (může vystřelit na méně událostí, nikdy na víc); změněný trigger, akce nebo podmínka ho pořád vypne, dokud ho znovu nezapneš. Mrtvý příznak force u task.create je pryč. Projekt založený ze složky, která není git repozitář, už nezačíná s „vlastním worktree“ pro automatizované tasky, které tam pokaždé selhaly.
- chat v telefonu: konec tahu už se neztrácí, když je transkript sezení velký. Od 0.20.28 chat řadí řádky, které sezení hlásí živě, za to, co drží soubor transkriptu, ale soubor se četl oknem 2 MB od konce — transkript plný screenshotů, na které se agent díval (půl megabajtu na řádek), nechal většinu chatu mimo okno a ty řádky se braly jako novější než soubor a řadily se až za jeho nejnovější: chat končil starým voláním nástroje, zatímco terminál ukazoval odpověď. Řádky jsou teď v pořadí a soubor se čte, jak roste (napoprvé 32 MB, pak jen to, co přibylo), takže takové sezení si v chatu nechá historii a opakované čtení už neparsuje celé okno.

## 0.20.35 (2026-10-06)

- dotazy bokem: zeptej se na cokoli kolem tasku mimo jeho konverzaci, agent přitom pracuje dál. Na desktopu má terminál s Claude Code tlačítko „zeptat se bokem“ (⌥⌘A, také Task → Zeptat se bokem a ⌘K) — malé okno nad terminálem s tvými dotazy a odpověďmi; v telefonu má task záložku „bokem“. Odpovídá odbočka sezení z toho, co konverzace už obsahuje, včetně právě psané odpovědi, bez nástrojů, a dotaz ani odpověď se do konverzace agenta nezapíšou. Navazující dotazy znají předchozí; vlákno je společné pro desktop i telefon a vydrží do zavření tasku nebo restartu serveru.
- telefon: zpráva poslaná zaneprázdněnému agentovi už nezdrží to, co pošleš po ní. Dokud agent první zprávu nepřevzal, další se místo toho vkládala do terminálu a poznámky v rohu terminálu se ztrácely.
- seznamy ve vykresleném markdownu mají zase odrážky a čísla: v chatu a záložce „bokem“ v telefonu i v náhledu Markdownu, Jira ticketu a odpovědi bokem na desktopu byly položky jen odsazené.

## 0.20.34 (2026-10-06)

- chat v telefonu: obsahuje to, co terminál ukazuje od agenta. Chyběly krátké poznámky, které agent píše mezi voláními nástrojů (co zjistil, co udělá dál) — Claude Code je ukládá jako blok thinking s textem a chat všechen thinking vynechával; teď jsou to řádky agenta
- chat v telefonu: po návratu do chatu, který mezitím poskočil o víc než stránku (telefon spal nebo jsi byl na jiné obrazovce), se zobrazí celá nejnovější stránka a „starší zprávy“ dočtou zbytek popořadě. Dřív zůstaly vpředu řádky z poslední návštěvy, za nimi díra, která nešla dočíst, a odpověď mohla zůstat podruhé nahoře
- automatizace: „Tasků za den“ počítá jen tasky agenta, které pravidla zakládají; pravidlo, které mačká tlačítko run, už limit nespotřebuje — pár cron pravidel s tlačítky dokázalo od odpoledne zablokovat každý task

## 0.20.33 (2026-10-06)

- rail: vybraný projekt je zakulacená karta s tenkým rámečkem v barvě projektu místo proužku u levého okraje, takže už nesplývá s řádky, kde pracuje agent; pulz pracujícího projektu i najetí myší mají stejný zakulacený tvar. PŘEHLED, NÁSTĚNKA, INBOX a AUTOMATIZACE mají po otevření stejný rámeček

## 0.20.32 (2026-10-06)

- telefon: po návratu z tasku zůstane přehled tam, kde jsi ho opustil, místo skoku nahoru
- dělení terminálu: nový terminál z ⌘D / ⇧⌘D hned převezme klávesnici — při dvou a více terminálech v tabu zůstával focus po rozdělení nikde a první úhozy se ztrácely

## 0.20.31 (2026-10-05)

- rail a přehled na telefonu: skupina NEAKTIVNÍ · n se sbaluje a rozbaluje per server — klik na hlavičku pod Tento Mac už neukáže i neaktivní projekty všech spárovaných serverů; každá skupina si sbalení pamatuje zvlášť
- editor souborů: zalamování řádků per soubor — „zalamovat“ v hlavičce nebo pravý klik do textu → „zalamovat dlouhé řádky“ ho přepne jen pro tento soubor (.env s dlouhými hodnotami, log); volba zůstává u tabu i po restartu a ⚙ → Vzhled dál platí jako výchozí pro ostatní. V menu pravého tlačítka je i hledat…, přejít na řádek… a otevřít v editoru

## 0.20.30 (2026-10-04)

- chat na telefonu: zatímco agent pracuje a ještě nic nestreamuje, dole v chatu sedí bublina „agent pracuje…“ s pulzujícími tečkami, tam, kam se po odeslání zprávy díváš; odpověď ji nahradí

## 0.20.29 (2026-10-04)

- tab terminálu na telefonu a read_terminal: slova se už neslévají tam, kde se v úzkém panelu zalomil řádek — obrazovka se čte buňku po buňce (mezery jsou mezery, barvy zůstávají), místo replay streamu, který netknuté buňky zapisoval jako posun kurzoru

## 0.20.28 (2026-10-04)

- Robion teď sleduje sezení zevnitř: jeho plugin pro Claude Code nese hooks modul (Claude Code „mods“, 2.1.287+), který načte každé sezení spuštěné z Robionu. Stavy agentů, chat, kontext v railu i odpovědi na povolení chodí přes něj — do ~/.claude/settings.json se už nic nezapisuje a hooky i status line shim, které tam dal starší Robion, se při prvním startu jednou odeberou (záloha vedle souboru)
- telefon: chat je živý — zadání, řádek nástroje, výsledek i odpověď se ukážou v okamžiku, kdy je sezení uloží, a odpověď agenta se objevuje už během psaní (prostý text s kurzorem, vykreslená odpověď ho nahradí). Soubor transkriptu dodává jen historii
- přerušený tah (Esc, „Ne“ v dialogu) hlásí „přerušeno“ hned — ohlásí ho sezení; sonda do transkriptu je pryč
- task, jehož sezení se z pluginu nikdy neohlásilo (starší Claude Code, sezení spuštěné ručně), říká „Modul Robionu se v tomto sezení nenačetl“ pod terminálem a nad chatem na telefonu, místo aby vypadal nečinně; banner hooků, ⚙ → Agenti → Hooky Claude Code, ⚙ → Servery → nainstalovat hooky a přepínač status line shimu zmizely
- telefon: dělicí čáry, které agent nakreslil přes široký desktopový terminál, se na tabu terminálu zkrátí na šířku telefonu — jeden řádek, ne pět
- otázka agenta (AskUserQuestion) se drží uvnitř sezení jako povolení, dokud panel nikdo na desktopu neukazuje: odpověď z telefonu se stane výsledkem nástroje a žádný dialog se nevykreslí (klávesy jen když už dialog na obrazovce je); zatímco se povolení nebo otázka drží, status line terminálu říká „robion: the permission / the question is on the phone“
- zpráva z telefonu, tlačítko v ovládání nebo automatizace dorazí do sezení jako tvoje vlastní zadání přes hooks modul — bez pastování, bez pauzy, bez značky „pasted text“; lomítkové příkazy a shellové panely zůstávají u pastování
- /robion v terminálu otevře panel s taskem, jak ho vidí Robion (složka, větev, porty, panely ovládání s hodnotami, kdo se dívá); toast v terminálu řekne, když telefon povolil, zamítl nebo odpověděl
- parkování tasku: sezení si handoff poznámku napíše samo nad kontextem, který už má (přes hooks modul), než skončí — rychleji a bez druhého claude; headless fork zůstává jako záloha

## 0.20.27 (2026-10-03)

- rail: projekt, ve kterém pracuje agent, pulzuje jako celý řádek, v rytmu svých dýchajících stavových buněk — pohled na rail řekne, kde se právě pracuje
- rail i telefon: projekty, na které 14 dní nikdo nesáhl (žádné zadání, nový task ani pracující či čekající agent), se sbalí do skupiny NEAKTIVNÍ · n na konci seznamu; klik na hlavičku je ukáže. ⚙ → Aplikace → Neaktivní projekty nastaví počet dní (0 = nesbalovat). Skupina v railu se sama otevře, když je vybraný projekt uvnitř; telefon si sbalení pamatuje per zařízení
- strom: nový soubor a nová složka jako ikony v řádku hledání stromu (vedle vybraného souboru, nebo v rootu), dialog se jménem říká, do které složky; právě založená složka se ukáže hned, i prázdná; přetažením řádku na složku ho přesuneš do ní (nic se nepřepíše, složka nejde do sebe), na pozadí stromu do rootu; soubory smazané na disku, ale ještě nestagované, už ve stromu nestraší
- telefon: řádek projektu je zvýrazněný pruh a jeho tasky visí odsazené pod ním na vodicí lince, takže task už nevypadá jako projekt a naopak
- task čekající na shell na pozadí — smyčku hlídající CI, build spuštěný s run_in_background — zůstane „pracuje“ s „⏳ shell still running: <příkaz>“, dokud neskončí tah, kterým ho hotový shell probudí, místo aby hlásil „hotovo“ a za pár minut zase „pracuje“; stejně workflow, teammate a cloudová sezení. Jen monitor, který si Claude Code zapne sám (živé aktualizace publikovaného artefaktu), nechá task hotový. Dev server zapomenutý na pozadí drží task v práci, dokud ho někdo nezastaví
- opraveno: task hlásil „žádá o povolení“ až do dalšího zadání — notifikace o povolení, která dorazila po odpovědi na dialog (nebo po konci tahu), se počítala jako nové čekání, a žádost, kterou odmítl klasifikátor režimu auto, zůstala otevřená i po odpovědi agenta (telefon ji ukazoval jako „čeká na tebe“, přestože agent skončil)
- telefon (anglicky): nečinný task hlásí „waiting for a prompt“ jako desktop a TUI, ne „waiting for input“ — to znělo, jako by agent měl otázku, přitom jen skončil

## 0.20.26 (2026-10-02)

- nové tasky padaly na „posix_spawnp failed“ na Macu, kde Robion běžel pár týdnů — na desktopu, z telefonu i v automatizacích: terminálový host propouštěl jeden pseudoterminál za každý panel, který kdy spustil (chyba ve spawnu node-pty na macOS; Mac jich má 511), až se nikde nedal spustit žádný terminál. Opraveno s node-pty 1.2.0-beta.15; po updatu nabídne stavový řádek vyměnit teď… pro starý host, čímž se propuštěné terminály uvolní, jakmile se sezení přestěhují
- ⚙ → Agenti → Terminálový host → restartovat…: vymění terminálový host kdykoli, ne jen po updatu — stejné zaparkování a obnovení, s průběhem ve stavovém řádku
- telefon: sbalený projekt s pracujícím agentem je v jednořádkovém souhrnu modrý, stejně jako běžící tečka u jeho řádků

## 0.20.25 (2026-10-01)

- Slack jako zdroj automatizací: zpráva v kanálu, kde je bot Robionu členem, zmínka bota, emoji reakce nebo přímá zpráva botovi spouštějí nové triggery slack.message, slack.mention, slack.reaction a slack.dm ve chvíli, kdy přijdou — Slack je posílá jedním odchozím spojením (Socket Mode), takže nic nepolluje a žádný model neběží, dokud to pravidlo neřekne. Pravidlo si kanály vybere ve when (channel_name), thread_reply: false znamená jen nová vlákna; event nese čitelný text, autora, permalink a vlákno. Případ kolegy: „nové vlákno v #devops → task, který požadavek roztřídí“
- ⚙ → Automatizace → Slack: vlož app-level a bot token interní Slack appky (nápověda vypisuje scopes i event subscriptions); oba se před uložením do klíčenky vyzkouší proti Slacku. Stav říká, ke kterému workspace jsi připojený a ve kterých kanálech bot poslouchá — seznam sleduje /invite a řekne, když chybí scope
- automations_help agentovi říká, kde bot poslouchá, takže pravidlo napsané přes /robion:automate jmenuje jen kanály, které existují

## 0.20.24 (2026-09-30)

- otázka agenta (AskUserQuestion) se na telefonu ani v liště už nemění v prázdnou kartu „agent žádá o povolení“ s povolit / odmítnout, když se ptá jiné sezení, než se kterým pane začal (aplikace Claude nebo Remote Control pokračující v konverzaci jako fork, nebo terminál po resume, jehož start Robion propásl): karty zůstanou a vlastní hláška dialogu „needs your permission“ stav otázky zachová místo toho, aby ho přepsala. Odpověď nejdřív přečte terminál — když je dialog tam, odpověď se pošle, jinak telefon řekne, že se ptá sezení v jiném klientovi a ať se odpoví tam; dřív „povolit“ napsalo do terminálu 1
- list otázky na telefonu končí tlačítkem „odpovědět v terminálu“, které otevře záložku terminálu s lištou kláves

## 0.20.23 (2026-09-29)

- pane host se už neukazuje v Docku: pojmenování přes process.title přimělo macOS zaregistrovat proces jako aplikaci v popředí z bundlu, ze kterého běží (položka „Electron“ nebo „Robion“ s generickou ikonou, protože host běží na Node z Electronu); jméno teď dává spawn, ps dál říká robion-panehost

## 0.20.22 (2026-09-29)

- odpověď na vlastní otázku Claude Code „Read outside the working directories“ (auto mód, první Read / Grep / Glob mimo projekt) z lišty nebo z telefonu teď trefí správnou volbu: povolit = „Yes, but ask again next time“, povolit a příště se neptat = „Yes, and keep allowing“; dřív „příště se neptat“ stisklo druhou klávesu dialogu, která taková čtení natrvalo zablokuje ve všech projektech. Od Claude Code 2.1.284 startuje každý nový task v auto módu, pokud permissions.defaultMode neříká jinak — manuál (/robion:help, tasky) říká, jak vrátit ruční režim
- Sonnet 5.5 (claude-sonnet-5-5, 1M kontext) ve výběru modelu Stewarda a pravidel automatizací

## 0.20.21 (2026-09-28)

- Slovíčka jsou zase pryč — překlad slov, kartičky, ⚙ → Slovíčka, akce vocab.quiz a nástroje vocab_add / vocab_list z 0.20.19–0.20.20; žijí dál jako samostatná aplikace. vocab.sqlite v Application Support zůstává, dá se smazat ručně — protokol 37

## 0.20.20 (2026-09-25)

- Slovíčka překládají hluboko pod sekundu: DeepL s klíčem zdarma (⚙ → Slovíčka → DeepL API klíč, v klíčence) nebo MyMemory bez klíče, místo Claude na pozadí, který bral čtyři sekundy a zhruba cent za slovo; Claude teď jen doplní příklad věty a poznámku, na pozadí a jen se zapnutým „Příklad a poznámka“ — protokol 36
- zkratka Slovíček se nahrává, nepíše: klikni do pole, stiskni kombinaci (podle fyzické klávesy, takže česká klávesnice zapíše číselnou řadu jako číslice), Esc zruší
- kartičky rozdává vlastní hodiny Slovíček napříč všemi projekty — ⚙ → Slovíčka → „Kartička při čekání“ (minuty, výchozí 3) a „Dávka v“ (cron, s počtem) — bez pravidla automatizace na projektu; dvě hotová pravidla pro slovíčka zmizela, akce vocab.quiz zůstává pro vlastní pravidla

## 0.20.19 (2026-09-25)

- Slovíčka: globální zkratka (⌃⌥E, ⚙ → Slovíčka) otevře nad kteroukoli aplikací okénko — napiš nebo vlož slovo, Enter ho přeloží (Haiku na pozadí, zlomek centu) a uloží na tenhle Mac; kartičky se čtyřmi možnostmi pak přijdou v proužku nad pracovní plochou, když tě nic nepotřebuje (hotová pravidla „Čekám na agenty → slovíčko“ a „Ráno ve všední den → pět slovíček“, nová akce vocab.quiz), opakování v Leitnerových krabičkách; agenti ukládají slova přes vocab_add; ve výchozím stavu vypnuto — protokol 35
- stažená aktualizace čekající na restart už aplikaci nebrání hledat dál: tichá kontrola i Zkontrolovat aktualizace… najdou novější vydání a stáhnou ho místo toho čekajícího (kokpit otevřený několik dní dřív nejdřív nainstaloval starou verzi a o další se dozvěděl až potom); v menu aplikace zůstává Zkontrolovat aktualizace… vedle Restartovat a nainstalovat X
- ÚKOLY už nevypisují odpojenou (detached) worktree mimo složku worktrees, ve které neběží žádný task — build vydání v dočasné složce se ukazoval jako „vzniká… · ručně“ a STROM a GIT po kliknutí hlásily „… is not a checkout of robion“; worktree přidaná ručně kdekoli se teď ve STROMU a GITu otevře

## 0.20.18 (2026-09-25)

- zprostředkovaný server platí na telefonu za připojený, až když pozdraví na aktuálním protokolu: zatímco se box aktualizuje, telefon se ho už neptá a neukazuje jednou za minutu „server … není připojený (incompatible)“ — proužek serveru říká „jiná verze — čeká na jeho aktualizaci“ a mlčí
- robion-server update na linuxovém boxu opakuje stažení, které selže (GitHub odpověděl na čerstvě zveřejněné vydání chybou 500 a box to vzdal, takže oba boxy zůstaly na 0.20.16, zatímco Mac ukazoval „aktualizuje se na 0.20.17…“); stažení, které selže i tak, to řekne v update.log

## 0.20.17 (2026-09-25)

- telefon vidí každý server, který zná Mac: server spárovaný v ⚙ → Servery na Macu se teď na telefonu ukáže i se svými projekty, pod proužkem pro každý server (nejdřív tento server, pak každý zprostředkovaný server s názvem a stavem — připojený, připojuje se…, nedostupný — zkouší se znovu, nespárovaný na Macu, jiná verze — čeká na jeho aktualizaci), a jeho tasky se otevírají, odpovídají, chatují, berou fotky, ukazují změny a ovládání stejně jako ty z Macu. Telefon se dál páruje jednou, se serverem, který ho obsluhuje: ten drží spojení s ostatními (hub, protokol 34) a zprostředkovává je — jejich push notifikace chodí z něj s názvem serveru za taskem („build · lab“), žádná, když ten pane ukazuje Mac. Na telefonu není co nastavovat; Inbox, nástěnka, automatizace, Správce a limity zůstávají domácímu serveru. ⚙ na telefonu vypíše zprostředkované servery s jejich stavem a verzí

## 0.20.16 (2026-09-25)

- přehled na telefonu je čitelnější: každý projekt je velký řádek s ikonou, názvem a jednou řádkou shrnující jeho tasky („1 čeká na tebe · 3 čekají na zadání“, oranžově, když něco potřebuje tebe); klepnutí na řádek projekt sbalí (telefon si to pamatuje), dole vedle nový projekt je sbalit všechny projekty / rozbalit všechny projekty a ovládání a nový task jsou ikony vpravo; názvy tasků se také zvětšily. Spodní lišta — přehled, inbox (s počtem), nástěnka, nastavení — nahradila ⚙ a pill inboxu v hlavičce, takže nástěnka i inbox jsou na jedno klepnutí, ne schované za nastavením. Nástěnka na telefonu dohnala Mac: kartička se otevře jako list s poznámkou, projektem, původem a stavem svého tasku a nabízí založit task (Claude Code v projektu kartičky s kartičkou jako prvním zadáním), → doing / → done, upravit, smazat; nová kartička bere poznámku a projekt; done ukazuje poslední týden, zbytek se sbalí do „+ N starších“. Nastavení na telefonu dostalo vzhled na tomto telefonu (téma: server / systém / tmavé / světlé, velikost textu: menší / normální / větší — uložené v telefonu, takže může být na slunci světlý, zatímco Mac zůstane tmavý), limity (každé okno předplatného jako proužek s časem obnovy a účtem) a obnovit aplikaci vedle verzí. Zpráva poslaná z telefonu už nevisí navěky jako „odesláno · čeká na agenta“: Claude Code ukládá vložený text od 20 znaků — tedy každé zadání od Robionu — do značek <pasted_content>, které telefon ani chat nepoznaly; server je teď odstraní (chat ukazuje zadání tak, jak bylo napsané), bublina zmizí, když agentovi skončí tah, nejpozději po 20 minutách, klepnutím ji skryješ a slash příkaz jako /clear (nikdy není řádkem chatu) bublinu nemá vůbec
- automatizace reagují na padlý check z GitHub Actions: do query na pull requesty přidej checks:failure (vlastní slovo Robionu; status: na GitHubu vidí jen commit statusy) — „is:pr author:@me is:open checks:failure“ se spouštěčem issue.updated — a pravidlo se spustí, když na některém z tvých otevřených PR selže check run: jednou za každý padlý běh, takže PR, který zezelena zčervená, spustí, PR, který zůstává červený, ne, a PR červený už před vznikem pravidla nikdy. Zadání může check pojmenovat (${issue_check}, ${issue_check_conclusion}, ${issue_check_url}). Fine-grained token na to potřebuje právo Checks read (classic repo ho má) — říká to nápověda pod GitHub personal access token
- zavření okna už Robion neukončí: schová se do Docku a server běží dál, takže automace, rozvrh Stewarda, push notifikace i telefon fungují se zavřeným oknem; ikona v Docku okno vrátí, Robion → Ukončit (⌘Q) ho ukončí jako dřív a Robion → Spouštět po přihlášení ho nastartuje po restartu (uspaný Mac dál nic nespustí, vzdálený server ano)
- akce run v automaci teď čeká na příkaz tlačítka a selže s ním: kontrola, která skončí nenulovým kódem, je selhaný běh v Inboxu a na telefonu s posledními řádky terminálu, ne „stisknuto, ok“, zatímco chyba ležela ve skrytém shellovém tabu
- server hlídá, co Claude Code posílá do hooků: pole nebo hodnota, kterou dokumentace hooků nezná, se jednou zapíše do hook-drift.json (a do telemetrie), takže se změna v Claude Code ukáže dřív než její příznak
- tlačítko ✓ zkontrolováno, hlavička „čeká na kontrolu“ v sekci GIT i na telefonu a Limit fronty na kontrolu (⚙ → Aplikace) zmizely: tlačítko nikdo nemačkal, takže limit nikdy nic nepočítal a dotaz „N tasků čeká na kontrolu — založit další i tak?“ jen překážel; seznam „od posledního tahu agenta“ a poznámka agenta z request_review zůstávají
- vzdálený server se starším protokolem se aktualizuje sám: po aktualizaci Robionu ho desktop už nezaparkuje jako „aktualizuj server (vX)“ a nečeká na robion-server update přes ssh — nejdřív mu řekne, ať se aktualizuje (⚙ → Servery ukazuje „server vX“ + „aktualizuje se na Y…“, pak „restartuje se…“), a připojí se, jakmile je zpět; červené „aktualizuj server“ zůstává jen u stroje, který odsud aktualizovat nejde (instalace ze zdrojáků, stroj novější než aplikace, neúspěšné sestavení)
- caveaty sandboxu v MOŽNOSTECH NOVÉHO TASKU teď říkají, že projektové sandbox.excludedCommands (.claude/settings.json, settings.local.json) se v sezení spuštěném Robionem neuplatní: Claude Code 2.1.282 je při Robionově allowUnsandboxedCommands: false ignoruje, takže výjimky patří do ~/.claude/settings.json

## 0.20.15 (2026-09-24)

- TUI zakládá a končí tasky: Ctrl-] c si ve stavovém řádku řekne o zadání (⏎ založí task v projektu vybraného tasku tam, kde to říká nastavení nového tasku, a otevře ho; Esc zruší; plná fronta na kontrolu se zeptá „create another anyway?“), Ctrl-] x ukončí vybraný task po „end task …? y / n“ — u tasku ve worktree se ještě zeptá „remove its worktree?“ a při necommitnutých změnách „discard them?“ — a výběr přeskočí na další task
- commit a push ze sekce GIT: pod neodevzdanými změnami pole zpráva commitu… a tlačítko commit commitnou to, co zaškrtávátka staged, v checkoutu tasku (žádný amend, žádný automatický add; „nic není staged“ a prázdná zpráva jsou odmítnuty, výstup hooku se ukáže pod polem). Samostatná sekce push ukazuje větev → upstream a počet nepushnutých commitů; push… se nejdřív zeptá „pushnout <větev> → origin/<větev>?“ — nebo bez upstreamu „push --set-upstream origin <větev>?“ — pak pushnout odešle, nikdy s force, a odpověď gitu (pushnuto, odmítnuto, bez přihlášení) zůstane v panelu jako text

## 0.20.14 (2026-09-23)

- pohyb po TUI bez prefixu před každým krokem: Ctrl-] w otevře nad pane picker — psaní filtruje podle projektu nebo názvu, ↑↓ posun, ←→ skok po projektech, ⏎ otevře, Esc zavře — a Ctrl-] ←/→ skočí na předchozí / další projekt, Ctrl-] 1–9 na n-tý projekt, vždy na jeho nejnaléhavější task (nejdřív povolení, pak dotaz)
- model per pravidlo automatizace: šuplík na obrazovce AUTOMATIZACE má volbu Model (výchozí = tvůj model v Claude Code, Fable 5.1, Opus 5, Sonnet 5, Haiku 4.5 nebo vlastní… s libovolným id modelu) pro tasky, které pravidlo spouští — levnější pro rutinní práci; mění se na místě jako „hotové tahy padají do INBOXu“, task si ho drží i přes restart a agent totéž nastaví přes `model` na pravidle
- GitHub jako třetí ticket systém pro automatizace vedle Jiry a GitLabu: ⚙ → Automatizace → Ticket systémy → GitHub personal access token (fine-grained s právy Issues a Pull requests read, nebo classic s repo; žije v klíčence) a volitelné GitHub API URL (prázdné = github.com, GitHub Enterprise Server = https://HOST/api/v3). Query pravidla je řetězec GitHub search qualifierů a pull requesty jsou položky jako issues — „is:issue assignee:@me is:open“, „is:pr review-requested:@me is:open“, „is:pr author:@me is:open status:failure“ (commit statusy; check runs z Actions status: nevidí). Klíče vypadají jako owner/repo#12 a Správce čte GitHub tickety stejně jako ostatní. Rate limit nebo špatný qualifier se ukáže jako čitelná chyba ve Stavu GitHubu
- sloučení worktree, který je pozadu za main, už tě nenechá v konfliktu bez cesty dál: squash i merge commit nejdřív větev aktualizují v jejím worktree (dialog to říká pod strategiemi), takže konflikt se zastaví tam — řádek v ÚKOLECH ukáže konflikt · n s tlačítky pokračovat, zrušit rebase, otevřít shell a nechat agenta vyřešit — a nikdy napůl v hlavním checkoutu. Sloučení, které v main přesto selže (hook, souběh), se vrátí zpět, když byl main čistý, a dialog ukáže výstup gitu místo holého „Command failed“

## 0.20.13 (2026-09-23)

- TUI dostalo barvy: hlavička a lišta nápovědy v modré z railu, každý projekt s proužkem ve své barvě (⚙ → projekt → barva), značky jantarové pro „potřebuje tebe“, modré pro práci, zelené pro hotovo, šedé pro nečinnost, vybraný task na tmavém pruhu s tučným názvem, prázdný řádek mezi projekty a stavový řádek po částech (projekt ve své barvě, název tučně, stav v barvě značky; „allowed“ zeleně, „denied“ červeně). Vše v paletě 256 barev, takže vypadá stejně v Terminal.app, iTerm2, Ghostty i přes ssh
- robion-cli attach a tui nechají terminál, jak ho našly: sezení Claude Code zapíná hlášení myši a po odpojení dostával shell, ve kterém attach běžel, při každém pohybu myši `[<35;12;5M` — při odpojení (Ctrl-], konec, konec sezení) se teď hlášení myši, focus události, bracketed paste, aplikační klávesy a alternativní obrazovka vypnou a kurzor ukáže, jako to dělá tmux. Dlouhý výsledek `robion-cli call` se v rouře už neusekne

## 0.20.12 (2026-09-23)

- Rytmus dne: Robion ví, kdy tě nic nepotřebuje — všichni agenti běží a žádný nečeká na povolení, odpověď ani přečtení — a ten čas využije pro tebe, ne pro koukání na spinner. ⚙ → Automatizace → Rytmus dne zapne tichý pruh nad plochou „Nic tě teď nepotřebuje — běží 2 tasky. Vstaň, projdi se.“ po pár minutách čekání (Ukázat po; zavřít jde na ten úsek nebo „dnes ne“), protože až něco doběhne nebo se agent zeptá, ozve se telefon. Zbytek zařídí dva nové spouštěče automatizací: desk.waiting (všichni agenti běží N minut a nic tě nepotřebuje, jednou za úsek, jen když jsi u Macu) a desk.sitting (N minut u stolu bez pauzy, znovu při každém násobku; „Pauza je“ = minut bez klávesnice a myši kdekoli na Macu). Na obrazovce Automatizace jsou dvě hotová pravidla („hotová pravidla…“, tracker není potřeba): „Čekám na agenty → jdi se projít“ a „Hodina u stolu → protáhnout se“, obě push na telefon; agent napíše vlastní přes set_automation. Všechno je vypnuté, dokud to nezapneš; tichý čas a throttle platí jako u každého pravidla
- terminál u kteréhokoli tasku odkudkoli: `robion-cli attach` (v ~/Library/Application Support/Robion/bin, na linuxovém serveru `robion-server cli attach`) vypíše otevřené tasky všech projektů se stavem, `attach <task>` (id, název nebo projekt/název) posadí ten terminál k sezení tasku — stejná obrazovka jako záložka, psaní jde do Claude Code, Ctrl-] odpojí a sezení běží dál. Přes ssh na Mac je dialog, který telefon neumí, na jeden příkaz. Po dobu připojení bere Robion terminál jako tebe u obrazovky (držené povolení se ukáže tam, tah se počítá jako přečtený, push nepřijde) a po odpojení dostane záložka zpět svou velikost. Starší robion-attach zůstává jako debug hatch do pane hostu
- Robion v obyčejném terminálu: `robion-cli tui` (tam, kde attach) ukáže vlevo každý projekt s otevřenými tasky a značkou stavu, vpravo živé sezení vybraného tasku a dole, na co čeká — pro linuxový server nebo Mac přes ssh, bez Electronu. Klávesy za Ctrl-]: j/k nebo ↓/↑ vyberou task (pane se přepne), y povolí a n odmítne jeho čekající povolení, ? ukáže klávesy, q skončí a všechna sezení běží dál. Otevře se na tasku, který tě potřebuje nejvíc; stejně jako attach se počítá, že se na ten task díváš
- agent umí spustit task vedle sebe a počkat na něj: MCP nástroje start_task (celé zadání, výchozí vlastní worktree) a wait_task (poslední odpověď a změněné soubory; vrátí se dřív, když task potřebuje tebe). Na dlouhý přepis, druhý názor na svůj diff nebo dvě tři varianty k porovnání. Nový task je obyčejný task — vlastní záložka, časová osa a worktree (v TASKS se štítkem „agent“), obě časové osy říkají, kdo co spustil — jen jednu úroveň, nejvýš agentTaskLimit otevřených na task (config.json, výchozí 3, 0 = vypnuto) a v mezích limitu fronty na kontrolu; jeho povolení a dotazy chodí dál tobě
- hlavička telefonu je na iOS 26 zase ostrá: nainstalovaná aplikace kreslila pod stavovou lištu a systém ten pás nově vyplňuje rozostřením Liquid Glass, které rozmazávalo název tasku i tlačítko zpět — stavová lišta je teď neprůhledná v barvě aplikace (řídí se motivem). iOS si to nastavení čte při přidání na plochu, takže ikonu Robionu odeberte a přidejte znovu ze Safari (Sdílet → Přidat na plochu); stávající instalace rozostření zůstane

## 0.20.11 (2026-09-23)

- oddělovač vedle sloupce nástrojových panelů (OVLÁDÁNÍ, LOG, …) jde po otevření, zavření nebo přesunu panelu zase táhnout: dockview si u sloupce pamatoval limity šířky z doby před uvolněním připnutí, takže sloupec držel svou šířku, dokud se rozložení znovu nenačetlo — velikost se teď hned po změně omezení znovu potvrdí a mřížka limity přepočítá s nimi

## 0.20.10 (2026-09-22)

- editor souborů zalamuje dlouhé řádky, páruje závorky a odsazuje při psaní: dlouhý řádek se zalomí na kraji panelu místo posouvání do strany, závorka protější k té pod kurzorem se zvýrazní, k napsané ( [ { nebo " se doplní zavírací (Backspace smaže pár, Enter mezi nimi otevře odsazený řádek), nový řádek drží odsazení a zavírací závorka se vrátí zpět. Tři přepínače v ⚙ → Vzhled — „Zalamovat dlouhé řádky“, „Závorky“, „Automatické odsazení“ — všechny zapnuté, per počítač, otevřené editory se přepnou hned
- ⌘F s kurzorem v editoru souboru hledá v tom souboru: nad textem se otevře lišta hledání a nahrazení CodeMirroru (⌘G další, ⇧⌘G předchozí, ⌘⌥G přejít na řádek, Esc zavře) — dřív šla klávesa vždycky do Hledat soubor… z menu a uvnitř otevřeného souboru se hledat nedalo. S fokusem kdekoli jinde ⌘F dál hledá soubory

## 0.20.9 (2026-09-22)

- terminálový backend tmux je pryč: terminály běží v pane hostu, vlastním démonu Robionu, výchozím od 0.10 a jediném od 0.20.4. Obrazovka PRVNÍ SPUŠTĚNÍ chce už jen Claude Code (bez karty tmux a bez „nainstalovat přes Homebrew“), stavový řádek nezná varování „tmux chybí“, ⚙ → Nástroje ukazuje claude a tailscale a config.json, který ještě říká "paneBackend": "tmux", se čte jako pane host. Pro běžící sezení se nic nemění; tmux jde odinstalovat
- agent, který přidává automatizaci, už nevypíná pravidla, která máš: pravidlo, které pošle znovu beze změny, si nechá svůj přepínač, jen pravidlo se změněným spouštěčem, podmínkami nebo akcemi se vrátí do INBOXu vypnuté
- segment vedle „nový task“ říká „hlavní checkout“ / „vlastní worktree“ místo „main“ / „větev“: volí, kde task poběží, ne git větev — task v hlavním checkoutu běží ve větvi, která je tam zrovna vybraná, task ve vlastním worktree dostane nový worktree (claude --worktree) a hlavní checkout je pro agenta mimo dosah. Stejně říkají „vlastní worktree“ obě nastavení projektu, přepínač nového tasku na telefonu i startovní automatizace
- INBOX ve dvou půlkách: co čeká na tvoje slovo (navržená pravidla, návrhy) zůstává otevřené nahoře, všechno ostatní — zablokované, selhané, spuštěné, hotové — se skládá pod „pro informaci · N“ a rozbalí se kliknutím (pamatuje se na zařízení); u položek z více projektů řádek chipů filtruje na jeden projekt. Telefon skládá a filtruje stejně
- pravidlo může nechat své hotové tasky mimo INBOX: zaškrtávátko „hotové tahy padají do INBOXu“ v zásuvce pravidla na AUTOMATIZACE (agent píše inboxOnDone: false) — pro rutinní pravidla, jejichž tasky stejně čteš v panelu tasku
- stav tasku sleduje i fork jeho konverzace: když task řídíš z jiného klienta Claude (aplikace Claude, Remote Control), který sezení forkne, lišta dýchá modře, telefon dostává pushe a karta ukazuje, co fork dělá; terminál si nechá své sezení — dřív každý hook takového forku spadl jako „cizí sezení“ a task vypadal nečinně. Restart resumuje nejnovější z konverzací tasku, kterou už žádný proces Claude Code neběží

## 0.20.8 (2026-09-21)

- uklizená horní nabídka: menu Task má všechno, co se děje v tabu tasku (Nový task, Nový terminál, Restartovat sezení… pro aktivní task, rozdělení terminálů a Fokus na terminál ▸, Zavřít panel, Vypnout agenty projektu…), Soubor zůstal projektům a přibylo Zobrazit projekt ve Finderu, hledání se přestěhovalo do Úpravy → Hledat (Hledat soubor ⌘F, Hledat v souborech ⇧⌘F, Hledat v terminálech ⌥⌘F), v Okně přibyly Nástěnka a Automatizace vedle Přehledu a Inboxu, v Zobrazení přibyl Vzhled ▸ s tématy a Znovu načíst okno místo Force Reload; Nápověda má robion.app, Nahlásit problém… (veřejný issue tracker; staré „Robion na GitHubu“ vedlo na privátní repozitář), Otevřít složku s logy a vývojářské nástroje
- Okno → Strom ⇧⌘E a Okno → Git ⇧⌘G zmizely (i s akcemi v ⌘K): obě sekce sedí napevno v postranním panelu, ⌘B ho ukáže a schová
- oprava: task blikal „pracuje“ celé hodiny po tom, co agent skončil, když nechal běžet shell na pozadí (dev server, hlídací smyčka, která nikdy neskončí): kolo teď platí za hotové — stavový řádek říká „⏳ shell ještě běží: <příkaz>“ — a ve stavu „pracuje“ drží task jen běžící subagenti. Úloha na pozadí, která později doběhne, agenta probudí jako dřív

## 0.20.7 (2026-09-18)

- Robion spouští svůj server, nástroje agenta (MCP shim v každém sezení) i pane host na Node zabudovaném v aplikaci: node z Homebrew už není potřeba a nepoužívá se. Upgrade v Homebrew, který systémový node nahradil nebo rozbil, dřív odřízl každé nové sezení od nástrojů Robionu (Steward hlásil „the Robion MCP server failed to connect“) a po dalším restartu nechal okno na SERVER SELHAL — ani jedno se už stát nemůže; headless linuxový server běží dál na systémovém nodu
- SERVER SELHAL se „server stále padá“ cituje řádek, který to vysvětluje, a odkazuje na logs/desktop.log, kam aplikace nově zapisuje každý start a konec serveru — dřív server, který se nedostal ani ke svému logu, nezanechal nic
- sezení Stewarda načítají jen MCP server Robionu, ne tvé vlastní MCP servery ani konektory claude.ai: jeho seznam povolených nástrojů je stejně odmítal, stály čas při startu a sváděly k voláním, která byla zamítnuta
- Electron 44.4.2 (Chrome 152, Node 24.21) — Node, na kterém Robion nově běží, přichází s aplikací a aktualizuje se s ní

## 0.20.6 (2026-09-18)

- postranní panel (ÚKOLY, STROM, GIT) zase ukazuje linku směrem k mřížce panelů: přemalovávala ji pozadí jeho sekcí, takže panel přecházel do terminálu vedle bez viditelné hranice
- posuvníky ukazují jezdec, jen když je ukazatel nad panelem, který se posouvá — strom, git, soubor, terminál; žlábek zůstává na místě, takže se nic neposune, a jezdec se vrátí, jakmile se ukazatel vrátí

## 0.20.5 (2026-09-18)

- nástrojový panel (OVLÁDÁNÍ, LOG, MCP, JIRA, STATISTIKY, aktivita, DRC) drží šířku i při přidání skupiny: přetažení tabu do nového panelu nebo otevření souboru do nové skupiny už nesrovná sloupce na stejnou šířku — 0.20.4 šířku držel jen při zavření sousedního panelu; nová skupina si místo vezme od terminálů a souborů a tab puštěný u horního či dolního okraje dál rozdělí výšku napůl

## 0.20.4 (2026-09-17)

- ⚙ → Agenti už nenabízí přepínač Terminálový backend: terminály běží v pane hostu, vlastní náhradě tmuxu, od 0.10 výchozí a teď pro všechny; config.json, ve kterém zůstal tmux, ho drží, dokud v něm není node
- **náhled** markdownu si také pamatuje, kde jsi byl: přepnutí projektu, restart, přepnutí záložky i výlet do **zdroje** a zpět tě vrátí na stejné místo (0.20 si pamatoval jen editor, náhled začínal nahoře)
- **restartovat sezení…** trvá pár sekund místo půl minuty: už napřed nepíše handoff (headless claude shrnující celou konverzaci), sezení se hned obnoví přes --resume a poznámku z transkriptu napíše až resume, které selže, a spustí se z ní načisto; vypnutí agentů projektu poznámky dál píše podle nastavení
- opraveno: překryv „sezení skončilo“ (a hlavička tasku na telefonu) říkal „session ended“ dvakrát — detail panelu opakoval popisek, a to anglicky i v české verzi; mrtvý panel teď nese detail, jen když říká víc (zaparkováno, obnoveno z handoffu, chybí pane backend)
- INBOX: jedna položka „hotovo“ na task — další tah ji obnoví („aktualizováno před 5 min“) a po tvé odpovědi už k tomu tasku nic nepřijde (jeden task dřív nechal čtyři položky za hodinu); zahození se ptá proč jedním klepnutím (**už hotovo**, **teď ne**, **nepotřebuju**, **špatná premisa**, nebo vlastními slovy — Správce se z toho učí, i z telefonu); **odložit** schová návrh, navržené pravidlo nebo zablokovaný běh do dalšího pracovního dne 8:00; **upravit zadání** před přijetím; **zahodit vše** na skupině; každá položka ukazuje stáří; zablokované a selhané běhy a předání od Správce chodí na telefon jako push; ⌘I (Okno → Inbox) a v ⌘K „inbox“ / „automatizace“ / „nástěnka“; odznak v Docku počítá, co potřebuje tebe
- Správce ukazuje, co plán stál a jak dlouho trval („poslední plán: 7 min · 46 tahů · 1,23 $“, i v souboru plánu a v historii automatizací), běžící plán jde **zrušit**, plán zůstává pod hlavičkou Inboxu sbalený na šest řádků s **předchozími plány** na vyžádání a už netiskne nadpis dvakrát; tasky, které podle něj čekají na tebe, se stanou položkami „potřebuje tebe: <task>“, které task otevřou; zpětná vazba sahá k předchozímu plánu (pondělí vidí pátek i víkend) a zahrnuje i tasky, které spustil, a jeho předání; briefing vynechává nezměněná těla karet pod prvními osmi; **Paměť Správce (memory.md)** jde upravit v Nastavení, **Model** je výběr s výchozím a vlastním id, selhaný plán přijde na telefon; opraveno: otevření položky „spustil Správce“ nic nedělalo a akce `steward` v pravidle hlásila „proběhlo“ i při selhaném plánu nebo vypnutém Správci
- AUTOMATIZACE: řádek **Správce** nad pravidly (rozvrh, stav, poslední plán, přepínač, spustit); vypnutí pravidla se ptá **proč vypnuto?** a důvod ukáže pod názvem; zásuvka má **upravit přes agenta**, **smazat**, vlastní historii pravidla s cenou, odkazy **→ task** a **v Inboxu** a **přeskočené události** — tickety, které ticketové pravidlo vidělo, a podmínku, která je odmítla; **hotová pravidla…** pro připojený tracker (nový ticket pro tebe → návrh, urgentní → task hned); **Historie se maže po** smaže běhy, vyřízené položky a denní soubory Správce po 90 dnech; telefon pravidlo **spustí**, ukáže poslední běh a při vypnutí se zeptá proč
- ⚙ → Projekt má vedle **odebrat z Robionu** nově **Smazat projekt** → **smazat i soubory**: projekt zmizí z railu a jeho složka se i se vším, co v ní je, přesune do koše (Finder ji umí vrátit); potvrzení jmenuje složku; jen na lokálním serveru — vzdálený stroj koš nemá, tam je tlačítko šedé; obě akce jsou i dole v kontextovém menu projektu v railu (**odebrat z Robionu…**, **smazat projekt i soubory…**)
- opraveno: **odebrat z Robionu** s otevřeným taskem nedělalo nic viditelného — server odmítl, dialog se přesto zavřel a projekt zůstal; obě tlačítka jsou teď při otevřeném tasku šedá s důvodem („nejdřív zavři otevřené tasky projektu (otevřených: N)“) a odmítnutí, které server přesto vydá, se ukáže červeně dole v dialogu
- opraveno: task, jehož agent se uprostřed sezení přesunul do worktree („udělej to v novém worktree“ → EnterWorktree), zůstal v sekci úkolů pod main až do prvního `cd` agenta — Claude Code pro EnterWorktree žádný hook CwdChanged nevystřelí; task teď sleduje cwd, které hlásí každý hook, takže pod worktree přeskočí s nejbližším voláním nástroje, a obnovené sezení ve worktree už nemůže skončit zařazené pod main
- nástrojový panel drží šířku, když se vedle něj něco zavře: zavření terminálu nebo souboru vedle záložky OVLÁDÁNÍ, LOG, MCP, JIRA, STATISTIKY, aktivita nebo DRC už nerozdělí uvolněné místo rovnoměrně mezi všechny sloupce (panel ovládání skočil na půl okna) — nástrojový panel zůstane tak široký, jak jsi ho nechal, a místo po zavřeném panelu dostanou terminály a soubory vedle něj; ve svislém stacku to samé platí pro výšku

## 0.20.3 (2026-09-16)

- update už neparkuje všechny běžící agenty: terminálový host starší, ale kompatibilní verze dál běží sezení tak, jak jsou; stavový řádek ukáže „terminálový host čeká na výměnu“ s **vyměnit teď…** a host se vymění sám, až skončí poslední sezení — zaparkování a obnova všech tasků při startu běží jen pro host příliš starý na převzetí
- když výměna běží, říká to lišta s postupem („výměna terminálového hosta: parkuji sezení 3/30“, „spouštím nový host“, „obnovuji sezení 12/30“) místo třiceti šedých terminálů; panel hlásí „sezení se přesouvá na nový terminálový host…“, **restartovat sezení…** a nové tasky čekají se srozumitelným důvodem a lišta prosí Robion mezitím nerestartovat
- výměna trvá sekundy, ne minuty: nepíše handoffy (sezení se hned obnoví tady), a resume, které selže, si poznámku napíše z transkriptu až potom; headless claude, který handoff píše, už nečeká 3 s na stdin a při parkování mnoha tasků jich běží nejvýš tři najednou
- opraveno: retire starého hosta se hlásil jako „migration failed: connection lost“, ač proběhl, a startovní obnova s watchdogem hosta obnovovaly panely dvakrát — jednomu tasku se zbytečně spustilo sezení načisto; restart panelu je teď jedno spuštění, ať se ho dožaduje kdokoli

## 0.20.2 (2026-09-15)

- pane host: pracující agent už nezasekává svůj terminál — crash journal se přepisuje, až se výstup uklidní (nejpozději každých 10 s), místo každou sekundu, a otevření terminálu přehraje 5 000 řádků, které panel drží, místo celé historie 50 000 řádků; na slabších strojích byl pane host proti tmux znatelně línější; první start po tomto updatu jednou zaparkuje a obnoví všechny běžící agenty, aby se běžící pane host vyměnil
- restartovat sezení… v menu tabu Claude Code: agent dokončí tah, zapíše handoff a Claude Code se ve stejném tabu spustí znovu přes --resume — zaparkování a restart jednoho tasku v jednom kroku, třeba po upgradu Claude Code; tab mezitím ukazuje „· restartuji…“ a položka je zašedlá, dokud agent čeká na tvou odpověď

## 0.20.1 (2026-09-15)

- /robion:help — uživatelská příručka jako skill pluginu: session v Robionu odpoví, jak se aplikace ovládá (panely, checkouty, telefon, deck, nastavení, řešení potíží, co je nového), ve tvém jazyce
- sloučení checkoutu spouští git hooky projektu s PATH, jaké má tvůj terminál: co zná login shell (nvm, pnpm, cargo …), node, na kterém běží server Robionu, a Homebrew — husky pre-commit volající npm už nepadá na „npm: command not found“; stejný PATH dostanou setup skripty worktree, run tlačítka a probes
- squash, jehož commit hook odmítne, vrátí čistý main do původního stavu, místo aby v něm nechal squashnuté změny v indexu; main s vlastními změnami si je nechá a chyba to řekne
- postranní panel drží krok s worktrees: merge dialog sleduje živý checkout (commit během otevřeného dialogu odškrtne „worktree je čistý“), řádky úkolů už nedrží zastaralý počet změn po editaci nebo commitu, worktree bez tasku připnutý v GIT se obnovuje s projektem, místo aby čekal na 15s poll, a na linuxovém serveru sledování worktrees přežije odstranění posledního worktree
- seznam checkoutů cestuje s událostí checkout.updated, jeden za dávku změn, takže desktop ani telefon ho po každém tiku gitu nestahují (starší klient stahuje dál); editace uvnitř worktree obnoví GIT a strom toho checkoutu, ne mainu
- merge dialog: odmítnutý squash ukáže výstup hooku v bloku pod hlášením, bez kódu protokolu vpředu; „po sloučení worktree smazat“ přidá smazání ke sloučení (zašedlé, dokud tam běží task, nebo u pull requestu)
- ⚙ → Agenti → zkontrolovat znovu načte i PATH z login shellu, takže nástroj nainstalovaný po startu Robionu se najde

## 0.20.0 (2026-09-14)

- worktrees jsou plnohodnotné checkouty: sekce ÚKOLY v postranním panelu řadí tasky projektu podle checkoutu, popisek GIT přepíná (a připne) strom a git na jeden z nich, ⌘K je nabízí; segment vedle „nový task“ volí main nebo vlastní větev — vlastní větev spustí Claude Code v jeho vlastním worktree (claude --worktree, z lokálního HEAD), na main agent nedosáhne; ⚙ → projekt nastaví výchozí zvlášť pro tasky rukou a pro tasky Správce a automatizací (ty mají vlastní větev výchozí)
- checkout jde aktualizovat (rebase na výchozí větev; konflikty dostane agentní task), sloučit zpět (fast-forward, squash, merge commit nebo pull request, napřed kontroly čistý/nečinný/bez překryvu) a odstranit; ukončení tasku nabídne odstranit jeho worktree a větev, nebo zahodit i nesloučenou práci; „úklid“ sebere worktrees bez tasku, které jsou sloučené nebo starší než 14 dní; telefon ukazuje větev tasku, nabídne vlastní větev pro nový a slučuje ze záložky Změny
- hook CwdChanged Claude Code se instaluje s ostatními, takže session, která se přesune do worktree, nepřijde o svůj task; stávající instalace jednou ukážou „zastaralé“ — klikni „aktualizovat hooky“
- projekt má ikonu místo emoji: ⚙ → projekt nebo pravý klik → „ikona…“ otevře mřížku 72 monochromních ikon; ikona nese barvu projektu a sedí tam, kde byla tečka — v railu, ⌘K, dlaždicích přehledu, hover kartě i na telefonu; dřív nastavené emoji zůstane jako text, dokud nevybereš ikonu; čtyři barvy navíc: růže, švestková, indigo a mátová
- panel souboru si pamatuje, kde jsi byl: pozice posunu přežije přepnutí projektu i restart; „zdroj“ markdown souboru je skutečný editor s autosave (býval jen ke čtení)
- nastavení projektu už nezahodí controls panel, který agent definoval, zatímco byl dialog otevřený

## 0.19.0 (2026-09-14)

- postranní panel (strom + git) může být vlevo nebo vpravo od pracovní plochy a umí se vysouvat po najetí myší: ⚙ → vzhled; soubor otevřený ze stromu přistane ve skupině hned vedle panelu a ke skupině zapomenuté na druhé straně se nepřidá
- Správce má vlastní rozvrh nad projekty: ⚙ → automatizace → Správce → rozvrh (pět polí cronu, výchozí všední dny 6:30) — samotný přepínač dřív nic neplánoval; Inbox ukazuje další plán
- Správce umí přečíst ticket: steward_ticket přinese popis, nejnovější komentáře, vazby a pole z Jiry nebo GitLabu (group/project#12); briefing říká, na co který task čeká (otázka agenta, oprávnění, poslední prompt, poslední řádek timeline); každý plán je v historii automatizací
- návrhy, na které nikdo neodpoví, vyprší: ⚙ → automatizace → „Návrhy v Inboxu vyprší po“ (výchozí 7 dní, 0 = nikdy); Správce bere vypršelý návrh jako nezodpovězený, ne jako zamítnutý, a staré jen spočítá místo denního vypisování
- pád už nenechá černé okno: pracovní plocha i aplikace mají záložní obrazovku s „zkusit znovu“, „výchozí rozložení“, „znovu načíst okno“ a „kopírovat chybu“; chyby rendereru jdou do logs/desktop.log v App Support (přidej ho jako zdroj LOG panelu)
- session, která přežila update, se to dozví: její nástroje Robionu přidávají ke každému výsledku „Robion byl aktualizován, restartuj session“ a task dostane poznámku na timeline
- release se staví z čisté kopie HEAD (necommitnutá práce zůstane venku) a pnpm e2e:smoke před ním prožene dočasnou instanci deseti scénáři; ROBION_DEBUG_PORT pro druhou dev instanci

## 0.18.0 (2026-09-12)

- Správce se učí z toho, co s jeho návrhy uděláš: zahození v Inboxu se zeptá „proč?“ (nepovinné) a další briefing vypíše včerejší návrhy s výsledkem — přijaté se stavem tasku, zahozené s tvým důvodem; zahozený návrh už znovu nenavrhne
- stálé pokyny pro Správce: ⚙ → automatizace → Správce má textové pole (soubor STEWARD.md ve složce Správce, jde upravit i ručně), které čte před každým plánem a má přednost před nástěnkou, tickety i jeho vlastní pamětí — „o víkendu nenavrhuj“, „robion má přednost“
- briefing říká, jak dlouho task stojí nebo čeká a co agent naposledy napsal, takže task s otázkou na tebe se nesplete s návrhem; projekt jde vyjmout ze záběru Správce v ⚙ → projekt (přeskočí i jeho kartičky) a projekty bez otevřeného tasku, dnešního commitu a kartičky se složí do jednoho řádku
- agenti už nezaplní plochu diffy: request_review zapíše poznámku na timeline tasku a označí sekci GIT postranního panelu (otevře se a na chvíli se rozsvítí); diffy se otevřou jako panely jen do tří souborů, nebo když o to agent požádá; tak to říká i návod, který agenti dostávají — upravený kód je v GIT panelu, open_file je na věci, které vyrobili
- protokol 26: vzdálený server na starší verzi se ukáže jako „aktualizujte server“, dokud neběží 0.18.0; běžící sessions Claude Code drží staré popisy nástrojů, dokud se nerestartují

## 0.17.0 (2026-09-12)

- strom a git opustily mřížku pracovní plochy a mají postranní panel vpravo od ní: strom nad gitem, vždy na stejném místě, každá sekce se sbalí do své lišty; ⌘B (Zobrazení → Postranní panel, paleta, tlačítko v liště STROM) zasune celý panel do lišty s ikonami a ikony ho zase vysunou; zobrazený / zasunutý si pamatuje každý projekt (dílenský projekt začíná zasunutý), šířku a poměr sekcí zařízení; rozložení uložená se starými taby strom/git se otevřou bez nich
- postranní panel sleduje aktivní task: klik na tab jiného tasku a GIT ukáže jeho „od posledního tahu agenta“; task ve worktree přepne strom na jeho checkout — základ pro přepínač worktrees v některé z dalších verzí
- mřížka drží jen terminály, soubory a plochu, takže otevření souboru už nehýbe šířkou stromu; ⇧⌘E / ⇧⌘G, ⌘F / ⇧⌘F ukážou panel s tou sekcí, kterou jmenují
- nástěnka: klik otevře kartičku celou (název, poznámka, odkud je) s úpravou, smazáním a „založit task“ — Claude Code v projektu kartičky s kartičkou jako prvním zadáním; kartička jde za taskem do doing
- protokol 25: vzdálený server na starší verzi se ukáže jako „aktualizujte server“, dokud neběží 0.17.0

## 0.16.0 (2026-09-11)

- automatizace: pravidla, která reagují na svět venku bez modelu v cestě — ticket přiřazený tobě v Jiře nebo GitLabu, nebo hodiny (cron) — založí task, pošlou push na telefon, napíšou agentovi do panelu, stisknou tlačítko cockpitu, nebo nechají návrh v novém Inboxu; pravidlo za tebe napíše agent prostými slovy („když mi někdo přiřadí ticket s labelem robion, založ task“: automations_help / set_automation / test_automation, /robion:automate) a začíná vypnuté, dokud ho nezapneš
- Inbox a Automatizace jsou v railu nad projekty: pravidla navržená agentem, návrhy čekající na tvoje slovo, běhy zablokované tvými limity (denní strop tasků, tichý čas, throttle), hotové tasky s poslední zprávou agenta; obrazovka Automatizace ukáže každé pravidlo s přepínačem, „spustit“ (na nejnovější odpovídající ticket) a historii; ⚙ → automatizace drží limity a jedno připojení na tracker — Jira se sem přesunula z panelu JIRA, GitLab je nový
- Správce: plánovací session, která přečte tvoje projekty, otevřené tasky, tickety, inbox a nástěnku a navrhne denní tasky do Inboxu, každý s briefem („naplánovat“ v Inboxu, nebo pravidlo s akcí steward každé ráno); autonomie 2 mu dovolí návrhy označené jako bezpečné rovnou spustit — nikdy release, push, destruktivní příkaz, peníze, lidi ani tajemství; volitelný dohled zkontroluje hotový task automatizace a pošle agentovi jednu připomínku, nebo ho předá tobě s poznámkou; všechno je ve výchozím stavu vypnuté
- nástěnka: tvoje kartičky todo / doing / done nad projekty, stav měníš tažením, pořadí je priorita, ze které Správce plánuje; kartička nese barvu projektu a task, který z ní vznikl; agenti mají board_list / board_add na „zapamatuj si…“; také na telefonu (#/board, #/inbox)
- protokol 24: vzdálený server na starší verzi se ukáže jako „aktualizujte server“, dokud neběží 0.16.0

## 0.15.1 (2026-09-11)

- hotfix: Robion už dílenskému agentovi mezi kroky nepíše /effort — Claude Code si napsaný /effort uloží jako tvoje výchozí úsilí pro daný model, takže 0.15.0 ho tiše přepsala (pokud jsi na 0.15.0 rozjel dílenský projekt, zkontroluj úsilí v Claude Code nebo modelSettings v ~/.claude/settings.json); úsilí a styl odpovědí pro session dál přicházejí ze spouštěcích settings, které tvoje výchozí hodnoty nemění
- oprava: agent teď opravdu dostane kontext Robionu při startu session (úkol, panely, záznam návrhu) — Claude Code spouští SessionStart jen jako příkazový nebo MCP hook a náš HTTP handler beze slova přeskakoval, takže tenhle kontext nikdy nedorazil; hook je teď krátký příkaz curl (banner hooků nabídne aktualizaci) a session, jejíž start přesto propadne, dostane stejný kontext s prvním promptem

## 0.15.0 (2026-09-11)

- panel Návrh je teď průvodce: každé zastavení agenta je brána zapsaná v záznamu — otázky jako formulář s doporučenými odpověďmi a „rozhodni za mě“ u každé, varianty konceptu jako karty, hotový krok jako obrazovka ke schválení s rendery, tabulkami a soubory a jedním tlačítkem Pokračovat; tvoje odpověď se zapíše do design.json přes projektový design_record.py a agent se to dozví jednou řádkou — mapa se pohne, když se pohne záznam, nikdy dřív (vyžaduje Maker Pack 0.26; starší packy dál ukazují panel brief)
- změny kroku ke schválení: napiš je do composeru — krok se vrátí agentovi s tvou poznámkou; i vlastní otázky agenta (AskUserQuestion) se odpovídají v panelu, bez terminálu
- dílenské projekty spouští Claude Code s vlastním nastavením pro danou session (⚙ → agenti: nižší úsilí, výchozí styl odpovědí, volitelně jiný model — tvůj model a jeho 1M kontext zůstávají); kompakci Robion nikdy sám nespouští
- co stojí krok: k odhadu v hlavičce a v řádku souborů kroku přibyl jeho vlastní podíl na měsíci („krok ~12 Kč“)
- telefon: stejné brány v záložce návrh — formulář, karty, schválení — a řádek odpovědi jako malý chip v chatu
- fotky v panelu Návrh: k zadání i ke každé poznámce pro agenta jdou přiložit fotky — vyber je, přetáhni z Finderu nebo vlož (⌘V); uloží se do .robion/uploads projektu, agent se na ně podívá před zadáním a sloupec záznamu je ukáže pod nápadem (vzdálený server potřebuje také tuto verzi)
- dílenský projekt se už při Startu neptá „čekají tasky na kontrolu“ (fronta na kontrolu počítá jeden projekt a dílenské vynechává) a dětský Claude Code spuštěný agentem (aktualizace pluginu, testovací session) už nezavře živý task — hooky z cizí session se ignorují
- živý čip v panelu Návrh ukazuje vedle modelu i kontextové okno (claude-fable-5-1 · 1.0M)
- protokol 23: vzdálený server na starší verzi se ukazuje jako „aktualizuj server“, dokud neběží 0.15.0
- task už nezmizí, když jeho agent spustí další claude (claude plugin update, testovací session): ten se hlásil pod jménem tasku a jeho konec task zavřel a zabil živou session; hooky teď platí jen pro vlastní session tasku

## 0.14.0 (2026-09-10)

- dílenské projekty: dialog nového projektu se zeptá, jestli chceš něco vyrobit nebo vyvíjet software; dílenský projekt je od prvního slova svým panelem Návrh — nápad napíšeš přímo tam, agent se spustí na pozadí bez záložky terminálu, strom a git jen na vyžádání, záložka nejde zavřít a reset rozložení ji zachová (typ se přepíná v nastavení projektu)
- panel Návrh sleduje agenta: každý krok ukazuje to, co odpovídá jeho stavu — otázky kroku, když agent čeká na tebe, co agent dělá, když pracuje (fáze, čas, odhad, model a kontext, jeho seznam kroků, poslední odpověď, volání nástrojů, povolit/zamítnout u oprávnění), soubory, když je hotovo; aktuální krok naskočí sám, kliknutí připne jiný
- každé odeslání je hned vidět — „odesláno agentovi…“, pak „agent pracuje · 3 min“, dokud prompt není v transkriptu; karty konceptu jsou velké, s odznakem „doporučeno“ a tlačítkem pro zvětšení
- kolik návrh stojí: zadej předplatné Claude v ⚙ → aplikace a hlavička panelu ukáže podíl návrhu na tokenech měsíce („zatím ~120 Kč“); bez něj odhad podle cen API z Claude Code
- Maker Pack 0.24: záznam návrhu píše jen projektový design_record.py (skutečné časy, validace, commit na každé bráně), tištěný díl končí plánem tisku pro tvůj slicer — Robion nikdy neslicuje; stránky panelu brief vyžadují pack 0.24; vzdálený server na starší verzi se ukazuje jako „aktualizuj server“, dokud neběží 0.14.0
- a z prvního dne testování: tlačítko „zastavit“ vedle fáze agenta (Esc do pane), otázky a karty se nikdy neschovají za pracujícího agenta, odpověď na bránu posune panel hned na další krok, vlastní poznámka je vidět ve výměně, dokud agent neodpoví, sloupec záznamu jde roztáhnout, strom a git se z menu Okno otevřou vedle kotvy, a Robion spuštěný z shellu agenta už nepředává svým panům značku child session Claude Code (pane host se při prvním startu sám zmigruje)

## 0.13.0 (2026-09-08)

- panel Návrh: projekt z Maker Packu má návrh v design.json — nápad, odpovědi a kdo je rozhodl, koncept, deset kroků se stavem a záznam změn; panel se otevře sám, jakmile agent záznam zapíše, a ukazuje mapu kroků, co je zastaralé, panel brief s otázkami, vedle něj záznam a řádek pro zprávu agentovi
- telefon: task se záznamem návrhu ukazuje kroky jako pruh pod hlavičkou a záložku „návrh“ se záznamem; ťuknutí na odpověď ji změní
- změnové požadavky: „změnit“ u zapsané odpovědi pošle agentovi prompt se starou a novou hodnotou — agent upraví záznam, označí, co zastará, a řekne, co se přegeneruje; Robion do záznamu nikdy nezapisuje sám
- ovládání: tři widgety pro agenty — choices (karty s obrázkem, popisem a chipy faktů, výběr jedné nebo více), gallery (více obrázků s popisky) a table (sloupce a řádky)
- vzdálený server na starší verzi se ukazuje jako „aktualizuj server“, dokud neběží 0.13.0 (robion-server update na stroji); záznam návrhu vyžaduje Maker Pack 0.23 nebo novější

## 0.12.12 (2026-09-08)

- servery: vzdálený server zaparkovaný jako „aktualizuj server“ se po aktualizaci stroje připojí sám — desktop se každých 30 sekund ptá jeho /health a jakmile protokol sedí, spojení obnoví; dosud řádek zůstal červený až do restartu Robionu

## 0.12.11 (2026-09-08)

- servery: tlačítko „aktualizovat na …“ v ⚙ → Servery teď po kliknutí ukazuje, co se děje — řádek říká „aktualizuje se na …“, dokud stroj sestavuje, a „restartuje se…“, když se vrací, a tlačítko je do té doby pryč; druhé kliknutí už nespustí druhou aktualizaci (server ji odmítne, dokud běží první) a aktualizace, která se nevrátí, tlačítko po 20 minutách vrátí s odkazem na update.log na stroji
- telefon: projekt založený z telefonu už nezůstane viset na otázce Claude Code „věříš této složce?“ — Robion ji za složku, kterou právě vytvořil, zodpoví sám (v ~/.claude.json, před každým spuštěním); naklonované nebo vybrané složky si otázku nechají
- telefon: záložka terminálu má lištu kláves (Esc, Tab, ⇧Tab, šipky, ⏎, ^C, 1–3) pro dialogy, které si Claude Code kreslí sám — důvěra složce, přihlášení, výzva k aktualizaci; čerstvě spuštěný Claude Code, který 10 sekund mlčí, dostane v chatu nápovědu ukazující na terminál
- protokol 19: vzdálený server na starší verzi se ukáže jako „aktualizuj server“, dokud neběží na 0.12.11 — robion-server update na stroji

## 0.12.10 (2026-09-07)

- desktop: záložka s diffem, která není vpředu, už při každé změně v repu znovu nestahuje svůj diff — review s mnoha otevřenými diffy během buildu chtělo po serveru tisíce diffů za hodinu; aktuální diff si záložka stáhne, když na ni přepneš
- telemetrie: pohled na diff nebo na commit už není událost (git.diff a git.commit byla čtení, která si panely opakují samy) — otevření panelu se počítá dál

## 0.12.9 (2026-09-07)

- telefon: ťuknutí na obrázek v chatu ho otevře přes celou obrazovku — pinch přibližuje, jeden prst posouvá, dvojklik zvětší a zase vrátí; v chatu se ukážou i obrázky z volání open_files
- aktualizace: nový Robion se stáhne sám a stavový řádek to ukáže — průběh a pak štítek „připravený · restartovat“; restart ho nainstaluje, agenti i terminály běží dál a připojí se zpět, „Restartovat a nainstalovat“ je i v menu aplikace a pod ⚙ → Servery
- aktualizace: kontrola se opakuje každých 6 hodin a po probuzení ze spánku, takže i cockpit otevřený několik dní vydání dostane; neúspěšná kontrola řekne jednou větou proč (offline, vydání ještě není zveřejněné) a surovou chybu má v drobném písmu
- telemetrie: PostHog si z události nechává jen zemi (odvozenou z IP odesílatele, která se pak zahodí) — nastavení popisuje TELEMETRY.md

## 0.12.8 (2026-09-07)

- telefon: obrázek, který agent vyrobil, se ukáže v chatu — jako markdown obrázek v jeho odpovědi (cesta relativně k pracovní složce) nebo přes open_file na obrázek; PNG, JPG, SVG a další typy, které prohlížeč umí, Gerber se vykreslí jako SVG
- telefon: dlouhá zpráva už se neztratí — text dorazí do Claude Code jako jedno vložení a Enter přijde o chvilku později; dřív ho terminál rozsekal na několik vložení a Enter spolkl, takže prompt zůstal neodeslaný, zatímco telefon hlásil úspěch
- telefon: odeslaná zpráva se hned ukáže jako „odesláno · čeká na agenta“, dokud ji konverzace nemá — zaneprázdněný agent si ji vezme na konci svého tahu
- telefon: pole pro zprávu má zpět autokorekci a velká písmena iOS — s vypnutými se tečka za slovem psala jako „slovo .“
- telefon: červený pruh „connection closed“ už nepřežije znovupřipojení — požadavek přerušený výpadkem není chyba, kterou stojí za to držet, a po obnovení spojení se smaže i každá starší

## 0.12.7 (2026-09-02)

- telefon: otázka agenta (AskUserQuestion) je list karet — u jedné volby odpoví ťuknutí; více otázek nebo multi-select se nejdřív označí a odešle jedním tlačítkem, které zůstává na očích pod seznamem; „vlastní odpověď“ je karta, která se změní v textové pole
- telefon: po dobu otázky se skryje pole pro zprávu, které pod ní dřív viselo neaktivní, a z otázky zmizela technická poznámka o klávesách
- záložka úkolu: zavření rozděleného terminálu už nenechá ve stavovém řádku „NOT_FOUND: Task … has no pane 2“ — server ohlásil zabitý shell jako ukončený dřív, než zavření doběhlo, a záložka ho zavřela podruhé
- telefon: pruhy offline, aktualizace a chyby sdílejí jeden pás nahoře, který započítá výřez displeje jen jednou — hlavička obrazovky pod pruhem ho dřív odsazovala podruhé

## 0.12.6 (2026-09-02)

- ovládací panel: probe se shellovým příkazem najde stejné nástroje jako terminál (Homebrew, ~/.local/bin, volta) — probe „Verze“ v deploy panelu ukazovala „neběží“, protože node nebyl na PATH aplikace
- command probe, která selže a nemá text pro „off“, ukáže první řádek výstupu příkazu červeně (např. „node: command not found“) místo holého „neběží“

## 0.12.5 (2026-09-02)

- terminály uvnitř jednoho tabu tasku: každý terminál nabízí „nový terminál vpravo / dole“ (⌘D / ⇧⌘D), dělení se libovolně vnořuje, dělítka jdou táhnout, ⌥⌘šipky přepínají fokus mezi nimi, ⌘W zavře zaostřený přidaný terminál; přidané shelly sdílí složku i prostředí tasku a zavírají se s ním
- nastavení: vyhledávací pole přes všechny sekce (⌘F) — napiš slovo a zůstanou jen odpovídající řádky, diakritika ani velikost písmen nehrají roli
- seznam nedávno zavřených tasků na domovské stránce projektu říká „začít znovu“ u tasku, jehož sezení nezanechalo transkript, místo slibu obnovení, které nejde
- oprava: zavření posledního terminálu projektu mohlo okno nadobro zamrazit
- oprava: „Ne“ nebo Esc v dialogu povolení či otázky nechávalo task ve stavu čekání; teď jde hned do klidu

## 0.12.4 (2026-09-02)

- oprava: na iPhonu mohl header skončit pod stavovou lištou poté, co se použila klávesnice — stránka se už neposouvá, klávesnice místo toho zmenší aplikaci, takže pole pro prompt zůstane nad ní
- jednorázový banner „statistiky používání jsou zapnuté“ je pryč; vypínač i úplný seznam toho, co se posílá, zůstávají v ⚙ → Soukromí

## 0.12.3 (2026-09-02)

- anonymní statistiky používání: Robion nově hlásí, které funkce se používají a které verze běží (PostHog, servery v EU) — bez obsahu, bez cest, bez identity nad rámec náhodného ID instalace; ⚙ → Soukromí vypisuje všechna pole a má vypínač
- Okno → Prohlížeč (⇧⌘B) otevře webový náhled tasku — dosud byl jen v ⌘K
- badge na ikoně v Docku počítá každého agenta, který tě potřebuje: povolení, otázku, chybu i dokončený tah, na který se ještě nikdo nepodíval (zmizí, jakmile panel otevřeš)
- oprava: telefon ukazoval otázku agenta (AskUserQuestion) jako kartu povolení se surovým JSONem místo tlačítek s odpověďmi — Claude Code 2.1.258 žádá o povolení i pro samotný dialog otázky, což se teď bere jako otázka; klávesy pro odpověď byly znovu ověřeny proti aktuálnímu dialogu (záložky, multi-select, „type something“, krok Review)
- oprava: nový panel ukazoval „agent čeká na odpověď v terminálu — <název> needs your input“ pro session, která v něm nikdy neběžela — Claude Code hlásí zablokované background joby (claude agents, ~/.claude/jobs) každé nové session a Robion to bral jako otázku vlastního panelu; teď se to ignoruje — starý job odstraní claude rm <id>

## 0.12.2 (2026-09-02)

- pracující agent je vidět na první pohled: jeho stavová buňka v levém sloupci a tečka v tabu terminálu při práci pomalu dýchají; čekající task zůstává v klidu, aby na něm oko dál spočinulo
- panel LOG: sloupec času ukazuje místní HH:MM:SS.mmm místo UTC bez milisekund; query_logs zůstává v UTC, ale s milisekundami
- oprava: řádek LOGu, jehož level přišel zabalený v barevných kódech terminálu (červený ERROR), neměl žádný level a ukazoval syrové escape sekvence — kódy se teď odstraní, než se level čte
- oprava: přejmenování zdroje LOGu restartovalo jeho tail a zdvojilo buffer — restart teď vyvolá jen změna cesty nebo příkazu

## 0.12.1 (2026-09-02)

- oprava: session, ve které jsi pokračoval z jiného klienta (Remote Control, Claude appka), vypadla z Robionu — žádný stav, žádný push, nic na časové ose; pane teď takovou session pozná podle transcriptu a převezme ji
- oprava: Esc hned po odeslání promptu — ještě před prvním slovem odpovědi — nechal task navždy ve stavu „pracuje“; pane teď čte vlastní stav session Claude Code a tah ukončí do pár sekund
- vzdálené servery: na headless stroji se hooky nikdy nenainstalovaly, takže jeho agenti nehlásili stav — ⚙ → Servery to teď ukáže a nainstaluje je jedním klikem

## 0.12.0 (2026-09-02)

- agent ví, že sedí v Robionu: vestavěný průvodce naučí Claude Code kokpit (panely, ovládání, náhledy), /robion:guide a /robion:cockpit odpoví na detaily, stav kokpitu dostane hned při startu session a „pokyny pro agenta“ otevřou projektový CLAUDE.md
- seznam úkolů agenta se živě zrcadlí do levého sloupce, telefonu i decku — postup je vidět bez otvírání terminálu
- panel LOG: projektu nastavíš logovací soubory nebo streamující příkaz a sleduješ je v appce; agent si stejné logy čte a prohledává přes MCP, místo aby si o ně říkal
- „poslat agentovi“ teď funguje i z řádku LOGu a ze selhaného run tlačítka
- konec předčasného „hotovo“: task, jehož agent rozdal práci subagentům na pozadí, zůstává ve stavu „pracuje“, dokud opravdu neskončí — push na telefon přijde až na skutečném konci
- telefon: v přepínači permission módů přibyl auto mód a chat čerstvě založeného tasku už neblikne červenou interní chybou
- deck už nejsou jen tlačítka: schvalování povolení na klávesách, destička s limity a přehled tasků
- témata Catppuccin Mocha a Macchiato; taby mají kontextové menu (maximalizovat, zavřít, zavřít všechny) a zřetelnější akcent aktivního tabu; výběr textu v renderovaných pohledech přežije překreslení
- linuxový server: „remote enable“ najde i Tailscale doinstalovaný po startu serveru, složka pro nové projekty se založí sama a webový průvodce má jednorázový operator příkaz jako samostatný krok

## 0.11.0 (2026-09-01)

- projekty můžou žít i na jiných strojích: linuxový server spáruješ jedním odkazem, jeho projekty dostanou v levém sloupci vlastní skupinu a nové jdou založit, importovat nebo naklonovat přímo na něj; soubory se přetahují mezi projekty i servery
- vzdálené servery se aktualizují samy: jeden klik v ⚙ → Servery sestaví novou verzi vedle běžící a atomicky přepne; přístup je per zařízení — každého klienta jde spárovat, vypsat i odvolat zvlášť
- webové a HTML náhledy: výběr ⌖ pošle agentovi element i s tvou poznámkou („tohle tlačítko zvětši“); agent si o výběr umí říct i sám, vyfotit si náhled nebo se doptat na DOM přes MCP
- dev server běžící na vzdáleném serveru se v appce zobrazí přes tunel na jeden klik
- soubory se otvírají rovnou k editaci a samy se průběžně ukládají; ⌘E přepíná mezi nedávnými panely (a ⌘0–9 teď fungují i na české klávesnici)
- levý sloupec: soubor puštěný na řádek projektu se do něj zkopíruje (podržení projekt rovnou otevře) a druhý řádek ukazuje počet otevřených terminálů a agentů projektu
- stream deck Ulanzi D200 funguje jako fyzický ovládací panel
- macOS 26 má ikonu v novém formátu — kolem tmavé dlaždice už není bílý rámeček

## 0.10.0 (2026-08-31)

- pane host je teď výchozí terminálový backend — čerstvá instalace už tmux nepotřebuje; existující instalace zůstávají u backendu zvoleného v ⚙
- nový projekt přímo z desktopu: tlačítko ⊕ v levém sloupci (nebo Soubor → Nový projekt…) založí složku s git init ve tvé složce pro nové projekty — a když nastavená není, rovnou ji nabídne vybrat
- notifikace jedou už jen přes Web Push: end-to-end šifrované pushe rovnou do nainstalované telefonní appky, bez služby třetí strany — vrstva ntfy zmizela; ⚙ → notifikace pošle testovací push na telefony
- telefon tě navede, jak si ho uložit jako appku (jediná cesta k pushům): na Androidu skutečné instalační tlačítko, na iOS postup Sdílet → Přidat na plochu
- lokální server, který nejde spustit, ukáže celou obrazovku s důvodem a tlačítkem „zkusit znovu“ místo řádku ve status line; bannery (hooky, limity) se ukážou i před prvním projektem
- ovládání: set_controls umí přejmenovat panel nebo vyměnit ikonu bez sahání na widgety a obrázkové dlaždice hlídají i složky, které teprve vzniknou — první render se objeví sám

## 0.9.2 (2026-08-31)

- ovládání: projekt (i task) může mít víc pojmenovaných panelů místo jednoho seznamu — v jednom tlačítka na release, v druhém parametry modelu; každý má vlastní hodnoty, layout i náhled a agent přepsáním jednoho už nesmaže ostatní
- ovládání: každý panel jde otevřít jako vlastní záložku („otevřít jako záložku“, nebo rovnou z agentova set_controls), takže parametry můžou být vedle 3D náhledu a launcher jinde; OVLÁDÁNÍ zůstává přehledem všech
- ovládání: tlačítko může svůj terminál skrýt (silent) — samo pulzuje, dokud příkaz běží, odmítne druhý klik, hotový shell se zavře sám a jen selhání ukáže výstup
- oprava: tlačítka zůstávala navždy ve stavu „běží“ — značka o konci příkazu existovala jen pod tmuxem, takže na pane hostu žádný běh nikdy neskončil (silent tlačítko zůstalo zablokované). Exit kód teď hlásí backend, který terminál vlastní
- oprava: výstup doběhnutého příkazu je zase čitelný (selhaný build se tvářil prázdně) a terminál, ke kterému už nejde připojit, ukáže svůj poslední výstup místo holé nabídky restartu

## 0.9.1 (2026-08-30)

- oprava aktualizace: jednorázová migrace pane hostu se uměla zaseknout na terminálu, který považovala za zaparkovaný — každý nový task pak okamžitě skončil se „session ended“; migrace teď před vyřazením starého hostu uklidí každý zbylý terminál (scrollback se uloží)
- obnovený shell terminál zase správně odparkuje svůj task — task označený jako zaparkovaný, zatímco jeho terminál dál běžel, byl přesně to, co migraci zaseklo

## 0.9.0 (2026-08-30)

- telefon: na otázky agenta (AskUserQuestion) se odpovídá skutečnými tlačítky — možnosti, multi-select i vlastní odpověď, přímo v chatu
- telefon: schvalování plánu ukáže celý plán s možnostmi jako v terminálu — schválit s auto-accept edits, schválit s ručním schvalováním, nebo pokračovat v plánování s připomínkami
- telefon: permission mód sezení (ruční / accept edits / plánování) se přepíná čipem na obrazovce tasku
- telefon: přílohy obrázků — galerie, foťák nebo vložení ze schránky; na Androidu jde screenshot nasdílet rovnou do Robionu (share target); soubory přistanou v tasku a agent si je sám přečte
- telefon: „nový projekt“ založí novou složku (git init) ve složce nastavené v ⚙ → aplikace
- telefon: klik na notifikaci teď otevře správný task i při zavřené aplikaci (iOS zahazoval deep link)
- telefon: terminál má zase barvy — aktualizace pane hostu, která je servíruje, se teď nasadí automaticky (jednorázové zaparkování a obnova běžících agentů)

## 0.8.0 (2026-08-29)

- telefon: push notifikace přímo ze serveru (Web Push) — bez aplikace ntfy; zapínají se v nastavení telefonu a žádost o povolení má tlačítka povolit/odmítnout rovnou v notifikaci
- telefon: povolit/odmítnout přímo z řádku přehledu, když agent čeká na povolení
- telefon: chat načte starší historii, editace se ukazují jako červeno-zelený diff a terminál má barvy
- telefon: pole zprávy roste pro víceřádkové prompty a rozepsaný text přežije; gestem od levého kraje se jde zpět
- telefon: po vydání nové verze nabídne pruh obnovení
- ovládání: dlaždice steps se sondou se konečně vzorkuje — fáze pipeline se hýbou s během

## 0.7.0 (2026-08-29)

- ovládání: tlačítka hlásí živý stav běhu (běží / ok / chyba / zastaveno) a nová dlaždice steps ukazuje fáze pipeline — release kokpit vidí, kde běh je
- ovládání: dlaždice mají pořádné ikony (Lucide) místo emoji, na desktopu i telefonu
- strom a git panel se obnovují samy při každé změně souboru v projektu (sledování pracovního stromu)
- strom: soubory a složky jde tvořit, přejmenovat a mazat přímo v panelu; ukázat ve Finderu, zkopírovat cestu
- poznámky k vydání: tenhle dialog — otevře se jednou po každé aktualizaci a kdykoli přes Nápověda → Co je nového

## 0.6.0 (2026-08-29)

- vlastní pane host: terminály umí běžet v našem vlastním démonu na pozadí — tmux už není potřeba (zapíná se v ⚙ nastavení)
- ovládání: tlačítka umí parametry, obrázkové dlaždice se obnovují živě, doběhlé běhy se umí samy zavřít (autoClose)
- agenti umí číst a prohledávat terminály projektu (MCP read_terminal a search_terminals)
- Maker Pack: plugin pro Claude Code se instaluje a aktualizuje přímo z aplikace
- terminál: přibalený font JetBrains Mono s Nerd symboly; volitelný plynulý kurzor (⚙ vzhled)

## 0.5.2 (2026-08-29)

- maximalizace panelu přes celou plochu (⇧⌘↩ nebo dvojklik na tab)
- terminál: WebGL už nezhasíná rozložení při mnoha panelech
- web robion.app je venku

## 0.5.0 (2026-08-28)

- nové jméno: z AgentDecku je Robion — včetně nové ikony
- automatické aktualizace: aplikace sleduje GitHub releases a instaluje při ukončení
- ovládání v2: podmínky, skupiny a stránky, checklist, presety, živé sondy — a telefon vykreslí stejný kokpit
- kompletní menu Soubor a Nápověda se zkratkami panelů
