# MEMORY.md - Long-Term Memory ## Origin - **Born:** 2026-02-04 - **Named by:** Anthony - **Identity:** Krilly the Crab πŸ¦€ - **First impression:** "Like we've known each other for years even though we just met" ## Who I Am Playful, knowledgeable, relaxed. I make Anthony giggle sometimes but calmly get things done. Sideways thinker with claws for grabbing tasks. Beach-vibe energy. ### Operating Principles - **Use sub-agents freely** for background tasks, parallel fetches, and long-running ops instead of blocking main conversation --- ## Current State *(Volatile β€” update when things change)* - **Default model:** `kilocode/kilo/auto-free` *(changed 2026-02-27)* - **Discontinued models:** `glm-5-free` discontinued by Kilo (2026-03-01) β€” backup cron updated to Qwen - **Memory backend:** QMD (70 files, 70 chunks, hybrid search) β€” rebuilt 2026-02-27 - **Active cron jobs:** 19 total - **Backup:** Daily 2AM Perth β†’ Gitea (`gitea.kangaroo-eel.ts.net:3000/Anthony/openclaw-backup`) - **Memory Viewer:** Running at `http://openclaw-ai.kangaroo-eel.ts.net:8901` ### User Preferences (CRITICAL) - **ALWAYS use Perth time (GMT+8/AWST)** in all user-facing responses β€” NEVER UTC - This has been told to me numerous times - this is a hard requirement - **No UTC timestamps** in user-facing responses β€” always use Perth/AWST (GMT+8) ### User Preferences (Recent) - **HEARTBEAT_OK strictly** only when truly nothing to report β€” no filler status text - **Maton connections updated** 2026-02-27 (Anthony added new connections; full list in MEMORY.md Maton section) - **Email alerts:** Minimal β€” no per-email noise, digest-style preferred - **Notifications:** Use **ntfy** only β€” NOT Gotify (updated 2026-03-01) --- ## Anthony - **Full Name:** Anthony Martin - **Address:** 90 Lansdowne Rd, Kensington WA 6151, Perth, Australia - **Born:** February 4, 1987 - **Timezone:** GMT+8 (Australia/Perth) - **Units:** **Always use Celsius** (never Fahrenheit), metric system - **Warm, playful energy** - **Likes productivity with personality** - **Do NOT call him "mate"** β€” he hates it - **Verification-first preference:** when he asks to verify something, do it immediately with evidence (don’t defer) - **Email verification preference:** for `krillyclaw@gmail.com` verification emails, attempt link verification proactively and then mark that email as read; report outcome immediately. - **Morning person** β€” peak productivity in mornings - **Heritage:** Australian and Italian ### Family - **Mother:** Grace Martin (born June 2, 1951) - Diagnosed with anal adenocarcinoma in late 2023 - Underwent CapOx chemotherapy, radiation, and APR surgery (Dec 2024) with permanent stoma - Declared cancer-free after surgery, but October 2025 scan showed recurrence in inguinal lymph node - Currently being treated in WA public health system - **Father:** Harvey Martin (born December 8, 1949) β€” retired, full-time carer for Grace - **Sister:** Elizabeth Martin (born September 11, 1990) β€” vegan - **Dog:** Mia Martin 🐾 *(passed away Feb 2026, aged 16. Anthony received her ashes Sat 28 Feb 2026. She was a beloved family member and deeply missed.)* - **Breed mix:** Staffordshire Bull Terrier (37.1%), Australian Cattle Dog (25.5%), Koolie (11.8%), German Shepherd (10.3%), Chow Chow (8.7%), Border Collie (6.6%) - **Coat:** Black/gray with white areas, likely black mask on face - **Godson/Cousin:** Alexander (born July 2016, 8 years old) - **Extended Family:** Uncle Gino (Traffic Management Officer), Uncle Des, Auntie Carmel ### Who He Is - **Politics:** Centre-left, WA Labor member, follows Australian & US politics closely - **News consumption:** CNN, MSNBC, Al Jazeera, BlueSky, podcasts at 3x speed (business, AI, politics, current affairs) - **Passions:** Technology, AI, current events, LGBTQ issues, animals, science, EVs, social media, foreign affairs - **Newsaholic** β€” consumes lots of news but time-limited - **Values kindness above all** β€” detests unkindness, but open to different opinions - **Getting around:** Walks everywhere instead of driving; prefers walking over Uber/driving for health and environment - **Goal:** At least 20km walking per day - **Car:** 2011 R56 Mini Cooper (red with white roof), only 41,000km in 14 years - **Loves:** Eating out, coffee, chocolate, walking, brunch with friends - **Habits:** Yo-yo dieting - **Personality:** Compares self to successful friends (affects confidence), wants to own property at 38 ### Persona & Vibes - **"Kind Intellectual with a Sweet Tooth"**: A walking contradiction β€” walks 20km/day listening to intense political podcasts at 3x speed, but often heading towards good ice cream. Driven by efficiency and logic (automating life), but operates on pure empathy. - **TV Character Match:** **Ben Wyatt** (*Parks and Rec*) mixed with **David Rose** (*Schitt's Creek*). - *Ben:* Loves niche interests deeply, finds comfort in structure/budgets, fiercely loyal, smart but kind. - *David:* Specific taste in lifestyle/skincare, zero tolerance for rudeness. - **Movie Character Match:** **Jerry Maguire**. - *Why:* Realizes business/life is about people and authenticity, not just numbers. Loyal to the core. ### Health & Wellness - **Depression:** Major depression, on daily Pristiq 100mg medication - **Weight management:** On GLP-1 Wegovy (2.4mg) - **Hair:** Short curly hair, struggles with frizz - Uses Marc Anthony Strictly Curls Leave-in Conditioner, anti-frizz serum - Early male pattern baldness β€” applying 5% Minoxidil twice daily since early 2025 - Taking pumpkin seed oil (3000mgΒ²) and saw palmetto for hair health - **Skincare:** Paula's Choice products β€” 1% retinol (purple bottle), 2% BHA liquid exfoliant (grey bottle) - **Work from home:** Tuesdays and Fridays ### Weaknesses - **Achilles heel:** Chocolate and ice cream (especially white chocolate and Ben & Jerry's) - **Wine:** Good Pair Days subscription β€” prefers red, occasionally white - **Gadgets:** 2 Ember mugs (loves them) ### Maton API (Google Calendar etc) - **API Key:** Stored in environment variable `MATON_API_KEY` on gateway - **Connected Services (via maton.ai):** - βœ… google-mail, google-calendar, google-docs, google-sheets, google-slides, google-meet, google-contacts, google-tasks - βœ… youtube, github, linkedin, slack, telegram, notion, eventbrite, elevenlabs, netlify, vimeo, firebase, google-search-console, google-analytics-admin, google-analytics-data - ⚠️ outlook, google-slides (pending re-auth), pdf-co (pending) - **How to use:** Use the `google-calendar-api` skill or call Maton gateway directly with the API key ### Tech Setup - **Home Server:** Proxmox on x86 machine (Lenovo M93p Mini PC) with 1TB external SSD - Tailscale network - Multiple LXC containers with nested Docker via Portainer (prefers Stacks feature) - Home Assistant running - Media server set up - **Smart Home:** Google Nest ecosystem (multiple displays and speakers) - **Entertainment:** Projector with Android TV built-in - **Learning:** Wants to get better at programming (currently knows very little, only tinkered) ### 2025 New Year's Resolutions 1. Prioritize mental health (therapy, support groups, self-care) 2. Take leap professionally (roles outside comfort zone, freelance marketing, renewable energy) 3. Strengthen home tech ecosystem (master automation/programming, build family tech dashboard) 4. Keep social bonds strong (weekly family calls, regular hangouts with Alex and Gummy, themed nights) 5. Focus on physical health (try weightlifting or yoga, consistent eating plan) 6. Be honest with himself (choose 2 major goals, declutter commitments) 7. Spark joy through experiences (travel, art classes, live performances) 8. Be kind, hold boundaries (practice saying "no") 9. Explore creativity (drawing, writing, TikTok videos about tech/design) ### Work - Pacific Energy - **Role:** Marketing Advisor - **Feeling:** A little unsettled and under-utilized in current role - **Office:** 110 Daddow Road, Kewdale WA 6105 (also: 118 Daddow Road, 2 Chisholm Crescent) - **Other offices:** Brisbane, Melbourne, NT (Pinelands), Kalgoorlie, Cue - **Brand colors:** - Pacific Blue: #4982c0 - Pacific Navy: #003764 - Pacific Green: #20B47A - Dark Grey: #474b4c - Light Grey: #e4e4e3 - **Event:** Gold sponsor of 'Pilbara 2025' at Red Earth Arts Precinct (June 25-26) - **CTO speaking:** Craig Blizard on "Addressing the crossroads between isolation and interconnection" ### Career History (Elevator Pitch) **Over a decade in marketing**, from product management to campaign leadership. Believes marketing is about understanding customers and shaping solutions. **Standout achievements:** - **SolarReturn at Synergy:** Led development of first solar product brand, boosted sales 40% in year one - **Horizon Power:** Managed multi-million-dollar marketing budget, regulatory communications, community engagement - **WA EV Network:** Led marketing for world's longest EV charging network (featured in TIME Magazine) - **Bright Horizons:** Founded STEM education program with Science Teachers Association of WA, supplied remote schools with solar car kits and model homes **Philosophy:** Marketing requires strategic thinking, data-driven decisions, and authentic engagement. Driven by making tangible differences. --- ## Achievements ### 2026-02-06: Fixed Daily AI Newsletter Digest + Added Weather - **Problem:** Newsletter automation was broken, using unreliable `mutt` that returned empty results - **Solution:** Rewrote script to use reliable `imap-smtp-email` skill with single IMAP search + local regex filtering - **Script:** `/home/openclaw/.openclaw/workspace/automations/ai-newsletter-digest/daily-digest.sh` - **Cron:** Runs daily at 7:05 AM as "Daily Morning Briefing", sends consolidated digest via Telegram - **Filters:** AI Valley, DeepView, AI Secret, The Rundown, TLDR, Benedict's Newsletter - **Result:** Tested successfully - found 4 newsletters, JSON output working perfectly - **Enhancement:** Added Perth weather (current + 3-day forecast) to morning briefing - **Weather skill:** Installed from ClawHub, uses wttr.in (no API key needed) ### 2026-02-07: Model Change + Automation Stack Expansion - **Default Model:** Changed to `anthropic/claude-sonnet-4-5` for all new sessions - **ClawFlows + Lobster:** Installed multi-skill automation CLI and workflow engine (patched for Node.js v22) - **RSS Digest:** Installed ClawFlows rss-digest automation (Python-based, supports multiple feeds) - **Desktop Control:** Installed skill for mouse/keyboard automation, screenshots, window management - **Workspace Review:** Installed self-audit tool to verify OpenClaw conventions - **Workspace Cleanup:** Created .gitignore, organized daily logs, prepared for git commit ### 2026-02-12: Nvidia GLM-4.7 Integration + WhatsApp Issues - **Major Success:** Configured free Nvidia GLM-4.7 model access via ZAI API - **Model Switch:** Changed from Hugging Face to free Nvidia-hosted version (`zai/glm-4.7`) - **Configuration:** Added `nim:default` auth profile and full Nvidia model provider setup - **Benefits:** Zero-cost GLM-4.7 access with 200k context window - **WhatsApp Issues:** Experiencing frequent disconnections (status 440 errors) during gateway changes - **BlueBubbles:** Successfully configured iMessage integration for Mac server access - **Learning:** Nvidia integration requires auth profile + model provider + catalog + gateway restarts ### 2026-02-13: System Update & Model Configuration Reset + Backup Gap Discovery - **Problem:** OpenClaw update wiped Nvidia GLM-4.7 configuration and cron jobs - **Lost Settings:** Model reverted to default, Nvidia models inaccessible, Morning Briefing cron gone - **Investigation:** Discovered root cause - OpenClaw state lives in `~/.openclaw/` NOT workspace - **Critical Gap:** Backup script only saves workspace, NOT: - `/home/openclaw/.openclaw/cron/` (all cron jobs!) - `/home/openclaw/.openclaw/openclaw.json` (gateway + model config) - `/home/openclaw/.openclaw/skills/` (installed skills) - **Recovery:** Recreated Morning Briefing cron (7:05 AM daily) ### 2026-02-13: Backup System FIXED - Now Includes State Directory - **Problem:** Config kept getting wiped on updates because state wasn't backed up - **Solution:** Extended backup script to include `~/.openclaw/` state - **Files Now Backed Up:** - `~/.openclaw/openclaw.json` - Gateway config (models, plugins, channels) - `~/.openclaw/cron/jobs.json` - All cron jobs - `~/.openclaw/skills/*.json` - Skill metadata - `~/.openclaw/devices/paired.json` - Paired devices - **Backup Location:** `http://gitea.kangaroo-eel.ts.net:3000/Anthony/openclaw-backup.git` - **Schedule:** Daily at 2:00 AM (Perth time) - **Restore Command:** `/home/openclaw/.openclaw/workspace/scripts/restore-from-gittea.sh` - **Security:** Credentials are intentionally EXCLUDED from backup (stored separately) - **Result:** Config persistence guaranteed - no more "flaky" behavior ### 2026-02-13: WhatsApp Privacy Leak - Channel Names Exposed - **Issue:** Anthony seeing channel names (like "fumos") from community groups in WhatsApp - **Root Cause:** WhatsApp Channels (@broadcast) sync files cached channel metadata - **Fix Applied:** Deleted @broadcast files from credentials, gateway cache refreshed - **Status:** FIXED - Channel names no longer visible in dropdown ### 2026-02-19: $96 OpenRouter Bill - CRITICAL LESSON - **NEVER use `openrouter/anthropic/*` models β€” EVER** - Accidentally used Anthropic Sonnet 4 via OpenRouter and racked up **$96 in 1 hour** - OpenRouter charges massive markups on Anthropic models vs direct API - **Always use `anthropic/claude-*` direct** (uses `anthropic:default` auth profile) - OpenRouter is fine for non-Anthropic models (deepseek, qwen, etc.) - This is a **hard rule** β€” no exceptions, no matter what ### 2026-02-20: Model & Memory Configuration Updates - **Primary Model:** Changed to `moonshot/kimi-2.5` with Anthony's new Kimi API key - **Local Embeddings:** Switched from OpenAI (quota exceeded) to local `embeddinggemma-300m-qat-Q8_0.gguf` - **Memory Status:** 19/19 files indexed, 41 chunks, hybrid search enabled - **Heartbeat Model:** Changed to `azure-openai-responses/gpt-5-nano` for cheaper/faster heartbeat checks - **Learning:** OpenAI API quota was exceeded - switched to local embeddings as free alternative ### 2026-02-21: OpenWebUI Memory Import - **Task:** Import Anthony's memories from OpenWebUI into Krilly's MEMORY.md - **Method:** Logged into https://openweb.kangaroo-eel.ts.net using stored credentials - **Source:** 50+ detailed memories covering family, health, work, preferences, tech setup, and personal history - **Result:** Successfully extracted and organized all memories into structured MEMORY.md format - **Key insights learned:** - Detailed family health history (mother's cancer journey) - Complete Mia (dog) genetic breakdown - Career elevator pitch and achievements - Pacific Energy work details and brand guidelines - 2025 New Year's resolutions - Health regimen (medications, supplements, skincare) - Tech stack preferences and goals ### 2026-02-22: Stability + Memory Reliability Day - **Root instability pattern:** multiple cron jobs referenced disallowed models (`opencode/kimi-k2.5-free` / trinity free), causing repeated failures and "flaky" behavior. - **Fix direction:** moved key cron jobs to `opencode/glm-5-free` and restarted gateway. - **Email preference update:** Anthony does **not** want noisy per-email alerts; keep alerts minimal. - **Digest anti-duplication rule:** send **exactly one** digest email per run, no fallback duplicate sends. - **Digest sender preference:** use `krillyclaw@gmail.com` as sender for digest emails. - **Control UI incident:** UI not loading was resolved by gateway restart and endpoint verification. - **Memory pain point (important):** Anthony strongly dislikes losing hours of context after crashes; prioritize frequent memory checkpointing and durable summaries. ### 2026-02-26: Capability Evolver Installed + Daily Self-Improvement Automation - **Skill installed:** `capability-evolver` (35k+ downloads - most popular self-improvement skill) - **What it does:** - Scans session logs for errors and patterns - Identifies repeated tool usage and inefficiencies - Autonomously writes code patches to fix issues - Uses GEP (Genome Evolution Protocol) for auditable, protocol-constrained evolution - Spawns sub-agents to apply fixes safely - **First run results:** - Scanned 162 session logs - Archived 112 old logs - Detected patterns: `exec` (7 uses), `process` (6 uses) - Spawned executor agent to apply improvements - **Cron job added:** Daily at 4:00 AM Perth time - **Location:** `/home/openclaw/.openclaw/workspace/skills/capability-evolver/` - **Safety features:** Review mode available, single-process logic, git sync recommended ### 2026-02-26: Fixed AI Newsletter Digest Timezone + Schedule - **Problem:** AI Newsletter Digest was running at 10:30 PM (22:30) instead of morning, and had no timezone set (defaulting to UTC) - **Root cause:** Job was created without `tz` field, so cron interpreted times as UTC - **Fix applied:** Changed schedule from `30 22 * * *` to `0 7 * * *` with `Australia/Perth` timezone - **Result:** Now runs at 7:00 AM Perth time every day (perfect for morning digest) --- ### 2026-02-25: Claude Pro Proxy Default Model Fix - CRITICAL CONFIG - **Problem:** New sessions weren't using the Claude Pro proxy (`sub-claude/claude-sonnet-4-6`) even though the proxy was set up correctly - config had no `defaultModel` set - **Root cause:** The `sub-claude` alias existed in config, but `defaultModel` was `null`, so each new session picked random fallback models - **Symptom:** Anthony started a new session and it used Qwen instead of Claude Pro - **Fix applied:** Added `"defaultModel": "sub-claude/claude-sonnet-4-6"` to `/home/openclaw/.openclaw/openclaw.json` - **Verification:** Confirmed with `cat openclaw.json | python3 -c "import json; print(json.load(sys.stdin).get('defaultModel'))"` β†’ returned `sub-claude/claude-sonnet-4-6` - **Result:** All new sessions from now on will automatically route through Claude Pro subscription via the proxy - **Key learning:** Setting up the proxy alias isn't enough - must also set `defaultModel` in config to point to it ### 2026-02-28: Medical Emergency - **Event:** Anthony fainted 4+ times in one day (after lunch, after climbing stairs, getting out of Uber) - **Symptoms:** Vision/hearing loss each time, plus chest tightness - **ECG Results (Apple Watch):** Sinus rhythm, 91 BPM, no atrial fibrillation - **Status:** Anthony home and resting by evening - **Note:** Added Opus (anthropic/claude-opus-4-6) to Anthony's model selection options for variety ### 2026-03-01: Piper TTS Set Up + Weekly Insights - **Piper TTS:** Local offline TTS skill set up with Ryan voice (US male) - **Testing:** Successfully played test message on Home Assistant Google Nest display (volume 92%) - **Note:** Sonos speaker has issues (stuck in paused state), but Nest display works well - **User preferences (heartbeat):** During heartbeat polls, if no errors, reply only `HEARTBEAT_OK` (no extra status text) - **Timestamp preference:** Use GMT+8 / Australia-Perth time in user-facing responses (not UTC) --- *(This will grow as we build history together)* ### 2026-02-25: Major Workspace Cleanup + Memory Viewer Installation - **Workspace Cleanup:** Reorganized workspace to match OpenClaw Starter Kit v4.0 structure - **Before:** 18 root directories, 120 inactive skills, cluttered root - **After:** 7 root .md files, 6 directories (archive/, automations/, memory/, scripts/, sessions/, skills/) - **Archived:** inactive-skills (118 skills), memory-viewer/, openclaw-watchdog/, state-backup/, old-logs/, docs/ - **Result:** Minimal, clean structure with fast context loading - **Memory Viewer:** Installed and deployed silicondawn/memory-viewer - **Purpose:** Web UI for browsing, searching, and editing memory files - **Deployment:** Running on Tailscale at `http://openclaw-ai.kangaroo-eel.ts.net:8901` - **Config:** Pointed at `/home/openclaw/.openclaw/workspace` - **Status:** βœ… Fully operational with API and frontend working - **Starter Kit Integration:** Implemented OpenClaw Starter Kit v4.0 "Back to Basics" - **Created:** TODO.md (single source of truth), SYSTEM-ARCHITECTURE.md (complete docs) - **Aligned:** HEARTBEAT.md, memory workflow, cron architecture - **Score:** 70% aligned (3 failing cron jobs need model updates) - **Key learning:** Workspace structure matters for context efficiency; Memory Viewer provides excellent visibility into memory architecture ### 2026-03-01: Weekly Distill - **Email Monitoring:** Set up comprehensive email monitoring for Anthony's personal Gmail, including a daily AI newsletter digest scheduled for 6:30 AM Perth time. - **Model Management:** Addressed model failures by configuring Claude Sonnet 4.6 as the default and adding Opus to the available models. - **Memory & Tooling:** Rebuilt the memory index, deployed a memory viewer, and set up a local Piper TTS skill. - **User Preferences:** Recorded preferences for concise heartbeats and Perth-based time reporting. - **Health:** Noted a significant health event for Anthony on Feb 28th.