爱折腾-创客智造实验室 - openclaw-ai助手入门教程
type: channel
link: https://www.ncnynl.com/tag/openclaw-ai助手入门教程
items: OpenClaw-AI助手入门教程-Docker+deepseek+飞书+nginx反向代理部署流程1
items: OpenClaw-AI助手入门教程-Docker+deepseek+飞书+nginx反向代理部署流程2
items: OpenClaw-AI助手入门教程-配置邮件通知
items: OpenClaw-AI助手入门教程-配置openclaw-mcp-adapter调用更多mcp工具
items: OpenClaw-AI助手入门教程-配置mcp-endpoint-server云注册中心方便接入mcp工具
items: OpenClaw-AI助手入门教程-配置openclaw-mcp-adapter通过mcp-endpoint-server调用mcp工具

OpenClaw-AI助手入门教程-Docker+deepseek+飞书+nginx反向代理部署流程1
type: item
date: 2026-02-12T09:41:00+00:00
description: 说明： 本文介绍了在独立服务器上通过docker方式部署OpenClaw智能助手并接入国产大模型和飞书机器人的完整流程。 主要内容包括： 1）通过docker命令行快速安装OpenClaw； 2）配置国际/国产大模型（如DeepSeek）； 3）安装飞书插件并配置应用凭证； 4）设置飞书机器人权限与事件。 5）设置nginx反向代理访问 部署完成后，用户可通过飞书与AI助手交互，支持多轮对话和上下文记忆功能。 1️⃣ 环境准备：Docker 及 Docker Compose - 安装 Docker 官方文档：[https://docs.docker.com/engine/install/](https://docs.docker.com/engine/install/) - Docker Compose 一般随 Docker Engine 一同安装，验证：`docker compose version` 2️⃣ 获取 OpenClaw 源码并部署（Docker 方式） git clone https://github.com/openclaw/openclaw.git cd openclaw ./docker-setup.bash # 交互式部署脚本 2.1 交互式配置要点 步骤 问题 选择/输入 说明 2.1 理解风险，安全问题 Yes 接受安全须知 2.2 Onboarding mode QuickStart 快速安装模式 2.3 Model / auth provider skip for now 稍后手动配置 DeepSeek 2.4 Filter models by provider all provider 不影响，后期跳过 2.5 Select Channel skip for now 或 feishu 飞书稍后配置 2.6 Configure skills now No 暂不需要技能包 2.7 Hook: session-Memory 选中（空格） 启用多轮对话记忆 2.8 等待部署完成 - 记录输出的 onboarding link（内含访问令牌） 2.2 部署完成后的操作 # 停止默认启动的容器，并以守护模式重新启动 docker compose down docker compose up -d # 查看运行日志 docker compose logs -f #OpenClaw 配置文件位置（宿主机）： cat ~/.openclaw/openclaw.json # 所有配置持久化在此 3️⃣ DeepSeek 模型接入 3.1 获取 DeepSeek API 密钥 注册/登录 DeepSeek 开放平台 创建 API Key，格式：sk-xxxxxxxxxxxx ⚠️ 重要：此密钥不可公开，一旦泄露请立即删除并重新生成 3.2 编辑配置文件，添加 DeepSeek 提供商 vim ~/.openclaw/openclaw.json #在 models 节点下添加 providers 定义，并设置默认模型： json5 { "models": { "mode": "merge", "providers": { "custom-api-deepseek-com": { "baseUrl": "https://api.deepseek.com", "apiKey": "sk-你的全新密钥", // ⚠️ 替换为最新密钥 "api": "openai-completions", "models": [ { "id": "deepseek-reasoner", // 推理模型 "name": "DeepSeek Reasoner", "reasoning": true, "contextWindow": 64000, "maxTokens": 8192, "input": ["text"] }, { "id": "deepseek-chat", // 快速对话模型 "name": "DeepSeek Chat", "contextWindow": 64000, "maxTokens": 8192, "input": ["text"] } ] } } }, "agents": { "defaults": { "model": { "primary": "custom-api-deepseek-com/deepseek-reasoner" // 默认使用模型 } } } } #保存文件。 3.3 重启网关使配置生效 docker compose restart openclaw-gateway 3.4 测试模型是否接入成功 # 方法一：通过主代理测试（推荐） docker compose exec openclaw-…

OpenClaw-AI助手入门教程-Docker+deepseek+飞书+nginx反向代理部署流程2
type: item
date: 2026-02-12T09:50:00+00:00
description: 5️⃣ 配置反向代理（使 Web 管理端可通过 HTTPS 访问） 5.1 准备域名及 SSL 证书 申请域名（如 openclaw.yourdomain.com），解析到服务器公网 IP 获取 SSL 证书（可自签或使用 Let's Encrypt） 5.2 安装 Nginx 并配置反向代理 nginx配置 server { listen 443 ssl; server_name openclaw.yourdomain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://127.0.0.1:18789; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } 5.3 配置 OpenClaw 信任代理 IP 编辑 ~/.openclaw/openclaw.json，在 gateway 节点添加： json5 "gateway": { "trustedProxies": ["172.21.0.1/32", "你的代理服务器公网IP"], // ... 其他配置 } #重启网关： docker compose restart openclaw-gateway 5.4 配置自动设备配对策略 #1.访问网站： https://openclaw.yourdomain.com 在Overview->Gateway Token输入框填写生成时候的Token -> 点击connect #2.手动批准： # 查看待批准设备，查看request的ID docker compose exec openclaw-gateway node dist/index.js devices list # 批准指定请求 docker compose exec openclaw-gateway node dist/index.js devices approve <请求ID> #3.刷新网页，就可以看到已经批准了 6️⃣ 性能优化与常见问题 ⚡ 响应速度优化（针对 DeepSeek 回复慢） 问题 解决方案 命令/配置 模型推理慢 换用 deepseek-chat config set agents.defaults.model.primary custom-api-deepseek-com/deepseek-chat 工具调用超时 关闭飞书通道工具 config set channels.feishu.toolsEnabled false 上下文过大 限制飞书上下文 config set channels.feishu.contextLimit 8000 网络延迟 使用国内 DNS 容器内 echo "nameserver 114.114.114.114" > /etc/resolv.conf ❗ 安全红线 DeepSeek API Key 一旦泄露，立即删除并重新生成 配置文件权限收紧： chmod 700 ~/.openclaw chmod 600 ~/.openclaw/openclaw.json #不要在公共文档、日志中明文暴露任何密钥 常用诊断命令汇总 # 整体健康检查 docker compose exec openclaw-gateway node dist/index.js doctor # 查看当前模型配置 docker compose exec openclaw-gateway node dist/index.js config get agents.defaults.model # 查看飞书通道配置 docker compose exec openclaw-gateway node dist/index.js config get channels.feishu # 实时跟踪飞书消息 docker compose logs -f openclaw-gateway | grep -E "feishu|agent" 总结 通过以上步骤，你已成功完成： ✅ Docker 部署 Open…

OpenClaw-AI助手入门教程-配置邮件通知
type: item
date: 2026-02-19T02:23:39+00:00
description: 说明： 当任务完成使用指定的邮箱通知 实现方式：使用openclaw的开发能力来编程生成一个自己使用的python脚本即可 步骤1-获取qq邮箱授权码： 登录邮箱并进入设置：在电脑浏览器里打开QQ邮箱官网 (mail.qq.com)，登录后，点击页面顶部的 “设置” 链接，然后选择 “帐户” 选项卡。 找到并开启服务：在“帐户”页面往下拉，找到 “POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务” 这一栏。点击任一服务（比如 “IMAP/SMTP服务”）右侧的 “开启” 按钮。 完成安全验证：这时会弹出一个窗口，要求你验证身份。根据提示，用你绑定该邮箱的手机号发送一条指定短信到指定号码。发送完成后，在电脑上点击 “我已发送” 或类似的确认按钮。 获取并保存授权码：验证通过后，系统就会弹出一串16位的授权码。请务必马上复制并把它保存好（比如记在备忘录里或截图保存），因为这个弹窗关掉后就再也看不到了。如果在第三方客户端设置时还需要，只能重新生成 步骤2-生成发送邮件脚本和配置： 确认邮箱和授权码后，使用openclaw的开发能力来编程生成一个自己使用的python脚本： 使用web-ui的chat窗口，输入如下的参考python脚本，邮箱和授权码： #!/usr/bin/env python3 """ OpenClaw邮件发送系统 支持环境变量配置，敏感信息存储在.env文件中 """ import smtplib import ssl from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart import argparse import os import sys from pathlib import Path def load_env(): """加载环境变量""" env_path = Path(__file__).parent / '.env' # 如果.env文件存在，读取它 if env_path.exists(): with open(env_path, 'r') as f: for line in f: line = line.strip() if line and not line.startswith('#'): key, value = line.split('=', 1) os.environ[key.strip()] = value.strip() # 返回配置字典 config = { 'qq_email': os.getenv('QQ_EMAIL', ''), 'qq_password': os.getenv('QQ_EMAIL_PASSWORD', ''), 'smtp_server': os.getenv('SMTP_SERVER', 'smtp.qq.com'), 'smtp_port': int(os.getenv('SMTP_PORT', '587')), 'default_recipient': os.getenv('DEFAULT_RECIPIENT', ''), 'use_tls': os.getenv('USE_TLS', 'true').lower() == 'true', 'use_ssl': os.getenv('USE_SSL', 'false').lower() == 'true', } return config def send_email(to_email, subject, body, from_email=None, password=None, config=None): """ 通过QQ邮箱SMTP发送邮件 Args: to_email: 收件人邮箱 subject: 邮件主题 body: 邮件内容 from_email: 发件人邮箱（可选） password: QQ邮箱授权码（可选） config: 配置字典（可选） Returns: bool: 发送是否成功 """ if config is None: config = load_env() # 使用配置中的值 smtp_server = config['smtp_server'] smtp_port = config['smtp_port'] use_tls = config['use_tls'] use_ssl = config['use_ssl'] # 如果没有提供发件人邮箱，使用配置中的值 if not from_email: from_email = config['qq_email'] # 如果没有提供密码，使用配置中的值 if not passwor…

OpenClaw-AI助手入门教程-配置openclaw-mcp-adapter调用更多mcp工具
type: item
date: 2026-02-19T02:44:00+00:00
description: 说明 什么是openclaw-mcp-adapter？ 在深入配置之前，我们先理解一下openclaw-mcp-adapter是什么。 它是OpenClaw的一个插件，作用是把MCP服务器的工具转换为OpenClaw原生Agent工具。 简单来说，以前你要通过命令行调用MCP服务器，现在只要配置好mcp-adapter，OpenClaw启动时就会自动连接MCP服务器、发现所有工具，并注册成AI可以直接调用的“一等公民”工具。比如你配置了一个计算器MCP，OpenClaw里就会出现calculator工具，AI可以直接使用。 githu地址 https://github.com/androidStern-personal/openclaw-mcp-adapter mcp-adapter的核心优势： 自动发现工具：连接服务器后自动调用listTools()获取所有工具 原生集成：工具名称带服务器前缀（如myserver_toolname），避免命名冲突 自动重连：连接断开后下次调用自动重连 目前这个插件适合http和stdio的mcp的插件 方法1-让openclaw自动安装: 测试web-ui的chat发指令： 安装openclaw-mcp-adapter插件，https://github.com/androidStern-personal/openclaw-mcp-adapter。 让openclaw自己想办法实现安装 方法2-命令安装 我的openclaw系统基于docker部署 cd openclaw docker compose exec openclaw-gateway node dist/index.js plugins install mcp-adapter 方法3-源码安装 cd openclaw docker compose exec openclaw-gateway /bin/bash git clone https://github.com/androidStern/openclaw-mcp-adapter.git node dist/index.js plugins install ./openclaw-mcp-adapter/ 配置openclaw-mcp-adapter 选择一个mcp服务器，比如http://mcp-porter:8000/sse 打开openclaw.json，配置如下： vim ~/.openclaw/openclaw.json "plugins": { "entries": { "openclaw-mcp-adapter": { "enabled": true, "config": { "servers": [ { "name": "mcp-porter-calculator", "transport": "http", "url": "http://mcp-porter:8000/sse" } ], "toolPrefix": true } } } } 测试： web-ui的chat窗口，发送调用相应mcp的工具即可。

OpenClaw-AI助手入门教程-配置mcp-endpoint-server云注册中心方便接入mcp工具
type: item
date: 2026-02-19T03:24:00+00:00
description: 说明: mcp-endpoint-server是什么？ 在开始部署之前，我们先理解一下mcp-endpoint-server在整个架构中的位置。 mcp-endpoint-server是一个基于WebSocket的MCP注册中心，由xinnan-tech团队开发，主要作用是作为小智AI设备与MCP工具之间的桥梁。它的核心设计理念是：让小智设备端能够通过语音调用各种MCP服务。 为什么需要它？ 如果你接触过小智AI，你可能知道小智设备端需要通过WebSocket连接到小智官方服务器。而mcp-endpoint-server提供了一个统一的接入点，设备端可以连接到这里，然后通过它调用各种注册的MCP工具（如计算器、高德地图、Home Assistant等）。 它的优势在于： 高性能：基于FastAPI和WebSocket的异步架构，支持高并发连接 连接管理：智能管理WebSocket连接，支持连接清理 监控统计：提供连接统计和健康检查接口 消息转发：自动转发工具端和小智端之间的消息 配置灵活：支持配置文件管理，易于部署和维护 简单来说，你部署好mcp-endpoint-server后，小智设备端就可以连接上来，然后通过它调用你本地的MCP服务（比如我们之前配置的计算器）。而且你的MCP服务无需部署在公网环境，这极大方便了开发者在各种网络环境下的使用。 工作流程： 设备端：小智设备（或运行mcp_pipe.py的机器）作为WebSocket客户端，主动连接到mcp-endpoint-server 注册工具：设备端将自己本地的MCP服务（如计算器）通过stdio管道与mcp_pipe.py连接，mcp_pipe.py负责将WebSocket消息转换为stdio通信 服务端管理：mcp-endpoint-server管理所有设备的WebSocket连接，并转发来自小智官方服务器的请求 调用链路：小智官方服务器 → mcp-endpoint-server → 设备端 → 本地MCP服务 这种设计的巧妙之处在于：设备端的MCP服务可以运行在内网，不需要公网IP，只需要设备端能主动连接到公网的mcp-endpoint-server即可 docker方式安装mcp-endpoint-server： 部署教程1, 部署教程2 采用单模块部署的安装方法： git clone https://github.com/xinnan-tech/mcp-endpoint-server.git # 进入本项目源码根目录 cd mcp-endpoint-server # 清除缓存 docker compose -f docker-compose.yml down docker stop mcp-endpoint-server docker rm mcp-endpoint-server docker rmi ghcr.nju.edu.cn/xinnan-tech/mcp-endpoint-server:latest # 启动docker容器 docker compose -f docker-compose.yml up -d 第一次安装会需要一点时间 启动完成之后会出现需要查看 # 查看日志 docker logs -f mcp-endpoint-server 250705 INFO-=====下面的地址分别是智控台/单模块MCP接入点地址==== 250705 INFO-智控台MCP参数配置: http://172.22.0.2:8004/mcp_endpoint/health?key=abc 250705 INFO-单模块部署MCP接入点: ws://172.22.0.2:8004/mcp_endpoint/mcp/?token=def 250705 INFO-=====请根据具体部署选择使用，请勿泄露给任何人====== 假设你的本机地址是127.0.0.1 如上，输出mcp接入点是中ws://127.0.0.1:8004/mcp_endpoint/mcp/?token=def就是你的MCP接入点地址。 这个MCP接入点地址很重要，你等一下会用到 简单验证 curl http://127.0.0.1:8004/health 部署一个计算器验证完整功能： 部署虾哥写的计算器项目,安装 https://github.com/78/mcp-calculator # 进入项目目录 cd mcp-calculator conda remove -n mcp-calculator --all -y conda create -n mcp-calculator python=3.10 -y conda activate mcp-calculator pip install…

OpenClaw-AI助手入门教程-配置openclaw-mcp-adapter通过mcp-endpoint-server调用mcp工具
type: item
date: 2026-02-19T04:25:00+00:00
description: 说明： 在前面的教程中，我们分别学习了如何配置MCP-adapter来直接调用MCP服务，以及如何部署小智语音的mcp-endpoint-server。现在，我们将两者结合，实现一个更强大的架构：通过OpenClaw的MCP-adapter，经由mcp-endpoint-server调用内网或设备端的MCP工具。 这个架构解决了什么问题？当你的MCP服务运行在内网或设备端（如树莓派、NAS）时，OpenClaw无法直接连接。而mcp-endpoint-server作为公网WebSocket服务器，可以让内网设备主动连接并注册工具。通过一个协议转换代理，OpenClaw就能通过标准的SSE/HTTP协议调用这些工具。整个过程无需公网IP，无需复杂的端口映射。 架构： subgraph 公网云服务器 A[mcp-endpoint-server WebSocket服务端] B[ws2sse代理 WebSocket → SSE] end subgraph 内网/设备端 C[mcp_pipe.py + 本地MCP服务] end subgraph OpenClaw环境 D[openclaw-mcp-adapter] end C -- 主动WebSocket连接 --> A B -- 连接 --> A D -- SSE --> B 工作流程： 内网设备通过mcp_pipe.py将本地MCP服务（如计算器）注册到公网的mcp-endpoint-server。 我们在公网部署一个ws2sse代理，它作为WebSocket客户端连接mcp-endpoint-server，同时对外提供SSE端点。 OpenClaw的mcp-adapter插件通过SSE连接ws2sse代理，发现并注册所有可用的MCP工具。 用户在OpenClaw中通过语音或文字调用工具，请求经mcp-adapter → ws2sse代理 → mcp-endpoint-server → 内网设备，最终执行并返回结果。 openclaw的插件mcp-adapter不能直接通过websocket访问mcp-endpoint-server，所以要通过一个ws2sse代理来做中转。 在这里我们建立一个mcp-porter-server的ws2sse代理，使用docker部署在openclaw同一个服务器 1.建立Dockerfile FROM python:3.12-slim WORKDIR /app # 复制依赖文件并安装（仅当 requirements.txt 变化时才会重新安装） COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # 复制当前目录所有文件到镜像（会被卷挂载覆盖，但用于构建时保证镜像完整性） COPY . . # 容器启动命令 CMD ["python", "ws2sse_proxy.py"] 2.建立docker-compose.yml networks: mcp-shared-network: external: true name: mcp-shared-network services: mcp-porter: build: . # 使用当前目录的 Dockerfile 构建 container_name: mcp-porter restart: always networks: - mcp-shared-network ports: - "8000:8000" volumes: - ./:/app # 将宿主机当前目录挂载到容器 /app，覆盖代码 environment: - TZ=Asia/Shanghai - REMOTE_WS_URL=ws://mcp-endpoint-server:8004/mcp_endpoint/call/?token=${MCP_TOKEN} # 不再直接写 token，使用 .env 文件 建立requirements.txt fastapi==0.104.1 uvicorn[standard]==0.24.0 websockets==12.0 python-multipart==0.0.6 pydantic==2.5.0 python-dotenv==1.0.0 configparser==6.0.0 asyncio-mqtt==0.16.1 pycryptodome==3.23.0 loguru==0.7.2 requests 建立ws2sse_proxy.py #!/usr/bin/env python3 """ MCP WebSocket 转 SSE 代理（完整版） - 作为客户端连接到远程 WebSocket MCP …