OpenClaw + Ollama / 硅基流动 / codeai88 安装与配置教程

OpenClaw + Ollama / 硅基流动 / codeai88 安装与配置教程

(根据实际操作与排查过程整理)

一、安装 OpenClaw

在 Mac 本机执行:

curl -fsSL https://openclaw.ai/install.sh | bash

安装完成后可验证版本:

openclaw -V

二、前置条件:安装并运行 Ollama

1、安装 Ollama:https://ollama.ai 2、拉取模型(示例):

ollama pull qwen3

注:用于支持 tool calling,见下文 3、确认 Ollama 在运行:

ollama list
curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1:11434/api/tags
# 返回 200 表示正常

三、配置 OpenClaw 使用 Ollama 模型

3.1 启用 Ollama 提供方(推荐:环境变量)

~/.zshrc 末尾添加:

# OpenClaw + Ollama 本地模型(无需真实 key,任意值即可启用发现)
export OLLAMA_API_KEY="ollama-local"

然后执行 source ~/.zshrc 或重新打开终端。

3.2 设置默认模型

openclaw config set agents.defaults.model.primary "ollama/qwen3:latest"

3.3 让 Gateway 进程也能使用 Ollama(重要)

Gateway 若由 launchd 启动,不会加载 .zshrc,因此需要单独给 Gateway 进程设置环境变量。 编辑 ~/Library/LaunchAgents/ai.openclaw.gateway.plist,在 EnvironmentVariables 的 dict 内增加:

 <key>OLLAMA_API_KEY</key>
<string>ollama-local</string>

修改后重启 Gateway:

openclaw gateway stop
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/ai.openclaw.gateway.plist

四、解决 “Unknown model: ollama/qwen3:latest”

若嵌入式 Agent 或 Webchat 报错 Unknown model,多半是运行 Agent 的进程(如 Gateway)没有发现 Ollama 模型。可做两件事:

4.1 在配置中显式声明 Ollama 提供方与模型

~/.openclaw/openclaw.json 中增加 "models" 段(与 "agents" 同级),例如:

"models": {
  "providers": {
    "ollama": {
      "baseUrl": "http://127.0.0.1:11434/v1",
      "apiKey": "ollama-local",
      "api": "openai-completions",
      "models": [
        {
          "id": "qwen3-coder:latest",
          "name": "Qwen3",
          "reasoning": false,
          "input": ["text"],
          "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
          "contextWindow": 128000,
          "maxTokens": 8192
        }
      ]
    }
  }
}

4.2 为 Agent 配置 Ollama 的 auth profile

创建或编辑 ~/.openclaw/agents/main/agent/auth-profiles.json

{
  "version": 1,
  "profiles": {
    "ollama:default": {
      "type": "api_key",
      "provider": "ollama",
      "key": "ollama-local"
    }
  },
  "order": {
    "ollama": ["ollama:default"]
  }
}

完成后重启 Gateway 使配置生效。

四(一)、配置 OpenClaw 使用硅基流动(Silicon Flow)模型(备选)

若不想用本地 Ollama,可改用硅基流动云端 API(OpenAI 兼容)。同一台 OpenClaw 可在主配置里同时保留 Ollama 与硅基流动,通过默认模型切换使用。

4.1 在主配置中增加硅基流动提供方

~/.openclaw/openclaw.json"models" -> "providers" 中增加 "siliconflow"(与 "ollama" 同级):

"siliconflow": {
  "baseUrl": "https://api.siliconflow.cn/v1",
  "apiKey": "你的硅基流动API密钥",
  "api": "openai-completions",
  "models": [
    {
      "id": "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B",
      "name": "DeepSeek-R1-Distill-Qwen-7B",
      "reasoning": false,
      "input": ["text"],
      "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
      "contextWindow": 128000,
      "maxTokens": 8192
    }
  ]
}

重要:baseUrl 必须使用 https://api.siliconflow.cn/v1(.cn)。使用 .com 时同一 API Key 会返回 401。

4.2 设置默认模型为硅基流动

openclaw config set agents.defaults.model.primary "siliconflow/Qwen/Qwen3-8B"

4.3 为 Agent 配置硅基流动的 auth profile

编辑 ~/.openclaw/agents/main/agent/auth-profiles.json,在 "profiles" 中增加:

"siliconflow:default": {
  "type": "api_key",
  "provider": "siliconflow",
  "key": "你的硅基流动API密钥"
}

"order" 中增加:

"siliconflow": ["siliconflow:default"]

API Key 与 openclaw.json 中 models.providers.siliconflow.apiKey 保持一致。

4.4 获取与验证 API Key

获取:登录 https://cloud.siliconflow.cn/account/ak 创建或查看 API 密钥。 验证(本机 curl,确认返回 200):

curl -s -o /dev/null -w "%{http_code}" -X POST "https://api.siliconflow.cn/v1/chat/completions" 
-H "Content-Type: application/json" 
-H "Authorization: Bearer 你的API密钥" 
-d '{"model":"deepseek-ai/DeepSeek-R1-Distill-Qwen-7B","messages":[{"role":"user","content":"hi"}],"max_tokens":32}'

