From 4858a1ab4b84a413b3aa6d5f64d2c9471cf39c6e Mon Sep 17 00:00:00 2001 From: lachtan Date: Thu, 17 Sep 2026 18:48:05 +0200 Subject: [PATCH] nanobot: 2026-09-17 18:48:03 --- cron/jobs.json | 325 +++++++++++++++--- projects/en/artifacts/phrases.md | 3 +- projects/life/memory.md | 2 + projects/life/state.md | 9 + projects/travel/memory.md | 1 + projects/travel/state.md | 2 +- ..._nanobot-v0.3.0-vs-v0.3.5-deep-research.md | 93 +++++ results/ollama_weekly_usage.png | Bin 0 -> 50647 bytes 8 files changed, 389 insertions(+), 46 deletions(-) create mode 100644 results/2026-09-16_nanobot-v0.3.0-vs-v0.3.5-deep-research.md create mode 100644 results/ollama_weekly_usage.png diff --git a/cron/jobs.json b/cron/jobs.json index ffc0c4e..0deb402 100644 --- a/cron/jobs.json +++ b/cron/jobs.json @@ -37,8 +37,8 @@ } }, "state": { - "nextRunAtMs": 1789538400000, - "lastRunAtMs": 1789452000002, + "nextRunAtMs": 1789711200000, + "lastRunAtMs": 1789624800002, "lastStatus": "ok", "lastError": null, "runHistory": [ @@ -46,42 +46,62 @@ "runAtMs": 1789020000002, "status": "ok", "durationMs": 6281, - "error": null + "error": null, + "runId": null }, { "runAtMs": 1789106400001, "status": "ok", "durationMs": 6997, - "error": null + "error": null, + "runId": null }, { "runAtMs": 1789192800002, "status": "ok", "durationMs": 5526, - "error": null + "error": null, + "runId": null }, { "runAtMs": 1789279200002, "status": "ok", "durationMs": 10674, - "error": null + "error": null, + "runId": null }, { "runAtMs": 1789365600002, "status": "ok", "durationMs": 5495, - "error": null + "error": null, + "runId": null }, { "runAtMs": 1789452000002, "status": "ok", "durationMs": 4987, - "error": null + "error": null, + "runId": null + }, + { + "runAtMs": 1789538400002, + "status": "ok", + "durationMs": 10889, + "error": null, + "runId": null + }, + { + "runAtMs": 1789624800002, + "status": "ok", + "durationMs": 6647, + "error": null, + "runId": "c1e268c8:1789624800003:96c562a2" } ] }, "createdAtMs": 1788948314679, - "updatedAtMs": 1789452004989, + "updatedAtMs": 1789624806649, "deleteAfterRun": false }, { @@ -108,21 +128,134 @@ "originMetadata": {} }, "state": { - "nextRunAtMs": 1789469747898, - "lastRunAtMs": 1789462547857, + "nextRunAtMs": 1789669878432, + "lastRunAtMs": 1789662678420, "lastStatus": "ok", "lastError": null, "runHistory": [ { - "runAtMs": 1789462547857, + "runAtMs": 1789547478103, "status": "ok", - "durationMs": 41, - "error": null + "durationMs": 26, + "error": null, + "runId": null + }, + { + "runAtMs": 1789554678131, + "status": "ok", + "durationMs": 11, + "error": null, + "runId": null + }, + { + "runAtMs": 1789561878143, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789569078156, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789576278256, + "status": "ok", + "durationMs": 11, + "error": null, + "runId": null + }, + { + "runAtMs": 1789583478269, + "status": "ok", + "durationMs": 13, + "error": null, + "runId": null + }, + { + "runAtMs": 1789590678283, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789597878296, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789605078310, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789612278324, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789619478338, + "status": "ok", + "durationMs": 11, + "error": null, + "runId": null + }, + { + "runAtMs": 1789626678350, + "status": "ok", + "durationMs": 13, + "error": null, + "runId": null + }, + { + "runAtMs": 1789633878365, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789641078378, + "status": "ok", + "durationMs": 11, + "error": null, + "runId": null + }, + { + "runAtMs": 1789648278391, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null + }, + { + "runAtMs": 1789655478405, + "status": "ok", + "durationMs": 13, + "error": null, + "runId": null + }, + { + "runAtMs": 1789662678420, + "status": "ok", + "durationMs": 12, + "error": null, + "runId": null } ] }, - "createdAtMs": 1789455347840, - "updatedAtMs": 1789462547898, + "createdAtMs": 1789540278089, + "updatedAtMs": 1789662678432, "deleteAfterRun": false }, { @@ -149,51 +282,155 @@ "originMetadata": {} }, "state": { - "nextRunAtMs": 1789467948003, - "lastRunAtMs": 1789466148003, + "nextRunAtMs": 1789664478436, + "lastRunAtMs": 1789662678435, "lastStatus": "ok", "lastError": null, "runHistory": [ { - "runAtMs": 1789457147995, - "status": "ok", - "durationMs": 0, - "error": null - }, - { - "runAtMs": 1789458947996, + "runAtMs": 1789628478367, "status": "ok", "durationMs": 1, - "error": null + "error": null, + "runId": null }, { - "runAtMs": 1789460747999, - "status": "ok", - "durationMs": 0, - "error": null - }, - { - "runAtMs": 1789462548000, - "status": "ok", - "durationMs": 0, - "error": null - }, - { - "runAtMs": 1789464348001, + "runAtMs": 1789630278369, "status": "ok", "durationMs": 1, - "error": null + "error": null, + "runId": null }, { - "runAtMs": 1789466148003, + "runAtMs": 1789632078371, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789633878381, "status": "ok", "durationMs": 0, - "error": null + "error": null, + "runId": null + }, + { + "runAtMs": 1789635678381, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789637478383, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789639278385, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789641078391, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789642878392, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789644678394, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789646478397, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789648278408, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789650078411, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789651878412, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null + }, + { + "runAtMs": 1789653678414, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789655478420, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789657278421, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789659078423, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789660878424, + "status": "ok", + "durationMs": 0, + "error": null, + "runId": null + }, + { + "runAtMs": 1789662678435, + "status": "ok", + "durationMs": 1, + "error": null, + "runId": null } ] }, - "createdAtMs": 1789455347851, - "updatedAtMs": 1789466148003, + "createdAtMs": 1789540278095, + "updatedAtMs": 1789662678436, "deleteAfterRun": false } ] diff --git a/projects/en/artifacts/phrases.md b/projects/en/artifacts/phrases.md index 1a76db5..22a0fcb 100644 --- a/projects/en/artifacts/phrases.md +++ b/projects/en/artifacts/phrases.md @@ -2,4 +2,5 @@ | EN | CZ | poznámka | |----|----|----------| -| a means to an end | prostředek k cíli | něco, co má smysl jen jako cesta k cíli, ne samo o sobě; work is a means to an end | \ No newline at end of file +| a means to an end | prostředek k cíli | něco, co má smysl jen jako cesta k cíli, ne samo o sobě; work is a means to an end | +| from the bottom of my heart | z hloubi srdce | vždy s "from"; zdůrazňuje upřímnost: thank you from the bottom of my heart | \ No newline at end of file diff --git a/projects/life/memory.md b/projects/life/memory.md index c4bc5cb..59a502d 100644 --- a/projects/life/memory.md +++ b/projects/life/memory.md @@ -28,3 +28,5 @@ - 2026-09-15: Stav kyčle po 4 dnech cvičení: asymetrie přetrvává — pravá strana táhne o dost víc, přitahování kolen jde obecně ztuha. K fyzio sestavě zařadil i další cviky ze své obvyklé sestavy. Rozhodnutí: nová návštěva fyzioterapeutky cca 3–4 týdny po první (10.9.), tedy začátek října — v souladu s klinickou praxí (reassessment 2–3 týdny po zahájení, pak 3–4 týdny; ROM adaptace trvá týdny). Na kontrole doladit počty opakování a výdrže u cviků. - 2026-09-15: Upřesnění k rozšíření sestavy: další přidané cviky jsou taky protahovací — celý trénink tak zůstává čistě mobilizační, žádná zátěž navíc. - 2026-09-16: Další tréninkový den (16.9.) — fyzio cviky plus další přidané protahovací cviky z vlastní obvyklé sestavy. Adherence drží: 5 tréninků za 6 dní, v rámci zvoleného pásma (podlaha 2×/týden, cíl denně). +- 2026-09-16: Rozhodnutí o doplňcích (k výživě, po rozboru článku o hořčíku): vybral si MedPharma Magnesium citrát Forte B6 (BENU, 67 tbl., ~119 Kč) — plán brát **1 tabletu denně** (150 mg elementárního hořčíku v citrátu, 6 mg B6; při 1 tabletě pod EFSA UL 250 mg i pod britským B6 limitem 10 mg). Splňuje kritéria z článku: vstřebatelná forma, elementární hořčík jasně na etiketě, malý počet tablet na dávku, rozumná cena. Vedle toho má doma MedPharma Ca+Mg+Zn (hořčík jako špatně vstřebatelný oxid) — ten nadále brát na Ca+Zn, ne jako zdroj hořčíku; při kombinaci počítat hořčík z obou produktů. Důvod v kontextu projektu: lepší spánek/regenerace jako podpora váhového cíle; doplněk ale nenahrazuje jídlo a spánek. Produkt: https://www.benu.cz/medpharma-magnesium-citrat-forte-b6-tbl-67 +- 2026-09-16: Zdroj k rozhodnutí o hořčíku: článek „Hořčík pro běžce: Kdy má smysl a za co zbytečně připlácíte“ (rungo.cz, 16.9.2026) — https://rungo.cz/2026/09/16/horcik-pro-bezce-jak-vybrat/ . Klíčové závěry, na kterých stojí volba doplňku: křeč v lýtku není diagnóza nedostatku hořčíku (současný výzkum EAMC je složitější než výpadek jednoho minerálu); běhání samo o sobě nedostatek nezpůsobuje; první řešit jídlem (luštěniny, ořechy, semínka, celozrnné, listová zelenina); při výběru hledat elementární hořčík v denní dávce (ne hmotnost sloučeniny na přední straně), počet tablet na dávku a formu — lépe vstřebatelné citrát/laktát/chlorid/aspartát, oxid má horší vstřebatelnost ale není zbytečný; přesné načasování forem (malát ráno na energii, bisglycinát večer na spánek) marketing bez důkazů, stejně jako hořčíkové koupele/olej (transdermální vstřebávání nedoložené); EFSA UL pro hořčík z doplňků 250 mg/den (limit odvozen z projímavosti, ne toxicity); hořčík na spánek nenahradí režim a spánek. Zdroje článku: EFSA, NIH ODS, PubMed systematické review. diff --git a/projects/life/state.md b/projects/life/state.md index d791b62..af3b907 100644 --- a/projects/life/state.md +++ b/projects/life/state.md @@ -39,6 +39,15 @@ Denní vážení, vnímaná kondice, jestli mě něco bolí. - Pozorování: po teplejším jídle (sushi) přichází chuť na sladké / zasytivé. - Otázka k řešení: jak tu chuť zastavit nebo nahradit něčím, co nezvedne váhu. +## Doplňky (od 2026-09-16) + +- **MedPharma Magnesium citrát Forte B6** — 1 tableta denně (150 mg Mg citrát, + 6 mg B6). Vybíráno podle kritérií z hořčíkového článku (forma, elementární + hořčík na etiketě, dávkování, cena). +- **MedPharma Ca+Mg+Zn** (starší nákup) — brát jako zdroj Ca+Zn, ne hořčíku + (obsahuje oxid hořečnatý, špatně vstřebatelný). +- Hořčík při kombinaci obou produktů počítat dohromady (EFSA UL 250 mg/den). + ## Mobilita a pohyb (2026-09-02) - **Fyzio terapie k zadání**: omezená mobilita pravého kyčle; proč se pravá noha diff --git a/projects/travel/memory.md b/projects/travel/memory.md index 3f35321..620f94c 100644 --- a/projects/travel/memory.md +++ b/projects/travel/memory.md @@ -4,3 +4,4 @@ - 2026-09-13: Doplnění ke Skotsku: výlet do Highlands byl v září. - 2026-09-13: Nová plánovaná destinace: Norsko — cesta karavanem. - 2026-09-13: Plánované termíny: Vánoce — Maroko (letíme), únor — Panama. Tím se mění původní plán z USER.md (Vánoce 2026 Panama, ~21.12.2026–4.1.2027) — Panama se posouvá na únor. +- 2026-09-17: Panama: upřesněn termín letu z Prahy — odlet 5.2.2027, návrat z Panamy 21.2.2027 (návrat do Prahy 22.2.2027). Původní zápis „únor" je tím konkrétní. diff --git a/projects/travel/state.md b/projects/travel/state.md index 6c45181..61ecf78 100644 --- a/projects/travel/state.md +++ b/projects/travel/state.md @@ -2,7 +2,7 @@ ## Nadcházející s termínem - Vánoce — Maroko (letíme) -- Únor — Panama +- 5.2.2027 – 22.2.2027 — Panama (odlet z Prahy 5.2., návrat z Panamy 21.2., přílet do Prahy 22.2.) ## Destinace s Emou — navštíveno - Skotsko — Highlands (září 2025), bylo to boží diff --git a/results/2026-09-16_nanobot-v0.3.0-vs-v0.3.5-deep-research.md b/results/2026-09-16_nanobot-v0.3.0-vs-v0.3.5-deep-research.md new file mode 100644 index 0000000..e38b1d8 --- /dev/null +++ b/results/2026-09-16_nanobot-v0.3.0-vs-v0.3.5-deep-research.md @@ -0,0 +1,93 @@ +# nanobot v0.3.0 → v0.3.5 — deep research report + +## Shrnutí + +v0.3.5 je největší release od v0.3.0: 402 merged PRs, 45 nových contributorů, 809 commitů mezi tagy. Hlavní příběhy: (1) nativní terminálový klient (TUI) sdílející stejný gateway a session storage jako WebUI, (2) přemístění session JSONL souborů mimo workspace + viditelná context compaction, (3) přepis timeout modelu z celkového na idle-based, (4) výrazné security zpevnění (credentials v subprocess env, SSRF, sandbox backends). + +## Zjištění + +### 1. Terminálový UI (nové) — ~95 commitů scope `tui` +- `nanobot` bez argumentů spouští nativní TypeScript TUI; `nanobot agent` zůstává alias; `--classic` = starý Python prompt +- TUI hovoří se stejným gateway jako WebUI — jeden protokol, sdílené WebSocket session +- Funkce: resume/fork sessionů, `/detach`, `/diff` (fullscreen unified diff posledního turnu), `/usage` token grafy, paste clipboard obrázků, autocomplete skill references, slash commands, LaTeX rendering, follow-up queue, interaktivní titulky sessionů +- Platform wheels obsahují TUI binárku (checksummed, version-matched) — první spuštění nestahuje z GitHubu, nevyžaduje Bun +- Podporované wheels: macOS 13+ arm64/x64, glibc 2.17+ Linux arm64/x64, Windows x64 +- Lifecycle: zavření posledního interaktivního launcheru (WebUI/TUI) stopne on-demand gateway; `/detach` nebo `nanobot gateway --background` ji nechá běžet +- Zdroj: [1], [3] + +### 2. Session storage — breaking změna +- Session JSONL soubory se stěhují z `/sessions/` do `/sessions//` — mimo agent-readable workspace +- První upgraded start provede migraci po ověření atomic copy; symlinked legacy migration se rejectuje +- Stará a nová verze nesmí zapisovat stejný workspace současně +- Downgrade: `nanobot sessions restore-workspace --config --workspace ` (odmítne přepsat odlišný existující soubor) +- Zdroj: [1], [3] + +### 3. Runtime / env vars — breaking změny +- `NANOBOT_LLM_TIMEOUT_S` — **zrušen (Unused)**. Nahrazuje ho `NANOBOT_STREAM_IDLE_TIMEOUT_S` (default 90 s, max 3600, clamp). Idle timeout renewed každým stream eventem včetně reasoning/tool-call delt — není to celkový limit +- `NANOBOT_MAX_CONCURRENT_REQUESTS` — defaultně **unlimited** (dřív limit); kladné int = cap +- Subagent concurrency: default 4, přebytečná práce čeká na kapacitu +- `agents.defaults.failOnToolError` — odstraněno +- `/health` endpoint může vracet **HTTP 503**, když enabled WebSocket channel neběží — monitoring (Zabbix) nesmí předpokládat 200 vždy +- Remote project selection používá cesty na nanobot hostu, vyžaduje Restricted access +- Zdroj: [1], [4] + +### 4. Security +- `fix(providers): stop writing API keys into process os.environ` — klíče už neleží v environ subprocessů +- Izolace prostředí: `fix(cli): isolate management subprocess environments`, `fix(webui): isolate folder picker environment` +- SSRF: block IPv6 unspecified targets, pin validated DNS (přesněji: harden generated image downloads, credential URLs mimo Jina reader a failure logy) +- `feat(exec): add a macOS Seatbelt sandbox backend` + `feat(exec): allow extra bwrap bind roots` (Linux bwrap) +- Executive advisory v release: `exec.allowPatterns` shell-chain bypass umožňující unintended command execution — opraveno +- Email auth: `verifySpf`/`verifyDkim` nyní vyžadují `channels.email.trustedAuthservIds` (explicitní trust anchor od receiving mail service). Bez něj Email config nenastartuje — workaround „vypnout verifikaci" není podporován +- Zdroj: [1], [2] + +### 5. WebUI workbench — ~240 commitů scope `webui` (největší oblast) +- Až 4 conversation panely vedle sebe v resizable groups, persistent sidebar ordering, drag sessionů do mentions, temporary chats +- Per-round token/cache grafy, visible context-compaction progress, paged history search, cumulative summaries +- SkillHub (marketplace), portable Agent Plugins, remote MCP browser OAuth + token refresh +- Automations: task + calendar view, per-run replies, edit zachovává pending executions, delete už neblokuje navigaci +- PWA (instalace na home screen), mobilní composer, draggable context sheets +- Zdroj: [1], [2] + +### 6. Memory / Dream — 32 commitů +- `feat(memory): restore Dream model preset override` — Dream lze přepnout na jiný model preset +- `fix(dream): stop duplicating SOUL/USER/MEMORY into the Dream prompt` — prompt duplikace opravena +- Idle compaction: konfigurovatelný scan interval, reuse session context (perf), invalidace provider state po idle compaction +- Množství robustness fixů: no-op batche, retryable failed batches, truncated consolidation output, tool-call-only consolidation reject +- Zdroj: [1], [2] + +### 7. Providers / modely +- DeepSeek Responses API + V4 Pro Responses + V4 vision +- Eden AI a OrcaRouter jako OpenAI-compatible gateway providers +- Grok 4.6 subscription model, OAuth model catalogs online discovery +- AnySearch provider (key-optional, anonymous quota) +- Telegram: streaming rich messages, compaction notices collapsed do jedné editované zprávy +- Zdroj: [1], [2] + +### 8. Cron / scheduling — 14 commitů +- Edit automation details zachová pending runs +- Scheduler přežije selhání job-store persistence, žádný replay po persistence failure +- Retire persisted heartbeat/dream jobs při disabled, startup job count reconciliation +- Heartbeat: unified sessions routují na last channel +- Zdroj: [2] + +## Co se netýká tvého deploymentu +- Desktop coexistence, DingTalk/WeCom/WeChat/Matrix/QQ/Signal/Mattermost fixes — neaktivní kanály +- Windows path escaping v sandbox testech + +## Dopady na tvůj deployment (systemd + Telegram + Zabbix + Ollama) +- **Zabbix health check**: `/health` může vracet 503 — ověř trigger na 503, ne jen connection refused +- **Env vars**: pokud máš někde `NANOBOT_LLM_TIMEOUT_S`, přestal fungovat → `NANOBOT_STREAM_IDLE_TIMEOUT_S` +- **Session soubory**: zmigrované z workspace do config dir — pozor na zálohy (wood.hell → pivo.hell): `/sessions/` pod workspace už nebude primární umístění +- **Gateway lifetime**: systemd service běží gateway explicitně — on-demand lifetime se netýká +- **Telegram**: rich streaming nově podporován + +## Rozpory a nejistoty +- GitHub tagy 0.3.1–0.3.4 neexistují (release notes tvrdí „Since v0.3.0" — 402 PRs; compare API ukazuje 809 commitů, což zahrnuje i merge commity). Oba údaje z primárních zdrojů, rozdíl je v metodice počítání +- PyPI uvádí releases 0.3.1–0.3.4 (neověřeno, co obsahovaly — bez GitHub tagů nejsou release notes k dispozici) + +## Zdroje +[1] Release notes v0.3.5 — https://github.com/HKUDS/nanobot/releases/tag/v0.3.5 +[2] Git compare v0.3.0...v0.3.5 (809 commit subjects, GitHub API) — https://github.com/HKUDS/nanobot/compare/v0.3.0...v0.3.5 +[3] CLI Reference v0.3.5 (session storage & rollback) — https://github.com/HKUDS/nanobot/blob/v0.3.5/docs/cli-reference.md +[4] Configuration v0.3.5 (runtime env vars) — https://github.com/HKUDS/nanobot/blob/v0.3.5/docs/configuration.md +[5] PyPI JSON API — https://pypi.org/pypi/nanobot-ai/json \ No newline at end of file diff --git a/results/ollama_weekly_usage.png b/results/ollama_weekly_usage.png new file mode 100644 index 0000000000000000000000000000000000000000..ffa2039e44600cdea981a520f25bc8ee6184318b GIT binary patch literal 50647 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 RVD6T4qdybXX>5$Vk)=q^Ds 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 z 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