OpenClaw通过环境变量OPENCLAW_API_KEY安全存储免费模型API密钥,禁止硬编码;Linux/macOS需写入Shell配置并source生效,Windows需PowerShell设置用户级变量并重启终端,项目级可使用.env文件配合python-dotenv加载。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在OpenClaw中安全存储免费模型API Key,必须避免将密钥硬编码进配置文件或源码,否则一旦代码提交到Git仓库,密钥将永久泄露且无法撤销。
确认OpenClaw支持的环境变量命名规范
OpenClaw默认读取OPENCLAW_API_KEY环境变量作为主密钥入口。若使用免费模型(如Qwen、Phi-3、Gemma等),该变量值即为对应模型提供商分配的密钥字符串。不支持自定义变量名,强行改名会导致初始化失败并抛出KeyError: 'OPENCLAW_API_KEY'异常。
这一步操作起来很简单,直接把文件拖进去就行。
Linux/macOS系统:永久写入Shell配置文件
第一步:打开终端,执行echo 'export OPENCLAW_API_KEY="sk-free-abc123xyz"' >> ~/.zshrc(若使用bash则改为~/.bashrc)。
第二步:执行source ~/.zshrc使变量立即生效。注意:不要漏掉source命令,否则新终端窗口仍读不到该变量。
第三步:验证是否设置成功——运行echo $OPENCLAW_API_KEY,应输出完整密钥字符串。若为空,请检查引号是否闭合、等号两侧有无空格、文件路径是否正确。
Windows系统:通过PowerShell设置用户级变量
以管理员身份打开PowerShell,运行以下命令:
[System.Environment]::SetEnvironmentVariable('OPENCLAW_API_KEY', 'sk-free-abc123xyz', 'User')
【必须重启所有已打开的IDE或终端窗口】,否则Python进程无法继承新变量。
项目级隔离:使用.env文件配合python-dotenv
方法一:创建.env文件(注意开头带点,无扩展名),内容仅一行:OPENCLAW_API_KEY=sk-free-abc123xyz。
方法二:在Python启动脚本顶部添加两行:
from dotenv import load_dotenvload_dotenv()
注意:.env文件必须放在项目根目录,且load_dotenv()要在任何导入OpenClaw模块之前调用,否则无效。
验证密钥是否被正确加载
运行以下最小验证脚本:
import osprint("API Key loaded:", bool(os.getenv("OPENCLAW_API_KEY")))
输出True表示成功;若为False,说明环境变量未生效或名称拼错。


















