1. 为什么要在 Linux 上折腾 Openclaw 养龙虾Openclaw 是一个面向开发者的自动化智能体框架你可以把它理解成一个能 7×24 小时帮你干活的“数字员工”。它能接入 ClawHub 技能市场里的各种技能包实现自动发帖、自动监控、自动回复、自动整理数据这类重复性工作。适合谁适合手上有闲置 Linux 机器、懂一点 Node.js、想低成本跑通自动化流程的开发者。不适合完全没碰过命令行的小白直接上生产环境。我这次的目标很明确在一台 Ubuntu 22.04 的云服务器上从零装好 Openclaw接入 ClawHub 技能用 TaoToken 的统一 Key 打通大模型 API最后验证连通性并且把卸载清理的残留检查也走一遍。整个过程我会把可复制的config.toml和settings.json骨架贴出来你照着改就能用。为什么强调“安装与卸载”一起讲因为很多人装完就跑结果机器上留了一堆后台进程、环境变量、缓存目录下次想重装或者换版本时冲突不断。养龙虾这件事装得干净、卸得干净才能长期稳定地跑自动化也才能控制住风险。2. TaoToken 前置统一 Key 解决多模型切换Openclaw 本身不绑定某一家大模型它通过 API 调用外部模型来完成推理和决策。问题来了如果你同时想用 Claude 做代码、用 GPT 做文案、用国产模型做中文任务就得管理好几套 Key、好几个 Base URL配置散落在不同文件里换一次模型改一次配置非常容易出错。TaoToken 的作用就是把这些统一起来。你只需要在 TaoToken 申请一个统一 Key然后在 Openclaw 的配置里把 API 地址指向 TaoToken 的接口模型名按需切换即可。这样你的config.toml里只维护一份凭证换模型只改一个字段。具体操作路径打开官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 注册账号进入控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 创建 API KeyKey 管理页面在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewriteAPI 接入地址统一用 https://taotoken.net/api这个不加 UTM直接填注意API Key 只显示一次创建后立刻复制保存到密码管理器或服务器的环境变量文件里不要直接写进会提交到 Git 的配置文件。如果你后面要长期跑编码类任务或者 Agent 工作流可以了解下 Coding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 它更适合高频调用的场景。单纯验证模型通不通用模型对话页面 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodelsutm_campaignrewrite 就能快速测。3. Linux Node.js 环境准备与 Openclaw 安装3.1 系统依赖检查先确认你的机器架构和系统版本。Openclaw 对 Node.js 版本有要求建议 18 LTS 以上。我用的是 Ubuntu 22.04 x86_64。uname -m lsb_release -a node -v npm -v如果node -v报 command not found说明没装 Node.js。用 NodeSource 的源装 20 LTScurl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt-get install -y nodejs node -v装完确认版本是 v20.x。npm 会随 Node.js 一起装上。3.2 安装 OpenclawOpenclaw 通过 npm 全局安装。这里有个坑不要用sudo npm install -g否则后续权限和路径会乱。正确做法是配置 npm 的全局目录到用户目录下。mkdir -p ~/.npm-global npm config set prefix ~/.npm-global echo export PATH~/.npm-global/bin:$PATH ~/.bashrc source ~/.bashrc然后安装npm install -g openclaw openclaw --version如果openclaw --version能输出版本号说明安装成功。如果报权限错误检查~/.npm-global/bin是否在 PATH 里。3.3 初始化配置目录Openclaw 默认在~/.openclaw下读取配置。手动创建目录结构mkdir -p ~/.openclaw/skills mkdir -p ~/.openclaw/logs mkdir -p ~/.openclaw/cache4. 可复制配置config.toml 与 settings.json 骨架4.1 config.toml 主配置Openclaw 的主配置用 TOML 格式。下面这份骨架你可以直接复制把api_key换成你自己的 TaoToken Key。[server] host 127.0.0.1 port 18789 log_level info [model] provider taotoken base_url https://taotoken.net/api api_key sk-你的TaoToken统一Key default_model claude-sonnet-4-20250514 timeout_seconds 120 max_retries 3 [skills] hub_url https://clawhub.openclaw.dev install_dir ~/.openclaw/skills auto_update false [security] allow_public_bind false sandbox_enabled true command_whitelist [ls, cat, curl, node, python3]几个关键点解释base_url填 TaoToken 的 API 地址不要带 UTM 参数。api_key用你申请的统一 Key。default_model可以换成你想用的模型名TaoToken 支持的模型在模型对话页面能查到。allow_public_bind false很重要。Openclaw 权限很高默认只监听本地回环地址不要图方便改成0.0.0.0否则公网扫描到你的端口会非常危险。sandbox_enabled true开启沙箱隔离技能执行命令时会被限制在白名单内。4.2 settings.json 技能配置ClawHub 技能的部分参数放在settings.json里。这份骨架覆盖了常见的技能接入配置{ skills: { auto_install: false, registry: https://clawhub.openclaw.dev/api/v1, installed: [], config: { xiaohongshu-publisher: { enabled: false, schedule: 0 10 * * *, account: your_account }, web-monitor: { enabled: false, interval_minutes: 10, targets: [] } } }, logging: { level: info, file: ~/.openclaw/logs/openclaw.log, max_size_mb: 50 }, cache: { dir: ~/.openclaw/cache, ttl_seconds: 3600 } }把这两个文件放到~/.openclaw/下cp config.toml ~/.openclaw/config.toml cp settings.json ~/.openclaw/settings.json4.3 环境变量方式管理 Key推荐比起把 Key 写死在config.toml里更安全的做法是用环境变量。修改config.toml的api_key字段为api_key ${TAOTOKEN_API_KEY}然后在~/.bashrc里加export TAOTOKEN_API_KEYsk-你的TaoToken统一Key这样配置文件可以安全地备份或分享Key 不会泄露。5. 验证请求API 连通性与技能加载5.1 启动 Openclawopenclaw start --config ~/.openclaw/config.toml如果前台启动看到类似Server listening on 127.0.0.1:18789的输出说明服务起来了。生产环境建议用 systemd 或 pm2 托管这里先手动跑通。5.2 测试模型 API 连通性新开一个终端用 curl 直接测 TaoToken 的接口curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer $TAOTOKEN_API_KEY \ -H Content-Type: application/json \ -d { model: claude-sonnet-4-20250514, messages: [{role: user, content: 回复OK两个字母}], max_tokens: 10 }如果返回 JSON 里choices[0].message.content包含OK说明 Key 和网络都通。如果返回 401检查 Key 是否复制完整返回 404检查base_url是否写成了https://taotoken.net/api而不是别的路径。5.3 通过 Openclaw 发一条测试请求Openclaw 自带 CLI 测试命令openclaw chat --message 你好测试连通性 --model claude-sonnet-4-20250514如果能看到模型回复说明 Openclaw 读取配置、调用 TaoToken、返回结果这条链路全部打通。5.4 安装并加载 ClawHub 技能从 ClawHub 搜索技能openclaw skill search xiaohongshu安装指定技能openclaw skill install xiaohongshu-publisher安装后检查技能列表openclaw skill list如果技能出现在列表里且状态是installed说明接入成功。然后在settings.json里把对应技能的enabled改成true重启 Openclaw 生效。6. 本篇常见错排查6.1 Node.js 版本不兼容报错Error: Cannot find module node:fs/promises或类似语法错误基本是 Node.js 版本太低。用node -v确认低于 18 就升级。6.2 npm 全局安装权限报错报错EACCES: permission denied说明你在用系统级 npm 目录。按 3.2 节的步骤把 prefix 改到~/.npm-global不要用 sudo 硬装。6.3 API 返回 401 Unauthorized三种可能Key 复制时带了空格环境变量没source ~/.bashrc生效config.toml里写的是${TAOTOKEN_API_KEY}但变量名拼错。用echo $TAOTOKEN_API_KEY确认变量存在。6.4 技能安装后不生效检查settings.json里对应技能的enabled是否为true以及是否重启了 Openclaw。技能配置改动后必须重启进程才会重新加载。6.5 端口被占用报错EADDRINUSE: address already in use 127.0.0.1:18789说明有旧进程没退干净。用lsof -i :18789找到 PID 后 kill 掉或者改config.toml里的端口。6.6 卸载残留检查卸载 Openclaw 时光npm uninstall -g openclaw不够残留会留在这些地方# 检查残留进程 ps aux | grep openclaw # 检查配置和缓存目录 ls -la ~/.openclaw # 检查 npm 全局目录 ls ~/.npm-global/lib/node_modules/ | grep openclaw # 检查环境变量 grep -i openclaw ~/.bashrc确认无用后清理npm uninstall -g openclaw rm -rf ~/.openclaw sed -i /openclaw/d ~/.bashrc清理完再ps aux | grep openclaw确认没有残留进程才算卸干净。7. 下一步把 Key 和技能用起来装好只是第一步。接下来你可以用 TaoToken 的统一 Key 去跑模型对话验证不同模型的效果地址在 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodelsutm_campaignrewrite 。如果你打算长期跑编码类 Agent 任务Coding Plan 会更划算https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 。接入过程中遇到配置问题直接翻接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面有针对 Openclaw 这类框架的 Base URL 填写说明。最后提醒一句Openclaw 权限高装完先把allow_public_bind保持 false技能按需开启不要一上来就把所有技能全打开。养龙虾的核心不是装得多而是跑得稳、控得住。