OpenClaw Family Gateway: Token Budgets, Memory Tuning, and Custom Plugins

Setup and Hardware
The system uses a MacBook Pro (Apple Silicon) as the CLI node and a QNAP TS-253A NAS (Intel Celeron N3150, 8 GB RAM) as the always-on gateway, with a Cloud Run instance for long-term memory. The Mac connects to the QNAP gateway over WebSocket via Tailscale Serve. The gateway container runs with 1.5 GB RAM and 2 CPU cores. Startup takes about 3 minutes for skill compilation on the Celeron processor.
Problem 1: Token Bloat
Workspace markdown files were ballooning and consuming context window before conversations started. The solution:
- Established a strict budget: maximum 9 workspace files, maximum 6,600 bytes total
- Condensed agent identity, authority rules, tool reference, and memory protocol into lean files: SOUL.md, AGENTS.md, TOOLS.md, MEMORY.md
- Truncated upstream default files that couldn't be deleted (they'd restore via workspace sync) - IDENTITY.md went from 636 bytes to 14 bytes
- Auto-generates HEARTBEAT.md every 15 minutes with cron results and system status, capped at <1,000 bytes
- Turned off autoRecall (agent searches memories on demand) and humanDelay (no artificial typing latency)
- Created E2E tests that enforce file counts and byte totals, checking for bloat creep during updates
Problem 2: Memory System Tuning
Using Redis-backed memory system (agent-memory-server 0.13.2) with 3,000+ memories accumulated.
- Recall quality: Default similarity threshold (0.2) was too low. Raised to 0.3 and wrote an eval script with 24 test queries across 7 categories (family facts, tech, preferences, health, work, media, tools) to empirically tune the threshold
- Re-ranking layer: Plugin over-fetches 3x from server (cap 45 results), then applies metadata scoring (importance level, pinned status, temporal relevance) before re-ranking and truncating to final result set
- Contextual embeddings: Nightly script prepends situational context to memories before storage (date, source type, which family members are mentioned) to improve semantic search
- Server bugs worked around: PATCH requests failing without
?namespace=clawquery param; server re-joins topic arrays with pipes on updates, corrupting them; entity/topic filters return 500 errors due to missing RediSearch schema fields - Nightly "Dream Cycle": 2 AM cron job runs 7-phase memory consolidation: catalog, pin important memories, cross-reference related facts, deduplicate, strengthen temporal patterns, gap analysis, and generate health report
- Weekly curator: Handles deeper maintenance - semantic dedup, enrichment, contradiction detection, decay of stale memories, and consolidation of fragments using evaluator-optimizer pattern with LLM quality gating
Problem 3: Custom Plugins
Built 12 custom plugins with 175+ commands for household management:
- Spotify: 19 commands for multi-user household music control (5 family accounts)
- Eero: 41 commands for mesh network management - device control, profiles, parental settings
- NextDNS: 22 commands for DNS filtering, analytics, and kids activity monitoring
- Tailscale: 21 commands for network device management, ACLs, authentication
System Features
Channels: Slack and Discord with per-user DM sessions and isolation. Tiered permission system (admin/secondary/trusted) with age-appropriate content filtering for family members (ages 10-15).
📖 Read the full source: r/openclaw
👀 See Also

Developer builds YouTube news multistream viewer with Claude Code
A developer used Claude Code to build Beholder, a real-time news monitoring dashboard that displays dozens of live YouTube news streams simultaneously with media bias ratings. The tool includes 200+ channels, live news tickers, and works across mobile, tablet, and desktop.

Developer builds flight comparison tool with Claude Code using BDMA approach
A non-developer built easyscape.eu using Claude Code with a BDMA (build/debug/measure/adjust) loop approach. The tool compares multiple departure airports, integrates real costs like road tolls and parking, and shows the most economical departure option, not just the cheapest ticket.

Running Claude with Qwen 3.5 as a persistent agent on Mac Mini reveals human bottleneck
A developer runs Claude with Qwen 3.5 as a persistent agent on a dedicated Mac Mini, handling product creation, project management, analytics, newsletter support, and 3,000 WizBoard tasks. The agent created 16 products in two months, revealing that the bottleneck shifted from production capacity to human approval and decision-making.

OpenClaw Agent Voice Call Demo with Streaming TTS and Barge-in
A developer demonstrated their OpenClaw agent making phone calls via Telegram, featuring streaming text-to-speech that responds sentence-by-sentence and supports barge-in for natural conversations.