Memory konsolidace je rozpracovaná. Udělal jsem:
- **SOUL.md**: přidal pravidlo o workspace safety guard (cesty mimo `~/.nanobot/workspace/` nejsou dostupné).
- **MEMORY.md**: přeorganizoval do sekcí (Project Context, Runtime/Deployment, Integrations, Architecture), odstranil duplicitní instalční info, ponechal strategický/architektonický kontext.
- **USER.md**: doplnil osobní fakta (Horáčková, Přibyl, sklep/mapování klíčů), přesunul zájmy do Role a kontext, přidal preference (náhodné časy připomínek, jedna připomínka s více časy, otázky po jedné, append na konec souboru).
- Přečetl jsem část `history.jsonl` a několik skill souborů pro kontext.
Co zbývá:
- Dokončit procházení history a vyhodnotit zbývající [durable]/[permanent] fakta.
- Uklidit moje vlastní zpátečné editace (několikrát jsem přesouval workspace safety guard a osobní fakta).
- Ověřit MECE klasifikaci — zejména odstranit technické detaily z USER.md a osobní fakta ze SOUL.md/MEMORY.md.
- Zkontrolovat, že žádný důležitý fakt není duplicitní napříč soubory.
Další krok: přečíst finální stav upravených souborů a pokračovat v chirurgické konsolidaci zbývajících faktů z historie.
Changes applied:
1. **SOUL.md** — Added behavioral guidelines from the conversation:
- **Don't assume** — surface tradeoffs, ask if ambiguous
- **Minimum code** — no speculative patterns, no premature abstraction
- **Surgical changes** — only touch what's required, clean up own orphans, don't reformat or rewrite unprompted
- **Define success criteria** — loop until verified
2. **MEMORY.md** — Corrected Dream routing description to include `AGENTS.md → work instructions & decision-making rules`, matching the [durable] fact from the conversation that AGENTS.md is for agent work instructions and decision-making rules (distinct from SOUL.md which is for communication style and personality).
No deletions needed — no stale, duplicate, or superseded entries found.
All changes applied. Summary:
**SOUL.md**
- Merged file-write confirmation rule: now covers all file writes (not just irreversible actions), with explicit exception for obvious single-step tasks
- Added `uv`-only rule for nanobot install/upgrade (was in MEMORY.md as a runtime fact, but it's an agent behavior rule)
**USER.md**
- Added `wood.hell` and `pivo.hell` server names to homelab description (was only in conversation history)
**MEMORY.md**
- Added 5 new durable facts from conversation history: Pi agent AGENTS.md loading behavior, `remind_cli.py` croniter dependency, `remind_cli.py remove` flag requirements, batch-delete ID shifting rule, and wood.hell→pivo.hell backup flow
[USER] Model preference is glm (glm-5.1:cloud), not kimi
[USER] Chair-to-table-top distance: 25.5 cm
[USER] Table top dimensions: 65×140
[USER] Refers to reminders by shorthand that may not substring-match stored text (e.g., "wifi do tiskarny" vs "WiFi modul do 3D tiskarny")
[USER] Targets reminders directly via #<id> syntax
[MEMORY] Plan: set up Claude Code for removing ads and cutting songs from Radio 1 stream
[MEMORY] Plan: find placement for 3D printer
[MEMORY] Plan: integrate remind, keep, note, and todo systems
[MEMORY] Plan: find use for pi-agent
[USER-REMOVE] "Preset: kimi (kimi-k2.6:cloud)" — corrected to glm (glm-5.1:cloud)
[MEMORY-REMOVE] "Reminder: 'občanka pana Přibyla' — once daily at random time between 8:00–21:00" — deleted on 2026-06-11, stale
[MEMORY-REMOVE] "Daily reminder at 19:00 to install pigeon spikes on the window to the shed" — duplicates /remind SQLite database (canonical source)
[MEMORY-REMOVE] "Weekday reminder at 9:30 to check notebook repair prices for Horáčková" — duplicates /remind SQLite database
[MEMORY-REMOVE] "Daily reminder at 9:10 to order xshoes" — duplicates /remind SQLite database
[MEMORY-REMOVE] "Weekday reminder at 9:20 for an anti-smoking sign in the elevator" — duplicates /remind SQLite database
[MEMORY-REMOVE] "Aktivní připomínka: Ema měsíc lampička do postele (2× denně náhodně 8–21)" — duplicates /remind SQLite database
[MEMORY] Telegram slash commands (e.g., `/skills`) are filtered out by `& ~filters.COMMAND` in telegram.py:384; workaround: invoke skills without slash prefix (e.g., `skills` not `/skills`); alternative fix: remove the filter from MessageHandler
[MEMORY] nanobot v0.2.1 available (current: v0.2.0)
[USER] uses detached background tasks for research queries
[USER] re-reads detached task results across sessions
[USER] refers to background memory consolidation process as "dreaming"
[USER] expects concrete summary of what Dream has added to memory, not generic explanations of how it works
[MEMORY] wants assistant to access and display Ollama subscription usage on request
[MEMORY] interested in Ollama cloud usage limits: 5-hour session and 7-day weekly windows
[MEMORY] User wants daily automated check for new nanobot Docker image releases with Telegram notifications.
[MEMORY] User and assistant both run on the same nanobot Docker image.
[MEMORY] Docker CLI is unavailable in the current runtime environment.
[USER] Notifications are delivered via Telegram.
[MEMORY-REMOVE] Active issue "Test reminder firing every minute on 2026-05-27 needs deletion or interval adjustment" is a passed event (2026-05-27 has passed).
[SKILL] reminder-delivery-protocol: Execute remind_check.py via uv run, silently exit on empty output, or forward each non-empty line as a Telegram notification in brief, natural Czech addressed directly to the user.
[USER] Telegram chat ID for reminders is 8826147089
[MEMORY-REMOVE] Important Notes reminder line is incomplete and overlaps with more precise atomic facts about execution and output handling
[MEMORY] Reminder check script is executed via exec using `/home/nanobot/.local/bin/uv run /home/nanobot/.nanobot/workspace/skills/remind/scripts/remind_check.py`
[MEMORY] Empty output from reminder check script means no notification is sent (silent exit)
[MEMORY] Each non-empty output line from reminder check script is forwarded as a separate Telegram notification
[MEMORY] Active test reminder firing every minute on 2026-05-27 needs deletion or interval adjustment
[SKILL] deliver-reminder-notifications: Execute reminder check script via uv run, silently exit on empty output, and forward each non-empty line as a brief natural Czech Telegram notification without progress narration or status labels
[MEMORY] Reminder notifications: brief, natural messages in Czech spoken directly to user; no progress narration, summaries, user IDs, or status labels like 'Done'/'Reminded'
[MEMORY] Reminder check executes `/home/nanobot/.nanobot/workspace/skills/remind/scripts/remind_runner.py` via exec; each non-empty output line sent as separate notification
[SKILL] remind-runner-execution: Execute remind_runner.py via exec and send each non-empty output line as separate notification
[SKIP] No redundant content found in MEMORY.md — script conventions and temp file rules do not overlap with USER.md or SOUL.md
[SKIP] Language (Czech) and timezone (Europe/Prague) already captured in USER.md — conversation history repetitions are not memory file duplicates