从零搭建 OpenClaw:一位老运维的配置心得与避坑指南

从零搭建 OpenClaw:一位老运维的配置心得与避坑指南技术教程主机格调

一个月前,我在一台 4G2H 的 AMD VPS 上部署了 OpenClaw。从最初的默认配置,到经历各种坑后的深度优化,现在整理成这篇实战指南。如果你也想搭建一个稳定、安全的 AI Agent 系统,这篇文章能帮你少走很多弯路。

一、架构设计:三层记忆系统

1.1 为什么需要分层?

刚开始我把所有信息都往一个文件里塞,结果 30 天后:

  • MEMORY.md 从 20 条膨胀到 100+ 条
  • 过期条目堆积如山
  • 找关键信息像大海捞针

后来参考了 X 上 @karry_viber 的经验,设计了 P0/P1/P2 三层架构

L0 (Daily)  → memory/2026-03-06.md    # 每日工作日志
L1 (Active) → MEMORY.md [P1][日期]    # 90天活跃项目  
L2 (Core)   → SOUL.md/AGENTS.md [P0]  # 永久核心规则

1.2 关键教训:日期不是可选的

最开始我觉得 [P1] 标签就够了,结果 janitor(清理脚本)跑了一个月,一条都没删掉——因为它不知道日期,算不出 90 天是多久

正确格式

[P1][2026-03-06] AI日报系统重复发布修复
[P2][2026-03-06] 临时调试记录

三层防御机制

  1. Prompt 强制要求日期格式
  2. AGENTS.md 硬规则:"P1/P2 无日期拒绝写入"
  3. 后处理脚本自动补日期(兜底)

二、权限安全:那些容易被忽视的坑

2.1 credentials 目录:755 → 700

OpenClaw 安装后,credentials 目录默认是 755。安全审计时一堆 WARN:

WARN: Credentials dir is readable by others
/root/.openclaw/credentials mode=755

修复

chmod 700 /root/.openclaw/credentials

就这么简单,但默认安装不会帮你做。

2.2 Python 脚本权限:不是越多越好

一开始我无脑给所有 .py 文件加了执行权限,结果发现:

错误做法

chmod +x skills/**/scripts/*.py   # 包括 __init__.py!

正确做法

# 有 shebang (#!/usr/bin/env python3) 的才需要 +x
chmod +x publish.py
chmod +x xxx_writer.py

# __init__.py 是模块标记文件,不能有执行权限
chmod -x __init__.py

为什么? __init__.py 是被 Python 解释器导入时读取的,不是被操作系统执行的。给它 +x 没有任何好处,反而是安全隐患。

三、核心配置:2026.3.2 升级后的坑

3.1 tools.profile: minimal → full

升级 2026.3.2 后,OpenClaw 默认把工具权限设成了 minimal。结果是:

  • exec 命令被拒绝
  • web_fetch 无法使用
  • 所有脚本都跑不起来

修复~/.openclaw/openclaw.json):

{
  "tools": {
    "profile": "full",
    "sessions": { "visibility": "all" }
  }
}

教训:升级后第一件事就是检查 tools.profile,默认的 minimal 几乎 unusable。

3.2 plugins.allow: 显式授权

kimi-claw 插件加载时会有 WARN:

loaded without install/load-path provenance

修复

{
  "plugins": {
    "allow": ["kimi-claw"]
  }
}

四、健康检查:别等出事了才看

4.1 我踩过的坑

  • Chrome 僵尸进程:跑了 20+ 个 renderer,内存吃满
  • inode 耗尽:小文件过多,df -h 显示正常但写不了文件
  • 脚本死链:SKILL.md 引用的脚本早就改名了

4.2 深度健康检查脚本

写了 10 项自动检查,每周日运行:

#!/bin/bash
# deep_health_check.sh

# 1. credential 权限 (必须 700)
# 2. skill 脚本权限 (__init__.py 不能有 +x)
# 3. 日志目录存在性
# 4. Python 语法检查
# 5. 磁盘空间 (<80%)
# 6. inode 使用 (<80%)
# 7. 内存使用 (<80%)
# 8. OpenClaw Gateway 进程
# 9. Chrome 进程数量 (<20)
# 10. kimi-claw 插件存在

自动修复:权限错误、目录缺失等常见问题自动处理,其他的记录日志告警。

五、数据一致性:单一数据源原则

5.1 问题:同一项目记在 13 个文件里

"AI Daily Digest" 这个项目,同时出现在:

  • USER.md(项目定义)
  • MEMORY.md(活跃项目)
  • TOKEN_OPTIMIZATION_PLAN.md(Token 分析)
  • memory/日期.md(9 个日期的历史记录)

后果:更新时总要改 5+ 个文件,总有一个忘改,数据互相矛盾。

5.2 解决:砍到单一数据源

主数据:MEMORY.md [P1] 标签

其他文件:只放指针

<!-- USER.md -->
**Project**: AI Daily Digest (详见 MEMORY.md [P1])

<!-- TOKEN_OPTIMIZATION_PLAN.md -->
Token 分析对象: AI日报 (详见 MEMORY.md [P1][2026-03-06])

<!-- memory/日期.md -->
今日工作: 优化 AI日报抓取逻辑
(项目定义见 MEMORY.md,这里只记当天具体工作)

六、故障排查:常见错误速查

错误信息 原因 解决
22 validation errors: 'function' missing Gateway 状态不一致 openclaw gateway restart
missing tool result in session history 会话历史损坏 忽略,自动修复
plugins.allow WARN 插件未显式授权 添加到 openclaw.json
Chrome 内存过高 僵尸进程 killall chrome 或重启
工具权限被拒绝 profile 为 minimal 改为 full

七、Cron 任务管理:定时任务清单

7.1 当前运行的任务

# 系统看门狗 (每5分钟)
*/5 * * * * /root/watchdog.sh

