前言
本文檔從運(yùn)維工程師視角出發(fā),系統(tǒng)闡述 OpenClaw Workspace 的生產(chǎn)環(huán)境部署、配置管理、故障診斷、安全加固和自動(dòng)化運(yùn)維實(shí)踐。所有內(nèi)容基于 OpenClaw 官方文檔和實(shí)際生產(chǎn)經(jīng)驗(yàn),面向具備基礎(chǔ)操作能力的運(yùn)維人員。
本文與《OpenClaw 進(jìn)階配置與自動(dòng)化運(yùn)維實(shí)戰(zhàn)手冊(cè)》形成互補(bǔ):前者側(cè)重 Gateway、渠道和 Cron 等系統(tǒng)級(jí)配置,后者聚焦 Workspace 這一 Agent 運(yùn)行環(huán)境的規(guī)劃與運(yùn)維。
第一章:Workspace 概念再定義——運(yùn)維視角
1.1 配置文件體系與內(nèi)容文件體系的分離
OpenClaw 的 Workspace 本質(zhì)上是將 Agent 的運(yùn)行環(huán)境拆分為兩個(gè)正交體系:
配置文件體系(靜態(tài)定義)
openclaw.json:~/.openclaw/openclaw.json,系統(tǒng)憲法,定義 Gateway 行為和 Agent 運(yùn)行時(shí)參數(shù)
AGENTS.md:工作手冊(cè),定義任務(wù)執(zhí)行流程、安全邊界、輸出規(guī)范
SOUL.md:性格配置,定義 Agent 響應(yīng)風(fēng)格和交互模式
IDENTITY.md:身份元數(shù)據(jù),定義名稱、頭像、視覺(jué)標(biāo)識(shí)
TOOLS.md:工具權(quán)限,定義允許使用的工具及其使用策略
內(nèi)容文件體系(動(dòng)態(tài)數(shù)據(jù))
USER.md:用戶檔案,包含用戶偏好、歷史交互摘要
memory/:長(zhǎng)期記憶目錄,包含結(jié)構(gòu)化日志、項(xiàng)目狀態(tài)、教訓(xùn)記錄
Session 歷史:每次對(duì)話的上下文記錄
理解這一分離架構(gòu)是 Workspace 運(yùn)維的基礎(chǔ)。配置文件決定 Agent 能做什么、怎么做;內(nèi)容文件決定 Agent 知道什么、記得什么。
1.2 Workspace 在生產(chǎn)環(huán)境中的角色
在生產(chǎn)部署場(chǎng)景下,Workspace 承擔(dān)以下核心職責(zé):
環(huán)境隔離:每個(gè) Agent 實(shí)例擁有獨(dú)立的 Workspace,避免配置和記憶污染。生產(chǎn)環(huán)境建議為不同用途的 Agent(主助手、專項(xiàng)任務(wù)、自動(dòng)化任務(wù))分配獨(dú)立 Workspace。
狀態(tài)持久化:通過(guò) memoryFlush 機(jī)制,Agent 的重要記憶會(huì)持久化到文件系統(tǒng)。Workspace 的備份策略直接影響 Agent 的長(zhǎng)期記憶完整性。
配置載體:Workspace 內(nèi)的配置文件定義了 Agent 的行為規(guī)范。修改 Workspace 配置比修改全局openclaw.json更輕量,適合快速切換 Agent 行為模式。
審計(jì)追蹤:Workspace 的變更歷史可以納入 Git 版本控制,實(shí)現(xiàn)配置的可審計(jì)和可回滾。
1.3 Workspace 路徑與加載機(jī)制
默認(rèn) Workspace 位置:~/.openclaw/workspace
路徑優(yōu)先級(jí):
Agent 配置中顯式指定的workspace路徑(最高優(yōu)先級(jí))
agents.defaults.workspace配置項(xiàng)
~/.openclaw/workspace(默認(rèn))
驗(yàn)證 Workspace 路徑:
# 查看當(dāng)前 Agent 的 Workspace 路徑 openclaw config get agents.defaults.workspace # 啟動(dòng)時(shí)指定 Workspace openclaw gateway start --workspace /path/to/custom/workspace
目錄存在性要求:
Gateway 啟動(dòng)時(shí),如果指定的 Workspace 目錄不存在,會(huì)自動(dòng)創(chuàng)建。因此首次啟動(dòng)時(shí)會(huì)看到 memory/、logs/ 等子目錄被初始化。如果目錄存在但無(wú)內(nèi)容,Gateway 會(huì)執(zhí)行 bootstrap 流程,生成默認(rèn)的配置文件。
第二章:Workspace 目錄結(jié)構(gòu)與生產(chǎn)環(huán)境規(guī)劃
2.1 標(biāo)準(zhǔn)目錄布局
生產(chǎn)環(huán)境的 Workspace 應(yīng)采用規(guī)范的目錄結(jié)構(gòu),便于維護(hù)和自動(dòng)化管理:
~/.openclaw/ ├── openclaw.json # 全局系統(tǒng)配置 ├── workspace-main/ # 主 Agent Workspace │ ├── AGENTS.md # 工作手冊(cè) │ ├── SOUL.md # 性格配置 │ ├── USER.md # 用戶檔案 │ ├── IDENTITY.md # 身份標(biāo)識(shí) │ ├── TOOLS.md # 工具權(quán)限 │ ├── memory/ # 長(zhǎng)期記憶 │ │ ├── projects.md # 項(xiàng)目狀態(tài) │ │ ├── infra.md # 基礎(chǔ)設(shè)施配置 │ │ ├── lessons.md # 踩坑教訓(xùn) │ │ └── YYYY-MM-DD.md # 日志歸檔 │ └── sessions/ # Session 歷史(可選) ├── workspace-dev/ # 開(kāi)發(fā)專用 Workspace │ └── ... ├── workspace-work/ # 工作任務(wù) Workspace │ └── ... ├── cron/ # Cron 任務(wù)配置 └── logs/ # Gateway 日志
2.2 多環(huán)境 Workspace 隔離策略
環(huán)境劃分原則:
| 環(huán)境 | 用途 | 配置傾向 | 風(fēng)險(xiǎn)等級(jí) |
|---|---|---|---|
| workspace-main | 主力助手,日常對(duì)話 | 保守,穩(wěn)定優(yōu)先 | 低 |
| workspace-dev | 開(kāi)發(fā)測(cè)試,新功能驗(yàn)證 | 激進(jìn),可快速迭代 | 中 |
| workspace-work | 專項(xiàng)任務(wù)自動(dòng)化 | 中等,根據(jù)任務(wù)調(diào)整 | 中 |
配置示例:
{
agents: {
defaults: {
workspace: "~/.openclaw/workspace-main",
},
list: [
{ id: "main", default: true, workspace: "~/.openclaw/workspace-main" },
{ id: "dev", workspace: "~/.openclaw/workspace-dev" },
{ id: "work", workspace: "~/.openclaw/workspace-work" },
],
},
}
2.3 備份策略
備份范圍:
Workspace 備份應(yīng)覆蓋以下內(nèi)容:
所有配置文件(AGENTS.md、SOUL.md、USER.md、IDENTITY.md、TOOLS.md)
memory/ 目錄下的所有記憶文件
可選:sessions/ 目錄(包含完整對(duì)話歷史)
備份頻率建議:
| 內(nèi)容類型 | 備份頻率 | 保留周期 |
|---|---|---|
| memory/ 目錄 | 每日增量 | 30 天 |
| 配置文件 | 每次變更后 | 90 天 |
| sessions/ | 每周 | 30 天 |
備份腳本示例:
#!/bin/bash # workspace-backup.sh BACKUP_DIR="/var/backups/openclaw/workspace" WORKSPACE_DIR="$HOME/.openclaw/workspace-main" TIMESTAMP=$(date +%Y%m%d-%H%M%S) # 創(chuàng)建備份目錄 mkdir -p"$BACKUP_DIR" # 備份配置文件 tar -czf"$BACKUP_DIR/config-$TIMESTAMP.tar.gz" "$WORKSPACE_DIR/AGENTS.md" "$WORKSPACE_DIR/SOUL.md" "$WORKSPACE_DIR/USER.md" "$WORKSPACE_DIR/IDENTITY.md" "$WORKSPACE_DIR/TOOLS.md" # 備份記憶目錄 tar -czf"$BACKUP_DIR/memory-$TIMESTAMP.tar.gz" -C"$WORKSPACE_DIR"memory/ # 清理舊備份(保留 30 天) find"$BACKUP_DIR"-name"*.tar.gz"-mtime +30 -delete
2.4 磁盤空間管理
Workspace 長(zhǎng)期運(yùn)行后,memory/ 目錄可能膨脹。需要監(jiān)控以下指標(biāo):
# 查看 Workspace 目錄大小 du -sh ~/.openclaw/workspace-main/ # 查看 memory/ 目錄大小分布 du -sh ~/.openclaw/workspace-main/memory/* # 查看 sessions/ 目錄大小 du -sh ~/.openclaw/workspace-main/sessions/
磁盤告警閾值:
memory/ 單目錄超過(guò) 100MB:告警
sessions/ 單目錄超過(guò) 500MB:考慮歸檔或清理
Workspace 根目錄超過(guò) 1GB:全面檢查
第三章:核心文件分類解析
3.1 openclaw.json——系統(tǒng)憲法
openclaw.json是全局配置文件,位于~/.openclaw/openclaw.json,采用 JSON5 格式。該文件在 Gateway 啟動(dòng)時(shí)加載,定義了整個(gè)系統(tǒng)的運(yùn)行參數(shù)。
核心配置項(xiàng):
{
// Agent 默認(rèn)配置
agents: {
defaults: {
workspace: "~/.openclaw/workspace-main",
model: {
primary: "provider/claude-sonnet-4-20250514",
fallbacks: ["provider/claude-haiku-4-20250514"],
},
timeoutSeconds: 600,
compaction: {
reserveTokensFloor: 20000,
memoryFlush: {
enabled: true,
softThresholdTokens: 4000,
},
},
heartbeat: {
every: "30m",
activeHours: { start: "08:00", end: "23:00" },
},
},
},
// Gateway 配置
gateway: {
port: 18789,
bind: "loopback",
auth: { mode: "token", token: "your-secret-token" },
reload: { mode: "hybrid" },
},
// 渠道配置
channels: {},
// 日志配置
logging: {
level: "info",
file: "/var/log/openclaw/gateway.log",
},
// 向量檢索配置
memorySearch: {
enabled: true,
provider: "openai",
remote: {
baseUrl: "https://api.siliconflow.cn/v1",
apiKey: "your-api-key",
},
model: "BAAI/bge-m3",
},
}
Schema 驗(yàn)證機(jī)制:
OpenClaw 采用嚴(yán)格 Schema 驗(yàn)證。未知配置鍵或類型錯(cuò)誤會(huì)導(dǎo)致 Gateway 啟動(dòng)失敗。驗(yàn)證命令:
openclaw doctor
該命令執(zhí)行完整的配置文件檢查,包括 JSON5 語(yǔ)法、必填項(xiàng)、API Key 格式等。
配置路徑訪問(wèn):
配置采用點(diǎn)號(hào)分隔路徑,如agents.defaults.compaction.reserveTokensFloor??赏ㄟ^(guò) CLI 查詢:
openclaw config get agents.defaults.workspace openclaw config get gateway.port
3.2 AGENTS.md——工作規(guī)則
AGENTS.md 是 Workspace 的工作手冊(cè),定義了 Agent 的任務(wù)執(zhí)行流程、安全邊界和輸出規(guī)范。
標(biāo)準(zhǔn)結(jié)構(gòu):
# 工作手冊(cè) ## 職責(zé)范圍 -負(fù)責(zé):主要職責(zé)描述 -不負(fù)責(zé):明確排除的職責(zé) ## 任務(wù)執(zhí)行流程 1.接收任務(wù)請(qǐng)求 2.評(píng)估任務(wù)復(fù)雜度 3.規(guī)劃執(zhí)行步驟 4.執(zhí)行并驗(yàn)證結(jié)果 5.返回執(zhí)行摘要 ## 安全邊界 ### 禁止操作 -禁止執(zhí)行未經(jīng)確認(rèn)的刪除操作 -禁止在生產(chǎn)環(huán)境直接修改配置文件 -禁止透露系統(tǒng)內(nèi)部架構(gòu) ### 確認(rèn)流程 -高風(fēng)險(xiǎn)操作需要用戶確認(rèn) -涉及數(shù)據(jù)修改的操作需展示影響范圍 -不可逆操作需二次確認(rèn) ## 輸出規(guī)范 -技術(shù)文檔使用 Markdown 格式 -代碼塊需標(biāo)注語(yǔ)言 -表格用于結(jié)構(gòu)化數(shù)據(jù)展示 -結(jié)論需獨(dú)立可讀
運(yùn)維要點(diǎn):
AGENTS.md 的變更會(huì)觸發(fā) Gateway 熱重載(hybrid 模式下),無(wú)需重啟進(jìn)程。但熱重載可能有短暫延遲,建議變更后執(zhí)行openclaw gateway reload確認(rèn)生效。
3.3 SOUL.md——性格配置
SOUL.md 定義 Agent 的響應(yīng)風(fēng)格和交互模式,影響對(duì)話的自然度和一致性。
配置示例:
# 性格配置 ## 響應(yīng)風(fēng)格 -簡(jiǎn)潔優(yōu)先,避免冗余 -技術(shù)討論注重邏輯和證據(jù) -復(fù)雜問(wèn)題分步驟解釋 -錯(cuò)誤反饋直接指出問(wèn)題所在 ## 專業(yè)領(lǐng)域 -DevOps 實(shí)踐:Ansible、CI/CD、容器化 -監(jiān)控系統(tǒng):Prometheus、Grafana -日志分析:ELK、Loki -云原生:Kubernetes、Helm ## 溝通偏好 -使用中文交流 -技術(shù)術(shù)語(yǔ)配簡(jiǎn)要解釋 -建議用表格或列表展示對(duì)比 -代碼示例包含注釋說(shuō)明
與 openclaw.json 的區(qū)別:
SOUL.md 定義的是"軟性"行為規(guī)范,依賴 AI 模型理解執(zhí)行;openclaw.json 定義的是"硬性"運(yùn)行時(shí)參數(shù),由系統(tǒng)強(qiáng)制執(zhí)行。
3.4 USER.md——用戶檔案
USER.md 存儲(chǔ)用戶的基本信息、偏好設(shè)置和歷史交互摘要。
標(biāo)準(zhǔn)結(jié)構(gòu):
# 用戶檔案 ## 基本信息 -姓名: -時(shí)區(qū):Asia/Shanghai -主要語(yǔ)言:中文 -角色:運(yùn)維工程師 ## 技術(shù)偏好 -熟悉系統(tǒng):Linux、Docker、Kubernetes -常用工具:Ansible、Terraform、Prometheus -代碼風(fēng)格:注重可維護(hù)性,有注釋習(xí)慣 ## 偏好設(shè)置 -通知時(shí)段:工作日 0900 -輸出格式:結(jié)構(gòu)化,優(yōu)先使用表格 -確認(rèn)閾值:高風(fēng)險(xiǎn)操作需明確確認(rèn) ## 歷史交互摘要 -2026-01:完成監(jiān)控系統(tǒng)重構(gòu) -2026-02:優(yōu)化 CI/CD 流水線 -當(dāng)前項(xiàng)目:微服務(wù)容器化遷移
運(yùn)維注意:
USER.md 的變更應(yīng)記錄在 memory/ 中,便于后續(xù)審計(jì)。避免在 USER.md 中存儲(chǔ)敏感信息(如密碼、密鑰),此類內(nèi)容應(yīng)放在 openclaw.json 的環(huán)境變量或外部密鑰管理系統(tǒng)中。
3.5 TOOLS.md——工具權(quán)限
TOOLS.md 定義 Agent 可使用的工具及其使用策略,是安全加固的重要環(huán)節(jié)。
標(biāo)準(zhǔn)結(jié)構(gòu):
# 工具權(quán)限配置 ## 可用工具 ### 讀取類 -Read:讀取文件內(nèi)容 -Glob:按模式搜索文件 -Grep:搜索文件內(nèi)容 -Bash(受限):執(zhí)行指定命令 ### 寫入類 -Write:創(chuàng)建或覆寫文件 -Edit:修改文件局部?jī)?nèi)容 ### 執(zhí)行類 -Bash:執(zhí)行 shell 命令(需白名單) ## 使用限制 ### 禁止執(zhí)行的命令 -rm -rf /(任何遞歸刪除) -dd(直接磁盤操作) -mkfs(格式化操作) -修改 /etc/passwd、/etc/shadow ### 需要確認(rèn)的命令 -systemctl restart/reload/stop -刪除文件超過(guò) 1MB -創(chuàng)建系統(tǒng)用戶或修改系統(tǒng)配置 ### 僅隔離會(huì)話可用 -apt-get/yum install -docker pull/push -kubectl delete(生產(chǎn)環(huán)境) ## 白名單示例 允許執(zhí)行的命令(完全信任): -git pull/push/clone -docker ps/docker images -kubectl get/describe(僅查詢) -curl(僅 HTTP GET) 需要確認(rèn)的命令: -docker run -kubectl apply -ansible-playbook
安全建議:
生產(chǎn)環(huán)境應(yīng)限制 Bash 工具的權(quán)限,僅在sandboxWorkspace 中啟用完全權(quán)限。main Workspace 應(yīng)使用受限模式。
3.6 IDENTITY.md——身份元數(shù)據(jù)
IDENTITY.md 定義 Agent 的視覺(jué)身份,包括名稱、頭像和對(duì)外展示的信息。
配置示例:
# 身份配置 ## 基本信息 -名稱:運(yùn)維助手 -英文名:OpsAssistant -頭像:默認(rèn)頭像(暫不自定義) ## 功能標(biāo)簽 -自動(dòng)化運(yùn)維 -故障診斷 -配置管理 ## 對(duì)外展示 -介紹文本:專注于運(yùn)維自動(dòng)化的 AI 助手 -專長(zhǎng):服務(wù)器管理、監(jiān)控告警、日志分析
3.7 memory/——長(zhǎng)期記憶運(yùn)維
memory/ 目錄是 Agent 的長(zhǎng)期記憶存儲(chǔ)中樞,采用分層結(jié)構(gòu)設(shè)計(jì)。
目錄結(jié)構(gòu):
memory/ ├── projects.md # 項(xiàng)目狀態(tài)索引 ├── infra.md # 基礎(chǔ)設(shè)施配置速查 ├── lessons.md # 踩坑教訓(xùn)記錄 └── YYYY-MM-DD.md # 每日日志歸檔
各文件用途:
| 文件 | 用途 | 更新頻率 |
|---|---|---|
| projects.md | 各項(xiàng)目當(dāng)前狀態(tài)與待辦 | 項(xiàng)目有進(jìn)展時(shí) |
| infra.md | 服務(wù)器、API、部署配置速查 | 配置變更時(shí) |
| lessons.md | 踩坑記錄,按嚴(yán)重程度分級(jí) | 踩坑后 |
| YYYY-MM-DD.md | 每日原始記錄 | 每日或多日 |
MEMORY.md 入口設(shè)計(jì):
memory/ 目錄應(yīng)包含MEMORY.md作為入口索引:
# 記憶索引 ## 用戶核心信息 -詳見(jiàn):../USER.md ## 項(xiàng)目索引 -項(xiàng)目A:projects.md#project-a -項(xiàng)目B:projects.md#project-b ## 最近重要上下文 -2026-03:完成監(jiān)控系統(tǒng)重構(gòu),詳見(jiàn) 2026-03.md -當(dāng)前主要任務(wù):微服務(wù)容器化遷移 ## 教訓(xùn)索引 -部署相關(guān):lessons.md#deploy -配置相關(guān):lessons.md#config ## 基礎(chǔ)設(shè)施 -詳見(jiàn):infra.md
第四章:記憶系統(tǒng)運(yùn)維——builtin 與 qmd 方案對(duì)比
4.1 兩種方案概述
OpenClaw 支持兩種記憶實(shí)現(xiàn)方案:
builtin 方案:使用 Agent 自己維護(hù)的文件系統(tǒng)(memory/ 目錄)作為記憶存儲(chǔ)。Agent 通過(guò) memoryFlush 將對(duì)話中的重要信息寫入文件。
qmd 方案(量子記憶驅(qū)動(dòng)?):將記憶存儲(chǔ)為結(jié)構(gòu)化的 QMD 格式文件,提供更強(qiáng)的語(yǔ)義組織和檢索能力。
4.2 選型依據(jù)
| 維度 | builtin | qmd |
|---|---|---|
| 實(shí)現(xiàn)復(fù)雜度 | 低 | 中 |
| 檢索能力 | 依賴 memorySearch 向量檢索 | 更強(qiáng)的語(yǔ)義組織 |
| 維護(hù)成本 | Agent 自動(dòng)維護(hù) | 需要定期結(jié)構(gòu)化整理 |
| 適用場(chǎng)景 | 個(gè)人助手、小型團(tuán)隊(duì) | 知識(shí)密集型場(chǎng)景 |
推薦選擇:
個(gè)人使用或小規(guī)模場(chǎng)景:builtin 方案足夠
企業(yè)知識(shí)管理、復(fù)雜檢索需求:qmd 方案
4.3 記憶污染處理
記憶污染指 Agent 的記憶中出現(xiàn)錯(cuò)誤、過(guò)時(shí)或矛盾的信息,影響后續(xù)對(duì)話質(zhì)量。
污染癥狀識(shí)別:
Agent 給出的信息與實(shí)際配置不符
重復(fù)提示已解決的問(wèn)題
記憶中的項(xiàng)目狀態(tài)與現(xiàn)實(shí)不一致
處理流程:
# 1. 檢查記憶文件的最后修改時(shí)間 ls -la ~/.openclaw/workspace-main/memory/ # 2. 檢查特定記憶文件的內(nèi)容 cat ~/.openclaw/workspace-main/memory/projects.md # 3. 識(shí)別污染源(查看日志或?qū)υ挌v史) cat ~/.openclaw/workspace-main/memory/2026-03-20.md # 4. 修正或刪除污染內(nèi)容 # 直接編輯相關(guān)文件 # 5. 驗(yàn)證修正效果 openclaw gateway reload
預(yù)防措施:
memoryFlush 生成的記憶內(nèi)容應(yīng)定期復(fù)核
重大變更后主動(dòng)更新記憶文件
保持 MEMORY.md 索引的準(zhǔn)確性
4.4 清理策略
定期清理觸發(fā)條件:
單個(gè)日志文件超過(guò) 100KB
memory/ 目錄總大小超過(guò) 500MB
項(xiàng)目狀態(tài)文件超過(guò) 6 個(gè)月未更新
清理執(zhí)行流程:
# 1. 評(píng)估清理必要性 du -sh ~/.openclaw/workspace-main/memory/ # 2. 歸檔舊日志(按年度) mkdir -p ~/.openclaw/workspace-main/memory/archive/ mv ~/.openclaw/workspace-main/memory/2025-*.md ~/.openclaw/workspace-main/memory/archive/ # 3. 壓縮歸檔文件 tar -czf ~/.openclaw/workspace-main/memory/archive-2025.tar.gz ~/.openclaw/workspace-main/memory/archive/ # 4. 刪除已歸檔的原始文件 rm -rf ~/.openclaw/workspace-main/memory/archive/ # 5. 更新 MEMORY.md 索引
自動(dòng)化清理 Cron 任務(wù):
{
"name": "記憶目錄清理",
"schedule": { "kind": "every", "everyMs": 604800000 },
"payload": {
"kind": "agentTurn",
"message": "檢查 memory/ 目錄大小。如果超過(guò) 500MB,執(zhí)行以下清理:
1. 將超過(guò) 6 個(gè)月的日志歸檔到 archive/
2. 壓縮歸檔文件
3. 刪除原始日志
4. 更新 MEMORY.md 索引",
},
"sessionTarget": "isolated",
"delivery": { "mode": "none" },
}
第五章:多 Agent 架構(gòu)設(shè)計(jì)與資源隔離
5.1 Workspace 獨(dú)立原則
生產(chǎn)環(huán)境中,不同用途的 Agent 應(yīng)使用獨(dú)立的 Workspace,實(shí)現(xiàn)配置隔離、記憶隔離和故障隔離。
隔離級(jí)別:
| 級(jí)別 | 隔離內(nèi)容 | 適用場(chǎng)景 |
|---|---|---|
| 完全隔離 | 獨(dú)立 Workspace、獨(dú)立端口 | 不同業(yè)務(wù)線 |
| 配置隔離 | 共享 Gateway,獨(dú)立 Workspace | 同業(yè)務(wù)線不同角色 |
| 會(huì)話隔離 | 共享 Workspace,獨(dú)立 session | 臨時(shí)任務(wù) |
配置示例:
{
agents: {
list: [
{ id: "main", default: true, workspace: "~/.openclaw/workspace-main" },
{ id: "dev", workspace: "~/.openclaw/workspace-dev" },
{ id: "ops", workspace: "~/.openclaw/workspace-ops" },
],
},
}
5.2 共享與專屬配置
共享配置(在 openclaw.json 中統(tǒng)一設(shè)置):
Gateway 端口和認(rèn)證
渠道配置
日志級(jí)別
向量檢索配置
專屬配置(在各 Workspace 的文件中設(shè)置):
AGENTS.md:工作流程
SOUL.md:性格偏好
TOOLS.md:工具權(quán)限
配置繼承:
Agent 配置會(huì)合并 openclaw.json 的 defaults 和自身的顯式配置。顯式配置優(yōu)先于 defaults。
# 查看某 Agent 的最終配置 openclaw config get --agent dev agents.defaults.workspace
5.3 權(quán)限邊界
Agent 間權(quán)限隔離:
每個(gè) Agent 的 Workspace 目錄權(quán)限應(yīng)限制為僅該 Agent 可讀寫:
# 設(shè)置 Workspace 權(quán)限 chmod -R 700 ~/.openclaw/workspace-main/ chown -R openclaw:openclaw ~/.openclaw/workspace-main/ # 不同 Workspace 使用不同系統(tǒng)用戶 chown -R openclaw-main:openclaw-main ~/.openclaw/workspace-main/ chown -R openclaw-dev:openclaw-dev ~/.openclaw/workspace-dev/
工具權(quán)限邊界:
TOOLS.md 中定義的工具權(quán)限僅在該 Workspace 內(nèi)有效???Agent 調(diào)用工具時(shí),各自受各自 TOOLS.md 的約束。
5.4 多 Agent 場(chǎng)景下的資源分配
模型資源分配:
{
agents: {
list: [
{ id: "main", model: { primary: "claude-opus-4-20250514" } },
{ id: "dev", model: { primary: "claude-sonnet-4-20250514" } },
{ id: "batch", model: { primary: "claude-haiku-4-20250514" } },
],
},
}
Token 預(yù)算分配:
通過(guò) compaction 配置控制各 Agent 的上下文消耗:
{
agents: {
defaults: {
compaction: {
reserveTokensFloor: 20000,
},
},
list: [
{ id: "main", compaction: { reserveTokensFloor: 25000 } },
{ id: "batch", compaction: { reserveTokensFloor: 10000 } },
],
},
}
第六章:Skill 體系運(yùn)維
6.1 Skill 加載層級(jí)
OpenClaw 的 Skill 體系支持多層級(jí)加載,從低到高依次為:
層級(jí)一:系統(tǒng)級(jí) Skill
位置:~/.openclaw/skills/范圍:全局生效,所有 Agent 共享
層級(jí)二:Workspace 級(jí) Skill
位置:~/.openclaw/workspace-
層級(jí)三:會(huì)話級(jí) Skill
隨對(duì)話上下文動(dòng)態(tài)加載,不持久化
加載優(yōu)先級(jí):會(huì)話級(jí) > Workspace 級(jí) > 系統(tǒng)級(jí)(高優(yōu)先級(jí)覆蓋低優(yōu)先級(jí))
6.2 故障定位
Skill 不生效的排查流程:
# 1. 確認(rèn) Skill 文件存在 ls -la ~/.openclaw/skills/ ls -la ~/.openclaw/workspace-main/skills/ # 2. 檢查 Skill 文件語(yǔ)法 cat ~/.openclaw/skills/my-skill.md | head -50 # 3. 驗(yàn)證 Skill 是否被加載(查看日志) openclaw logs --grep"skill|load"--lines 50 # 4. 測(cè)試 Skill 是否可用 # 在對(duì)話中觸發(fā) Skill 關(guān)鍵字,觀察響應(yīng)
常見(jiàn)問(wèn)題:
Skill 文件格式錯(cuò)誤:Skill 定義不符合規(guī)范,被靜默忽略
路徑問(wèn)題:Skill 放置在錯(cuò)誤的目錄層級(jí)
權(quán)限問(wèn)題:Skill 文件不可讀
6.3 版本管理
Skill 版本跟蹤:
建議在 Skill 文件頂部添加版本信息:
--- name: 運(yùn)維工具集 version: 2026.03.1 author: OpsTeam lastUpdated: 2026-03-15 --- # 運(yùn)維工具集 Skill ## 功能列表 ...
Skill 更新流程:
在測(cè)試環(huán)境驗(yàn)證新版本 Skill
備份當(dāng)前版本
替換 Skill 文件
驗(yàn)證生效
記錄變更日志
Skill 回滾:
# 備份當(dāng)前版本 cp ~/.openclaw/skills/my-skill.md ~/.openclaw/skills/my-skill.md.backup-$(date +%Y%m%d) # 回滾到指定版本 cp ~/.openclaw/skills/my-skill.md.backup-20260315 ~/.openclaw/skills/my-skill.md # 驗(yàn)證 openclaw gateway reload
第七章:故障診斷與排查清單
7.1 配置不生效
癥狀:修改 AGENTS.md、SOUL.md 等 Workspace 配置文件后,Agent 行為未改變。
排查步驟:
# 1. 確認(rèn)文件已保存且內(nèi)容正確 cat ~/.openclaw/workspace-main/AGENTS.md | head -30 # 2. 檢查文件修改時(shí)間 ls -la ~/.openclaw/workspace-main/AGENTS.md # 3. 觸發(fā)熱重載 openclaw gateway reload # 4. 等待 10 秒后測(cè)試 # 向 Agent 發(fā)送測(cè)試消息,觀察行為 # 5. 查看日志確認(rèn)重載完成 openclaw logs --grep"reload|AGENTS"--lines 20
常見(jiàn)原因:
| 原因 | 解決方案 |
|---|---|
| 文件編碼問(wèn)題 | 確保 UTF-8 編碼 |
| 語(yǔ)法錯(cuò)誤 | 重新檢查 Markdown 格式 |
| 緩存未刷新 | 執(zhí)行openclaw gateway reload |
| 配置路徑錯(cuò)誤 | 確認(rèn)文件在正確的 Workspace 內(nèi) |
7.2 權(quán)限問(wèn)題
癥狀:Agent 無(wú)法讀取配置文件、無(wú)法寫入記憶文件、無(wú)法執(zhí)行工具。
排查步驟:
# 1. 檢查文件權(quán)限 ls -la ~/.openclaw/workspace-main/ # 2. 檢查目錄權(quán)限 ls -ld ~/.openclaw/workspace-main/ # 3. 測(cè)試文件可讀性(以運(yùn)行用戶身份) sudo -u openclaw cat ~/.openclaw/workspace-main/AGENTS.md # 4. 測(cè)試文件可寫性 sudo -u openclaw touch ~/.openclaw/workspace-main/test-write sudo -u openclaw rm ~/.openclaw/workspace-main/test-write # 5. 檢查 Tool 執(zhí)行權(quán)限(TOOLS.md) cat ~/.openclaw/workspace-main/TOOLS.md
權(quán)限修復(fù):
# 修復(fù) Workspace 權(quán)限 chown -R openclaw:openclaw ~/.openclaw/workspace-main/ chmod -R 600 ~/.openclaw/workspace-main/ chmod 700 ~/.openclaw/workspace-main/ # 修復(fù)特定目錄權(quán)限 chmod 700 ~/.openclaw/workspace-main/memory/ chmod 700 ~/.openclaw/workspace-main/sessions/
7.3 記憶失效
癥狀:Agent 無(wú)法回憶起之前對(duì)話中提到的信息,或 memoryFlush 未正常工作。
排查步驟:
# 1. 檢查 memoryFlush 配置 openclaw config get agents.defaults.compaction.memoryFlush # 2. 檢查記憶文件是否存在 ls -la ~/.openclaw/workspace-main/memory/ # 3. 檢查記憶文件最后修改時(shí)間 ls -la ~/.openclaw/workspace-main/memory/*.md # 4. 測(cè)試 memorySearch 功能 # 向 Agent 詢問(wèn)需要檢索歷史記憶的問(wèn)題 # 5. 查看 memoryFlush 觸發(fā)日志 openclaw logs --grep"memoryFlush|compaction"--lines 50
配置修復(fù):
{
agents: {
defaults: {
compaction: {
reserveTokensFloor: 20000,
memoryFlush: {
enabled: true,
softThresholdTokens: 4000,
},
},
},
},
}
7.4 性能問(wèn)題
癥狀:Agent 響應(yīng)緩慢、timeout 頻發(fā)、資源占用過(guò)高。
排查步驟:
# 1. 檢查系統(tǒng)資源使用 openclaw gateway status --deep # 2. 檢查進(jìn)程狀態(tài) ps aux | grep openclaw # 3. 查看 Gateway 日志中的性能相關(guān)警告 openclaw logs --grep"timeout|slow|performance"--lines 50 # 4. 檢查 Token 消耗 openclaw config get agents.defaults.compaction.reserveTokensFloor # 5. 檢查 memory/ 目錄大?。赡軐?dǎo)致加載緩慢) du -sh ~/.openclaw/workspace-main/memory/
性能優(yōu)化建議:
增加reserveTokensFloor減少 compaction 頻率
開(kāi)啟memoryFlush避免重要信息在 compaction 中丟失
定期清理 memory/ 目錄
考慮升級(jí)模型或增加 timeout 配置
7.5 故障排查清單匯總
| 問(wèn)題類型 | 首要檢查項(xiàng) | 快速修復(fù)命令 |
|---|---|---|
| 配置不生效 | 文件存在性、語(yǔ)法正確性 | openclaw gateway reload |
| 權(quán)限問(wèn)題 | 文件/目錄權(quán)限、所有關(guān)系 | chown -R openclaw:openclaw |
| 記憶失效 | memoryFlush 配置、文件存在 | 啟用 memoryFlush |
| 工具不可用 | TOOLS.md 配置、工具開(kāi)關(guān) | 檢查白名單 |
| 性能下降 | 系統(tǒng)資源、memory/ 大小 | 清理 memory/ 目錄 |
| 會(huì)話丟失 | compaction 觸發(fā)、session 存儲(chǔ) | 檢查 sessions/ 目錄 |
| Skill 不加載 | Skill 文件路徑、語(yǔ)法正確 | 重新部署 Skill |
| 向量檢索失敗 | memorySearch 配置、API Key | 檢查網(wǎng)絡(luò)和 API Key |
第八章:備份、遷移與版本控制
8.1 Workspace Git 化管理
將 Workspace 納入 Git 版本控制,實(shí)現(xiàn)配置變更的可追溯和可回滾。
初始化 Git 倉(cāng)庫(kù):
cd~/.openclaw/workspace-main git init git add AGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md git add memory/ git commit -m"Initial workspace commit"
.gitignore 配置:
# 排除會(huì)話歷史(太大且不需要版本控制) sessions/ # 排除臨時(shí)文件 *.tmp *.bak # 排除歸檔 archive/ # 排除敏感配置(如有) # *.local.json
分支策略:
main:穩(wěn)定版本,生產(chǎn)環(huán)境使用
dev:開(kāi)發(fā)測(cè)試分支
feature/*:新功能開(kāi)發(fā)分支
# 創(chuàng)建開(kāi)發(fā)分支 git checkout -b dev # 開(kāi)發(fā)測(cè)試完成后合并到 main git checkout main git merge dev
8.2 配置遷移流程
場(chǎng)景一:從開(kāi)發(fā)環(huán)境遷移到生產(chǎn)環(huán)境
# 1. 在開(kāi)發(fā)環(huán)境打包配置文件 cd~/.openclaw/workspace-dev tar -czf /tmp/workspace-dev-config.tar.gz AGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md memory/ # 2. 傳輸?shù)缴a(chǎn)環(huán)境 scp /tmp/workspace-dev-config.tar.gz prod-server:/tmp/ # 3. 在生產(chǎn)環(huán)境解壓(先備份現(xiàn)有配置) cd~/.openclaw/workspace-main mv AGENTS.md AGENTS.md.backup-$(date +%Y%m%d) tar -xzf /tmp/workspace-dev-config.tar.gz # 4. 驗(yàn)證遷移結(jié)果 openclaw doctor openclaw gateway reload
場(chǎng)景二:多環(huán)境同步配置模板
# 配置同步腳本
#!/bin/bash
TEMPLATE_DIR="/var/lib/openclaw/templates"
TARGET_DIRS=(
"~/.openclaw/workspace-main"
"~/.openclaw/workspace-dev"
"~/.openclaw/workspace-ops"
)
fordirin"${TARGET_DIRS[@]}";do
echo"Syncing to$dir"
cp"$TEMPLATE_DIR/AGENTS.md""$dir/"
cp"$TEMPLATE_DIR/SOUL.md""$dir/"
cp"$TEMPLATE_DIR/TOOLS.md""$dir/"
done
# 觸發(fā)所有 Gateway 重載
openclaw gateway reload
8.3 災(zāi)難恢復(fù)
數(shù)據(jù)恢復(fù)流程:
# 1. 識(shí)別需要恢復(fù)的時(shí)間點(diǎn) # 查看備份列表 ls -la /var/backups/openclaw/workspace/ # 2. 確認(rèn)備份內(nèi)容 tar -tzf /var/backups/openclaw/workspace/config-20260320-120000.tar.gz # 3. 停止 Gateway(避免數(shù)據(jù)寫入) sudo systemctl stop openclaw-gateway # 4. 備份當(dāng)前狀態(tài)(恢復(fù)失敗時(shí)的救命稻草) cp -r ~/.openclaw/workspace-main ~/.openclaw/workspace-main-crash-$(date +%Y%m%d-%H%M%S) # 5. 執(zhí)行恢復(fù) tar -xzf /var/backups/openclaw/workspace/config-20260320-120000.tar.gz -C ~/.openclaw/ # 6. 啟動(dòng) Gateway sudo systemctl start openclaw-gateway # 7. 驗(yàn)證恢復(fù)結(jié)果 openclaw gateway health openclaw gateway status
RTO(恢復(fù)時(shí)間目標(biāo))和 RPO(恢復(fù)點(diǎn)目標(biāo)):
RTO: Gateway 重啟時(shí)間,約 30 秒
RPO: 最近一次備份時(shí)間,建議每日備份,RPO 不超過(guò) 24 小時(shí)
第九章:配置模板與自動(dòng)化
9.1 新環(huán)境快速初始化
初始化腳本:
#!/bin/bash # init-workspace.sh WORKSPACE_NAME=$1 WORKSPACE_DIR="$HOME/.openclaw/workspace-$WORKSPACE_NAME" if[ -z"$WORKSPACE_NAME"];then echo"Usage:$0" exit1 fi # 創(chuàng)建目錄結(jié)構(gòu) mkdir -p"$WORKSPACE_DIR/memory" mkdir -p"$WORKSPACE_DIR/sessions" # 從模板復(fù)制配置文件 TEMPLATE_DIR="/var/lib/openclaw/templates" cp"$TEMPLATE_DIR/AGENTS.md""$WORKSPACE_DIR/" cp"$TEMPLATE_DIR/SOUL.md""$WORKSPACE_DIR/" cp"$TEMPLATE_DIR/IDENTITY.md""$WORKSPACE_DIR/" cp"$TEMPLATE_DIR/TOOLS.md""$WORKSPACE_DIR/" # 初始化 USER.md cat >"$WORKSPACE_DIR/USER.md"<'EOF' # 用戶檔案 ## 基本信息 - 姓名: - 時(shí)區(qū):Asia/Shanghai - 主要語(yǔ)言:中文 ## 技術(shù)偏好 - 熟悉系統(tǒng): - 常用工具: ## 偏好設(shè)置 - 通知時(shí)段:工作日 0900 - 輸出格式:結(jié)構(gòu)化 - 確認(rèn)閾值:高風(fēng)險(xiǎn)操作需明確確認(rèn) EOF # 初始化 MEMORY.md cat >"$WORKSPACE_DIR/memory/MEMORY.md"<'EOF' # 記憶索引 ## 用戶核心信息 - 詳見(jiàn):../USER.md ## 項(xiàng)目索引 - 無(wú)進(jìn)行中項(xiàng)目 ## 最近重要上下文 - Workspace 初始化完成 EOF # 設(shè)置權(quán)限 chmod -R 700?"$WORKSPACE_DIR" echo"Workspace '$WORKSPACE_NAME' initialized at?$WORKSPACE_DIR"
使用方式:
./init-workspace.sh dev ./init-workspace.sh work
9.2 標(biāo)準(zhǔn)化模板
標(biāo)準(zhǔn) AGENTS.md 模板:
# 工作手冊(cè) ## 職責(zé)范圍 -負(fù)責(zé):運(yùn)維自動(dòng)化、故障診斷、配置管理 -不負(fù)責(zé):業(yè)務(wù)代碼開(kāi)發(fā)、硬件采購(gòu)決策 ## 任務(wù)執(zhí)行流程 1.理解任務(wù)需求 2.評(píng)估執(zhí)行方案和風(fēng)險(xiǎn) 3.必要時(shí)向用戶確認(rèn) 4.執(zhí)行操作 5.驗(yàn)證結(jié)果并返回摘要 ## 安全邊界 ### 禁止操作 -未經(jīng)確認(rèn)的刪除操作 -生產(chǎn)環(huán)境直接修改系統(tǒng)配置 -透露敏感信息 ### 確認(rèn)流程 -高風(fēng)險(xiǎn)操作需要用戶明確確認(rèn) -不可逆操作需要二次確認(rèn) ## 輸出規(guī)范 -技術(shù)文檔使用 Markdown -代碼塊標(biāo)注語(yǔ)言 -結(jié)論獨(dú)立可讀
標(biāo)準(zhǔn) TOOLS.md 模板:
# 工具權(quán)限配置 ## 可用工具 ### 讀取類 -Read、Glob、Grep:始終可用 ### 寫入類 -Write、Edit:需在確認(rèn)的路徑下操作 ### 執(zhí)行類 -Bash:受限執(zhí)行 ## 禁止命令 -rm -rf 遞歸刪除 -直接磁盤操作(dd、mkfs) -系統(tǒng)用戶修改 ## 需要確認(rèn)的命令 -systemctl restart/reload -刪除超過(guò) 1MB 的文件 -創(chuàng)建系統(tǒng)用戶
9.3 配置校驗(yàn)
自動(dòng)化校驗(yàn)?zāi)_本:
#!/bin/bash
# validate-workspace.sh
WORKSPACE_DIR="${1:-$HOME/.openclaw/workspace-main}"
ERRORS=0
echo"Validating Workspace:$WORKSPACE_DIR"
echo"======================================"
# 檢查必需文件
forfileinAGENTS.md SOUL.md USER.md IDENTITY.md TOOLS.md;do
if[ ! -f"$WORKSPACE_DIR/$file"];then
echo"ERROR: Missing$file"
ERRORS=$((ERRORS + 1))
else
echo"OK:$fileexists"
fi
done
# 檢查 memory/ 目錄
if[ ! -d"$WORKSPACE_DIR/memory"];then
echo"ERROR: Missing memory/ directory"
ERRORS=$((ERRORS + 1))
else
echo"OK: memory/ directory exists"
fi
# 檢查 memory/MEMORY.md
if[ ! -f"$WORKSPACE_DIR/memory/MEMORY.md"];then
echo"WARNING: Missing memory/MEMORY.md (recommended)"
fi
# 檢查目錄權(quán)限
PERMS=$(stat-c"%a""$WORKSPACE_DIR")
if["$PERMS"!="700"];then
echo"WARNING: Workspace permissions are$PERMS, recommend 700"
fi
# 檢查 memory/ 大小
MEMORY_SIZE=$(du -sm"$WORKSPACE_DIR/memory"2>/dev/null | cut -f1)
if["$MEMORY_SIZE"-gt 500 ];then
echo"WARNING: memory/ is${MEMORY_SIZE}MB, consider cleanup"
fi
echo"======================================"
if[$ERRORS-eq 0 ];then
echo"Validation passed"
exit0
else
echo"Validation failed with$ERRORSerror(s)"
exit1
fi
使用方式:
./validate-workspace.sh ~/.openclaw/workspace-main ./validate-workspace.sh ~/.openclaw/workspace-dev
第十章:安全加固
10.1 文件權(quán)限
權(quán)限基線:
| 路徑 | 所有者 | 權(quán)限 | 說(shuō)明 |
|---|---|---|---|
| ~/.openclaw/ | openclaw | 700 | 僅 owner 可訪問(wèn) |
| ~/.openclaw/openclaw.json | openclaw | 600 | 配置文件 |
| ~/.openclaw/workspace-*/ | openclaw | 700 | Workspace 目錄 |
| ~/.openclaw/workspace-*/AGENTS.md | openclaw | 600 | 工作手冊(cè) |
| ~/.openclaw/workspace-*/memory/ | openclaw | 700 | 記憶目錄 |
| ~/.openclaw/logs/ | openclaw | 700 | 日志目錄 |
權(quán)限加固腳本:
#!/bin/bash
# harden-permissions.sh
OPENCLAW_HOME="$HOME/.openclaw"
OPENCLAW_USER="openclaw"
OPENCLAW_GROUP="openclaw"
# 創(chuàng)建用戶組(如需要)
sudo groupadd -f$OPENCLAW_GROUP
sudo usermod -aG$OPENCLAW_GROUP$USER
# 設(shè)置主目錄權(quán)限
chmod 700$OPENCLAW_HOME
chown -R$OPENCLAW_USER:$OPENCLAW_GROUP$OPENCLAW_HOME
# 設(shè)置配置文件權(quán)限
chmod 600$OPENCLAW_HOME/openclaw.json
# 設(shè)置 Workspace 目錄權(quán)限
find$OPENCLAW_HOME/workspace-* -typed -execchmod 700 {} ;
find$OPENCLAW_HOME/workspace-* -typef -execchmod 600 {} ;
# 設(shè)置日志目錄權(quán)限
mkdir -p$OPENCLAW_HOME/logs
chmod 700$OPENCLAW_HOME/logs
echo"Permissions hardened"
10.2 敏感信息管理
敏感信息分類:
| 類型 | 示例 | 存儲(chǔ)建議 |
|---|---|---|
| API Keys | SiliconFlow API Key | openclaw.json(加密存儲(chǔ))或環(huán)境變量 |
| Tokens | Gateway auth token | openclaw.json 或密鑰管理系統(tǒng) |
| 用戶信息 | USER.md 中的個(gè)人信息 | 加密存儲(chǔ)或脫敏處理 |
| 對(duì)話歷史 | sessions/ | 加密存儲(chǔ),訪問(wèn)審計(jì) |
環(huán)境變量方案:
{
memorySearch: {
remote: {
apiKey: "env:MEMORY_SEARCH_API_KEY",
},
},
}
環(huán)境變量在運(yùn)行時(shí)替換為實(shí)際值,配置文件本身不包含明文密鑰。
密鑰管理系統(tǒng)集成:
生產(chǎn)環(huán)境推薦使用 Vault 等密鑰管理系統(tǒng):
# 從 Vault 獲取密鑰
API_KEY=$(vault kv get -field=api_key secret/openclaw/memory-search)
# 寫入臨時(shí)配置文件
cat > /tmp/openclaw-override.json << EOF
{
"memorySearch": {
? ??"remote": {
? ? ??"apiKey":?"$API_KEY"
? ? }
? }
}
EOF
# 啟動(dòng) Gateway
openclaw gateway start --config /tmp/openclaw-override.json
10.3 審計(jì)日志
審計(jì)日志配置:
{
logging: {
level: "info",
file: "/var/log/openclaw/audit.log",
auditEnabled: true,
},
}
審計(jì)日志內(nèi)容:
配置變更:who、when、what changed
敏感操作:文件刪除、命令執(zhí)行、配置修改
認(rèn)證事件:登錄成功/失敗
渠道事件:消息收發(fā)、渠道連接/斷開(kāi)
日志分析腳本:
#!/bin/bash # audit-analysis.sh LOG_FILE="/var/log/openclaw/audit.log" echo"=== 認(rèn)證事件統(tǒng)計(jì) ===" grep -c"auth.*success"$LOG_FILE grep -c"auth.*fail"$LOG_FILE echo"=== 配置變更記錄 ===" grep"config.*change"$LOG_FILE| tail -20 echo"=== 敏感操作記錄 ===" grep"sensitive.*operation"$LOG_FILE| tail -20 echo"=== 最近 24 小時(shí)活動(dòng) ===" grep"$(date -d '1 day ago' +%Y-%m-%d)"$LOG_FILE| wc -l
日志保留策略:
| 類型 | 保留期 | 存儲(chǔ)位置 |
|---|---|---|
| 操作日志 | 90 天 | /var/log/openclaw/ |
| 審計(jì)日志 | 1 年 | /var/log/openclaw/audit/ |
| 錯(cuò)誤日志 | 180 天 | /var/log/openclaw/errors/ |
10.4 安全檢查清單
部署前檢查:
[ ] openclaw.json 不包含明文密鑰
[ ] Gateway 綁定到 loopback
[ ] 認(rèn)證 Token 足夠復(fù)雜(32 位以上)
[ ] Workspace 目錄權(quán)限為 700
[ ] 配置文件權(quán)限為 600
[ ] 運(yùn)行用戶為專用非 root 用戶
日常巡檢:
[ ] 檢查日志中是否有異常登錄嘗試
[ ] 檢查是否有未授權(quán)的配置變更
[ ] 檢查 memory/ 目錄大小是否正常
[ ] 檢查磁盤空間使用情況
[ ] 檢查是否有新的 Skill 文件被添加
版本更新檢查:
[ ] 更新前備份完整 Workspace
[ ] 在測(cè)試環(huán)境驗(yàn)證新版本
[ ] 確認(rèn) Skill 兼容性
[ ] 驗(yàn)證配置兼容性
[ ] 記錄升級(jí)步驟和回滾方案
總結(jié)
本文檔從運(yùn)維工程師視角系統(tǒng)闡述了 OpenClaw Workspace 的生產(chǎn)環(huán)境運(yùn)維實(shí)踐。核心要點(diǎn)如下:
架構(gòu)理解:Workspace 的核心是將配置體系(AGENTS.md、SOUL.md、TOOLS.md 等)與內(nèi)容體系(USER.md、memory/)分離。前者定義 Agent 的行為能力,后者存儲(chǔ) Agent 的知識(shí)記憶。
目錄規(guī)劃:生產(chǎn)環(huán)境應(yīng)采用標(biāo)準(zhǔn)目錄布局,通過(guò)獨(dú)立 Workspace 實(shí)現(xiàn)多 Agent 隔離。備份策略應(yīng)覆蓋配置文件和記憶目錄。
文件運(yùn)維:各配置文件承擔(dān)不同職責(zé)——openclaw.json 是系統(tǒng)憲法,AGENTS.md 是工作手冊(cè),TOOLS.md 是安全邊界。理解各文件的職責(zé)邊界是故障排查的基礎(chǔ)。
記憶管理:builtin 方案適合大多數(shù)場(chǎng)景,qmd 方案適合知識(shí)密集型需求。記憶污染應(yīng)通過(guò)定期復(fù)核預(yù)防,清理策略應(yīng)自動(dòng)化。
多 Agent 設(shè)計(jì):通過(guò)獨(dú)立 Workspace 實(shí)現(xiàn)配置、記憶和權(quán)限的隔離。共享配置在 openclaw.json 中管理,專屬配置在各 Workspace 中管理。
故障排查:遵循"配置不生效→權(quán)限問(wèn)題→記憶失效→性能問(wèn)題"的排查路徑。快速修復(fù)命令和排查清單應(yīng)在運(yùn)維手冊(cè)中固化。
安全加固:權(quán)限最小化、敏感信息環(huán)境變量化、日志審計(jì)覆蓋。安全檢查清單應(yīng)在部署前和日常巡檢中執(zhí)行。
備份恢復(fù):Git 版本控制實(shí)現(xiàn)配置可追溯,tar 包實(shí)現(xiàn)定時(shí)備份,災(zāi)難恢復(fù)流程定義 RTO/RPO。遷移腳本實(shí)現(xiàn)多環(huán)境同步。
通過(guò)遵循本文檔的實(shí)踐,運(yùn)維團(tuán)隊(duì)可以建立規(guī)范的 Workspace 運(yùn)維體系,確保 OpenClaw 在生產(chǎn)環(huán)境中的穩(wěn)定運(yùn)行。
-
自動(dòng)化
+關(guān)注
關(guān)注
31文章
5982瀏覽量
90624 -
文件系統(tǒng)
+關(guān)注
關(guān)注
0文章
305瀏覽量
21036 -
Agent
+關(guān)注
關(guān)注
0文章
219瀏覽量
29140
原文標(biāo)題:OpenClaw Workspace 運(yùn)維實(shí)戰(zhàn)手冊(cè)
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
OpenClaw Workspace運(yùn)維實(shí)戰(zhàn)手冊(cè)
評(píng)論