4.5 若出现 401 status code (no body)

硅基流动文档:401 表示 API Key 没有正确设置。 常见原因:baseUrl 用了 https://api.siliconflow.com/v1(.com)。同一 Key 在 .cn 有效、在 .com 会 401。请确保 openclaw.json 与(若存在)~/.openclaw/agents/main/agent/models.json 中 siliconflow 的 baseUrl 均为 https://api.siliconflow.cn/v1。 若已用 .cn 仍 401:在控制台检查 Key 是否启用,必要时重新生成并更新 openclaw.json 与 auth-profiles.json 两处。

4.6 关于 agents/main/agent/models.json

该文件多为 OpenClaw 运行时根据主配置自动生成或同步。 持久修改请只改 ~/.openclaw/openclaw.json 的 models.providers,避免依赖手改 agents/main/agent/models.json。 修改配置后重启 Gateway:openclaw gateway restart

四(二)、配置 OpenClaw 使用 codeai88(中转平台)

codeai88 是 OpenAI 兼容的中转平台,官网调用示例:

curl https://codeai88.com/v1/chat/completions 
  -H 'Content-Type: application/json' 
  -H 'Authorization: Bearer YOUR_API_KEY' 
  -d '{"model":"gpt-3.5-turbo","messages":[{"role":"user","content":"Say this is a test!"}],"temperature":0.7}'

4.2.1 在主配置中增加 codeai88 提供方

~/.openclaw/openclaw.json"models" -> "providers" 中增加 "codeai88"(与 "ollama""siliconflow" 同级):

"codeai88": {
  "baseUrl": "https://codeai88.com/v1",
  "apiKey": "你的codeai88的API密钥",
  "api": "openai-completions",
  "models": [
    {
      "id": "gpt-3.5-turbo",
      "name": "GPT-3.5 Turbo",
      "reasoning": false,
      "input": ["text"],
      "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
      "contextWindow": 16385,
      "maxTokens": 4096
    }
  ]
}

4.2.2 设置默认模型

openclaw config set agents.defaults.model.primary "codeai88/gemini-2.5-flash"

4.2.3 为 Agent 配置 codeai88 的 auth profile

编辑 ~/.openclaw/agents/main/agent/auth-profiles.json,在 "profiles" 中增加:

"codeai88:default": {
  "type": "api_key",
  "provider": "codeai88",
  "key": "你的codeai88的API密钥"
}

"order" 中增加:

"codeai88": ["codeai88:default"]

API Key 与 openclaw.json 中 models.providers.codeai88.apiKey 保持一致。修改后重启 Gateway:openclaw gateway restart

五、Webchat 无回复:模型必须支持 Tool Calling

实战使用 qwen3、qwen3-coder、deepseek-r1。

六、OpenClaw 服务(Gateway)

首次安装openclaw gateway install(创建 plist 并加载到 launchd) 启动openclaw gateway start 重启openclaw gateway restart 停止openclaw gateway stop 前台运行(调试)openclaw gateway run 查看状态openclaw gateway status 若通过 launchd 管理,修改 plist 后需要先 stop 再重新 load:

openclaw gateway stop
launchctl bootstrap gui/$UID ~/Library/LaunchAgents/ai.openclaw.gateway.plist

七、常用命令速查

openclaw -V                     # 版本
openclaw config get agents.defaults.model
openclaw config set agents.defaults.model.primary "ollama/模型名"
openclaw models list            # 查看可用模型(需已设置 OLLAMA_API_KEY)
openclaw status                 # 状态与会话概览
openclaw gateway status         # Gateway 状态
openclaw dashboard              # 打开带 token 的 Control UI
openclaw cron list
openclaw cron add 
    --name "每日热点新闻推送" 
    --cron "*/5 * * * *" 
    --tz "Asia/Shanghai" 
    --session isolated 
    --message "请执行新闻推送脚本:/root/.openclaw/workspace/clawd/clawdbot_news_task.sh" 
    --announce 
    --channel feishu 
    --to "ou_0ebde71068a380fa63146e47e31d9174"
openclaw cron edit c442fa08-6ba1-4ff8-a857-d209d8c909f0 --cron "5 8,20 * * *" --tz Asia/Shanghai
openclaw cron rm c442fa08-6ba1-4ff8-a857-d209d8c909f0
openclaw cron status
openclaw cron runs --id c442fa08-6ba1-4ff8-a857-d209d8c909f0 --limit 5
openclaw logs --follow

八、配置文件与目录

