1. 为什么 Day1-7 值得单独拿出来做
如果你正在搜 OpenClaw 教程、AI Agent 入门、阿里云轻量服务器部署、钉钉 Stream 机器人接入,或者想用 Docker 跑一个属于自己的个人数字助理,这篇就是为你写的。OpenClaw 是一个轻量化的 AI Agent 调度框架,它本身不产生智能,而是把大模型、消息通道、技能插件串成一条能干活的工作流。适合谁?适合手里有一台云服务器、想让 AI 帮自己查资料、管文件、处理日程,但又不想折腾复杂后端开发的人。
我见过太多人卡在第一周:服务器买完不知道选哪个镜像,API Key 配了报 401,钉钉机器人建好了发消息没反应。问题不在你笨,而在大多数教程只给零散步骤,不讲为什么。这篇把 Day1-7 拆成可复制的动作:Docker Compose 配置、TaoToken 统一 Key 接入骨架、钉钉 Stream 回调验证,一条消息链路从零跑通。你跟着做,七天结束会得到一个 7×24 小时在线、Web 和钉钉双入口都能唤醒的助理雏形。
核心检索词先摆清楚:OpenClaw 是框架,AI Agent 是形态,阿里云轻量服务器是底座,钉钉 Stream 机器人是入口,Docker 是运行方式。这五个词串起来,就是第一周的全部任务。
2. TaoToken 前置:统一 Key 与 API 通道准备
在写任何配置之前,先把模型调用这条链路理清楚。OpenClaw 需要外接大模型 API 才能对话和推理,而不同模型、不同通道的 Key 格式、接口地址、计费方式都不一样。如果每个模型都单独配一套环境变量,后面换模型、加通道会非常乱。TaoToken 在这里的作用是提供一个统一的 Key 和 API 通道,让 OpenClaw 只认一套接入方式。
你需要先拿到两样东西:一个可用的 API Key,以及对应的接口地址。TaoToken 的 API 入口是https://taotoken.net/api,注意这个地址不加任何参数,直接作为 base_url 使用。Key 的创建在控制台的 API Keys 页面完成,建议单独建一个给 OpenClaw 用的 Key,方便后续按项目排查用量。
注意:Key 只在创建时完整显示一次,关掉页面就看不到了。复制后先存到本地记事本,不要直接贴在聊天窗口或截图发出去。
模型选择上,Day1-7 阶段不用追求最强模型,选一个响应稳定、支持流式输出的对话模型即可。如果你后面要长期跑编码类 Agent 任务,可以再了解 Coding Plan 的套餐方式,但第一周先把基础对话链路跑通更重要。接入文档里有完整的请求示例和参数说明,配置前扫一遍能省很多排错时间。
环境变量骨架先定下来,后面 Docker Compose 直接引用:
# TaoToken 统一接入配置 TAOTOKEN_API_KEY=sk-你的Key TAOTOKEN_BASE_URL=https://taotoken.net/api TAOTOKEN_MODEL=gpt-4o-mini这三个变量是后面所有配置的基础。TAOTOKEN_BASE_URL不要写成带/v1或其他路径的形式,OpenClaw 的模型适配层会自动拼接。如果你用的是兼容 OpenAI 协议的模型,这套变量可以直接复用。
3. 可复制配置:Docker Compose 部署 OpenClaw
阿里云轻量服务器上部署 OpenClaw,最省事的方式是用 Docker Compose 管理容器。官方镜像已经预装了运行环境,你只需要把配置文件和启动命令准备好。下面这份 Compose 配置可以直接复制,改掉 Key 和端口就能用。
version: "3.8" services: openclaw: image: openclaw/openclaw:latest container_name: openclaw restart: unless-stopped ports: - "18789:18789" environment: - TAOTOKEN_API_KEY=${TAOTOKEN_API_KEY} - TAOTOKEN_BASE_URL=${TAOTOKEN_BASE_URL} - TAOTOKEN_MODEL=${TAOTOKEN_MODEL} - OPENCLAW_GATEWAY_PORT=18789 - OPENCLAW_LOG_LEVEL=info volumes: - ./data:/app/data - ./logs:/app/logs healthcheck: test: ["CMD", "curl", "-f", "http://localhost:18789/health"] interval: 30s timeout: 10s retries: 3把这份配置保存为docker-compose.yml,和.env文件放在同一目录。.env文件里写上面那三个变量,Compose 会自动读取。启动命令:
docker compose up -d启动后查看容器状态和日志:
docker ps docker logs openclaw --tail 100如果日志里出现Gateway started on port 18789和Model provider initialized,说明服务已经正常拉起。这时候打开浏览器访问http://你的服务器公网IP:18789,应该能看到 OpenClaw 的 Web 控制台登录页。
阿里云轻量服务器的安全组需要手动放行 18789 端口。进入实例详情页,找到防火墙或安全组配置,添加入站规则:协议 TCP,端口 18789,来源 0.0.0.0/0。这一步不做,浏览器会一直转圈连不上。
提示:如果你在控制台看到容器反复重启,先看日志里有没有
invalid api key或connection refused。前者是 Key 问题,后者通常是 base_url 写错或网络不通。
4. 验证请求:钉钉 Stream 机器人回调打通
Web 控制台能对话之后,下一步是把钉钉接进来。钉钉机器人有两种模式:回调模式和 Stream 模式。回调模式需要公网域名、HTTPS 证书、内网穿透,新手配置成功率很低。Stream 模式用长连接,只需要 Client ID 和 Client Secret,不需要域名和证书,是第一周唯一推荐的方式。
先在钉钉开放平台创建企业内部应用,添加机器人能力,消息接收模式选 Stream。然后在凭证页面拿到两组值:Client ID 和 Client Secret。回到 OpenClaw 的通道配置页面,选择钉钉通道,填入这两组凭证,启用并保存。
配置保存后,OpenClaw 会启动一个 Stream 客户端去连接钉钉的长连接服务。你可以在日志里看到类似输出:
docker logs openclaw --tail 50 | grep -i dingtalk # 正常输出示例: # [dingtalk] stream client connected # [dingtalk] bot registered: 我的私人AI助理看到stream client connected就说明长连接建立成功。这时候打开钉钉,搜索你创建的机器人名称,进入私聊窗口,发送一条测试消息:
测试连通性如果机器人能回复,说明整条链路已经打通:钉钉消息 → Stream 长连接 → OpenClaw 通道层 → Agent 调度 → TaoToken 模型接口 → 返回回复 → 钉钉展示。这条链路跑通,Day1-7 的核心目标就完成了。
如果你想验证模型调用是否真的走了 TaoToken,可以在 OpenClaw 的模型配置页确认 base_url 指向https://taotoken.net/api,然后在日志里搜索请求记录。正常情况下每次对话都会有一条模型调用日志,包含模型名称和耗时。
5. 本篇常见错排查
401 鉴权失败:最常见的原因是 Key 复制时带了空格,或者 base_url 写成了带/v1的地址。重新从控制台复制 Key,确认TAOTOKEN_BASE_URL是https://taotoken.net/api,不要加其他路径。如果还报错,检查 Key 是否被禁用或额度用完。
18789 端口连不上:先确认容器在运行docker ps,再看安全组有没有放行。阿里云轻量服务器的防火墙和安全组是两层,实例详情页里的防火墙规则要加,安全组也要加。两个都配好再试。
钉钉机器人发消息没反应:检查三处。第一,机器人能力是否选了 Stream 模式;第二,Client ID 和 Client Secret 有没有填反;第三,应用版本是否发布,可见范围是否包含你自己。这三步任何一步漏了,消息都进不来。
容器启动后立刻退出:看日志docker logs openclaw。如果是permission denied,检查挂载目录权限;如果是port already in use,说明 18789 被占用,改端口或停掉占用进程。
模型回复很慢或超时:先确认服务器到 TaoToken 接口的网络是否正常,可以用curl测一下连通性。如果网络没问题,换一个模型试试,有些模型在高峰期响应会慢。Day1-7 阶段建议用轻量对话模型,不要一上来就上大参数模型。
技能安装提示 command not found:所有clawhub和openclaw命令必须在容器内部执行。先docker exec -it openclaw /bin/bash进入容器,再运行安装命令。在服务器宿主机直接敲这些命令是不生效的。
6. 下一步:从能对话到能干活
Day1-7 结束时,你手里应该有一个跑在阿里云轻量服务器上的 OpenClaw 实例,通过 TaoToken 统一 Key 接入模型,Web 和钉钉双入口都能对话。但这只是起点,接下来要让它从“能聊天”变成“能干活”。
如果你在排障或接入过程中遇到问题,优先看接入文档里的错误码说明,大部分鉴权类和请求格式类问题都有对应解释。想先验证模型对话效果,可以直接在模型对话页面测试不同模型的回复质量。如果你打算长期跑编码类或 Agent 类任务,Coding Plan 的套餐方式比按量计费更可控,适合高频调用场景。
第二周的任务是装技能、配定时任务、优化上下文记忆。但在那之前,先把这七天的配置备份好:服务器 IP、Web 访问地址、管理 Token、TaoToken Key、钉钉 Client 凭证,全部整理到一个文档里。这些东西丢了,重配的成本比第一次部署还高。