1 / 10
ERA · March 2026

Getting Started with OpenClaw

or: How I Spent My Weekends Arguing with a Config File

What is OpenClaw?

Getting Started

30-minute path:

  1. Install OpenClaw
  2. Create Telegram bot (BotFather — 2 min)
  3. Connect to OpenClaw
  4. Write SOUL.md — who is this agent?
  5. Have your first conversation
⚠️ Hidden gotcha: default idle timeout = 2 hours
Fix: thread: { mode: "idle", idleMinutes: 5760 }

Memory Architecture

Four Layers

  • IDENTITY.md — who am I?
  • errors.md — mistakes to avoid
  • MEMORY.md — Chuck's world
  • Daily log — what happened today?
  • + Mem0 / Qdrant vector DB

Two-Stage Retrieval

  • Boot → 20 most recent (recency)
  • Per question → semantic search

100% Local

  • nomic-embed-text
  • qwen3.5:9b
  • Qdrant in Docker

Secrets Management

Skills + Scripted Components

Skills (~75 total)

  • good-morning
  • deploy
  • pdad-do-next
  • omnifocus-process-inbox

Instruction sets that load on demand

Scripts

  • morning_briefing.py
  • health_log.py
  • omnifocus_reset_planned.sh
  • op-wrapper.sh

Reliable primitives the agent calls

"Agent orchestrates — scripts execute."

How Much Access?

🟢
Read-only bus — prod events → Slack → agent reads only. Zero risk.
🟡
Read-only production — log access, can analyze, can't change.
🔴
Full scoped access — GitHub App (per repo), Heroku, 1Password vault, OmniFocus.
"Start small. Expand after trust."

Lessons Learned

  1. Start small — many cycles of tweaking
  2. Scripts for consistent output
  3. Programmatic enforcement > prompt guidance
  4. Self-diagnosis → self-correction → compound improvement
"If your system can't refine itself based on what went wrong last week, you're just running the same broken process faster."
Real failures: JSON config crash · ghost ✅ without verifying · sub-agent recreating deleted crons · R14 flood from 287 re-queued jobs

Where It's Going

Resources