<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Xilin Wei</title>
    <description>The latest articles on DEV Community by Xilin Wei (@xilinwei).</description>
    <link>https://dev.to/xilinwei</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3784779%2F87b3cb53-8b9d-485c-84f7-28834724889f.png</url>
      <title>DEV Community: Xilin Wei</title>
      <link>https://dev.to/xilinwei</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/xilinwei"/>
    <language>en</language>
    <item>
      <title>All you need to know about 🦞 OpenClaw</title>
      <dc:creator>Xilin Wei</dc:creator>
      <pubDate>Sun, 22 Feb 2026 08:28:32 +0000</pubDate>
      <link>https://dev.to/xilinwei/all-you-need-to-know-about-openclaw-35cb</link>
      <guid>https://dev.to/xilinwei/all-you-need-to-know-about-openclaw-35cb</guid>
      <description>&lt;h2&gt;
  
  
  All you need to know about 🦞 OpenClaw --- The Complete Guide to Your Personal AI Agent
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Everything you need to know about the open-source AI agent that went from zero to 140K GitHub stars in under three months.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  📚 Table of Contents
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Introduction &amp;amp; Context&lt;/li&gt;
&lt;li&gt;Architecture &amp;amp; High-Level Design&lt;/li&gt;
&lt;li&gt;Getting Started (Step-by-Step Guide)&lt;/li&gt;
&lt;li&gt;Practical Applications &amp;amp; Productivity&lt;/li&gt;
&lt;li&gt;Optimization, Security &amp;amp; Challenges&lt;/li&gt;
&lt;/ol&gt;




&lt;h1&gt;
  
  
  1. Introduction
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What is OpenClaw, Really?
&lt;/h2&gt;

&lt;p&gt;Imagine having an assistant that can actually &lt;em&gt;do&lt;/em&gt; things — not just answer questions or generate text, but execute tasks, manage your schedule, write code, control your smart home, and respond on your behalf — all running privately on your own hardware, with zero data leaving your machine.&lt;/p&gt;

&lt;p&gt;That's OpenClaw. Formerly known as Clawdbot and then Moltbot, it's one of the fastest-growing open-source projects of early 2026.&lt;/p&gt;

&lt;h2&gt;
  
  
  What It Looks Like Day-to-Day
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────────────────────────────────┐
│                         THE OPENCLAW UNIVERSE                               │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│   💬 CHANNELS          🧠 AI CORE           🛠️ TOOLS            📱 DEVICES   │
│   ───────────          ────────            ───────            ─────────     │
│                                                                             │
│   • WhatsApp           • LLM Routing       • Browser          • macOS       │
│   • Telegram           • Memory System     • Code Exec        • iOS         │
│   • Slack              • Skills/Plugins    • File System      • Android     │
│   • Discord            • Multi-Agent       • Cron Jobs        • Linux       │
│   • Signal                                        • Canvas UI   • Windows     │
│   • iMessage                                                                │
│   • Google Chat                                                             │
│   • Microsoft Teams                                                         │
│   • Matrix                                                                  │
│   • Zalo                                                                    │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  The "Aha!" Moment
&lt;/h3&gt;

&lt;p&gt;Here's what makes OpenClaw special in one sentence:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;OpenClaw transforms any messaging app into a command center for AI-powered automation, while keeping everything local and under your control.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You send a message to your assistant on WhatsApp: &lt;em&gt;"Summarize my unread emails and schedule a meeting with Sarah for Thursday afternoon."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;OpenClaw:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Understands&lt;/strong&gt; your intent (natural language processing)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accesses&lt;/strong&gt; your Gmail (via secure API)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reads&lt;/strong&gt; your calendar (checking availability)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Generates&lt;/strong&gt; a summary (using an LLM)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creates&lt;/strong&gt; a calendar event (via Google Calendar API)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Replies&lt;/strong&gt; back to you on WhatsApp with confirmation&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;All of this happens &lt;strong&gt;on your machine&lt;/strong&gt;, with your API keys, following your rules.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Did OpenClaw Take Off?
&lt;/h2&gt;

&lt;p&gt;OpenClaw's timing was perfect — it hit the intersection of a few trends that had been building for years:&lt;/p&gt;

&lt;h4&gt;
  
  
  🏠 &lt;strong&gt;1. The Local-First Movement&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;People are waking up to the privacy implications of cloud-only AI. When you use ChatGPT, Claude, or Gemini, your conversations are processed on someone else's servers. With OpenClaw:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Your data stays YOUR data&lt;/strong&gt; 🛡️&lt;/li&gt;
&lt;li&gt;No vendor lock-in&lt;/li&gt;
&lt;li&gt;No training on your private information&lt;/li&gt;
&lt;li&gt;No internet required for local operations&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  🔓 &lt;strong&gt;2. Open Source = Trust + Innovation&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;OpenClaw is fully open source (MIT License). This means:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌────────────────────────────────────────────────────────────────┐
│                    OPEN SOURCE ADVANTAGES                      │
├────────────────────────────────────────────────────────────────┤
│                                                                │
│  ✅ You can audit the code yourself                            │
│  ✅ Security researchers can find and fix bugs                 │
│  ✅ Community contributes features and skills                  │
│  ✅ No hidden tracking or data collection                      │
│  ✅ You can fork and customize for your needs                  │
│  ✅ Transparent development process                            │
│                                                                │
└────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  🌉 &lt;strong&gt;3. The "Chat-First" Interface Revolution&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;We're witnessing the death of traditional app interfaces. Instead of opening 10 different apps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📧 Email client&lt;/li&gt;
&lt;li&gt;📅 Calendar app
&lt;/li&gt;
&lt;li&gt;🔍 Browser&lt;/li&gt;
&lt;li&gt;📝 Notes app&lt;/li&gt;
&lt;li&gt;🛒 Shopping apps&lt;/li&gt;
&lt;li&gt;🎵 Music apps&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;You just send a message.&lt;/strong&gt; One interface to rule them all.&lt;/p&gt;

&lt;h4&gt;
  
  
  🧩 &lt;strong&gt;4. The Plugin/Skill Architecture&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;OpenClaw's "Skills" system allows anyone to extend its capabilities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Want it to control your Philips Hue lights? There's a skill for that.&lt;/li&gt;
&lt;li&gt;Want it to query your company's internal database? Build a skill.&lt;/li&gt;
&lt;li&gt;Want it to generate images with Stable Diffusion? Install the skill.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This extensibility creates a &lt;strong&gt;flywheel effect&lt;/strong&gt;: more users → more skills → more value → more users.&lt;/p&gt;

&lt;h3&gt;
  
  
  From Personal Project to AI Foundation
&lt;/h3&gt;