# 记忆清理 (每天4点)
0 4 * * * python3 /root/.openclaw/workspace/scripts/memory-janitor.py

# xxxx信息汇总 (每天北京时间9点)
0 1 * * * cd /root/.openclaw/workspace/xxx-news && python3 daily_pipeline.py

7.2 暂停的任务

暂停不必要的任务

# xxx已暂停 (创建 PAUSED.md 标记)
# 原因: 筛选率过低,需优化后再启用

八、关键文件备份清单

文件 重要性 说明
~/.openclaw/openclaw.json ⭐⭐⭐⭐⭐ 核心配置
~/.openclaw/workspace/MEMORY.md ⭐⭐⭐⭐⭐ 活跃项目记忆
~/.openclaw/workspace/AGENTS.md ⭐⭐⭐⭐ 操作规则
~/.openclaw/workspace/SOUL.md ⭐⭐⭐⭐ 核心身份
~/.openclaw/credentials/ ⭐⭐⭐⭐⭐ 加密备份

九、快速检查命令

# 系统状态
openclaw status

# 深度健康检查
/root/.openclaw/workspace/scripts/deep_health_check.sh

# 内存和进程
free -h && ps aux --sort=-%mem | head -10

# 权限检查
ls -la ~/.openclaw/credentials
find ~/.openclaw/workspace/skills -name "__init__.py" -executable

# Gateway 重启
openclaw gateway restart

总结:五个核心经验

  1. 权限最小化:credentials 必须 700,__init__.py 不能 +x
  2. 配置显性化:tools.profile 必须 full,plugins 必须显式 allow
  3. 单一数据源:同一数据只在一处维护,其他文件放指针
  4. 三层防御:Prompt → 硬规则 → 脚本兜底,防微杜渐
  5. 定期体检:每周日深度检查,不要等到出事了才修

OpenClaw 不是"搭好了就完事",而是"搭好了才开始"。真正的工作是维护——发现腐化、修复链路、建立检查机制。

如果你也在养一只 🦞,记住:设计完美 ≠ 运行完美,定期体检才能活得久。

未经允许不得转载:主机格调 » 从零搭建 OpenClaw:一位老运维的配置心得与避坑指南

评论

6+5=