[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-how-to-set-up-openclaw-safely-en":3,"article-related-how-to-set-up-openclaw-safely-en":31,"series-ai-agent-39acb8a3-431d-49bc-b3ff-aa74800eabfa":83},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":23,"views":27,"created_at":28,"published_at":29,"topic_cluster_id":30},"39acb8a3-431d-49bc-b3ff-aa74800eabfa","how-to-set-up-openclaw-safely-en","How to Set Up OpenClaw Safely","\u003Cp data-speakable=\"summary\">Set up \u003Ca href=\"\u002Ftag\u002Fopenclaw\">OpenClaw\u003C\u002Fa> on your own machine and connect it to a model, workspace, and channel.\u003C\u002Fp>\u003Cp>This guide is for developers who want an open-source AI assistant that can run tools, manage memory, and automate tasks on hardware they control. By the end, you will have OpenClaw installed, connected to a model provider, pointed at a safe workspace, and ready to process messages from a chat channel.\u003C\u002Fp>\u003Cp>OpenClaw is a self-hosted \u003Ca href=\"\u002Ftag\u002Fagent\">agent\u003C\u002Fa> runtime, not a chatbot. It routes requests through a local Gateway service, executes approved actions on your machine, and stores sensitive keys away from connected apps. That makes it powerful, but it also means setup and safety checks matter from the first run.\u003C\u002Fp>\u003Ch2>Before you start\u003C\u002Fh2>\u003Cul>\u003Cli>Node.js 24, or Node.js 22.19\u003C\u002Fli>\u003Cli>Git 2.40+\u003C\u002Fli>\u003Cli>An API key for Anthropic, OpenAI, Google, or AWS Bedrock, or a local model server such as Ollama or LM Studio\u003C\u002Fli>\u003Cli>For local models: 64,000-token context window minimum\u003C\u002Fli>\u003Cli>macOS 13+, Ubuntu 22.04+, or Windows 11 with WSL2 and Ubuntu\u003C\u002Fli>\u003Cli>A dedicated workspace folder that does not contain personal files\u003C\u002Fli>\u003Cli>Optional: a chat account for WhatsApp, Telegram, Discord, Slack, Google Chat, Signal, iMessage, Matrix, or Microsoft Teams\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Step 1: Clone the OpenClaw repository\u003C\u002Fh2>\u003Cp>Goal: download the OpenClaw codebase so you can install and run the Gateway locally. The project is open source and documented in its GitHub repository, so start by pulling the official source before you configure anything else. See the docs at \u003Ca href=\"https:\u002F\u002Fdocs.openclaw.ai\">docs.openclaw.ai\u003C\u002Fa> and the code at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\">github.com\u002Fopenclaw\u002Fopenclaw\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780549364539-93vi.png\" alt=\"How to Set Up OpenClaw Safely\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cpre>\u003Ccode>git clone https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw.git\ncd openclaw\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should see the repository files, including the Gateway app and workspace-related folders, in your terminal.\u003C\u002Fp>\u003Ch2>Step 2: Install Node dependencies\u003C\u002Fh2>\u003Cp>Goal: prepare the local runtime that powers OpenClaw’s Gateway service. OpenClaw depends on Node.js, so install packages before you try to start the agent or load any model settings.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780549369137-am3s.png\" alt=\"How to Set Up OpenClaw Safely\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cpre>\u003Ccode>npm install\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should see a completed install with no missing-package errors, and a populated node_modules directory.\u003C\u002Fp>\u003Ch2>Step 3: Configure model access and secrets\u003C\u002Fh2>\u003Cp>Goal: connect OpenClaw to a reasoning model and keep keys inside the Gateway instead of exposing them to connected apps. This is the most important setup step because OpenClaw is the orchestration layer, not the model itself.\u003C\u002Fp>\u003Cpre>\u003Ccode>cp .env.example .env\n# edit .env and add your provider key\n# example values may include OPENAI_API_KEY, ANTHROPIC_API_KEY, or OLLAMA_BASE_URL\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should be able to open the config file and confirm that your provider key and model settings are present, while chat clients still have no direct access to them.\u003C\u002Fp>\u003Ch2>Step 4: Start the Gateway service\u003C\u002Fh2>\u003Cp>Goal: launch the background service that routes messages, runs tools, and manages memory. The Gateway listens on port 18789, so once it starts, OpenClaw can coordinate terminal commands, browser actions, and file operations through one control point.\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run gateway\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should see a startup message indicating the Gateway is running, and a local listener on port 18789.\u003C\u002Fp>\u003Ch2>Step 5: Create a safe workspace and memory files\u003C\u002Fh2>\u003Cp>Goal: give OpenClaw a dedicated place to store durable memory and task state without exposing your home directory. OpenClaw uses Markdown files such as MEMORY.md, SOUL.md, and AGENTS.md in its workspace, so keep that workspace isolated from sensitive data.\u003C\u002Fp>\u003Cpre>\u003Ccode>mkdir -p ~\u002F.openclaw\u002Fworkspace\nprintf \"workspace ready\\n\" > ~\u002F.openclaw\u002Fworkspace\u002FMEMORY.md\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should see the workspace folder and the MEMORY.md file, and the agent should load that location on the next session start.\u003C\u002Fp>\u003Ch2>Step 6: Connect one channel and run a test task\u003C\u002Fh2>\u003Cp>Goal: prove that OpenClaw can receive a message, route it through the Gateway, and return a tool-assisted response. Start with one channel, such as Slack or Telegram, before you add more integrations or third-party \u003Ca href=\"\u002Ftag\u002Fskills\">skills\u003C\u002Fa>.\u003C\u002Fp>\u003Cpre>\u003Ccode># example only: wire your chosen channel in the OpenClaw config\n# then send a test prompt like:\n# \"List the files in my workspace and summarize them.\"\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Verification: you should see the assistant respond in the same channel, and the Gateway logs should show a routed request plus a successful tool call or file read.\u003C\u002Fp>\u003Ctable>\u003Cthead>\u003Ctr>\u003Cth>Metric\u003C\u002Fth>\u003Cth>Before\u002FBaseline\u003C\u002Fth>\u003Cth>After\u002FResult\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Model access\u003C\u002Ftd>\u003Ctd>No configured provider\u003C\u002Ftd>\u003Ctd>OpenClaw can send prompts to a chosen model\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Action execution\u003C\u002Ftd>\u003Ctd>Chat-only assistant\u003C\u002Ftd>\u003Ctd>Gateway can run shell, file, and browser tools\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Workspace safety\u003C\u002Ftd>\u003Ctd>Home directory or mixed files\u003C\u002Ftd>\u003Ctd>Dedicated isolated workspace with memory files\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2>Common mistakes\u003C\u002Fh2>\u003Cul>\u003Cli>Using the wrong Node version: upgrade to Node 24, or Node 22.19 if your environment is pinned.\u003C\u002Fli>\u003Cli>Pointing OpenClaw at your home directory: create a dedicated workspace folder and keep secrets out of it.\u003C\u002Fli>\u003Cli>Installing random skills from ClawHub: inspect the SKILL.md file first, and skip anything that tells you to paste shell commands or run unfamiliar binaries.\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>What's next\u003C\u002Fh2>\u003Cp>Once OpenClaw is running, the next step is to add guardrails: limit tool permissions, set \u003Ca href=\"\u002Ftag\u002Ftoken\">token\u003C\u002Fa> caps for scheduled jobs, and test one narrow automation before you expand to browser control, repository workflows, or recurring briefings.\u003C\u002Fp>","Set up OpenClaw on your own machine and connect it to a model, workspace, and channel.","www.datacamp.com","https:\u002F\u002Fwww.datacamp.com\u002Fblog\u002Fwhat-is-openclaw",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780549364539-93vi.png","ai-agent","en","83c2f8f6-3710-466e-b52c-473b811f0535",[17,18,19,20,21,22],"OpenClaw","Node.js","Gateway","skills","Ollama","self-hosted AI",[24,25,26],"OpenClaw is a self-hosted agent runtime that connects a model to local tools.","The Gateway is the core service, and it keeps keys and tool execution under local control.","A dedicated workspace and careful skill review are the two biggest safety wins.",0,"2026-06-04T05:02:21.766703+00:00","2026-06-04T05:02:21.748+00:00","b15e1e23-2951-4204-aecd-e71b56118436",{"tags":32,"relatedLang":42,"relatedPosts":46},[33,35,37,39,41],{"name":19,"slug":34},"gateway",{"name":18,"slug":36},"nodejs",{"name":21,"slug":38},"ollama",{"name":17,"slug":40},"openclaw",{"name":20,"slug":20},{"id":15,"slug":43,"title":44,"language":45},"how-to-set-up-openclaw-safely-zh","如何安全架設 OpenClaw","zh",[47,53,59,65,71,77],{"id":48,"slug":49,"title":50,"cover_image":51,"image_url":51,"created_at":52,"category":13},"c1f893c0-912a-4061-b54c-df6add870669","aws-devops-agent-turns-incident-chaos-into-triage-en","AWS DevOps Agent turns incident chaos into triage","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780466635494-xd0l.png","2026-06-03T06:03:14.824713+00:00",{"id":54,"slug":55,"title":56,"cover_image":57,"image_url":57,"created_at":58,"category":13},"5b873eea-a5c8-4e78-9509-e2d904934303","kimi-k26-live-300-agent-workflows-en","Kimi K2.6 goes live with 300-agent workflows","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780430570173-x78p.png","2026-06-02T20:02:25.552333+00:00",{"id":60,"slug":61,"title":62,"cover_image":63,"image_url":63,"created_at":64,"category":13},"07ab6616-cd42-492d-be78-cab0bfd753fb","how-to-take-a-sabbatical-at-openai-en","How to Take a Sabbatical at OpenAI","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780398173367-8lyd.png","2026-06-02T11:02:26.247565+00:00",{"id":66,"slug":67,"title":68,"cover_image":69,"image_url":69,"created_at":70,"category":13},"1b25f514-9ed1-4c6f-b9d7-f56eb34033f5","build-production-rag-with-langchain-in-8-steps-en","Build Production RAG with LangChain in 8 Steps","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780178601812-0o68.png","2026-05-30T22:02:48.810322+00:00",{"id":72,"slug":73,"title":74,"cover_image":75,"image_url":75,"created_at":76,"category":13},"a418c6ee-c31c-49d0-8718-2f9e832fa386","ai-agents-hit-chaos-mode-claude-code-openclaw-en","AI agents hit chaos mode with Claude Code and OpenClaw","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780160573453-hwdr.png","2026-05-30T17:02:26.127486+00:00",{"id":78,"slug":79,"title":80,"cover_image":81,"image_url":81,"created_at":82,"category":13},"b8096fd3-2102-4649-a1a2-ea0536bbff31","how-to-use-claude-4-8-models-in-python-en","How to Use Claude 4.8 Models in Python","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780009366301-hqil.png","2026-05-28T23:02:21.28017+00:00",[84,89,94,99,104,109,114,119,124,129],{"id":85,"slug":86,"title":87,"created_at":88},"03db8de8-8dc2-4ac1-9cf7-898782efbb1f","anthropic-claude-ai-agent-task-automation-en","Anthropic's Claude AI Agent: A New Era of Task Automation","2026-03-25T16:25:06.513026+00:00",{"id":90,"slug":91,"title":92,"created_at":93},"045d1abc-190d-4594-8c95-91e2a26f0c5a","googles-2026-ai-agent-report-decoded-en","Google’s 2026 AI Agent Report, Decoded","2026-03-26T11:15:23.046616+00:00",{"id":95,"slug":96,"title":97,"created_at":98},"e64aba21-254b-4f93-aa21-837484bb52ec","kimi-k25-review-stronger-still-not-legend-en","Kimi K2.5 review: stronger, still not a legend","2026-03-27T07:15:55.385951+00:00",{"id":100,"slug":101,"title":102,"created_at":103},"30dfb781-a1b2-4add-aebe-b3df40247c37","claude-code-controls-mac-desktop-en","Claude Code now controls your Mac desktop","2026-03-28T03:01:59.384091+00:00",{"id":105,"slug":106,"title":107,"created_at":108},"254405b6-7833-4800-8e13-f5196deefbe6","cloudflare-100x-faster-ai-agent-sandbox-en","Cloudflare’s 100x Faster AI Agent Sandbox","2026-03-28T03:09:44.356437+00:00",{"id":110,"slug":111,"title":112,"created_at":113},"04f29b7f-9b91-4306-89a7-97d725e6e1ba","openai-backs-isara-agent-swarm-bet-en","OpenAI backs Isara’s agent-swarm bet","2026-03-28T03:15:27.849766+00:00",{"id":115,"slug":116,"title":117,"created_at":118},"3b0bf479-e4ae-4703-9666-721a7e0cdb91","openai-plan-automated-ai-researcher-en","OpenAI’s plan for an automated AI researcher","2026-03-28T03:17:42.312819+00:00",{"id":120,"slug":121,"title":122,"created_at":123},"fe91bce0-b85d-4efa-a207-24ae9939c29f","harness-engineering-ai-agent-reliability-2026","Harness Engineering: From Bridle to Operating System, The Missing Link in AI Agent Reliability","2026-03-31T06:36:55.648751+00:00",{"id":125,"slug":126,"title":127,"created_at":128},"7a09007d-820f-43b3-8607-8ad1bfcb94c8","mcp-explained-from-prompts-to-production-en","MCP Explained: From Prompts to Production","2026-04-01T09:24:40.089177+00:00",{"id":130,"slug":131,"title":132,"created_at":133},"116d5ee9-a4f1-4b5a-aac5-5d035dd22bbe","amazon-bedrock-agents-multi-agent-workflows-en","Amazon Bedrock Agents Gets Multi-Agent Workflows","2026-04-01T09:30:30.197685+00:00"]