&lt;p&gt;OpenClaw's evolution tells a fascinating story:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Date&lt;/th&gt;
&lt;th&gt;Milestone&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Nov 2025&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Peter Steinberger publishes &lt;strong&gt;Clawdbot&lt;/strong&gt; — derived from Clawd (now Molty), named after Anthropic's Claude&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Jan 27, 2026&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Renamed &lt;strong&gt;Moltbot&lt;/strong&gt; after Anthropic trademark complaints; Matt Schlicht launches &lt;em&gt;Moltbook&lt;/em&gt; — a social network for AI agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Jan 30, 2026&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Renamed &lt;strong&gt;OpenClaw&lt;/strong&gt; — "Moltbot never quite rolled off the tongue"; 140,000 GitHub stars &amp;amp; 20,000 forks by Feb 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Feb 4, 2026&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;ClawCon&lt;/strong&gt; in San Francisco; adopted by Silicon Valley &amp;amp; China companies; DeepSeek integration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Feb 14, 2026&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Steinberger announces &lt;strong&gt;joining OpenAI&lt;/strong&gt;; project moves to open-source foundation&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  How It All Works: The Core Concepts
&lt;/h2&gt;

&lt;p&gt;Before jumping into installation, it's worth spending five minutes understanding &lt;em&gt;why&lt;/em&gt; OpenClaw works the way it does. This will save you a lot of confusion later.&lt;/p&gt;

&lt;h4&gt;
  
  
  🎯 &lt;strong&gt;Concept 1: Autonomous Agents&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Traditional software is &lt;strong&gt;reactive&lt;/strong&gt;: it waits for user input, processes it, and returns a result.&lt;/p&gt;

&lt;p&gt;AI agents are &lt;strong&gt;proactive&lt;/strong&gt;: they can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Take initiative based on schedules (&lt;code&gt;cron&lt;/code&gt; jobs)&lt;/li&gt;
&lt;li&gt;Make decisions using reasoning&lt;/li&gt;
&lt;li&gt;Execute multi-step plans&lt;/li&gt;
&lt;li&gt;Handle errors and retry&lt;/li&gt;
&lt;li&gt;Learn from interactions
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────────────────────────────┐
│                   REACTIVE VS AUTONOMOUS SOFTWARE                       │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                         │
│  REACTIVE (Traditional)                  AUTONOMOUS (Agentic)           │
│  ─────────────────────                   ───────────────────            │
│                                                                         │
│  User: "What's on my calendar?"          User: "Plan my week"           │
│      ↓                                       ↓                          │
│  App: Shows calendar                     Agent:                          │
│      ↓                                    1. Reads calendar             │
│  [END]                                    2. Checks email for updates   │
│                                           3. Looks at todo list         │
│                                           4. Prioritizes based on       │
│                                              deadlines                  │
│                                           5. Suggests schedule blocks   │
│                                           6. Asks for approval          │
│                                           7. Creates calendar events    │
│                                               ↓                         │
│                                           [PROACTIVE FOLLOW-UP]         │
│                                           "You have a conflict on       │
│                                            Tuesday, shall I move it?"   │
│                                                                         │
└─────────────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  🔄 &lt;strong&gt;Concept 2: LLM Routing&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;OpenClaw doesn't just use one AI model — it &lt;strong&gt;routes tasks to the best model for the job&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Here's the magic:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Task Type&lt;/th&gt;
&lt;th&gt;Routed To&lt;/th&gt;
&lt;th&gt;Reason&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Coding&lt;/td&gt;
&lt;td&gt;Claude Opus 4.6&lt;/td&gt;
&lt;td&gt;Best code quality&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quick questions&lt;/td&gt;
&lt;td&gt;Gemini Flash&lt;/td&gt;
&lt;td&gt;Speed &amp;amp; low cost&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Creative writing&lt;/td&gt;
&lt;td&gt;GPT-5.2&lt;/td&gt;
&lt;td&gt;Creativity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image analysis&lt;/td&gt;
&lt;td&gt;Claude 3.5 Sonnet&lt;/td&gt;
&lt;td&gt;Visual strength&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Local/Sensitive&lt;/td&gt;
&lt;td&gt;Local Llama&lt;/td&gt;
&lt;td&gt;Privacy&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Why this matters:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cost optimization&lt;/strong&gt;: Don't use expensive models for simple tasks&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quality optimization&lt;/strong&gt;: Use the best model for each specific task&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Latency optimization&lt;/strong&gt;: Use fast models when speed matters&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Privacy optimization&lt;/strong&gt;: Use local models for sensitive data&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  🧠 &lt;strong&gt;Concept 3: The ReAct Pattern&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;OpenClaw uses an industry-standard AI architecture called &lt;strong&gt;ReAct&lt;/strong&gt; (Reasoning + Acting):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────────────────────────────┐
│                        THE ReAct LOOP                                   │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                         │
│     ┌──────────────┐                                                    │
│     │   OBSERVE    │ ←─── Perceive current state                        │
│     └──────┬───────┘      (messages, files, sensor data)                │
│            │                                                            │
│            ▼                                                            │
│     ┌──────────────┐                                                    │
│     │    THINK     │ ←─── Reason about what to do                       │
│     └──────┬───────┘      (planning, decision-making)                   │
│            │                                                            │
│            ▼                                                            │
│     ┌──────────────┐                                                    │
│     │     ACT      │ ←─── Execute action                                │
│     └──────┬───────┘      (use tools, send messages)                    │
│            │                                                            │
│            └────────────────┐                                           │
│                             │                                           │
│                             ▼                                           │
│     ┌─────────────────────────────────┐                                 │
│     │    ACTION RESULTS FEED BACK     │                                 │
│     │         INTO OBSERVE            │                                 │
│     └─────────────────────────────────┘                                 │
│                                                                         │
│  This loop continues until the task is complete!                        │
│                                                                         │
└─────────────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  💾 &lt;strong&gt;Concept 4: Persistent Memory&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Unlike stateless chatbots that forget everything when you close the tab, OpenClaw has &lt;strong&gt;memory&lt;/strong&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Memory Type&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Short-term&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Current conversation context&lt;/td&gt;
&lt;td&gt;"What was I asking about again?"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Long-term&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Curated knowledge (MEMORY.md)&lt;/td&gt;
&lt;td&gt;"User prefers dark mode"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Session History&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Past conversations&lt;/td&gt;
&lt;td&gt;"Yesterday we discussed Python"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;External&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Files, databases, APIs&lt;/td&gt;
&lt;td&gt;Calendar events, emails, documents&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Working Memory (current session)
    → [Summarize &amp;amp; Store] → Daily Notes (auto-captured)
                               → [Review &amp;amp; Distill] → Long-term Memory (MEMORY.md)
                                                           → [Enrich Context] ↩
