适合对象:Windows 初学者 / 需要快速跑通 OpenClaw 的开发者
阅读方式:按章节顺序执行;遇到报错先看每章「排错」再继续。
https://github.com/openclaw/openclaw
先看这个
- 先装好 Node.js 22+(可选 Git)。
- 用 PowerShell 执行安装脚本。
- 重点处理 PATH(不要用
setx PATH)。 - 跑
openclaw onboard完成模型与频道配置。 - 用
openclaw gateway start/status验证服务。
本教程风格说明
- 以「能跑通」为第一目标。
- 命令默认可直接复制执行。
- 关键坑位会明确标注,避免走回头路。
整体流程
1.准备工作(Node.js、PowerShell 设置)
2.安装 OpenClaw
3.路径设置(关键 - 必须是 GUI 或 PowerShell)
4. PATH 丢失恢复(在 setx 事故的情况下)
5.运行入门向导
6.Ollama 集成(本地/云模型)
7. ChatGPT 订阅集成(Codex CLI 身份验证,推荐)
8. Messenger 渠道集成 - Telegram
9. Messenger 渠道集成 - Discord
10.启动并验证网关
11.工作空间定制
OpenClaw(前身为 Clawbot / Moldbot)是一个运行在本地机器上的开源 AI 代理。通过 Telegram、WhatsApp、Discord 等消息工具发送指令,它可以代为执行文件操作、发送邮件、运行代码、管理日程等任务。
开始前说明
大多数路径在安装时会自动写入,以推荐默认路径为准。路径中的 <UserName> 替换为实际的 Windows 用户名。
1. 提前准备
步骤 1:安装 WSL2 和 Ubuntu 24.04
使用管理员权限运行 PowerShell 并输入以下命令。
wsl --update
wsl --install -d Ubuntu-24.04
安装完成后请务必重新启动。重新启动后,当 Ubuntu 终端打开时,设置您的用户名和密码。
如果没有自动打开:
wsl -d Ubuntu-24.04
故障排除:WSL_E_DISTRO_NOT_FOUND 错误
首次激活 WSL 功能时可能会发生这种情况。
wsl --update
wsl --list --online
wsl --install -d Ubuntu-24.04
步骤2:激活systemd
在 Ubuntu 终端中运行它。
sudo tee /etc/wsl.conf >/dev/null <<'EOF'
[boot]
systemd=true
EOF
在 PowerShell 中终止 WSL 并重新启动它。
wsl --shutdown

1.1 安装 Node.js 22 或更高版本
OpenClaw 需要 Node.js 22 或更高版本。
如果您还没有,请从官方网站获取 LTS 版本。
- 下载:https://nodejs.org
- 选择"推荐给大多数用户"版本
- 使用安装向导中的默认设置继续
验证安装:
node --version
# 如果 v22.x.x 或更高版本则正常

OpenClaw 安装脚本会自动检测 Node.js,如果不存在则尝试安装它,但提前安装可以减少错误。
1.2 安装Git(推荐)
从 GitHub 下载源代码时,某些 npm 包需要 Git。

