Bygga en personlig assistent med OpenClaw
OpenClaw är en WhatsApp + Telegram + Discord + iMessage gateway för Pi agenter. Tillägg till Mattermost. Denna guide är “personlig assistent” setup: en dedikerad WhatsApp nummer som beter sig som din alltid ombud.⚠️ Säkerhet först
Du placerar en agent i en position att:- köra kommandon på din maskin (beroende på din Pi-verktygskonfiguration)
- läsa/skriva filer i din arbetsyta
- skicka meddelanden vidare via WhatsApp/Telegram/Discord/Mattermost (plugin)
- Sätt alltid
channels.whatsapp.allowFrom(kör aldrig öppet mot hela världen på din personliga Mac). - Använd ett dedikerat WhatsApp-nummer för assistenten.
- Heartbeats är nu standard för var 30:e minut. Inaktivera tills du litar på installationen genom att ställa in
agents.defaults.heartbeat.every: "0m".
Förutsättningar
- OpenClaw installerat och introducerat — se Kom igång om du inte har gjort detta än
- Ett andra telefonnummer (SIM/eSIM/kontantkort) för assistenten
Tvåtelefonersuppsättningen (rekommenderas)
Du vill ha detta: Om du länkar din personliga WhatsApp till OpenClaw, varje meddelande till dig blir “agent input”. Det är sällan det du vill.Snabbstart på 5 minuter
- Para WhatsApp Web (visar QR; skanna med assistenttelefonen):
- Starta Gateway (låt den vara igång):
- Lägg in en minimal konfig i
~/.openclaw/openclaw.json:
gateway.auth.token i kontrollgränssnittets inställningar. För att öppna senare: openclaw dashboard.
Ge agenten en arbetsyta (AGENTS)
OpenClaw läser driftinstruktioner och ”minne” från sin arbetsytekatalog. Som standard använder OpenClaw~/.openclaw/workspace som agentens arbetsyta, och kommer att skapa det (plus start-AGENTS. d, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md) automatiskt vid setup/första agent kör. BOOTSTRAP.md skapas bara när arbetsytan är helt ny (det bör inte komma tillbaka efter att du tagit bort den). MEMORY.md är valfritt (inte automatiskt skapat); när närvarande, är det laddat för normala sessioner. Underagent sessioner endast injicera AGENTS.md och TOOLS.md.
Tips: behandla den här mappen som OpenClaws ”minne” och gör den till en git repo (helst privat) så att dina AGENTS.md + minnesfiler säkerhetskopieras. Om git är installerat är helt nya arbetsytor autoinitierade.
Minnesarbetsflöde: Memory Valfritt: välj en annan arbetsyta med
agents.defaults.workspace (stödjer ~).
Konfigen som gör den till ”en assistent”
OpenClaw har som standard en bra assistentuppsättning, men du vill oftast justera:- persona/instruktioner i
SOUL.md - tänkandeförval (om önskat)
- heartbeats (när du väl litar på den)
Sessioner och minne
- Sessionsfiler:
~/.openclaw/agents/<agentId>/sessions/{{SessionId}}.jsonl - Sessionsmetadata (tokenanvändning, senaste rutt, etc):
~/.openclaw/agents/<agentId>/sessions/sessions.json(legacy:~/.openclaw/sessions/sessions.json) /neweller/resetstartar en ny session för den chatten (konfigurerbar viaresetTriggers). Om den skickas ensam, svarar agenten med en kort hej för att bekräfta återställningen./compact [instructions]komprimerar sessionskontexten och rapporterar återstående kontextbudget.
Heartbeats (proaktivt läge)
Som standard kör OpenClaw ett hjärtslag var 30:e minut med prompten:Read HEARTBEAT.md om det finns (arbetsytans sammanhang). Följ den strikt. Sluta inte eller upprepa gamla uppgifter från tidigare chattar. Om inget behöver uppmärksamhet, svara HEARTBEAT_OK.
Set agents.defaults.heartbeat.every: "0m" för att inaktivera.
- Om
HEARTBEAT.mdfinns men i praktiken är tom (endast tomma rader och markdown‑rubriker som# Heading), hoppar OpenClaw över heartbeat‑körningen för att spara API‑anrop. - Om filen saknas körs heartbeat ändå och modellen avgör vad som ska göras.
- Om agenten svarar med
HEARTBEAT_OK(valfritt med kort utfyllnad; seagents.defaults.heartbeat.ackMaxChars), undertrycker OpenClaw utgående leverans för den heartbeaten. - Heartbeats kör fullständiga agentvarv — kortare intervall förbrukar fler tokens.
Media in och ut
Inkommande bilagor (bilder/ljud/dokument) kan exponeras till ditt kommando via mallar:{{MediaPath}}(lokal temporär filsökväg){{MediaUrl}}(pseudo‑URL){{Transcript}}(om ljudtranskribering är aktiverad)
MEDIA:<path-or-url> på sin egen linje (inga mellanslag). Exempel:
Driftchecklista
/tmp/openclaw/ (standard: openclaw-YYYY-MM-DD.log).
Nästa steg
- WebChat: WebChat
- Gateway‑drift: Gateway runbook
- Cron + väckningar: Cron jobs
- macOS‑menyradskompanjon: OpenClaw macOS app
- iOS‑nodeapp: iOS app
- Android‑nodeapp: Android app
- Windows‑status: Windows (WSL2)
- Linux‑status: Linux app
- Säkerhet: Security