Een persoonlijke assistent bouwen met OpenClaw
OpenClaw is een WhatsApp + Telegram + Discord + iMessage Gateway voor Pi-agents. Plugins voegen Mattermost toe. Deze gids beschrijft de installatie als “persoonlijke assistent”: één dedicated WhatsApp-nummer dat zich gedraagt als je altijd-aan agent.⚠️ Veiligheid eerst
Je plaatst een agent in een positie om:- opdrachten uit te voeren op je machine (afhankelijk van je Pi-toolconfiguratie)
- bestanden te lezen/schrijven in je werkruimte
- berichten terug te sturen via WhatsApp/Telegram/Discord/Mattermost (plugin)
- Stel altijd
channels.whatsapp.allowFromin (draai nooit open naar de wereld op je persoonlijke Mac). - Gebruik een dedicated WhatsApp-nummer voor de assistent.
- Heartbeat-signalen staan nu standaard op elke 30 minuten. Schakel ze uit totdat je de installatie vertrouwt door
agents.defaults.heartbeat.every: "0m"in te stellen.
Vereisten
- OpenClaw geïnstalleerd en geonboard — zie Aan de slag als je dit nog niet hebt gedaan
- Een tweede telefoonnummer (SIM/eSIM/prepaid) voor de assistent
De twee-telefoon-installatie (aanbevolen)
Je wilt dit: Als je je persoonlijke WhatsApp aan OpenClaw koppelt, wordt elk bericht aan jou “agent-input”. Dat is zelden wat je wilt.5-minuten snelle start
- Koppel WhatsApp Web (toont QR; scan met de assistent-telefoon):
- Start de Gateway (laat deze draaien):
- Plaats een minimale config in
~/.openclaw/openclaw.json:
gateway.auth.token in de Control UI-instellingen. Later opnieuw openen: openclaw dashboard.
Geef de agent een werkruimte (AGENTS)
OpenClaw leest bedieningsinstructies en “geheugen” uit zijn werkruimtemap. Standaard gebruikt OpenClaw~/.openclaw/workspace als agent-werkruimte en zal deze (plus starter AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md) automatisch aanmaken bij installatie/eerste agent-run. BOOTSTRAP.md wordt alleen aangemaakt wanneer de werkruimte splinternieuw is (deze zou niet terug moeten komen nadat je hem hebt verwijderd). MEMORY.md is optioneel (niet automatisch aangemaakt); wanneer aanwezig wordt deze geladen voor normale sessies. Subagent-sessies injecteren alleen AGENTS.md en TOOLS.md.
Tip: behandel deze map als het “geheugen” van OpenClaw en maak er een git-repo van (bij voorkeur privé), zodat je AGENTS.md + geheugenbestanden zijn geback-upt. Als git is geïnstalleerd, worden gloednieuwe werkruimtes automatisch geïnitialiseerd.
Geheugenworkflow: Memory Optioneel: kies een andere werkruimte met
agents.defaults.workspace (ondersteunt ~).
De config die het verandert in “een assistent”
OpenClaw heeft standaard een goede assistent-instelling, maar je wilt meestal afstemmen:- persona/instructies in
SOUL.md - denk-standaardwaarden (indien gewenst)
- heartbeat-signalen (zodra je het vertrouwt)
Sessies en geheugen
- Sessie-bestanden:
~/.openclaw/agents/<agentId>/sessions/{{SessionId}}.jsonl - Sessie-metadata (tokengebruik, laatste route, enz.):
~/.openclaw/agents/<agentId>/sessions/sessions.json(legacy:~/.openclaw/sessions/sessions.json) /newof/resetstart een nieuwe sessie voor die chat (configureerbaar viaresetTriggers). Als dit alleen wordt verzonden, antwoordt de agent met een korte hallo om de reset te bevestigen./compact [instructions]comprimeert de sessiecontext en rapporteert het resterende contextbudget.
Heartbeat-signalen (proactieve modus)
Standaard draait OpenClaw elke 30 minuten een heartbeat met de prompt:Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.
Stel agents.defaults.heartbeat.every: "0m" in om uit te schakelen.
- Als
HEARTBEAT.mdbestaat maar effectief leeg is (alleen lege regels en markdown-koppen zoals# Heading), slaat OpenClaw de heartbeat-run over om API-calls te besparen. - Als het bestand ontbreekt, draait de heartbeat nog steeds en beslist het model wat te doen.
- Als de agent antwoordt met
HEARTBEAT_OK(optioneel met korte padding; zieagents.defaults.heartbeat.ackMaxChars), onderdrukt OpenClaw de uitgaande levering voor die heartbeat. - Heartbeats draaien volledige agent-beurten — kortere intervallen verbranden meer tokens.
Media in en uit
Inkomende bijlagen (afbeeldingen/audio/documenten) kunnen aan je opdracht worden doorgegeven via templates:{{MediaPath}}(lokaal tijdelijk bestandspad){{MediaUrl}}(pseudo-URL){{Transcript}}(als audiotranscriptie is ingeschakeld)
MEDIA:<path-or-url> toe op een eigen regel (zonder spaties). Voorbeeld:
Operationele checklist
/tmp/openclaw/ (standaard: openclaw-YYYY-MM-DD.log).
Volgende stappen
- WebChat: WebChat
- Gateway-operaties: Gateway runbook
- Cron + ontwaakacties: Cronjobs
- macOS-menubalk-companion: OpenClaw macOS app
- iOS node-app: iOS app
- Android node-app: Android app
- Windows-status: Windows (WSL2)
- Linux-status: Linux app
- Beveiliging: Security