- 下载:https://git-scm.com
- 使用安装向导中的默认设置继续
1.3 CMD 与 PowerShell 的区别
当您在 Windows 中打开终端时,CMD(命令提示符) 和 PowerShell 是不同的环境。 OpenClaw 安装脚本是特定于 PowerShell 的,因此您必须从 PowerShell 运行它。
如何区分:
- CMD 提示符:
C:\Users\<用户名>> - PowerShell 提示:
PS C:\Users\<用户名>>
要从 CMD 切换到 PowerShell,请输入"powershell"。
1.4 检查PowerShell执行策略
Windows 的默认执行策略可能会阻止脚本执行。在管理员模式下打开PowerShell并更改执行策略:
bash
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
当出现确认消息时,输入"Y"。
2.安装OpenClaw
在管理员模式 下打开PowerShell并运行安装脚本:
iwr -useb https://openclaw.ai/install.ps1 | iex
该脚本的作用:
-
- 检查Node.js版本
-
- 使用 npm 全局安装 OpenClaw CLI
-
- 创建初始配置目录(
~/.openclaw/)
- 创建初始配置目录(
-
- 运行入门向导
3. PATH 设置(核心)
即使安装了 OpenClaw,大多数情况下也无法识别"openclaw"命令。这是因为npm全局二进制路径没有在用户PATH中注册。
3.1 检查问题
bash
C:\Users\<UserName>>openclaw --version
"openclaw"是指内部或外部命令、可执行程序或
它不是批处理文件。
3.2 验证二进制文件是否存在
首先,检查安装本身是否成功:
npm prefix -g
# 示例输出:C:\Users\<用户名>\AppData\Roaming\npm
dir "C:\Users\<UserName>\AppData\Roaming\npm\openclaw*"
# 如果openclaw、openclaw.cmd、openclaw.ps1文件存在,则安装完成。
通过直接路由验证操作:
"C:\Users\<UserName>\AppData\Roaming\npm\openclaw.cmd" --version
# 如果输出版本,则二进制文件正常。
3.3 如何添加PATH(2种方式)
方法 A:GUI (sysdm.cpl) - 最安全
- 按"Win + R",输入"sysdm.cpl",然后按 Enter。
- 单击高级选项卡
- 单击环境变量按钮
- 在顶部的用户变量 部分中,选择"路径"和编辑
- 单击"新建"
- 输入
C:\Users\<用户名>\AppData\Roaming\npm
7.确定->确定->确定
- 要反映这一点,您必须完全关闭 CMD/PowerShell 窗口并重新打开它
方法 B:PowerShell - 安全附加到现有值
$current = [Environment]::GetEnvironmentVariable("PATH", "User")
[Environment]::SetEnvironmentVariable("PATH", "$current;C:\Users\<UserName>\AppData\Roaming\npm", "User")
警告:切勿在 CMD 中使用
setx PATH。**
setx PATH "%PATH%;new path"命令将用户 PATH + 系统 PATH 组合起来,覆盖用户 PATH,但由于 1024 个字符限制,内容被截断。这种情况下,之前注册的Ollama、Go、Python等路径将会丢失。真实例子:
C:\Windows\System32>setx PATH "%PATH%;C:\Users\<UserName>\AppData\Roaming\npm" 警告:保存的数据被截断为 1024 个字符。 成功:指定值已保存。之后会出现无法识别
ollama命令的情况。详细恢复方法请参见第4节。
3.4 好
在新终端中:
openclaw --version
ollama --version
如果两者都正常,则PATH设置完成。
4. PATH丢失恢复(setx意外情况下)
这是意外执行setx PATH导致现有路径丢失时的恢复方法。
4.1 setx 破坏 PATH 的机制
Windows环境变量PATH有两种类型:
bash
最终路径=系统路径+用户路径
如果您在 CMD 中引用 %PATH%,您将得到这个组合值 。当您运行 setx PATH "%PATH%;new path" 时:
1.尝试将整个组合的PATH(数千个字符)放入用户PATH中
- 系统PATH 内容与用户PATH 重复。
- 由于1024个字符的限制,最后一部分被截断。
4.Ollama、Rancher Desktop等后面的路径丢失。
4.2 现状诊断
在PowerShell中分别检查用户PATH和系统PATH:
Write-Host "=== USER PATH ==="
[Environment]::GetEnvironmentVariable("PATH", "User")
Write-Host ""
Write-Host "=== SYSTEM PATH ==="
[Environment]::GetEnvironmentVariable("PATH", "Machine")
setx 仅覆盖用户路径。 系统PATH很有可能是安全的。 整个系统PATH会被复制并复制到用户PATH中,后面的部分(Ollama等)会因为截断1024个字符而丢失。
4.3 寻找丢失的路径
查找无法识别的程序(例如 Ollama)的实际位置:
where /R "C:\Users\<UserName>" ollama.exe
# 示例输出:C:\Users\<用户名>\AppData\Local\Programs\Ollama\ollama.exe
4.4 重置用户路径
由于系统PATH已经包含Git、Python、Go、Node和Windows默认路径,因此您只需将您安装的程序的路径保留在用户PATH中即可。
在 PowerShell 中:
[Environment]::SetEnvironmentVariable("PATH", "C:\Users\<UserName>\AppData\Local\Programs\Ollama;C:\Users\<UserName>\AppData\Roaming\npm", "User")
如有必要,添加其他用户程序路径,以分号分隔。
4.5 好
完全关闭CMD/PowerShell并打开一个新的:
ollama --version
openclaw --version
一旦两者都被识别,恢复就完成了。
4.6 经验教训
|----------------------------------------------------------|----|---------------------------|
| 方法 | 安全 | 备注 |
| setx PATH (CMD) | 危险 | 截断为 1024 个字符,混合系统+用户 PATH |
| sysdm.cpl (GUI) | 安全 | 单独编辑用户/系统路径 |
| `[Environment]::SetEnvironmentVariable() (PowerShell) | 安全 | 只能准确操作用户PATH |
添加 PATH 始终通过 GUI 或 PowerShell 完成。未使用"setx PATH"。
5. 入门向导
安装脚本自动开始载入。如果跳过则手动运行:
openclaw onboard --install-daemon
向导中设置的项目:
|--------|----------------|-----------------------------------------|
| 订单 | 项目 | 描述 |
| 1 | 模型提供商 | 选择Ollama、Anthropic、OpenAI、Google等 |
| 2 | API 密钥或身份验证 | 输入适合所选提供商的身份验证信息 |
| 3 | Messenger 频道 | 选择要链接的频道,例如 Telegram、WhatsApp、Discord 等 |
| 4 | 技能 | 是否安装捆绑技能(可稍后添加,可跳过) |
| 5 | Hook / Webhook | 不需要则跳过 |

单击"是"继续。

之后会出现型号名称,但根据使用的 AI 不同,型号名称也会有所不同。
就API而言,成本超出预期,所以我个人的建议是与Open AI的订阅系统链接或与本地LLM链接。

什么是 Ollama**?**
Ollama 是一个开源平台,可让您在本地计算机上轻松运行和使用大型语言模型 (LLM)。
它允许您使用简单的命令运行 DeepSeek 或 LLaMA 等模型,无需任何复杂的设置,并像 API 一样使用它们。
6.Ollama 集成
Ollama 在 0.17 版本之后可以与 OpenClaw 链接,但这里假设 Ollmama 已经安装在 Windows 上。
6.1 ollama 启动命令
现在 OpenClaw 已经安装并设置了 PATH,它应该可以正常工作:
ollama launch openclaw

这里,你选择一个模型,我选择gpt-oss 20b模型。
正常执行期间的输出示例:
bash
This will modify your OpenClaw configuration:
C:\Users\<Username>\.openclaw\openclaw.json
Backups will be saved to C:\Users\<Username>\AppData\Local\Temp\ollama-backups/
Added gpt-oss:20b to OpenClaw
Launching OpenClaw with gpt-oss:20b...

奥拉马手柄:
- 备份现有设置
- 显示型号选择屏幕
- 将所选模型自动注册到 OpenClaw 设置
- 启动网关
- 运行 TUI(文本用户界面)控制台
- 6.2 选型标准
OpenClaw 建议至少包含 64K 令牌的上下文窗口。
Ollama 云模型(推荐,提供免费套餐):
|-------------|---------|
| 型号 | 特点 |
| gpt-oss:20b | 通用,默认选择 |
| Kimi-K2.5 | 性价比 |
本地型号(根据VRAM选择):
|-------------------|--------|--------------|
| 型号 | 显存 | 用途 |
| qwen3:8b | 8GB | 轻量问答 |
| qwen2.5-coder:32b | 24GB | 编码专业化,工具调用支持 |
| deepseek-r1:32b | 24GB | 专业推理 |
| glm-4.7-flash | 25GB | 推理 + 代码生成 |
6.3 仅更改设置而不启动网关
bash
ollama launch openclaw --config
6.4 手动更改模型
要在网关已运行时更改模型:
bash
openclaw models set ollama/qwen2.5-coder:32b
或者直接编辑配置文件:
bash
notepad %USERPROFILE%\.openclaw\openclaw.json
配置示例("openclaw.json"中的模型部分):
bash
{
"models": {
"providers": {
"ollama": {
"baseUrl": "http://localhost:11434/v1",
"apiKey": "ollama-local",
"api": "openai-completions",
"models": [
{
"id": "gpt-oss:20b",
"name": "gpt-oss:20b",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 131072,
"maxTokens": 8192
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "ollama/gpt-oss:20b"
}
}
}
}
修改配置文件后重启网关:
bash
openclaw gateway restart

然后,通过网络仪表板进行检查。
仪表板基本上可以通过"http://127.0.0.1:18789/"访问。
7.ChatGPT 订阅集成

点击 OPENAI 后进行 OAuth 授权,即可将其与 GPT 订阅关联,或从 OpenAI 获取 API 密钥,通过 API 方式进行访问。

8. Messenger 渠道集成(Telegram)
Telegram 的设置难度最低。
8.1 创建 Telegram 机器人
- 在 Telegram 应用中搜索"@BotFather"并开始对话
2.输入/newbot命令
- 输入机器人名称(例如"MyOpenClaw")
- 输入机器人用户名(例如
my_openclaw_bot,必须以_bot结尾)
5.复制BotFather颁发的Bot Token (格式:123456789:ABCdefGHI...)
8.2 在 OpenClaw 中注册 Telegram 令牌
如果您在入门向导中选择 Telegram,则会出现令牌输入屏幕。
openclaw onboard


手动注册:
openclaw channels add --channel telegram --token <YOUR_BOT_TOKEN>
注意: 您也可以在
openclaw configure --sectionchannels(交互式向导)中注册,但是直接使用CLI注册时,必须使用channels add命令。openclaw config setchannels.telegram.token ...不起作用(键名称不同)。
注册令牌后,您必须重新启动网关才能反映它:
openclaw gateway restart
8.2.1 401 未经授权的错误
如果网关日志中重复出现以下错误:
[telegram] telegram deleteWebhook failed: Call to 'deleteWebhook' failed! (401: Unauthorized)
[telegram] [default] channel exited: Call to 'deleteWebhook' failed! (401: Unauthorized)
[telegram] [default] auto-restart attempt 1/10 in 5s
原因: Telegram 机器人令牌无效或已过期。
解决:
- 在 Telegram 中,转到
@BotFather->/mybots-> 选择机器人 -> 使用API Token重新确认令牌
2.如果token不匹配,则使用/revoke重新颁发
-
使用新令牌重新注册:
openclaw 频道添加 --channel telegram --token <new_token>
openclaw gateway restart
如果令牌问题未解决,请尝试创建新的机器人。
8.3 配对

-
在 Telegram 中找到您刚刚创建的机器人并发送
/start -
机器人发送一条包含配对码的消息
-
批准终端配对:
openclaw pairing approve telegram
8.4 好

在 Telegram 上向机器人发送任何消息。
如果收到响应,则链接完成。
9. Messenger 渠道集成 (Discord)
您可以链接 Discord 来代替 Telegram 或作为 Telegram 的补充。
访问https://discord.com/developers/applications

- 单击"新建应用程序",输入名称(例如"OpenClawBot")
- 单击左侧菜单中的机器人选项卡
- 点击重置令牌复制机器人令牌
9.2 特权网关意图设置(必填)
在"机器人"选项卡中,滚动找到"特权网关意图 "部分。打开 全部 以下三个:

- 存在意图 - 检测在线状态
- 服务器成员意图 - 查询服务器成员
- 消息内容意图 - 读取消息内容(必填)
激活后,请务必单击"保存更改"。
如果省略此步骤,机器人将无法工作。 网关日志中将重复出现以下错误:
[discord] discord: gateway closed with code 4014 (missing privileged gateway intents) [discord] [default] auto-restart attempt 1/10 in 5s如果您看到此错误,请确保在 Discord 开发者门户中打开意图切换。如果您打开开关并保存,网关将在自动重试时正常连接。
9.3 邀请机器人到您的服务器

1.点击左侧菜单OAuth2
- 滚动查看 OAuth2 URL 生成器 部分
- 在 Scopes 列表中选中"bot"(左上列第 5 列)
- 如果您选中"机器人",机器人权限面板将出现在底部。
- 检查机器人权限:
-发送消息
- 阅读消息历史记录
- 阅读消息/查看频道
- 嵌入链接
- 附加文件
- 生成的 URL 显示在页面底部。
- 复制 URL 并将其粘贴到浏览器中
- 选择您想要邀请机器人加入的服务器并批准
9.4 在 OpenClaw 中注册 Discord 令牌
openclaw channels add --channel discord --token "YOUR_BOT_TOKEN"
警告: 在 PowerShell 中,令牌必须 用引号括起来。 Discord 机器人令牌中包含的特殊字符(例如".")可能会被解释为 shell 运算符。在CMD中,它无需引号即可工作,但建议习惯性将其换行。
注册完成后,重启网关:
openclaw gateway restart
9.5 配对
如果您向 Discord 上的机器人发送私信,您将收到配对码。
openclaw pairing approve discord <CODE>
9.6 好

向 Discord 上的机器人发送 DM 消息。如果收到响应,则链接完成。
注意: 首先使用 DM 进行测试,而不是服务器通道。要在服务器通道中使用机器人,您必须通过提及(
@OpenClawBot)来调用它,或者在 OpenClaw 设置中调整提及门控。
10.启动并验证网关
# 启动网关
openclaw gateway start
# 检查状态
openclaw gateway status
# 打开网页仪表板
openclaw dashboard
默认可以通过"http://127.0.0.1:18789/"访问Web仪表板,通过GUI可以轻松查看状态一目了然。
要更改端口:
openclaw gateway --port 18790
11.工作区定制
安装后,会在 %USERPROFILE%\.openclaw\ 目录中创建以下结构:
%USERPROFILE%\.openclaw\
openclaw.json # 主要设置(模型、通道、网关等)
workspace\
AGENTS.md # 代理行为说明(引导程序)
SOUL.md # Persona(个性、语气、态度)
USER.md # 用户信息(姓名、工作背景、偏好)
MEMORY.md # 长期记忆(你从对话中学到的东西)
IDENTITY.md # 代理自我介绍(姓名、表情符号等)
Skills/ # 技能插件目录
11.1 各文件的作用
OpenClaw 在每次会话开始时读取工作区文件,构建代理的性格与上下文。由于代理没有跨会话记忆,这些文件就是它的记忆。
| 文件 | 作用 | 由谁编辑 | 示例 |
|---|---|---|---|
SOUL.md |
定义代理的性格、说话风格、行为原则。回答"你是什么样的存在"。 | 用户自行编写 | 讽刺语气、直接风格、毒舌程度等 |
USER.md |
用户信息。姓名、职业、工作背景、偏好的沟通方式。 | 用户自行编写或由引导向导生成 | "JDW,技术 CEO,无需客套" |
AGENTS.md |
代理行为指令(引导程序)。工具使用规则、响应格式、工作流程定义。 | 用户自行编写 | "对外发送前必须确认","修改文件前备份" |
MEMORY.md |
从对话中学习的长期记忆。代理在对话中记录的内容存储于此。 | 代理自动更新(用户也可编辑) | "JDW 讨厌 setx PATH" |
IDENTITY.md |
代理的自我介绍。名称、Emoji、一句话介绍。 | 引导向导生成(用户也可编辑) | "名称:Secretary,Emoji:🦞" |
11.2 SOUL.md 和 AGENTS.md 之间的区别
这两个文件之间可能令人困惑的差异:
SOUL.md ="谁是"(个性)
- 言语、态度和幽默风格
- 讽刺等级、赞扬标准
- 情感界限(何时严肃)
AGENTS.md ="做什么以及如何做"(行为规则)
- 工具权限和限制
- 工作绩效程序和优先事项
- 响应格式(代码风格、语言等)
- 需要批准的任务列表
例如,在 SOUL.md 中添加"以讽刺的语气回复",在 AGENTS.md 中添加"在发送电子邮件之前务必获得用户确认"。
11.3 编辑 SOUL.md
设置代理角色:
notepad %USERPROFILE%\.openclaw\workspace\SOUL.md
11.4 编辑 USER.md
当您输入用户信息时,代理将其用作上下文:
notepad %USERPROFILE%\.openclaw\workspace\USER.md
11.5 编辑 AGENTS.md
定义代理行为规则:
notepad %USERPROFILE%\.openclaw\workspace\AGENTS.md
11.6 会话中模型更改
您还可以在对话期间更改模型:
/model opus4.5
12.添加技能
技能是为 OpenClaw 添加功能的插件。
12.1 使用 ClawHub CLI 搜索和安装技能
npm i -g clawhub
clawhub search "calendar"
clawhub install <skill-slug>
clawhub list
12.2 直接创建技能文件
您还可以直接在"workspace/skills/"文件夹中创建"SKILL.md"文件。当您开始新会话时它会自动加载。
13.主要命令总结
|------------------------------------------|--------------|
| 命令 | 描述 |
| openclaw --version | 检查安装版本 |
| openclaw doctor | 诊断配置问题 |
| openclaw status | 查看整体状态 |
| openclaw网关启动 | 启动网关 |
| openclaw网关重启 | 重启网关 |
| openclaw网关状态 | 检查网关状态 |
| openclaw 仪表板 | 打开网络仪表板 |
| openclaw 模型设置<模型> | 更改模型 |
| openclaw config get gateway.auth.token | 检查网关身份验证令牌 |
| openclaw频道登录 | 频道登录 |
| openclaw 配对批准 <通道> <代码> | 通道配对批准 |
| openclaw 配对列表 <通道> | 检查配对列表 |
| ollama 启动 openclaw | 通过 Ollama 运行 |
| ollama launch openclaw --config | 仅更改设置(不启动网关) |
14. 故障排除
14.1 openclaw 命令无法识别
原因: npm 全局路径不在 PATH 中。
诊断:
# 检查二进制位置
npm prefix -g
# 示例输出:C:\Users\<用户名>\AppData\Roaming\npm
# 检查文件是否存在
dir "C:\Users\<UserName>\AppData\Roaming\npm\openclaw*"
# 使用直接路径运行测试
"C:\Users\<UserName>\AppData\Roaming\npm\openclaw.cmd" --version
如果直接路径中显示版本,则安装完成,只需添加PATH即可。 请参阅第 3.3 节(如何添加 PATH)。
14.2 ollama 命令无法识别
原因 A: 由于 setx PATH 导致用户 PATH 丢失(请参阅下面的第 12.3 节)
原因 B: Ollama 路径未在 PATH 中注册
诊断:
where /R "C:\Users\<UserName>" ollama.exe
# 示例输出:C:\Users\<用户名>\AppData\Local\Programs\Ollama\ollama.exe
如果出现该路径,则表明它已安装,但不在 PATH 中。按照3.3的方法将对应路径的目录添加到PATH中。
14.3 由于 setx PATH 导致环境变量丢失
症状:
- 在 CMD 中执行
setx PATH "%PATH%;new path"后 - "警告:保存的数据将被截断为 1024 个字符"消息输出
- 之后,现有命令如ollama、go、python等将无法识别。
原因分析:
%PATH% 是用户 PATH + 系统 PATH 的组合值。 setx PATH 仅覆盖用户 PATH。组合后的长字符串被截断为 1024 个字符并输入到用户 PATH 中,末尾的路径(Ollama 等)丢失。
恢复: 请参阅第 4 节(从 PATH 丢失中恢复)。
预防: 始终使用 GUI( sysdm.cpl) 或 PowerShell 添加 PATH。
14.4 在 CMD 中运行特定于 PowerShell 的命令时出错
症状:
C:\Windows\System32>[Environment]::SetEnvironmentVariable(...)
文件名、目录名或卷标语法不正确。
原因: [Environment]::SetEnvironmentVariable() 是 PowerShell 独有的 .NET 语法。它无法从 CMD(命令提示符)运行。
解决:
- 在CMD中输入"powershell"切换到PowerShell并运行。
- 或直接从"开始"菜单打开 PowerShell
如何区分:
- CMD 提示符:
C:\Users\<用户名>> - PowerShell 提示:
PS C:\Users\<用户名>>
14.5 更改 PATH 后命令仍然无法识别
原因: 对环境变量的更改未反映在当前打开的终端中。
解决方案: 您必须完全关闭 CMD/PowerShell 窗口并再次打开它才能反映出来。无论您在同一窗口中重新输入多少次,都将继续使用之前的 PATH。
14.6 ollama 命令退出无输出(system32 Ghost 文件)
症状: 即使您在 PowerShell 中运行 ollama --version,提示符也会返回,但没有任何输出。或者,当您运行 ollama launch openclaw 时,会出现"选择要打开 'ollama' 的应用程序"对话框。
诊断:
Get-Command ollama
# 如果源是 C:\Windows\system32\ollama 时出现问题
(Get-Item "C:\Windows\system32\ollama").Length
# 如果为0,则确认ghost文件
原因: C:\Windows\system32 中存在空的 0 字节 ollama 文件。该文件被拦截是因为它的优先级高于真正的"ollama.exe"(用户路径)。它可能是在 WSL 安装过程中创建的。
已解决: 在管理 PowerShell 中:
Remove-Item "C:\Windows\system32\ollama" -Force
删除后,在新终端中:
ollama --version
# 版本正常输出时解决
14.7 ollama 启动 openclaw 不支持(版本问题)
现象: 运行 ollama launch openclaw 时,没有响应或出现错误。
诊断:
ollama --version
原因: Ollama 0.17 及更高版本 支持 ollama launch openclaw。该命令在 0.16.x 或更低版本中不存在。
解决方案: 从 https://ollama.com/download/windows 下载并安装最新版本。
安装后检查:
ollama --version
# 如果 0.17.x 或更高则正常
14.8 node.exe 崩溃 (0xc0000005)
这是 Windows Defender 错误检测到 node.exe 的情况。
解决:
1.暂时禁用Windows Defender实时保护
2.再次运行安装脚本
3.安装完成后重新启用实时保护
14.9 在 PowerShell 中阻止脚本执行
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
14.10 入职安全警告自动选择否
现象: 执行ollama launch openclaw后,开机安全警告提示自动选择"否"并退出,无需输入任何按键。
o I understand this is personal-by-default and shared/multi-user use requires lock-down. Continue?
| No
Error: exit status 1
原因: 在 Windows 本机 CMD 中,OpenClaw TUI 中的交互式提示无法识别击键。 OpenClaw 本身警告:
Windows detected -- OpenClaw runs great on WSL2!
Native Windows might be trickier.
解决方案: 在 Windows 终端 中运行。如果您从 Microsoft Store 搜索并安装"Windows Terminal"并从那里运行它,TUI 输入将正常工作。
14.11 ollama 启动 openclaw 时模型连接失败
验证 Ollama 服务是否正在运行:
ollama ps
如果 Ollama 应用程序未运行,则启动它,或者:
ollama serve
14.12 网关未启动
#诊断
openclaw doctor
# 检查日志
openclaw gateway --verbose
14.13 npm 安装期间内存不足
在 PowerShell 中:
$env:NODE_OPTIONS="--max-old-space-size=4096"
iwr -useb https://openclaw.ai/install.ps1 | iex
在命令中:
set NODE_OPTIONS=--max-old-space-size=4096
14.14 Discord 机器人连接失败(代码 4014)
症状: 网关日志中重复出现以下内容:
[discord] discord: gateway closed with code 4014 (missing privileged gateway intents)
[discord] [default] auto-restart attempt 1/10 in 5s
原因: 特权网关意图在 Discord 开发者门户中被禁用。
解决:
1.访问https://discord.com/developers/applications
- 点击左侧的机器人应用程序 -> 机器人 选项卡
- 滚动到 Privileged Gateway Intents 部分并打开所有三个:
- 存在意图
- 服务器成员意图
-消息内容意图
- 单击"保存更改"
- 网关自动重试,无需单独重启。如果连接成功并且日志中没有任何错误。
14.15 在 PowerShell 中输入 Discord 令牌时出错
症状:
openclaw channels add --channel discord --token <MTQ3NzY3...>
At line:1 char:49
+ ... --token <MTQ3NzY3...
+ ~
The '<' operator is reserved for future use.
原因: PowerShell 将令牌中的"<>"或特殊字符解释为 shell 运算符。
解决方案: 将令牌括在引号中:
openclaw channels add --channel discord --token "MTQ3NzY3..."
或者,如果您使用交互式向导,则不存在引号问题:
openclaw configure --section channels
15. 安全注意事项
OpenClaw 的创建者 Peter Steinberger 在官方文档中亲自警告:
"在个人电脑上运行 AI 代理是有风险的。"
应遵守的原则:
-
与金融环境隔离。 不在有银行应用、证券账户、加密货币钱包的用户账号下运行。
-
建议创建独立用户账号运行。 在 Windows 中新建一个标准用户账号,隔离运行。
-
不安装来源不明的技能。 已有通过恶意技能发起攻击的案例报告。
-
使用本地模型时更需谨慎。 小型本地模型可能误解指令,导致错误的文件操作。文件操作或自动化等代理行为,建议使用 API 模型(Claude、GPT 等)执行更安全。
-
定期运行安全诊断
openclaw doctor
16. 费用
OpenClaw 本身是开源免费的。但使用 LLM 可能产生费用:
| 类型 | 费用 | 计费方式 |
|---|---|---|
| Ollama 本地模型 | 免费(仅电费) | 无 |
| Ollama 云端模型 | 提供免费套餐,超出后计费 | 按量付费 |
| ChatGPT Plus(Codex CLI) | 月 $20 定额 | 无限制 |
| ChatGPT Pro | 月 $200 定额 | 无限制(可用顶级模型) |
| Anthropic Claude API | 按使用量计费 | 按量付费 |
| OpenAI GPT API | 按使用量计费 | 按量付费 |
代理自主运行时 Token 消耗难以预测。使用 API 按量付费时,建议监控使用量并设置每日上限。
17. 结语
按照本文走完的话,OpenClaw 应该能正常运行了。发 Telegram 消息也会有回应。笔者是在 Docker 环境而非 Windows 中安装的,不过会配 Docker 环境的人看都不用看这篇就能搞定。
但说实话,这东西到底有没有用,我持怀疑态度。
"AI 替我控制电脑"------听起来很酷。但实际用下来,大多数操作直接自己做反而更快。想移动一个文件,在资源管理器里拖过去比在 Telegram 输命令等确认快三秒。
那这个生态系统为什么存在?
答案很简单:这是恐惧营销。
它贩卖的是焦虑------"不搭 AI 代理就会被时代抛下"。没有 AI 助手守着自己的电脑,就会让人觉得自己效率低下。安装过程越复杂,排故障越多,完成时的成就感就越强。哪怕这种成就感和实际生产力提升毫无关系。
我个人把这称为虚假成就感。生产力没有提升,只是把"问题解决了"的感觉卖给你。对我来说安装很顺利,但对非开发者而言这是一个相当费力的过程。
这篇指南最长的一节恰恰是故障排查,这说明了什么?
本地 AI 代理真正有意义的场景极少。条件是:重复性任务明确、该任务确实频繁发生、委托给代理比自己做更有效率。不满足这些条件,它就只是个耗电的聊天机器人。和直接开个网页聊天相比,优势在哪里?
用 Python 可以自动化简单的 Excel 工具。
因为跨节上下文的问题,用代理改 Excel 工具的效果往往不如预期。
PPT 这类现在基本都能做了。开个 CLI 跑多代理,编码也没必要专门用 OpenClaw。
仔细审视那些所谓的"代理自动化"行为,大部分根本不需要自由化。当然也会有人从中找到真正有用的场景。
选择多了当然是好事。但它是否真的像媒体鼓吹的那样带来爆炸性的生产力提升,我仍然持保留意见。