External Sources (files/APIs/DB) → [Query &amp;amp; Read] → Working Memory
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Why Local-First Architecture Wins
&lt;/h3&gt;

&lt;p&gt;Let's compare OpenClaw's approach to cloud-based alternatives:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Aspect&lt;/th&gt;
&lt;th&gt;Cloud AI Assistants&lt;/th&gt;
&lt;th&gt;OpenClaw (Local-First)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Privacy&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Data on vendor servers&lt;/td&gt;
&lt;td&gt;Data stays on your devices&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Customization&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Limited to vendor features&lt;/td&gt;
&lt;td&gt;Fully customizable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Cost&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Subscription fees&lt;/td&gt;
&lt;td&gt;Pay only for API usage (optional)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Offline Use&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ Requires internet&lt;/td&gt;
&lt;td&gt;✅ Many features work offline&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Integrations&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vendor-approved only&lt;/td&gt;
&lt;td&gt;Any integration you can code&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Model Choice&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vendor's choice&lt;/td&gt;
&lt;td&gt;Any model (local or API)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Speed&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Network latency&lt;/td&gt;
&lt;td&gt;Local = instant&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Control&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Terms of service restrictions&lt;/td&gt;
&lt;td&gt;You make the rules&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  2. How the Architecture Works
&lt;/h1&gt;

&lt;p&gt;Now that you understand &lt;em&gt;why&lt;/em&gt; OpenClaw exists, here's &lt;em&gt;how&lt;/em&gt; it's built under the hood.&lt;/p&gt;

&lt;h2&gt;
  
  
  2.1 System Architecture Overview
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;System Architecture Overview:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Components&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Input&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Google Chat, WebChat&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Gateway Core&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;OpenClaw Gateway, Request Router, Session Manager, Auth &amp;amp; Security&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AI Layer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Pi Agent Runtime, LLM Router, Memory System, Skill Manager&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tool Layer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Browser Control, Code Execution, File System, Cron Jobs, Node Connector, Canvas UI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Model Providers&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;OpenAI, Anthropic, Google Gemini, Local Models (Ollama/lmstudio)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Data flow:&lt;/strong&gt; Channels → Gateway → Pi Agent → LLM Router → Tools → Response back to Channel&lt;/p&gt;

&lt;h2&gt;
  
  
  2.2 Core Components Deep Dive
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🏛️ &lt;strong&gt;Component 1: The Gateway&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Gateway&lt;/strong&gt; is the heart of OpenClaw. Think of it as an air traffic control tower.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────────────────────────────────┐
│                         THE GATEWAY                                         │
│                    (WebSocket Control Plane)                                │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│   Responsibilities:                                                         │
│   ─────────────────                                                         │
│                                                                             │
│   1️⃣  CONNECTION HUB                                                        │
│       • Maintains WebSocket connections to all channels                     │
│       • Handles authentication for each incoming message                    │
│       • Routes messages to appropriate agents/sessions                      │
│                                                                             │
│   2️⃣  SESSION MANAGEMENT                                                    │
│       • Creates isolated sessions per conversation                          │
│       • Maintains conversation history                                      │
│       • Handles session state (active, paused, completed)                   │
│                                                                             │
│   3️⃣  CONFIGURATION &amp;amp; STATE                                                 │
│       • Reads ~/.openclaw/openclaw.json                                     │
│       • Hot-reloads configuration changes                                   │
│       • Manages secrets and API keys                                        │
│                                                                             │
│   4️⃣  WEB INTERFACE                                                         │
│       • Serves Control UI at /__openclaw__/                                 │
│       • Provides HTTP API endpoints                                         │
│       • Hosts the Canvas for visual output                                  │
│                                                                             │
│   Default Port: 18789                                                       │
│   Protocol: WebSocket + HTTP                                                │
│   Bind Mode: loopback (127.0.0.1) by default for security                   │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Key Gateway Commands:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Start the Gateway&lt;/span&gt;
openclaw gateway &lt;span class="nt"&gt;--port&lt;/span&gt; 18789

&lt;span class="c"&gt;# Check status&lt;/span&gt;
openclaw gateway status

&lt;span class="c"&gt;# View logs&lt;/span&gt;
openclaw logs &lt;span class="nt"&gt;--follow&lt;/span&gt;