项目 路径
主配置 ~/.openclaw/openclaw.json(Ollama、硅基流动、codeai88 等 providers 在 models.providers)
环境变量示例 openclaw.json 内 “env.vars” 或 ~/.zshrc 的 export OLLAMA_API_KEY
Gateway plist ~/Library/LaunchAgents/ai.openclaw.gateway.plist
Agent 目录 ~/.openclaw/agents/main/agent/
Auth 配置 ~/.openclaw/agents/main/agent/auth-profiles.json
会话存储 ~/.openclaw/agents/main/sessions/
Gateway 日志 ~/.openclaw/logs/gateway.loggateway.err.log

九、注意事项

1、执行 openclaw gateway install 可能会覆盖 plist,若之前手动加了 OLLAMA_API_KEY,之后需重新加入或依赖 env.vars 与 auth-profiles。 2、Webchat/嵌入式 Agent 必须使用支持 tools 的 Ollama 模型,否则会出现「无回复」或 400 does not support tools。 3、新会话才会使用当前默认模型;旧会话可能仍用创建时的模型。

十、Telegram 配对与「帮写代码」配置(上下文总结)

10.0 添加 TG

在 openclaw.json 配置:

"plugins": {
  "entries": {
    "telegram": {
      "enabled": true
    }
  }
}

再运行指令:

openclaw channels add --channel telegram --token 123:abc

10.1 Telegram 提示 “access not configured”

现象:给 Telegram Bot 发消息时收到:

OpenClaw: access not configured.
Your Telegram user id: 6652024379
Pairing code: GM3C9EVR
Ask the bot owner to approve with:
openclaw pairing approve telegram <code>

含义:这是 DM Pairing(私聊配对)。表示该 Telegram 账号尚未被允许使用你的 Bot;只有被 approve 过的用户,消息才会被处理。 解决:在运行 OpenClaw 的 Mac 上终端执行(把 <code> 换成实际配对码,如 GM3C9EVR):

openclaw pairing approve telegram <code>

可选:在终端先查看待批准列表再批准:

openclaw pairing list telegram
openclaw pairing approve telegram <code>

注意:配对码约 1 小时有效;过期后需重新给 Bot 发一条消息获取新码再 approve。

10.2 Telegram 回复 “missing_brave_api_key”

现象:在 Telegram 里发消息后,Bot 回复要求配置 Brave Search API key。 原因:Agent 默认可能使用 web_search(Brave Search),未配置 BRAVE_API_KEY 时会报错。 若只需要「跟 Telegram 聊天帮写代码」、使用 Ollama,可不配置 Brave,直接关闭网页搜索。

10.3 配置:Telegram + Ollama 帮写代码(无 Brave)

目标:仅用 Ollama 模型,在 Telegram 里实现帮写代码效果,且不出现 Brave API 报错。 在 ~/.openclaw/openclaw.json 中确保或添加: (1) 关闭网页搜索(避免 missing_brave_api_key):

"tools": {
  "web": {
    "search": { "enabled": false }
  },
  "profile": "coding"
}

(2) tools.profile: "coding" 表示侧重写代码相关工具(读/写文件、执行命令等)。 (3) 默认模型与 Ollama 已在前面章节配置,例如:

"agents": {
  "defaults": {
    "model": { "primary": "ollama/qwen3:latest" }
  }
}

(4) Telegram 通道与 token 在 channels.telegram 中配置(教程前文已涉及)。 修改配置后需重启 Gateway 使生效:

openclaw gateway restart

10.4 配置小结(Telegram + Ollama 帮写代码)

用 Ollama 对话:agents.defaults.model.primary 设为 "ollama/qwen3:latest"(或其它支持 tools 的模型)。 关 Brave 报错tools.web.search.enabled: false侧重写代码tools.profile: "coding"Telegram:channels.telegram 已配置并完成 pairing approve。 若之后需要网页搜索,可配置 Brave API Key(openclaw configure section web 或环境变量 BRAVE_API_KEY),再将 tools.web.search.enabled 改回 true

十一、其它补充

11.0 参考火山引擎文档《快速部署OpenClaw(原Moltbot),集成飞书AI助手》

https://www.volcengine.com/docs/6396/2189942?lang=zh#kY7J5nzc

11.1 参考阿里云文档《OpenClaw(原Moltbot、Clawdbot)集成飞书》

https://help.aliyun.com/zh/simple-application-server/use-cases/openclaw-integrated-fly-book?spm=a2c4g.11186623.help-menu-58607.d_3_0_0_2.458f66eegNBGyF&scm=20140722.H_3019601._.OR_help-T_cn~zh-V_1

11.2 参考腾讯云文档《🔥🔥🔥玩转OpenClaw|云上OpenClaw(Clawdbot)最全实践教程合辑》

https://cloud.tencent.com/developer/article/2624973

11.3 总结

对于新手来说,用腾讯云的部署会相对简单。 教程结束

Categories

最简单的方式

拥有多年的WordPress网页设计、网站建设、网站优化的经验!打算自己建设网站,还是想请专家协助,这里都能够帮助到您。

打造您的专属的网站

我们专精于 WordPress 网站,全世界有40%以上的网站是用WordPress建设的。他不仅功能强大,后台还超容易上手。
我想了解

该功能暂未开放~