需统一挂载共享状态目录、集中管理登录态、锁定技能插件版本、安全分发API密钥、启用消息通道仲裁机制。具体包括:一、用rclone挂载COS/OSS为统一state目录;二、导出并同步wechat-auth.json凭证;三、Git托管skills目录并自动重载;四、GPG加密API密钥文件并环境变量注入;五、启用multi-device-mode与active.lock仲裁。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

如果您在多台设备上安装并运行QClaw,但发现微信指令执行结果不一致、文件整理路径错乱或认证状态失效,则可能是由于各端数据存储隔离、凭证未同步或技能插件版本不同所致。以下是保持QClaw多设备配置一致的操作步骤:
一、统一挂载共享状态目录
QClaw默认将会话历史、任务队列、定时器状态等写入本地~/.qclaw/state/目录,多设备各自独立会导致状态分裂。需通过远程存储挂载实现物理路径统一。
1、在腾讯云COS或阿里云OSS中新建私有存储桶,命名如qclaw-shared-state,设置ACL为仅主账号读写;
2、在每台目标设备上安装rclone,并执行rclone config添加该COS/OSS后端,命名为qclaw-remote;
3、创建本地挂载点目录:mkdir -p ~/.qclaw/shared-state;
4、运行挂载命令:rclone mount qclaw-remote:qclaw-shared-state ~/.qclaw/shared-state --vfs-cache-mode writes --daemon;
5、修改每台设备的~/.qclaw/config.yml,将stateDirectory字段值设为~/.qclaw/shared-state;
6、重启QClaw服务:qclaw restart,验证~/.qclaw/shared-state/tasks/下是否生成跨设备可见的pending.json与history.db。
二、集中管理微信与QQ登录态
QClaw依赖本地Webkit内核保存微信/QQ扫码后的Cookie及WebSocket长连接Token,各设备独立登录将导致“已授权但无法收发消息”。必须将认证凭证提取为可复用的结构化文件并同步。
1、在任一已成功关联微信的设备上,执行qclaw export-auth --platform wechat > ~/.qclaw/shared-auth/wechat-auth.json;
2、将~/.qclaw/shared-auth/目录上传至前述COS/OSS存储桶的auth/子路径;
3、在其余设备启动前,先执行rclone sync qclaw-remote:auth ~/.qclaw/shared-auth拉取最新凭证;
4、启动QClaw时添加参数:qclaw start --auth-dir ~/.qclaw/shared-auth;
5、若出现“登录过期”提示,需在任意一端重新扫码,随后再次执行qclaw export-auth并同步全量。
三、全局技能插件版本锁定
QClaw通过skills/目录加载自定义动作(如“整理发票表格”、“归档录屏文件”),若各端插件代码不一致,将导致同一微信指令在不同设备产生不同行为。必须强制使用Git托管的单一真实源。
1、在GitHub或腾讯工蜂平台新建私有仓库qclaw-global-skills,将全部manifest.yml与index.js提交;
2、在每台设备的~/.qclaw/目录下执行:rm -rf skills && git clone https://git.code.tencent.com/yourname/qclaw-global-skills skills;
3、配置自动同步:在skills/目录内添加.git/hooks/post-merge脚本,内容为qclaw reload-skills;
4、所有插件更新必须经由git push触发,禁止直接编辑本地skills/文件;
5、验证方式:在微信中发送“列出可用技能”,各设备返回的技能名称与版本号应完全相同。
四、模型配置与API密钥安全分发
QClaw支持动态切换大模型后端,但API Key硬编码在配置文件中易引发泄露风险,且多设备间Key不一致将导致响应质量波动。须采用环境变量+加密文件双重机制。
1、在COS/OSS中创建keys/目录,上传经gpg --symmetric --cipher-algo AES256加密的api-keys.env.gpg文件;
2、每台设备安装gpg并导入统一密码短语;
3、添加系统级启动脚本/etc/profile.d/qclaw-env.sh,内容包含:export OPENCLAW_KEYS_PATH="~/.qclaw/shared-keys/api-keys.env.gpg";
4、QClaw启动时自动解密并注入环境变量,模型路由层读取$OPENCLAW_API_KEY_KIMI、$OPENCLAW_API_KEY_DEEPSEEK等变量;
5、关键提示:禁止在微信对话中透露任何密钥明文,所有密钥更新必须经由COS同步+服务重载完成。
五、微信/QQ消息通道唯一性校验
QClaw通过设备唯一标识符(DeviceID)注册消息通道,若多设备使用同一微信账号扫码,服务器可能将消息随机路由至某一台设备,造成指令丢失。需启用通道仲裁机制。
1、在~/.qclaw/config.yml中启用multi-device-mode: true;
2、指定主控设备优先级:primary-device: "home-desktop",其余设备设为secondary;
3、主控设备启动时自动向COSchannels/目录写入带时间戳的active.lock文件;
4、次级设备启动后检查该文件最后修改时间,若距今超过300秒则自动接管;
5、所有设备必须配置NTP时间同步,误差不得大于±2秒,否则仲裁逻辑将失效。









