OpenClaw 完全指南：Docker 部署 · 记忆系统 · 多 Agent
基于 dhso/openclaw-docker 封装，适合快速部署个人 AI 助理。什么是 OpenClaw？OpenClaw 是一个开源的自托管个人 AI 助理网关，让你可以通过钉钉、飞书、QQ、Telegram、WhatsApp 等任意消息渠道与 AI 交互。你在自己的服务器上运行一个 Gateway 进程，它成为消息渠道和 AI 模型之间的桥梁。核心特点：自托管，数据完全自主，不经过第三方支持多渠道同时接入（钉钉/飞书/QQ/Telegram/WhatsApp/Discord）支持多 Agent 并行运行，每个 Agent 有独立人格和记忆内置分层记忆系统，AI 助理拥有真正的长期记忆通过 Skills 扩展能力，支持代码执行、浏览器自动化、图片生成等目录准备工作：VPS 选购与模型配置安全须知Docker 部署渠道接入分层记忆系统QMD 语义记忆搜索多 Agent 模式完整工作流示意推荐技能一、准备工作：VPS 选购与模型配置为什么推荐在 VPS 上用 Docker 部署？OpenClaw 是一个自托管的个人 AI 助理网关，它能执行 shell 命令、读写文件、发送消息，权限相当大。选择合适的部署方式直接影响安全性和稳定性。推荐 VPS + Docker 的理由：优势说明数据自主所有对话、记忆、API Key 都在自己的服务器上，不经过第三方网络稳定VPS 24 小时在线，不依赖本地网络和电脑开机状态容器隔离Docker 提供文件系统和进程隔离，限制 Agent 的"爆炸半径"持久化简单挂载 Volume 即可持久化，升级镜像不丢数据多 Agent 友好一台 VPS 可以跑多个 Agent，资源统一管理易于备份只需备份 /root/.openclaw 目录不推荐本地部署的原因： 本地机器关机即断线，IP 变动影响外部访问，且 Agent 有权限访问本地文件系统风险更高。推荐 VPS 方案RackNerd 黑色星期五促销（续费同价）内存CPU硬盘(SSD)流量带宽价格购买1G1核25G2T/月1Gbps$10.6/年购买2.5G2核45G3T/月1Gbps$18.66/年购买4G3核65G6.5T/月1Gbps$29.98/年购买6G5核100G10T/月1Gbps$44.98/年购买8G6核150G20T/月1Gbps$62.49/年购买多个机房可选，续费同价，适合长期运行 OpenClaw。个人使用推荐 2.5G 或 4G 套餐。推荐 AI 模型套餐OpenClaw 需要配置 AI 模型 API，推荐阿里云百炼系列：套餐适合人群链接AI 大模型入门套餐初次体验，低成本入门立即领取阿里云百炼 Coding Plan开发者，代码/对话场景立即领取阿里云 Coding Plan 接入 OpenClawCoding Plan 提供专属 API Key，通过 OpenAI 兼容接口接入 OpenClaw，支持 Qwen、Kimi、GLM、MiniMax 等多个主流模型，全部免费使用。第一步：获取 Coding Plan 专属 API Key前往 阿里云百炼控制台 获取 Coding Plan 专属 API Key（注意：不是普通百炼 API Key）。第二步：修改 OpenClaw 配置在 ~/.openclaw/openclaw.json 中添加以下配置（将 YOUR_API_KEY 替换为实际 Key）：{ "models": { "mode": "merge", "providers": { "bailian": { "baseUrl": "https://coding.dashscope.aliyuncs.com/v1", "apiKey": "YOUR_API_KEY", "api": "openai-completions", "models": [ { "id": "qwen3.5-plus", "name": "qwen3.5-plus（通用对话）", "input": ["text", "image"], "contextWindow": 1000000, "maxTokens": 65536 }, { "id": "qwen3-coder-plus", "name": "qwen3-coder-plus（代码专用）", "contextWindow": 1000000, "maxTokens": 65536 }, { "id": "kimi-k2.5", "name": "kimi-k2.5（长上下文）", "input": ["text", "image"], "contextWindow": 262144, "maxTokens": 32768 } ] } } }, "agents": { "defaults": { "model": { "primary": "bailian/qwen3.5-plus" } } } }更多模型（glm-5、MiniMax-M2.5 等）见官方完整配置。⚠️ 不要直接全量替换配置文件，否则会覆盖已有的钉钉/飞书等渠道配置。请找到对应字段局部合并。第三步：重启生效openclaw gateway restart切换模型# 临时切换（当前会话有效） /model qwen3-coder-plus # 永久切换（修改配置文件中的 primary 字段）支持的模型列表模型特点qwen3.5-plus通用对话，支持图片，100万上下文qwen3-max-2026-01-23高质量推理qwen3-coder-next代码专用qwen3-coder-plus代码专用，100万上下文kimi-k2.5支持图片，长上下文glm-5 / glm-4.7智谱 GLM 系列MiniMax-M2.5MiniMax 系列📖 完整接入文档：阿里云帮助中心 - OpenClaw 接入 Coding Plan二、安全须知OpenClaw 的安全模型⚠️ OpenClaw 是个人助理安全模型，不是多租户隔离系统。一个 Gateway 对应一个信任边界（一个用户/一台 VPS）。核心原则：访问控制 > 模型智能大多数安全问题不是复杂攻击，而是"有人发消息，Bot 照做了"。OpenClaw 的防御思路：身份优先 — 谁能跟 Bot 说话（DM pairing / allowlist）范围其次 — Bot 能在哪里行动（工具权限、沙箱、群组限制）模型最后 — 假设模型可以被操控，设计上限制操控的影响范围关键安全配置1. 必须设置访问 Tokenopenclaw config set gateway.auth.token your-long-random-token不设置 Token，Gateway 拒绝所有 WebSocket 连接（fail-closed）。2. DM 访问策略{ channels: { dingtalk: { dmPolicy: "allowlist", // 只允许白名单用户 allowFrom: ["manager9327"] } } }pairing（默认）：陌生人需要配对码审批allowlist：只允许白名单，陌生人直接拒绝open：任何人都能发消息（⚠️ 危险，慎用）3. Docker 防火墙（重要！）Docker 发布的端口会绕过 UFW 的 INPUT 规则，需要在 DOCKER-USER 链中配置：# /etc/ufw/after.rules 末尾追加 *filter :DOCKER-USER - [0:0] -A DOCKER-USER -m conntrack --ctstate ESTABLISHED,RELATED -j RETURN -A DOCKER-USER -s 127.0.0.0/8 -j RETURN -A DOCKER-USER -s 10.0.0.0/8 -j RETURN -A DOCKER-USER -s 192.168.0.0/16 -j RETURN -A DOCKER-USER -m conntrack --ctstate NEW -j DROP -A DOCKER-USER -j RETURN COMMIT然后 ufw reload 生效。💡 新手提示： 如果你的 VPS 只在局域网或内网使用，或者已经通过云服务商的安全组限制了端口访问，可以跳过此步骤。UFW + Docker 的防火墙配置主要针对公网暴露的场景。4. 工具权限最小化对于群聊 Agent 或多人共用的 Agent，限制危险工具：{ tools: { deny: ["gateway", "cron", "sessions_spawn", "sessions_send"] } }5. 沙箱隔离（可选）开启 Docker 沙箱，让工具执行在隔离容器内运行：{ agents: { defaults: { sandbox: { mode: "non-main", // 非主会话启用沙箱 scope: "session" } } } }6. 定期安全审计openclaw security audit openclaw security audit --deep openclaw security audit --fix # 自动修复部分问题Prompt Injection 防护AI 助理的特殊风险：攻击者可以通过消息内容操控模型执行恶意操作。降低风险的措施：保持 DM 白名单，不要对陌生人开放群聊中使用 requireMention: true，避免 Bot 响应所有消息对 web_fetch、browser 等读取外部内容的工具保持警惕使用最新、最强的模型：新一代模型对 prompt injection 的抵抗力显著更强文件权限chmod 700 ~/.openclaw chmod 600 ~/.openclaw/openclaw.json三、Docker 部署前置要求Docker 已安装开放端口 18789（Web 控制台）1. 初始化配置（首次运行）docker run --rm -it \ -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw onboard2. 配置网关# 本地网关模式 docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw config set gateway.mode local # 绑定局域网 docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw config set gateway.bind lan # 配置可信代理 docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw config set gateway.trustedProxies '["127.0.0.1", "::1", "10.0.0.0/8"]' # 设置访问 Token docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw config set gateway.auth.token your_token # ⚠️ 2026.2.17+ 版本必须配置此项，否则启动失败 docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ -v openclaw_cache:/root/.cache \ dhso/openclaw:latest \ openclaw config set gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback true # 健康检查修复 docker run --rm -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ dhso/openclaw:latest \ openclaw doctor --fix3. 启动服务docker run -d \ --name claw \ -e TZ=Asia/Shanghai \ -v openclaw_data:/root/.openclaw \ -v openclaw_cache:/root/.cache \ --restart=unless-stopped \ -p 18789:18789 \ dhso/openclaw:latest \ openclaw gateway run访问 http://ip:18789 打开 Web 控制台。4. 使用 docker-compose（推荐）比一堆 docker run 命令更易维护，推荐生产环境使用：# docker-compose.yml services: claw: image: dhso/openclaw:latest container_name: claw restart: unless-stopped environment: - TZ=Asia/Shanghai volumes: - openclaw_data:/root/.openclaw - openclaw_cache:/root/.cache ports: - "18789:18789" command: openclaw gateway run volumes: openclaw_data: openclaw_cache:# 启动 docker compose up -d # 查看日志 docker compose logs -f claw # 重启 docker compose restart claw # 停止 docker compose down数据持久化说明卷路径说明openclaw_data/root/.openclaw配置、插件、workspace、记忆文件openclaw_cache/root/.cache模型缓存（QMD 本地模型等）⚠️ 需要持久化的文件必须放在 /root/.openclaw 下，容器重启后其他目录会丢失。四、渠道接入OpenClaw 支持多种即时通讯渠道，通过渠道插件将 AI 助理接入你常用的平台。以下是目前支持的主要渠道及接入文档。支持的渠道渠道适用场景接入难度钉钉企业内部、团队协作⭐⭐⭐飞书企业内部、团队协作⭐⭐⭐QQ个人使用、小圈子⭐⭐Telegram个人使用、海外团队⭐WhatsApp个人使用、海外沟通⭐Discord开发者社区⭐⭐钉钉接入通过钉钉应用与机器人，实现用户与机器人对话，驱动 OpenClaw 完成相关任务。接入步骤概览：创建钉钉应用，获取 Client ID 和 Client Secret创建钉钉机器人（Stream 模式）创建卡片模板（AI 卡片，支持流式返回）申请权限：Card.Streaming.Write、Card.Instance.Write、qyapi_robot_sendmsg发布应用，添加机器人到群聊或单聊使用📖 详细接入文档：钉钉接入指南官方文档：OpenClaw 钉钉通道飞书接入通过飞书应用与机器人，实现用户通过飞书与机器人对话，驱动 OpenClaw 完成相关任务。接入步骤概览：在飞书开放平台创建企业自建应用，获取 App ID 和 App Secret配置应用权限（批量导入 JSON 权限配置）启用机器人能力，配置事件订阅（长连接模式，添加 im.message.receive_v1 事件）发布应用在飞书中找到机器人，发送消息获取配对码，运行 openclaw pairing approve feishu <配对码> 完成授权📖 详细接入文档：飞书接入指南官方文档：OpenClaw 飞书通道QQ 接入通过 QQ 机器人实现用户通过 QQ 与机器人对话，驱动 OpenClaw 完成相关任务。接入步骤概览：登录 QQ 开放平台，注册账号并绑定 QQ（不能直接用 QQ 账号登录）创建机器人，获取 AppID 和 AppSecret将 AppID 和 AppSecret 填入 OpenClaw 配置将 VPS 公网 IP 加入白名单（curl ifconfig.me 获取）配置沙箱环境，添加测试成员，扫码绑定手机 QQ📖 详细接入文档：QQ 接入指南通用配置说明所有渠道接入后，在 openclaw.json 中配置 binding 将渠道路由到对应 Agent：{ bindings: [ { agentId: "main", match: { channel: "dingtalk", accountId: "default" } }, { agentId: "main", match: { channel: "feishu", accountId: "default" } } ] }多渠道、多账号的路由规则详见第六章：多 Agent 模式。五、分层记忆系统OpenClaw 的记忆系统基于文件系统实现，让 AI 助理拥有跨会话的长期记忆。记忆金字塔 核心记忆 MEMORY.md ← 关键人物、偏好、重要决策（主会话专用） ↑ 年度记忆 YYYY.md ← 年度里程碑、高度提炼 ↑ 月度记忆 YYYY-MM.md ← 月度重要事件、决策汇总 ↑ 每日记忆 YYYY-MM-DD.md ← 当日事件摘要（原始记录，不修改） ↑ 临时记忆 YYYY-MM-DD-HHMM.md ← 完整会话记录（30天后自动删除）文件结构workspace/ ├── MEMORY.md # 核心记忆（永久，主会话专用） └── memory/ ├── 2026.md # 年度记忆 ├── 2026-03.md # 月度记忆 ├── 2026-03-11.md # 每日记忆 └── 2026-03-11-1041.md # 临时会话记录（30天后删除）各层说明层级文件格式生命周期说明临时记忆YYYY-MM-DD-HHMM.md30天完整会话转录，系统自动生成每日记忆YYYY-MM-DD.md永久当日重要事件摘要，原始记录不修改月度记忆YYYY-MM.md永久月度汇总，可优化合并年度记忆YYYY.md永久年度提炼，高层次总结核心记忆MEMORY.md永久关键信息快速访问，仅主会话加载自动维护 Cron 任务每日凌晨 2:00 → 汇总临时记忆到每日记忆，清理 30 天前的临时文件 每周一凌晨 3:00 → 提取上周每日记忆重要内容到月度记忆 每月 1 号凌晨 4:00 → 提取上月月度记忆重要内容到年度记忆 每年 1 月 1 日凌晨 5:00 → 优化年度记忆，高度提炼# 查看当前 cron 任务 openclaw cron list # 添加每日记忆维护任务（示例） openclaw cron add \ --name "每日记忆维护" \ --schedule "cron 0 2 * * * @ Asia/Shanghai" \ --task "汇总昨天的临时记忆到每日记忆文件，清理30天前的临时记忆，更新QMD索引" \ --target isolated手动触发记忆维护如果 cron 任务从未运行过（状态为 idle），或者需要立即整理记忆，可以直接告诉 Agent："帮我维护一次记忆，把最近的临时记忆汇总到每日记忆，并更新月度记忆"Agent 会读取所有临时记忆文件，提炼重要内容写入对应的每日/月度记忆文件，并更新 MEMORY.md。MEMORY.md 安全策略MEMORY.md 包含个人敏感信息，仅在主会话（私聊/DM）中加载，群聊和共享会话不会加载此文件，防止隐私泄露。六、QMD 语义记忆搜索QMD（Quantum Memory Database）是 OpenClaw 内置的 Markdown 语义搜索引擎。安装npm install -g @tobilu/qmd初始化索引cd ~/.openclaw/workspace qmd collection add . --name memory-files --mask "{MEMORY.md,memory/**/*.md}" qmd status三种搜索模式1. qmd search — BM25 全文检索（推荐，无 GPU 环境）速度快，无需 GPU，适合大多数 VPS 环境。qmd search "老板 钉钉" -c memory-files qmd search "数据库决策" -c memory-files --full qmd search "待办事项" -c memory-files --files -n 5原理：BM25 算法对关键词进行词频统计和逆文档频率加权，中文建议用关键词组合而非长句。2. qmd query — 混合语义搜索（需 GPU 或高性能 CPU）向量搜索 + 关键词搜索 + 重排序，理解自然语言语义，搜索质量最高。qmd query "上次讨论的技术选型结论是什么" -c memory-files qmd query "最近的重要决策" -c memory-files --min-score 0.7工作原理：Query Expansion → Vector Search → BM25 → Reranking（Qwen3-Reranker-0.6B）⚠️ 无 GPU 的低配 VPS 建议只用 qmd search3. qmd vsearch — 纯向量相似度搜索qmd vsearch "项目里程碑" -c memory-files -n 5精确读取qmd get memory/2026-02.md qmd get MEMORY.md:5 -l 10 qmd multi-get "memory/2026-*.md" -l 50典型流程用户问："老板的钉钉 ID 是多少？" ↓ qmd search "老板 钉钉 ID" -c memory-files -n 3 ↓ 找到 MEMORY.md 第 5-8 行 ↓ qmd get MEMORY.md:5 -l 4 ↓ 返回答案索引维护qmd update # 新增文件后更新索引 qmd embed -f # 重新生成向量嵌入 qmd cleanup # 清理缓存 qmd status # 查看状态七、多 Agent 模式一个 Gateway 进程里运行多个完全隔离的 Agent，每个 Agent 有独立的 Workspace、Session Store、Skills 和 Auth。核心概念概念说明agentIdAgent 唯一标识，对应一套 workspace + sessionaccountId渠道账号实例（如不同钉钉机器人）binding路由规则，决定消息发给哪个 Agent路由优先级（从高到低）peer 精确匹配（指定 DM/群组 ID）parentPeer 匹配（线程继承）guildId + roles（Discord 角色路由）accountId 匹配（指定渠道账号）渠道级匹配（accountId: "*"）默认 Agent（default: true 或第一个）配置示例{ agents: { list: [ { id: "main", default: true, workspace: "~/.openclaw/workspace" }, { id: "work", workspace: "~/.openclaw/workspace-work", agentDir: "~/.openclaw/agents/work/agent" } ] }, bindings: [ { agentId: "main", match: { channel: "whatsapp", accountId: "personal" } }, { agentId: "work", match: { channel: "whatsapp", accountId: "biz" } } ] }我这边的实际配置（3 个 Agent）通过钉钉不同机器人账号路由到不同 Agent：Agent ID名字钉钉账号Workspacemain小海狮xiaohaishiworkspace/xiaolongxia小龙虾xiaolongxiaworkspace-xiaolongxia/xiaopangxie小螃蟹xiaopangxieworkspace-xiaopangxie/{ bindings: [ { agentId: "main", match: { channel: "dingtalk", accountId: "xiaohaishi" } }, { agentId: "xiaopangxie", match: { channel: "dingtalk", accountId: "xiaopangxie" } }, { agentId: "xiaolongxia", match: { channel: "dingtalk", accountId: "xiaolongxia" } } ] }每个 Agent 完全独立：独立人格文件（SOUL.md/IDENTITY.md）、独立记忆、独立技能、独立 cron 任务。添加新 Agentopenclaw agents add <agentId> openclaw agents list --bindingsper-Agent 工具限制（适合多人共用）{ agents: { list: [{ id: "family", sandbox: { mode: "all", scope: "agent" }, tools: { allow: ["read", "exec", "sessions_list"], deny: ["write", "edit", "browser"] } }] } }Agent 间通信（默认关闭）{ tools: { agentToAgent: { enabled: true, allow: ["main", "xiaolongxia", "xiaopangxie"] } } }开启后 Agent 可通过 sessions_send 工具互相协作。八、完整工作流示意用户发消息（钉钉/WhatsApp/Telegram） ↓ Gateway 根据 binding 路由到对应 Agent ↓ Agent 启动，读取 SOUL.md / USER.md / 今日记忆 / MEMORY.md ↓ 处理请求，必要时调用 qmd search 检索历史记忆 ↓ 完成任务，将重要信息写入 memory/YYYY-MM-DD.md ↓ 凌晨 2:00 cron 自动汇总 → 每日记忆 ↓ 每周一 3:00 cron 自动汇总 → 月度记忆 ↓ 每月 1 号 4:00 cron 自动汇总 → 年度记忆九、推荐技能OpenClaw 的技能（Skills）是模块化的能力扩展包，放在 workspace/skills/ 或 ~/.openclaw/skills/ 下，Agent 启动时自动加载。这里重点介绍两个让 Agent 持续进化的核心技能。self-improvement — 持续自我改进技能名： self-improvement作用： 让 Agent 记录错误、纠正和学习，实现跨会话的持续改进。触发场景情况动作命令执行失败记录到 .learnings/ERRORS.md用户纠正 Agent记录到 .learnings/LEARNINGS.md（category: correction）用户要求不存在的功能记录到 .learnings/FEATURE_REQUESTS.md发现更好的方法记录到 .learnings/LEARNINGS.md（category: best_practice）文件结构workspace/ └── .learnings/ ├── LEARNINGS.md # 纠正、知识盲区、最佳实践 ├── ERRORS.md # 命令失败、异常 └── FEATURE_REQUESTS.md # 用户请求的新功能记录格式示例## [LRN-20260311-001] correction **Logged**: 2026-03-11T10:00:00Z **Priority**: medium **Status**: pending **Area**: config ### Summary 交付物应放在 agent_temp 目录下，不是 docs/ ### Details 用户纠正：任务产物必须放在 agent_temp/<任务名-日期>/ 下 ### Suggested Action 在 AGENTS.md 中强化此规则，每次任务前检查晋升机制当某条学习记录具有普遍意义时，可以"晋升"到长期记忆：目标文件适合内容SOUL.md行为准则AGENTS.md工作流规范MEMORY.md重要经验教训TOOLS.md工具使用注意事项晋升后将条目状态改为 promoted，注明目标文件。快速查看待处理记录grep -h "Status**: pending" .learnings/*.md | wc -l grep -B5 "Priority**: high" .learnings/*.md | grep "^## \["skill-creator — 技能创建向导技能名： skill-creator作用： 引导 Agent 创建新技能，将重复性工作封装成可复用的技能包。什么是技能？技能是"领域专家的入职指南"——把特定领域的工作流、工具集成、领域知识打包，让 Agent 从通用助理变成专业助理。技能结构skill-name/ ├── SKILL.md # 必须，包含 frontmatter + 使用说明 ├── scripts/ # 可执行脚本（Python/Bash） ├── references/ # 参考文档（按需加载） └── assets/ # 输出资源（模板、图片等）SKILL.md frontmatter 示例：--- name: my-skill description: "做什么、什么时候用。Use when: (1) 场景一, (2) 场景二" ---⚠️ description 是技能触发的核心，必须清晰描述"什么时候用"。创建流程1. 明确需求 → 收集具体使用场景 2. 规划内容 → 确定需要哪些 scripts/references/assets 3. 初始化 → python3 scripts/init_skill.py <skill-name> --path ./skills/ 4. 编写内容 → 实现脚本、写 SKILL.md 5. 打包 → python3 scripts/package_skill.py ./skills/<skill-name> 6. 迭代 → 实际使用后持续优化设计原则简洁优先：上下文窗口是公共资源，只写 Agent 不知道的内容渐进式披露：SKILL.md 控制在 500 行内，详细内容放 references/代码优于描述：能用脚本解决的，不要让 Agent 反复推理安装技能# 从 ClawHub 安装 clawhub install <skill-name> # 本地打包安装 python3 scripts/package_skill.py ./skills/my-skill cp my-skill.skill ~/.openclaw/skills/其他实用技能推荐技能名作用安装qmd语义记忆搜索，详见第六章内置browser-automationPlaywright 浏览器自动化，网页抓取、表单填写、截图clawhub install browser-automationweb-content-fetcher抓取 JS 渲染页面内容，突破反爬限制clawhub install web-content-fetchergithubGitHub Issues/PR/CI 管理，gh CLI 封装clawhub install githubnano-banana-proAI 图片生成（Gemini 3 Pro Image）clawhub install nano-banana-proclaude-codeClaude Code CLI，多文件代码重构和调试clawhub install claude-code📖 更多技能：ClawHub 技能市场相关资源资源链接Docker 镜像dhso/openclaw-dockerOpenClaw 官方文档https://docs.openclaw.ai多 Agent 文档https://docs.openclaw.ai/concepts/multi-agent安全配置文档https://docs.openclaw.ai/gateway/securityClawHub 技能市场https://clawhub.com无影灵构帮助中心https://docs-lincore.wuying.com阿里云 Coding Planhttps://help.aliyun.com/zh/model-studio/openclaw-coding-planOpenClaw 社区 Discordhttps://discord.com/invite/clawd