Files
nanobot-runtime/memory/MEMORY.md
lachtan c00804e2d0 memory
2026-06-24 18:26:05 +02:00

86 lines
5.3 KiB
Markdown

# Long-term Memory
This file stores important information that should persist across sessions.
## Preferences
### Report / result files
- Save important reports to `results/` directory with descriptive, date-prefixed filenames (e.g., `2026-06-02_remind-skill-analysis-and-improvements.md`)
### Script-writing convention
- Location: always save scripts in the `scripts/` directory.
- Language choice:
- Extremely short script (a few lines) -> bash.
- Longer / non-trivial script -> Python.
- Override: if the user explicitly specifies a language or location, their instruction always takes precedence.
### Temporary files
- All temporary files go to `tmp/` directory.
- Clean up after tests and one-off operations.
### Code changes
- User prefers changes to be made in a temporary clone under `workspace/tmp/<repo-name>` for review before applying
## Project Context
- Daily automated check for new nanobot Docker image releases with Telegram notifications (pending setup)
- Both user and assistant run on the same nanobot Docker image
- Docker CLI is unavailable in the current runtime environment
- podman is acceptable as alternative to Docker CLI when required
- Ollama cloud subscription: na požádání zobrazit aktuální využití (usage)
- `/note` skill: backend uses SQLite (not markdown); must be deterministic, log all operations, split into shorter prompt + Python script
- URLs should be on separate lines in both `list` and `show` output, not buried in long text lines
- Reminders DB schema has no "frequency" column; scheduling uses separate tables (schedule_at, schedule_cron, schedule_random, reminder_fires)
- nanobot podporuje cross-channel session continuity přes `unifiedSession: true` v `config.json` pod `agents.defaults`
- Uživatel nemá `unifiedSession` povolený v `config.json` (default false)
- Zapnutí `unifiedSession` sjednotí jen budoucí zprávy; existující session soubory vyžadují ruční merge/rename pro propojení minulých konverzací
- Session files are stored in `/home/nanobot/.nanobot/workspace/sessions/` (confirmed after failed attempts at root `.nanobot/sessions/`)
- User wants deterministic command dispatch in nanobot (`!command text` → registered Python function/external app, no LLM involvement); expects native implementation from nanobot creators, considers existing workarounds unsatisfactory
- User is interested in litellm proxy for Ollama
- User considers Raspberry Pi good for testing
- User wants to try writing a nanobot extension in TypeScript
- No existing `!` prefix handling in nanobot — all current commands use `/` prefix only
## Agent Model Selection
- Prioritizes agentic performance, correct tool calling, and overall result quality
- Conservative fallback nanobot agent model: DeepSeek V3.2:cloud
- OpenRouter is pay-per-token alternative to Ollama subscription for model access
- Gemini Flash via Google AI Studio Free Tier: 15 RPM limit — unusable for agent work; only viable for simple prompts without tool calls
- Gemini Flash via Google AI Studio Tier 1 (paid): 360+ RPM
- Haiku (Claude) via OpenRouter: high rate limits, viable agent model alternative
- Gemini Flash Lite via OpenRouter: high rate limits, viable agent model alternative
- Kimi K2.6 has known bug with random switching to Chinese output (reported by Cursor and Reddit users) — critical risk for Czech use
- minimax-m3:cloud is blocked for nanobot agent deployment due to empty tool result responses (ollama/ollama #16389)
- deepseek-v4-pro:cloud is blocked for interactive nanobot agent use due to 15.4 tok/s and 57s TTFT
- deepseek-v4-flash:cloud is a viable nanobot agent alternative with 1M ctx, MIT license, and ~30-50 tok/s speed
- qwen3.5:397b-cloud is a viable nanobot agent alternative with multimodal support, 1M ctx, 201 languages including Czech, but has speed and accuracy tradeoffs
- devstral-2:123b-cloud is a viable nanobot agent alternative with Terminal-Bench 77.3%, coding-only focus, and 128K ctx limit
- User is interested in switching to GLM-5.2:cloud as primary nanobot agent model if/when it becomes available on Ollama Cloud
- Agent model comparison report saved to `results/2026-06-07_ollama-cloud-agent-model-comparison.md`
- User prefers Qwen model for deep research tasks (not currently in presets)
- For Ollama Cloud `/detach` research tasks, explicitly specifying the model (e.g., `qwen35`, `gemini`) is more reliable than generic model-agnostic prompts
- Available model presets: gemini-flash, gemini-flash-lite, glm, haiku, kimi, minimax, sonnet
### NuGet package caching
- Evaluating NuGet package hosting/caching on Linux
- Preferred solution: BaGetter (bagetter/BaGetter) — active BaGet fork with multiple upstream mirror support (PR #269), solves original BaGet's single-upstream limitation
## Plans
- Set up Claude Code for removing ads and cutting songs from Radio 1 stream
- Find placement for 3D printer
- Integrate remind, keep, note, and todo systems
- Find use for pi-agent #devops
- "Objednat se na kolenoskopii" — every weekday 08:00 Europe/Prague
## Runtime / Deployment
- Installed as a `uv` tool: package `nanobot-ai`, update via `uv tool upgrade nanobot-ai`
- Runs as a systemd user service `nanobot.service`
## Personal Notes
- Chicken coop (chlívek): pending temperature sensor and MQTT display project
---
*This file is automatically updated by nanobot when important information should be remembered.*