&lt;span class="c"&gt;# Hot-reload config&lt;/span&gt;
openclaw config apply
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  🧠 &lt;strong&gt;Component 2: The Pi Agent Runtime&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Pi&lt;/strong&gt; is OpenClaw's embedded agent runtime (RPC mode). This is where the "intelligence" lives.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌─────────────────────────────────────────────────────────────────────────────┐
│                     PI AGENT RUNTIME                                        │
│                  (AI Processing Engine)                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│   Input: Tool Stream ───────────────────────────────────────────────┐       │
│                                                                     │       │
│   ┌─────────────────────────────────────────────────────────────┐   │       │
│   │                     Pi Runtime                              │   │       │
│   │                                                             │   │       │
│   │  ┌─────────────┐    ┌─────────────┐    ┌─────────────────┐  │   │       │
│   │  │ Prompt      │───→│ LLM         │───→│ Response        │  │   │       │
│   │  │ Builder     │    │ Invocation  │    │ Parser          │  │   │       │
│   │  └─────────────┘    └─────────────┘    └─────────────────┘  │   │       │
│   │         │                  ↑                    │           │   │       │
│   │         │                  │                    │           │   │       │
│   │         ▼                  │                    ▼           │   │       │
│   │  ┌─────────────┐     ┌──────────┐        ┌─────────────┐   │   │       │
│   │  │ Context     │     │ Tool     │        │ Tool        │   │   │       │
│   │  │ Assembler   │     │ Results  │        │ Dispatcher  │   │   │       │
│   │  │             │     │ (feedback│        │             │   │   │       │
│   │  └─────────────┘     └──────────┘        └─────────────┘   │   │       │
│   │         │                  ↑                    │           │   │       │
│   └─────────┼──────────────────┼────────────────────┼───────────┘   │       │
│             │                  │                    │               │       │
│   Output: ──┴──────────────────┴────────────────────┴───────────────┘       │
│                                                                             │
│   Features:                                                                 │
│   • Streaming responses (real-time output)                                  │
│   • Block streaming (structured content like code, tables)                  │
│   • Tool orchestration (chain multiple tools together)                      │
│   • Multi-turn reasoning (complex problem solving)                          │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  💾 &lt;strong&gt;Component 3: Persistent Memory System&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;OpenClaw's memory system is one of its most sophisticated features. Let's break it down:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory flow:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Session (runtime)
    ↓ write daily summary
Daily Journal (memory/YYYY-MM-DD.md)
    ↓ review &amp;amp; distill
Curated Memory (MEMORY.md, SOUL.md, USER.md, AGENTS.md, TOOLS.md)
    ↓ load on startup
Session (runtime)  ←  Workspace files (code, docs, configs)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;The Memory Files Explained:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;File&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;When It Loads&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;SOUL.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Agent's personality, voice, mannerisms&lt;/td&gt;
&lt;td&gt;Every session (defines "who you are")&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;USER.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;User preferences, pronouns, context&lt;/td&gt;
&lt;td&gt;Main sessions only (not group chats)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;MEMORY.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Technical notes, lessons learned, todos&lt;/td&gt;
&lt;td&gt;Main sessions only (curated knowledge)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AGENTS.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Multi-agent rules, skill notes&lt;/td&gt;
&lt;td&gt;All sessions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;TOOLS.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Environment-specific tool configs&lt;/td&gt;
&lt;td&gt;All sessions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;memory/*.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Daily raw logs&lt;/td&gt;
&lt;td&gt;Review only&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Example SOUL.md:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# SOUL.md - Who You Are&lt;/span&gt;

You are OpenClaw, a helpful AI assistant. Your traits:
&lt;span class="p"&gt;
-&lt;/span&gt; Professional yet approachable
&lt;span class="p"&gt;-&lt;/span&gt; Security-conscious and careful
&lt;span class="p"&gt;-&lt;/span&gt; Independent but collaborative
&lt;span class="p"&gt;-&lt;/span&gt; Always verify before destructive actions
&lt;span class="p"&gt;-&lt;/span&gt; Prefer writing tools over deleting
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Example MEMORY.md:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# MEMORY.md - Long-Term Technical Notes&lt;/span&gt;

&lt;span class="gu"&gt;## Git/GitHub&lt;/span&gt;
&lt;span class="gu"&gt;### Git Push Hanging (HTTPS Auth Issue)&lt;/span&gt;
&lt;span class="gs"&gt;**Pattern:**&lt;/span&gt; &lt;span class="sb"&gt;`git push`&lt;/span&gt; hangs indefinitely
&lt;span class="gs"&gt;**Fix:**&lt;/span&gt; Switch to SSH: &lt;span class="sb"&gt;`git remote set-url origin git@github.com:...`&lt;/span&gt;

&lt;span class="gu"&gt;## Preferences&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Preferred code editor: VS Code
&lt;span class="p"&gt;-&lt;/span&gt; Shell: zsh
&lt;span class="p"&gt;-&lt;/span&gt; Git workflow: rebase preferred
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  🔧 &lt;strong&gt;Component 4: Tool/Skill Execution Layer&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;This is how OpenClaw "does things" in the real world.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Category&lt;/th&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Core&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Shell execution, file read/write/edit, browser control, Canvas UI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Platform&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;iOS/Android camera, screen record, GPS location, push notifications&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Automation&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Cron jobs, webhooks, sub-agent spawn, message send&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Channel&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Discord reactions/roles, Slack threads/reactions&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;The Skill System:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Skills are &lt;strong&gt;AgentSkills-compatible&lt;/strong&gt; folders that teach OpenClaw how to use tools:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;skills/
├── weather/                    # Bundled skill
│   └── SKILL.md               # Instructions + metadata
├── github/                    # Community skill
│   └── SKILL.md
└── my-custom-skill/           # Your custom skill
    ├── SKILL.md
    └── helpers.js             # Optional code
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Example SKILL.md structure:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;weather&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Get current weather and forecasts&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

&lt;span class="gh"&gt;# Weather Skill&lt;/span&gt;

Use this skill to fetch weather information.

&lt;span class="gu"&gt;## Available Tools&lt;/span&gt;
&lt;span class="p"&gt;
-&lt;/span&gt; &lt;span class="sb"&gt;`weather_current(location)`&lt;/span&gt; - Get current conditions
&lt;span class="p"&gt;-&lt;/span&gt; &lt;span class="sb"&gt;`weather_forecast(location, days)`&lt;/span&gt; - Get multi-day forecast

&lt;span class="gu"&gt;## Example Usage&lt;/span&gt;

User: "What's the weather in San Francisco?"
Action: Call &lt;span class="sb"&gt;`weather_current("San Francisco")`&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2.3 Data Flow: From Message to Action
&lt;/h2&gt;

&lt;p&gt;Let's trace what happens when you send a message to OpenClaw:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step-by-step message flow&lt;/strong&gt; (example: "Schedule meeting with Sarah tomorrow 2pm"):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;User → Channel (Telegram):&lt;/strong&gt; Sends the message&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Channel → Gateway:&lt;/strong&gt; WebSocket delivery&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gateway:&lt;/strong&gt; Verifies sender, checks allowlist, routes to session&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gateway → Pi Agent:&lt;/strong&gt; Forwards message + context&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent:&lt;/strong&gt; Loads SOUL.md, USER.md, MEMORY.md, session history, relevant skills&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → LLM:&lt;/strong&gt; Sends full prompt with context&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LLM → Pi Agent:&lt;/strong&gt; "I need to: 1) check calendar, 2) find Sarah's contact, 3) create event"&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → Tools:&lt;/strong&gt; Calls calendar API → gets free/busy slots&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → Tools:&lt;/strong&gt; Calls contacts API → gets Sarah's email&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → LLM:&lt;/strong&gt; Sends tool results&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LLM → Pi Agent:&lt;/strong&gt; Generates calendar event details&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → Tools:&lt;/strong&gt; Creates the calendar event (POST /calendar/events)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pi Agent → Gateway → Channel → User:&lt;/strong&gt; "✅ Created: Meeting with Sarah, Tomorrow 2:00–3:00 PM"&lt;/li&gt;
&lt;/ol&gt;




&lt;h1&gt;
  
  
  3. Getting Started
&lt;/h1&gt;

&lt;p&gt;Enough background — let's get it running. This section walks you through installation to your first working command.&lt;/p&gt;

&lt;h2&gt;
  
  
  3.1 Installation
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Prerequisites
&lt;/h3&gt;

&lt;p&gt;Before we start, ensure you have:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Requirement&lt;/th&gt;
&lt;th&gt;Version&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Node.js&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;≥22.12.0&lt;/td&gt;
&lt;td&gt;Runtime environment&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;npm/pnpm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Latest&lt;/td&gt;
&lt;td&gt;Package manager&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Git&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Any&lt;/td&gt;
&lt;td&gt;For skills/plugins&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Terminal&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Bash/Zsh/PowerShell&lt;/td&gt;
&lt;td&gt;CLI interaction&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Step 1: Install Node.js
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;macOS/Linux:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Using Homebrew (recommended on macOS)&lt;/span&gt;
brew &lt;span class="nb"&gt;install &lt;/span&gt;node

&lt;span class="c"&gt;# Or download from https://nodejs.org/&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Windows:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Download installer from nodejs.org&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="c"&gt;# Or use winget&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;winget&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;OpenJS.NodeJS&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Verify installation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;node &lt;span class="nt"&gt;--version&lt;/span&gt;  &lt;span class="c"&gt;# Should show v22.x.x or higher&lt;/span&gt;
npm &lt;span class="nt"&gt;--version&lt;/span&gt;   &lt;span class="c"&gt;# Should show 10.x.x or higher&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 2: Install OpenClaw
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Recommended method (global install):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Using npm&lt;/span&gt;
npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; openclaw@latest

&lt;span class="c"&gt;# Or using pnpm (faster)&lt;/span&gt;
pnpm add &lt;span class="nt"&gt;-g&lt;/span&gt; openclaw@latest

&lt;span class="c"&gt;# Or using bun&lt;/span&gt;
bun add &lt;span class="nt"&gt;-g&lt;/span&gt; openclaw@latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;From source (for development):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/openclaw/openclaw.git
&lt;span class="nb"&gt;cd &lt;/span&gt;openclaw

pnpm &lt;span class="nb"&gt;install
&lt;/span&gt;pnpm ui:build
pnpm build

&lt;span class="c"&gt;# Run via pnpm&lt;/span&gt;
pnpm openclaw &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 3: Run the Onboarding Wizard
&lt;/h3&gt;

&lt;p&gt;The wizard will guide you through initial setup:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Interactive setup&lt;/span&gt;
openclaw onboard

&lt;span class="c"&gt;# With daemon installation (recommended for always-on)&lt;/span&gt;
openclaw onboard &lt;span class="nt"&gt;--install-daemon&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The wizard will:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;✅ Verify prerequisites&lt;/li&gt;
&lt;li&gt;✅ Create workspace directory (&lt;code&gt;~/.openclaw/&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;✅ Set up initial configuration&lt;/li&gt;
&lt;li&gt;✅ Install system service (optional)&lt;/li&gt;
&lt;li&gt;✅ Generate security tokens&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Step 4: Verify Installation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Check version&lt;/span&gt;
openclaw &lt;span class="nt"&gt;--version&lt;/span&gt;

&lt;span class="c"&gt;# Check system health&lt;/span&gt;
openclaw doctor

&lt;span class="c"&gt;# Expected output:&lt;/span&gt;
&lt;span class="c"&gt;# ✅ Node.js version: v22.x.x&lt;/span&gt;
&lt;span class="c"&gt;# ✅ Gateway binary: found&lt;/span&gt;
&lt;span class="c"&gt;# ✅ Workspace: /Users/you/.openclaw&lt;/span&gt;
&lt;span class="c"&gt;# ✅ Config file: ~/.openclaw/openclaw.json&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3.2 Configuration
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Understanding the Config File
&lt;/h3&gt;

&lt;p&gt;OpenClaw's configuration lives at &lt;code&gt;~/.openclaw/openclaw.json&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"gateway"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"port"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;18789&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"bind"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"loopback"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"auth"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"token"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"your-secure-token-here"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"reload"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"mode"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"hybrid"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"models"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"default"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"anthropic/claude-4-opus"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"thinking"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"medium"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"channels"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"telegram"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"enabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"botToken"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"${TELEGRAM_BOT_TOKEN}"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"dmPolicy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"pairing"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"skills"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"load"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"bundled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"workspace"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Setting Up Your First Channel
&lt;/h3&gt;

&lt;p&gt;Let's connect Telegram as an example:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Create a Telegram Bot&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Message &lt;a href="https://t.me/botfather" rel="noopener noreferrer"&gt;@BotFather&lt;/a&gt; on Telegram&lt;/li&gt;
&lt;li&gt;Send &lt;code&gt;/newbot&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Follow prompts to name your bot&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Copy the bot token&lt;/strong&gt; (looks like: &lt;code&gt;123456789:ABCdefGHIjklMNOpqrsTUVwxyz&lt;/code&gt;)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Configure OpenClaw&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Set the bot token securely&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;channels.telegram.botToken &lt;span class="s2"&gt;"123456789:YOUR_TOKEN_HERE"&lt;/span&gt;

&lt;span class="c"&gt;# Or use environment variable&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"export TELEGRAM_BOT_TOKEN=123456789:YOUR_TOKEN_HERE"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 3: Edit config manually&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openclaw config edit
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"channels"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"telegram"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"enabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"botToken"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"${TELEGRAM_BOT_TOKEN}"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"dmPolicy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"pairing"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"allowFrom"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Step 4: Start the Gateway&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openclaw gateway &lt;span class="nt"&gt;--port&lt;/span&gt; 18789 &lt;span class="nt"&gt;--verbose&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You should see logs showing the Telegram channel connecting.&lt;/p&gt;

&lt;h3&gt;
  
  
  Security Pairing (Important!)
&lt;/h3&gt;

&lt;p&gt;OpenClaw uses &lt;strong&gt;pairing&lt;/strong&gt; by default for security. Unknown users receive a pairing code instead of responses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To approve a contact:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;They message your bot, receive a pairing code&lt;/li&gt;
&lt;li&gt;You run:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openclaw pairing approve telegram &amp;lt;code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;To set open mode&lt;/strong&gt; (less secure, only for trusted environments):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"channels"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"telegram"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"dmPolicy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"open"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"allowFrom"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"*"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3.3 Setting Up Model Providers
&lt;/h2&gt;

&lt;p&gt;OpenClaw supports multiple LLM providers. Let's set up the most popular ones:&lt;/p&gt;

&lt;h3&gt;
  
  
  Option 1: Anthropic (Claude) - Recommended
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Get API key from https://console.anthropic.com/&lt;/span&gt;
&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"sk-ant-api03-..."&lt;/span&gt;

&lt;span class="c"&gt;# Add to OpenClaw&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.providers.anthropic.apiKey &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_API_KEY&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.default &lt;span class="s2"&gt;"anthropic/claude-4-opus"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Option 2: OpenAI (GPT-4, GPT-5)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Get API key from https://platform.openai.com/&lt;/span&gt;
&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;OPENAI_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"sk-..."&lt;/span&gt;

openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.providers.openai.apiKey &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;OPENAI_API_KEY&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Option
&lt;/h3&gt;

&lt;h3&gt;
  
  
  Option 3: Google Gemini
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Get API key from https://aistudio.google.com/&lt;/span&gt;
&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;GEMINI_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"..."&lt;/span&gt;

openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.providers.google.apiKey &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;GEMINI_API_KEY&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.default &lt;span class="s2"&gt;"google/gemini-3-pro-preview"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Option 4: Local Models (Ollama)
&lt;/h3&gt;

&lt;p&gt;For privacy-conscious or offline use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install Ollama&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://ollama.com/install.sh | sh

&lt;span class="c"&gt;# Pull a model&lt;/span&gt;
ollama pull llama3.3
ollama pull qwen2.5

&lt;span class="c"&gt;# Configure OpenClaw&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.providers.ollama.baseUrl &lt;span class="s2"&gt;"http://localhost:11434"&lt;/span&gt;
openclaw config &lt;span class="nb"&gt;set &lt;/span&gt;models.default &lt;span class="s2"&gt;"ollama/llama3.3"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Model Failover Configuration
&lt;/h3&gt;

&lt;p&gt;Set up automatic fallback if a provider fails:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"models"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"default"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"anthropic/claude-4-opus"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"fallbacks"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"openai/gpt-5"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"google/gemini-3-pro-preview"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"ollama/llama3.3"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"thinking"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"medium"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Using OAuth (Anthropic Pro/Max)
&lt;/h3&gt;

&lt;p&gt;For the best experience with Claude:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Login via browser (OAuth)&lt;/span&gt;
openclaw login anthropic

&lt;span class="c"&gt;# This stores credentials securely&lt;/span&gt;
&lt;span class="c"&gt;# No API key needed!&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3.4 Finding, Installing, and Configuring Skills
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What Are Skills?
&lt;/h3&gt;

&lt;p&gt;Skills are &lt;strong&gt;teaching documents&lt;/strong&gt; that tell OpenClaw how to use tools. They're stored as Markdown files with YAML frontmatter.&lt;/p&gt;

&lt;h3&gt;
  
  
  Bundled Skills (Come Pre-installed)
&lt;/h3&gt;

&lt;p&gt;OpenClaw ships with several built-in skills:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Skill&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;weather&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Get weather forecasts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;github&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Interact with GitHub repos&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;browser&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Control web browser&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;canvas&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Render visual UIs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;cron&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Schedule recurring tasks&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Discovering Skills on ClawHub
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;ClawHub&lt;/strong&gt; is the public skills registry:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Open ClawHub in browser&lt;/span&gt;
openclaw hub

&lt;span class="c"&gt;# Or visit https://clawhub.com&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Installing a Skill
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Method 1: Using ClawHub CLI&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install a skill (e.g., todoist for task management)&lt;/span&gt;
clawhub &lt;span class="nb"&gt;install &lt;/span&gt;todoist

&lt;span class="c"&gt;# Update all skills&lt;/span&gt;
clawhub update &lt;span class="nt"&gt;--all&lt;/span&gt;

&lt;span class="c"&gt;# Sync workspace with ClawHub&lt;/span&gt;
clawhub &lt;span class="nb"&gt;sync&lt;/span&gt; &lt;span class="nt"&gt;--all&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Method 2: Manual Installation&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Navigate to your workspace skills folder&lt;/span&gt;
&lt;span class="nb"&gt;cd&lt;/span&gt; ~/.openclaw/workspace/skills

&lt;span class="c"&gt;# Clone a skill repo&lt;/span&gt;
git clone https://github.com/example/openclaw-todoist.git ./todoist

&lt;span class="c"&gt;# Or create manually&lt;/span&gt;
&lt;span class="nb"&gt;mkdir &lt;/span&gt;my-skill
&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; my-skill/SKILL.md &lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="no"&gt;EOF&lt;/span&gt;&lt;span class="sh"&gt;'
---
name: my-skill
description: My custom OpenClaw skill
---

# My Custom Skill

This skill does amazing things!

## Usage

Example: "Use my-skill to process data"
&lt;/span&gt;&lt;span class="no"&gt;EOF
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Creating Your First Skill
&lt;/h3&gt;

&lt;p&gt;Let's create a simple "greeting" skill:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Create skill directory&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; ~/.openclaw/workspace/skills/greeting

&lt;span class="c"&gt;# Create SKILL.md&lt;/span&gt;
&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; ~/.openclaw/workspace/skills/greeting/SKILL.md &lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="no"&gt;EOF&lt;/span&gt;&lt;span class="sh"&gt;'
---
name: greeting
description: Generate personalized greetings
---

# Greeting Skill

Generate warm, personalized greetings for users.

## Guidelines

- Use the user's preferred name from USER.md
- Match the time of day (morning/afternoon/evening)
- Keep it friendly but professional
- Include relevant emojis

## Example Output

"Good morning, Alex! ☀️ Ready to tackle the day?"
"Good evening, Sam! 🌙 Hope you had a productive day!"
&lt;/span&gt;&lt;span class="no"&gt;EOF
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now OpenClaw will automatically know about your skill on the next session!&lt;/p&gt;

&lt;h3&gt;
  
  
  Skill Gating (Advanced)
&lt;/h3&gt;

&lt;p&gt;You can make skills conditional based on:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;my-skill&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Requires specific setup&lt;/span&gt;
&lt;span class="na"&gt;metadata&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="pi"&gt;{&lt;/span&gt;
    &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;openclaw"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;{&lt;/span&gt;
        &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;requires"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;{&lt;/span&gt;
          &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;bins"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;docker"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;node"&lt;/span&gt;&lt;span class="pi"&gt;],&lt;/span&gt;
          &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;env"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;MY_API_KEY"&lt;/span&gt;&lt;span class="pi"&gt;],&lt;/span&gt;
          &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;config"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;features.advanced"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
        &lt;span class="pi"&gt;},&lt;/span&gt;
        &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;os"&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;darwin"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;linux"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
      &lt;span class="pi"&gt;}&lt;/span&gt;
  &lt;span class="pi"&gt;}&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This skill will only load if:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Docker and Node are installed&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MY_API_KEY&lt;/code&gt; environment variable is set&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;features.advanced&lt;/code&gt; is true in config&lt;/li&gt;
&lt;li&gt;Running on macOS or Linux&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  4. Practical Applications &amp;amp; Productivity
&lt;/h1&gt;

&lt;p&gt;Now that you have OpenClaw set up, let's explore the &lt;strong&gt;best use cases&lt;/strong&gt; and how to maximize your daily productivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  4.1 What Are the Best Use Cases Right Now?
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🏆 Tier 1: Absolute Game-Changers
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;th&gt;Why It Works&lt;/th&gt;
&lt;th&gt;Example Command&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Daily Standups&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Auto-generate from calendar + commits&lt;/td&gt;
&lt;td&gt;"Generate my standup for today"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Email Triage&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Summarize, prioritize, draft responses&lt;/td&gt;
&lt;td&gt;"Summarize unread emails, flag urgent"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Research&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Web search + synthesis&lt;/td&gt;
&lt;td&gt;"Research React 19 features and summarize"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Code Review&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Explain PRs, suggest improvements&lt;/td&gt;
&lt;td&gt;"Review this PR: github.com/user/repo/pull/123"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Documentation&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Generate docs from code&lt;/td&gt;
&lt;td&gt;"Document the functions in this file"&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  🥈 Tier 2: Excellent Productivity Boosts
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;th&gt;Why It Works&lt;/th&gt;
&lt;th&gt;Example Command&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Meeting Prep&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Context from emails + calendar&lt;/td&gt;
&lt;td&gt;"Prep me for my 2pm meeting with Sarah"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Travel Planning&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Multi-source research&lt;/td&gt;
&lt;td&gt;"Plan a 3-day trip to Tokyo"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Content Creation&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Drafts, outlines, editing&lt;/td&gt;
&lt;td&gt;"Write a blog outline about AI agents"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Learning&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Explain complex topics&lt;/td&gt;
&lt;td&gt;"Explain quantum computing like I'm 5"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Bug Analysis&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Parse logs, suggest fixes&lt;/td&gt;
&lt;td&gt;"This error keeps happening, analyze the logs"&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  🥉 Tier 3: Nice Quality-of-Life Improvements
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;th&gt;Why It Works&lt;/th&gt;
&lt;th&gt;Example Command&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Quick Calculations&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;No calculator needed&lt;/td&gt;
&lt;td&gt;"Calculate compound interest on $10k at 7%"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Unit Conversions&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Instant conversions&lt;/td&gt;
&lt;td&gt;"Convert 50 miles to kilometers"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Time Zone Math&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Across zones&lt;/td&gt;
&lt;td&gt;"What time is it in Tokyo when it's 9am here?"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Definitions&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Quick lookups&lt;/td&gt;
&lt;td&gt;"What's the difference between TCP and UDP?"&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  4.2 Daily Productivity Workflows
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Workflow 1: Morning Routine
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;You: "Good morning!"

OpenClaw:
→ Weather: 72°F sunny
→ Calendar: 3 meetings today (10am, 2pm, 4pm)
→ Emails: 12 new, 2 flagged as urgent
→ Reminder: Submit expense report by EOD

You: "Block 2 hours for deep work between meetings"

OpenClaw: Created: Focus Time, 12:00-2:00 PM

You: "Summarize those urgent emails and draft responses"

OpenClaw: [Short summaries with reply drafts attached]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Workflow 2: Research &amp;amp; Analysis
&lt;/h3&gt;

&lt;p&gt;Use the browser tool for deep research:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;You: "Research the latest developments in LLM efficiency. 
      Find 3 papers from 2025, summarize their approaches."

OpenClaw:
1. Opens browser
2. Searches "LLM efficiency 2025 research papers"
3. Navigates to arXiv, finds relevant papers
4. Reads abstracts and key sections
5. Synthesizes findings

→ Response: [Detailed comparison with links]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  4.3 Building Your Personal Assistant
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Define Your Assistant's Personality
&lt;/h3&gt;

&lt;p&gt;Edit &lt;code&gt;~/.openclaw/workspace/SOUL.md&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# SOUL.md - Who You Are&lt;/span&gt;

You are my personal productivity assistant.

&lt;span class="gu"&gt;## Communication Style&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Concise but warm
&lt;span class="p"&gt;-&lt;/span&gt; Use bullet points for clarity
&lt;span class="p"&gt;-&lt;/span&gt; Lead with key information

&lt;span class="gu"&gt;## Proactive Behaviors&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Remind me of deadlines 24h in advance
&lt;span class="p"&gt;-&lt;/span&gt; Suggest calendar optimizations weekly
&lt;span class="p"&gt;-&lt;/span&gt; Flag potential meeting conflicts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 2: Capture Your Preferences
&lt;/h3&gt;

&lt;p&gt;Edit &lt;code&gt;~/.openclaw/workspace/USER.md&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# USER.md - About Your Human&lt;/span&gt;
&lt;span class="p"&gt;
-&lt;/span&gt; &lt;span class="gs"&gt;**Name:**&lt;/span&gt; Alex
&lt;span class="p"&gt;-&lt;/span&gt; &lt;span class="gs"&gt;**Timezone:**&lt;/span&gt; America/Los_Angeles
&lt;span class="p"&gt;-&lt;/span&gt; &lt;span class="gs"&gt;**Occupation:**&lt;/span&gt; Software Engineer

&lt;span class="gu"&gt;## Preferences&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Prefer 25min or 50min meeting slots
&lt;span class="p"&gt;-&lt;/span&gt; Buffer 5min between meetings
&lt;span class="p"&gt;-&lt;/span&gt; No meetings before 9:30am
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 3: Add Your Work Context
&lt;/h3&gt;

&lt;p&gt;Edit &lt;code&gt;~/.openclaw/workspace/MEMORY.md&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# MEMORY.md - Long-Term Notes&lt;/span&gt;

&lt;span class="gu"&gt;## Current Projects&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Project Alpha: Due March 15
&lt;span class="p"&gt;-&lt;/span&gt; Q1 Planning: Roadmap presentation

&lt;span class="gu"&gt;## Key Contacts&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Sarah (PM): sarah@company.com
&lt;span class="p"&gt;-&lt;/span&gt; David (Tech Lead): david@company.com

&lt;span class="gu"&gt;## Technical Context&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Stack: TypeScript, React, Node.js
&lt;span class="p"&gt;-&lt;/span&gt; GitHub: github.com/mycompany
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  4.4 Automation Patterns
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Pattern 1: Cron Jobs (Scheduled Tasks)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Daily news briefing at 8am&lt;/span&gt;
openclaw cron add &lt;span class="nt"&gt;--name&lt;/span&gt; &lt;span class="s2"&gt;"morning-briefing"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--schedule&lt;/span&gt; &lt;span class="s2"&gt;"0 8 * * *"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--message&lt;/span&gt; &lt;span class="s2"&gt;"Generate morning briefing with weather and calendar"&lt;/span&gt;

&lt;span class="c"&gt;# Weekly review every Friday 4pm&lt;/span&gt;
openclaw cron add &lt;span class="nt"&gt;--name&lt;/span&gt; &lt;span class="s2"&gt;"weekly-review"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--schedule&lt;/span&gt; &lt;span class="s2"&gt;"0 16 * * 5"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--message&lt;/span&gt; &lt;span class="s2"&gt;"Weekly review: What did we accomplish?"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  5. Optimization, Security &amp;amp; Challenges
&lt;/h1&gt;

&lt;h2&gt;
  
  
  5.1 Improving Performance and Reliability
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Performance Optimization Strategies
&lt;/h3&gt;

&lt;h4&gt;
  
  
  1. Model Selection Strategy
&lt;/h4&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Task Type&lt;/th&gt;
&lt;th&gt;Recommended Model&lt;/th&gt;
&lt;th&gt;Why&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Quick questions&lt;/td&gt;
&lt;td&gt;gemini-flash, gpt-4o-mini&lt;/td&gt;
&lt;td&gt;Fast, cheap&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Complex reasoning&lt;/td&gt;
&lt;td&gt;claude-4-opus, gpt-5&lt;/td&gt;
&lt;td&gt;Deep thinking&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Code generation&lt;/td&gt;
&lt;td&gt;claude-4-opus, gpt-5&lt;/td&gt;
&lt;td&gt;Best code&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Image analysis&lt;/td&gt;
&lt;td&gt;claude-3.5-sonnet, gpt-5&lt;/td&gt;
&lt;td&gt;Visual strong&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sensitive data&lt;/td&gt;
&lt;td&gt;local llama3, qwen2.5&lt;/td&gt;
&lt;td&gt;Privacy&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  2. Session Pruning (Memory Management)
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"session"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"prune"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"enabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"maxMessages"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"strategy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"summarize"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Reliability Best Practices
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Health monitoring&lt;/span&gt;
openclaw doctor &lt;span class="nt"&gt;--watch&lt;/span&gt;

&lt;span class="c"&gt;# Backup configuration&lt;/span&gt;
&lt;span class="nb"&gt;tar &lt;/span&gt;czf ~/backups/openclaw-&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;date&lt;/span&gt; +%Y%m%d&lt;span class="si"&gt;)&lt;/span&gt;.tar.gz ~/.openclaw/

&lt;span class="c"&gt;# Recovery procedures&lt;/span&gt;
openclaw gateway stop &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; openclaw gateway start &lt;span class="nt"&gt;--force&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  5.2 Security Risks and Mitigations
&lt;/h2&gt;

&lt;h3&gt;
  
  
  The Threat Model
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Risk&lt;/th&gt;
&lt;th&gt;Severity&lt;/th&gt;
&lt;th&gt;Mitigation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Prompt Injection&lt;/td&gt;
&lt;td&gt;🔴 Critical&lt;/td&gt;
&lt;td&gt;Use resistant models (Claude), scan patterns&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Malicious Skills&lt;/td&gt;
&lt;td&gt;🔴 Critical&lt;/td&gt;
&lt;td&gt;Review code, use allowlists&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Dangerous Tools&lt;/td&gt;
&lt;td&gt;🔴 Critical&lt;/td&gt;
&lt;td&gt;BlockList, require confirmation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Untrusted DMs&lt;/td&gt;
&lt;td&gt;🔴 Critical&lt;/td&gt;
&lt;td&gt;Always use &lt;code&gt;dmPolicy: "pairing"&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gateway Exposure&lt;/td&gt;
&lt;td&gt;🔴 Critical&lt;/td&gt;
&lt;td&gt;Bind to loopback, never &lt;code&gt;0.0.0.0&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Critical Security Settings
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"channels"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"telegram"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"dmPolicy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"pairing"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"allowFrom"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"tools"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"exec"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"blockList"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"rm -rf"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sudo"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"dd"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"requireConfirmation"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"gateway"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"bind"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"loopback"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  The Security Checklist
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Run security audit&lt;/span&gt;
openclaw security audit &lt;span class="nt"&gt;--deep&lt;/span&gt;

&lt;span class="c"&gt;# Check for misconfigurations&lt;/span&gt;
openclaw doctor

&lt;span class="c"&gt;# Verify DM policies&lt;/span&gt;
openclaw config get channels.&lt;span class="k"&gt;*&lt;/span&gt;.dmPolicy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  5.3 Remaining Challenges
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Challenge&lt;/th&gt;
&lt;th&gt;Current Mitigation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Hallucination&lt;/td&gt;
&lt;td&gt;Tool verification, confidence scoring&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Context Limits&lt;/td&gt;
&lt;td&gt;Session pruning, RAG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cost Management&lt;/td&gt;
&lt;td&gt;Model routing, usage tracking&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Reliability&lt;/td&gt;
&lt;td&gt;Retry policies, fallbacks&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  🎓 Conclusion: Your Journey with Agentic AI
&lt;/h1&gt;

&lt;p&gt;Congratulations! You have completed this comprehensive guide to OpenClaw.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;p&gt;✅ &lt;strong&gt;OpenClaw is a local-first, open-source AI assistant&lt;/strong&gt; that runs on your devices&lt;br&gt;&lt;br&gt;
✅ &lt;strong&gt;Architecture&lt;/strong&gt;: Gateway → Pi Runtime → Tools → Skills&lt;br&gt;&lt;br&gt;
✅ &lt;strong&gt;Memory matters&lt;/strong&gt;: SOUL.md, USER.md, MEMORY.md&lt;br&gt;&lt;br&gt;
✅ &lt;strong&gt;Skills extend capabilities&lt;/strong&gt;: ClawHub marketplace&lt;br&gt;&lt;br&gt;
✅ &lt;strong&gt;Security is paramount&lt;/strong&gt;: Pairing mode, tool restrictions, loopback binding  &lt;/p&gt;

&lt;h2&gt;
  
  
  Your Next Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Install OpenClaw&lt;/li&gt;
&lt;li&gt;Configure ONE channel (Telegram recommended)&lt;/li&gt;
&lt;li&gt;Set up personality files&lt;/li&gt;
&lt;li&gt;Try basic commands&lt;/li&gt;
&lt;li&gt;Install 2-3 skills from ClawHub&lt;/li&gt;
&lt;li&gt;Build ONE automation&lt;/li&gt;
&lt;li&gt;Join the community: &lt;a href="https://discord.gg/clawd" rel="noopener noreferrer"&gt;https://discord.gg/clawd&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Resource&lt;/th&gt;
&lt;th&gt;URL&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Documentation&lt;/td&gt;
&lt;td&gt;&lt;a href="https://docs.openclaw.ai" rel="noopener noreferrer"&gt;https://docs.openclaw.ai&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GitHub&lt;/td&gt;
&lt;td&gt;&lt;a href="https://github.com/openclaw/openclaw" rel="noopener noreferrer"&gt;https://github.com/openclaw/openclaw&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Discord&lt;/td&gt;
&lt;td&gt;&lt;a href="https://discord.gg/clawd" rel="noopener noreferrer"&gt;https://discord.gg/clawd&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ClawHub&lt;/td&gt;
&lt;td&gt;&lt;a href="https://clawhub.com" rel="noopener noreferrer"&gt;https://clawhub.com&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;p&gt;&lt;em&gt;"The best way to predict the future is to build it."&lt;/em&gt;&lt;br&gt;&lt;br&gt;
Now go build something amazing with OpenClaw! 🚀&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;End of Tutorial&lt;/strong&gt; | Last Updated: 2026&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>opensource</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
