引言
在上一篇文章中,我们深入剖析了 OpenClaw 的架构设计。现在,是时候真正上手了。
OpenClaw 是一个开源的 AI 编程助手 CLI 工具,作为 Claude Code 的轻量级替代方案而设计。与 Claude Code 需要 Anthropic API 密钥不同,OpenClaw 支持多种模型提供商,包括 OpenAI、Anthropic,甚至可以通过 Ollama 运行完全免费的开源本地模型。
本文将手把手带你完成从安装到配置的全过程,无论你是想用最前沿的商业模型,还是希望完全免费地使用本地模型,都能找到适合的方案。
安装 OpenClaw
OpenClaw 提供了两种安装方式:pip(Python)和 npm(Node.js)。选择一种你熟悉的即可。
系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | Linux / macOS / Windows (WSL2) |
| Python | 3.9 及以上(使用 pip 安装时) |
| Node.js | 18 及以上(使用 npm 安装时) |
| 终端 | 支持 ANSI 彩色输出 |
| 磁盘空间 | 约 50-200MB(含依赖,不含模型) |
方式一:使用 pip 安装(推荐)
# 直接安装
pip install openclaw
# 如果遇到权限问题,使用用户级安装
pip install --user openclaw
# 建议在虚拟环境中安装
python3 -m venv claw-env
source claw-env/bin/activate # Linux/macOS
# claw-env\Scripts\activate # Windows
pip install openclaw
方式二:使用 npm 安装
# 全局安装
npm install -g openclaw
# 如果权限不足,配置 npm 全局路径后重试
npm config set prefix ~/.npm-global
export PATH=~/.npm-global/bin:$PATH
npm install -g openclaw
验证安装
安装完成后,运行以下命令验证:
# 查看版本
openclaw --version
# 预期输出: openclaw x.y.z
# 查看帮助
openclaw --help
# 预期输出: 显示所有可用命令和选项
# 启动交互模式(此时会提示配置 API Key)
openclaw
💡 提示:首次运行
openclaw时,如果未配置 API 密钥,程序会引导你完成初始设置。你可以直接退出(Ctrl+C),先完成下面的配置步骤。
API 密钥配置
OpenClaw 需要访问某个 LLM 后端来驱动 AI 能力。你可以选择商业 API 或本地模型。
配置方式
OpenClaw 支持多种配置方式(优先级从高到低):
- 环境变量:最高优先级,适合 CI/CD 和临时切换
- 配置文件:持久化保存,适合日常使用
- 命令行参数:临时覆盖
方式一:环境变量配置(推荐临时使用)
# OpenAI
export OPENAI_API_KEY="sk-your-api-key-here"
# Anthropic
export ANTHROPIC_API_KEY="sk-ant-your-api-key-here"
# 自定义 API 地址(兼容 OpenAI 格式的第三方服务)
export OPENAI_BASE_URL="https://your-custom-endpoint.com/v1"
方式二:配置文件
OpenClaw 会在首次运行时自动创建配置文件。手动配置方法如下:
# 创建配置文件目录
mkdir -p ~/.config/openclaw
# 编辑配置文件
vim ~/.config/openclaw/config.yaml
配置文件内容示例:
# OpenClaw 配置文件 ~/.config/openclaw/config.yaml
# LLM 提供商配置
llm:
# 默认提供商:openai, anthropic, ollama
provider: openai
# OpenAI 配置
openai:
api_key: "${OPENAI_API_KEY}" # 支持环境变量引用
model: gpt-4o # 模型名称
base_url: "https://api.openai.com/v1" # 兼容第三方 API
# Anthropic 配置
anthropic:
api_key: "${ANTHROPIC_API_KEY}"
model: claude-sonnet-4-20250514
# Ollama 本地模型配置
ollama:
base_url: "http://localhost:11434"
model: llama3.2
# 工具行为配置
tools:
# 文件操作安全设置
safe_mode: true
# 允许的文件扩展名
allowed_extensions:
- .py
- .js
- .ts
- .json
- .md
# 禁止修改的系统路径
blocked_paths:
- "/etc"
- "/root"
# Shell 命令安全设置
command_timeout: 60 # 命令超时时间(秒)
require_confirmation: true # 高危命令需要确认
# 界面配置
ui:
theme: "auto" # light, dark, auto
syntax_highlighting: true
show_token_usage: true
# 会话配置
session:
autosave: true
max_history: 100
save_path: "~/.local/share/openclaw/sessions"
模型提供商选择
OpenClaw 最强大的特性就是支持多种模型提供商。下面详细介绍每种方案的特点。
方案一:OpenAI(推荐入门)
适合人群:希望获得高效稳定的编程体验,愿意支付适当费用
# config.yaml 配置
llm:
provider: openai
openai:
api_key: "sk-xxxxx"
model: gpt-4o # 或 gpt-4o-mini(更经济)
| 模型 | 价格 (输入/输出 per M tokens) | 特点 |
|---|---|---|
| GPT-4o | $2.50 / $10.00 | 最强综合能力,编程质量高 |
| GPT-4o-mini | $0.15 / $0.60 | 性价比之选,日常编程足够 |
| o3-mini | $1.10 / $4.40 | 推理能力突出,适合复杂问题 |
获取 API 密钥:访问 platform.openai.com/api-keys 注册并创建密钥。新用户通常有 $5 免费额度。
方案二:Anthropic Claude
适合人群:看重代码质量,偏好 Claude 系列模型
llm:
provider: anthropic
anthropic:
api_key: "sk-ant-xxxxx"
model: claude-sonnet-4-20250514
| 模型 | 价格 (输入/输出 per M tokens) | 特点 |
|---|---|---|
| Claude Sonnet 4 | $3.00 / $15.00 | 编程能力强,代码质量高 |
| Claude Haiku 3.5 | $0.80 / $4.00 | 快速轻量,适合日常任务 |
获取 API 密钥:访问 console.anthropic.com 注册。
方案三:Ollama 本地模型(完全免费)
适合人群:预算为零、重视隐私、希望在离线环境下使用
这是 OpenClaw 最独特的功能之一——通过 Ollama 运行本地大模型,实现完全免费的 AI 编程助手。
安装 Ollama
# Linux / macOS
curl -fsSL https://ollama.com/install.sh | sh
# 或者访问 https://ollama.com/download 下载对应版本
下载模型
# 下载推荐模型(按需选择)
ollama pull llama3.2 # 轻量级(3B),日常简单任务
ollama pull llama3.1 # 中等(8B),编程质量较好
ollama pull codegemma # 代码专用模型(2B/7B)
ollama pull deepseek-coder # 深度求索编程模型(6.7B)
ollama pull qwen2.5-coder # 通义千问编程模型(7B/14B)
各模型的内存需求和编程能力对比如下:
| 模型 | 大小 | 内存占用 | 编程能力 | 适合场景 |
|---|---|---|---|---|
| llama3.2 (3B) | 1.9GB | ~4GB RAM | ⭐⭐⭐ | 简单代码生成、解释 |
| codegemma (2B) | 1.3GB | ~3GB RAM | ⭐⭐⭐ | 代码补全、简单编程 |
| deepseek-coder (6.7B) | 3.8GB | ~8GB RAM | ⭐⭐⭐⭐ | 日常编程助手 |
| qwen2.5-coder (7B) | 4.2GB | ~8GB RAM | ⭐⭐⭐⭐ | 中英文编程 |
| llama3.1 (8B) | 4.7GB | ~8GB RAM | ⭐⭐⭐⭐ | 综合编程 |
| deepseek-coder (33B) | 19GB | ~24GB RAM | ⭐⭐⭐⭐⭐ | 复杂项目开发 |
配置 OpenClaw 使用本地模型
llm:
provider: ollama
ollama:
base_url: "http://localhost:11434"
model: deepseek-coder # 建议使用编程专用模型
启动并使用
# 1. 确保 Ollama 服务在运行
ollama serve
# 或者 Ollama 通常会作为后台服务自动运行
# 2. 验证服务状态
curl http://localhost:11434/api/tags
# 预期输出: 显示已安装的模型列表
# 3. 启动 OpenClaw
openclaw
💡 完全免费方案要点:
- Ollama + 开源模型 = 零 API 费用
- 所有代码数据完全留在本机
- 无需互联网连接(模型下载后)
- 建议使用 7B-8B 级别的模型以获得较好的编程能力
- 如果内存充足(24GB+),可以尝试 33B 模型获得接近商业模型的体验
方案四:通过兼容 API 使用国产模型
OpenClaw 的 OpenAI 兼容模式支持第三方 API,包括国产模型服务:
llm:
provider: openai
openai:
api_key: "sk-xxxxx"
base_url: "https://api.deepseek.com/v1" # DeepSeek API
model: deepseek-chat
# 或者通义千问
# base_url: "https://dashscope.aliyuncs.com/compatible-mode/v1"
# model: qwen-plus
常用命令
安装配置完成后,来看看 OpenClaw 的常用命令:
启动方式
# 交互式会话模式(推荐)
openclaw
# 单次对话模式
openclaw "帮我写一个斐波那契数列生成器"
# 从文件读取输入
openclaw < prompt.txt
# 指定工作目录
openclaw --workdir /path/to/project
# 指定模型
openclaw --provider openai --model gpt-4o-mini
交互式会话中的命令
进入交互式界面后,可以使用以下内部命令:
| 命令 | 功能 | 示例 |
|---|---|---|
/help | 显示帮助信息 | /help |
/clear | 清屏 | /clear |
/reset | 重置对话(清除历史) | /reset |
/model | 切换模型 | /model gpt-4o |
/provider | 切换提供商 | /provider ollama |
/tokens | 显示当前 Token 使用情况 | /tokens |
/save | 保存当前会话 | /save my-session |
/load | 加载历史会话 | /load my-session |
/exit | 退出 | /exit 或 Ctrl+C |
文件操作示例
# 在项目目录中启动
cd ~/my-project
openclaw
# 然后可以在交互界面中输入类似:
# "在 src/ 目录下创建一个 utils.py 文件,包含字符串处理工具函数"
# "帮我重构 main.js 中的 fetchData 函数,改用 async/await"
# "搜索所有包含 TODO 注释的文件"
# "查看当前 Git 状态并帮我生成提交信息"
配置进阶
多配置文件
你可以为不同项目创建独立的配置文件:
# 在项目目录下放置 .openclaw.yaml 覆盖全局配置
cd ~/my-project
cat > .openclaw.yaml << 'EOF'
llm:
provider: openai
openai:
model: gpt-4o
tools:
safe_mode: false
EOF
# 启动时自动读取项目配置
openclaw
自定义模型参数
llm:
openai:
model: gpt-4o
# 高级参数
temperature: 0.0 # 代码生成建议为0,保持确定性
max_tokens: 4096 # 单次响应的最大 Token 数
top_p: 1.0
frequency_penalty: 0.0
presence_penalty: 0.0
代理配置
如果你在特定网络环境下使用:
# 通过环境变量配置代理
export HTTP_PROXY="http://127.0.0.1:7890"
export HTTPS_PROXY="http://127.0.0.1:7890"
openclaw
注意事项和常见问题
常见问题排查
Q1: 安装时报权限错误
# 使用用户级安装
pip install --user openclaw
# 或者使用虚拟环境(推荐)
python3 -m venv ~/.venvs/openclaw
source ~/.venvs/openclaw/bin/activate
pip install openclaw
Q2: API Key 错误或认证失败
# 检查环境变量是否设置
echo $OPENAI_API_KEY
# 检查配置文件语法
python3 -c "import yaml; yaml.safe_load(open('~/.config/openclaw/config.yaml'))"
# 测试 API 连通性
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
Q3: Ollama 连接失败
# 确认 Ollama 正在运行
ollama list
# 查看 Ollama 服务状态
systemctl status ollama # Linux
# 测试 API 端点
curl http://localhost:11434/api/tags
# 如果 Ollama 运行在另一台机器,修改 base_url
# ollama.base_url: "http://192.168.1.100:11434"
Q4: 工具执行超时
# 在配置文件中增加超时时间
tools:
command_timeout: 120 # 增加到120秒
Q5: 中文编码问题
# 确保终端支持 UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Q6: 上下文不足
# 调整上下文管理策略
session:
max_history: 50 # 减少历史轮数
max_tokens: 32000 # 根据模型调整
性能优化建议
- 选择合适的模型:日常简单编程用 GPT-4o-mini 或本地 7B 模型即可,复杂任务再切换到 GPT-4o
- 控制上下文大小:定期用
/reset重置对话,避免上下文过长导致响应变慢 - 本地模型量化优化:Ollama 默认使用量化模型,如果需要更高质量可以拉取非量化版本(但需要更多内存)
- 多会话管理:不同项目使用不同会话,避免上下文污染
与其他 Agent 的比较选择
面对众多 AI 编程助手,如何选择?以下是与几个主流选项的对比:
| 维度 | OpenClaw | Claude Code | DeepSeek-TUI |
|---|---|---|---|
| 安装方式 | pip / npm | npm | pip |
| 开源 | ✅ MIT | ❌ 闭源 | ✅ 开源 |
| 免费方案 | ✅ Ollama 本地模型 | ❌ 仅付费 API | ✅ 免费 API 额度 |
| 多模型支持 | ✅ OpenAI、Anthropic、Ollama 等 | ❌ 仅 Claude | ❌ 仅 DeepSeek |
| 离线使用 | ✅ 配合 Ollama | ❌ | ❌ |
| 模型成本 | 自由选择 | 较高 | 极低 |
| 技术栈 | Python/Node.js | Node.js | Python |
| TUI 界面 | CLI 风格 | TUI 交互式 | Textual 框架 |
| 社区规模 | ⭐⭐⭐ (成长中) | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| 代码质量 | 取决于所选模型 | 优秀(Claude Sonnet/Opus) | 良好(DeepSeek Chat/Coder) |
选择建议
- 追求最强编程能力:Claude Code(但需付费)
- 预算为零、需要免费方案:OpenClaw + Ollama + 本地模型
- 重视隐私安全:OpenClaw + Ollama(数据完全本地)
- 想体验多种模型:OpenClaw(自由切换提供商)
- 需要使用 DeepSeek API:DeepSeek-TUI(原生支持)或 OpenClaw(兼容模式)
- 需要 IDE 深度集成:GitHub Copilot / Cursor(与 CLI 工具互补)
总结
OpenClaw 的安装和配置过程非常直接,其最大的优势在于 灵活性——你可以自由选择模型提供商、配置行为和扩展功能。
无论你是:
- 免费用户:Ollama + 本地开源模型 = 零成本
- 商业用户:OpenAI/Anthropic 最强模型 = 最佳体验
- 隐私敏感用户:本地模型 = 数据零泄露
- 多模型用户:灵活切换 = 对比选择的自由
OpenClaw 都能满足你的需求。现在就打开终端,开始你的 AI 编程之旅吧!
# 一分钟快速启动
pip install openclaw
export OPENAI_API_KEY="sk-xxx"
openclaw "你好,OpenClaw!"