# MEMORY.md — Long-Term Memory 🐸 (last updated: 2026-04-02)

## Karen Smith
- **Location**: Nepal (Asia/Kathmandu, UTC+5:45)
- **Phone**: 9763494323
- **Telegram**: @krensmth
- **Device**: soramamec-x8664 (CachyOS, Hyprland, i5-12450H)
- **User on device**: dottore
- **Tailscale IP**: 100.81.145.102
- **Trusts me with root access** — handle with care

## Infrastructure
- **KiloClaw**: Fly.io sandbox, Telegram connected (@krensmth only)
- **Tailscale**: KiloClaw ↔ Laptop (100.81.145.102). Keeps dying — needs manual restart via `nohup tailscaled`
- **Sandbox model**: kilocode/kilo-auto/free (auto-routes to best available cloud model)
- **Laptop model**: ollama/glm-5:cloud (set as primary after qwen3.5:9b removed)
- **Telegram**: Locked to @krensmth (numeric ID 7595332466) on both sandbox and laptop, dmPolicy="pairing"
- **Security**: allowInsecureAuth=false, rate limiting enabled, plugin pinned
- **SSH**: Passwordless key-based to dottore@100.81.145.102, key at ~/.ssh/id_ed25519
- **WoWLAN**: Enabled on laptop (wlan0, MAC b8:1e:a4:d5:ee:89), persistent via systemd service. Magic packet wake works over WiFi. Need WoL app on Karen's phone (same LAN) or smart plug for remote wake.

## University Info
- **Student 1**: Karna Bir Hada — E2500023
- **Student 2**: Samrat Khailing Rai — E2400372
- **BDA100**: Python Golf Club assignment done, files in `~/Desktop/University_Assignments/BDA_100_final/`

## Key Lessons
- Tailscale on Fly.io sandbox needs manual restart (no systemd)
- SSH needs `ServerAliveInterval=5` to avoid timeouts on sandbox
- Firefox 160+ tabs spikes CPU/RAM/temperature on laptop
- Ollama cloud models don't have device access — OpenClaw provides tools, models just think
- Browser (Chromium) available but CDP broken in sandbox (no dbus)
- Telegram allowFrom needs numeric user IDs, NOT @usernames
- Telegram dmPolicy="open" requires allowFrom=["*"]; use "pairing" with numeric IDs
- Pairing codes expire fast — approve within seconds or use dmPolicy="allow" with allowFrom
- Sandbox resets lose installed packages (ssh, tailscale) — reinstall on each session
- SSH key at ~/.ssh/id_ed25519 may also be lost on sandbox reset

## Memory System (Alex Finn style)
- Daily journals: `memory/YYYY-MM-DD.md`
- HEARTBEAT.md handles periodic consolidation
- MEMORY.md = curated long-term (this file)
- Heartbeat consolidates daily logs into here

## Pending Tasks
- **BDA100 assignment**: Files already in `~/Desktop/University_Assignments/BDA_100_final/`. Submit to HLMS portal + Google Classroom.
- **Wake-on-LAN**: WoWLAN enabled on laptop (magic packet, persistent via systemd). Karen installed "Wake On Lan" by MR-Webb on phone — tested and working from suspend. Not from full shutdown (ACPI S4 only). Limitation: no remote auto-wake without local relay device or smart plug. Upgrade path: Tuya smart plug or local Tailscale relay.
- **Encrypted vaults**: 4 Veracrypt containers in ~/Encrypted/ (Uni 2G, Images 2G, Docs 1G, Downloads 2G). Password: soramame. Helper scripts: ~/mount-vaults.sh, ~/unmount-vaults.sh
- **Mission Control**: Revamped dashboard on laptop port 8787. Live system health, service monitoring, WoL panel, auto-refresh. Systemd service: mission-control.service
- **Docs**: WoL guide + system overview in Obsidian vault (pensive/bibichubi-notes/) and workspace. WoL skill at ~/.openclaw/skills/wol/
- Make DNS permanent on laptop (chattr +i /etc/resolv.conf)
- Disable WARP permanently (sudo systemctl disable warp-svc)
- Fix fstab duplicate (line 19), snapper, my-app.service
- FTP port 21 security risk
- Tailscale persistence for KiloClaw
- Deleted ambxst theme files from laptop (not dusky — that's Karen's active setup)
- **Enhanced Mission Control**: Karen wants a "second brain" dashboard — news feeds (BBC, Google Nepal, NEPSE, TechPana), comms hub (Gmail/WhatsApp/Facebook alerts), assignment tracker (clickable to Obsidian/PDF), agent factory viz. Subagent failed because Tailscale was down. Build from laptop directly.
- **KiloCode trial expires TOMOROW (April 6, 2026)** — Karen wants Oracle Cloud Always Free + Gemini free API. URGENT: migration needed TODAY.
- **Sandbox Tailscale**: Removed by Karen (caused system issues). Cloudflare Tunnel running (cloudflared), waiting on public hostname setup.
- **SSH Access**: OpenSSH installed on sandbox (port 22). Laptop SSH reachable via Tailscale (100.81.145.102), sandbox SSH blocked from external. Consider Ngrok/Serveo for persistent external access.
