docs: prepare apply-ready multi-agent config patch

This commit is contained in:
Eve
2026-04-08 08:34:53 +08:00
parent 06a3b4c57e
commit 3b65829ad7
3 changed files with 303 additions and 0 deletions

View File

@@ -442,3 +442,18 @@ Schema 核對後,每個 `agents.list[]` entry
- `coder` 與下游 agent 的 delegation 邊界是否符合預期 - `coder` 與下游 agent 的 delegation 邊界是否符合預期
- 套用後需要用哪些驗證動作確認 policy 真的生效 - 套用後需要用哪些驗證動作確認 policy 真的生效
## 16. Apply-Ready Patch2026-04-08
本輪已再產出:
1. `docs/plans/2026-04-08-openclaw-config-apply-ready-patch.json`
2. `docs/plans/2026-04-08-openclaw-config-apply-ready-runbook.md`
### 16.1 用途
- `apply-ready-patch.json`:純 `gateway config.patch` payload 候選版
- `apply-ready-runbook.md`:套用前後的操作順序與驗證清單
### 16.2 邊界
這份 apply-ready patch 仍然**沒有被套用**。
它的意義是:設計與文件已收斂到可以進入「等待總管批准後再 patch」的階段。

View File

@@ -0,0 +1,236 @@
{
"agents": {
"defaults": {
"workspace": null
},
"list": [
{
"id": "coder",
"name": "Eve",
"workspace": "/home/alice/.openclaw/workspace",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Eve",
"theme": "gentle coordinator and overseer",
"emoji": "🤖"
},
"skills": [
"using-superpowers",
"executing-plans",
"requesting-code-review",
"verification-before-completion",
"writing-plans",
"using-git-worktrees",
"subagent-driven-development"
],
"subagents": {
"allowAgents": [
"prompt-optimizer",
"reviewer",
"research",
"engineering",
"ops"
]
}
},
{
"id": "prompt-optimizer",
"name": "Prompt Optimizer",
"workspace": "/home/alice/.openclaw/workspace-prompt-optimizer",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Prompt Optimizer",
"theme": "task clarification and execution drafting",
"emoji": "🧭"
},
"skills": [
"using-superpowers"
],
"tools": {
"deny": [
"message",
"gateway",
"cron",
"nodes",
"sessions_spawn"
]
},
"subagents": {
"allowAgents": []
}
},
{
"id": "reviewer",
"name": "Reviewer",
"workspace": "/home/alice/.openclaw/workspace-reviewer",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Reviewer",
"theme": "strict verification and evidence review",
"emoji": "🛡️"
},
"skills": [
"using-superpowers",
"verification-before-completion",
"requesting-code-review"
],
"tools": {
"deny": [
"message",
"gateway",
"cron",
"nodes",
"sessions_spawn"
]
},
"subagents": {
"allowAgents": []
}
},
{
"id": "research",
"name": "Research",
"workspace": "/home/alice/.openclaw/workspace-research",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Research",
"theme": "source-based investigation and comparison",
"emoji": "🔎"
},
"skills": [
"using-superpowers",
"tavily-search",
"serpapi",
"github"
],
"tools": {
"deny": [
"message",
"gateway",
"cron",
"nodes",
"sessions_spawn"
]
},
"subagents": {
"allowAgents": []
}
},
{
"id": "engineering",
"name": "Engineering",
"workspace": "/home/alice/.openclaw/workspace-engineering",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Engineering",
"theme": "implementation debugging and validation",
"emoji": "🧰"
},
"skills": [
"using-superpowers",
"test-patterns",
"requesting-code-review",
"verification-before-completion"
],
"tools": {
"deny": [
"message",
"gateway",
"cron",
"nodes",
"sessions_spawn"
]
},
"subagents": {
"allowAgents": []
}
},
{
"id": "ops",
"name": "Ops",
"workspace": "/home/alice/.openclaw/workspace-ops",
"model": {
"primary": "cowbay/gpt-5.4",
"fallbacks": [
"ollama/minimax-m2.5:cloud",
"cowbay/minimax/minimax-m2.5:free",
"cowbay/kilo-auto/free"
]
},
"identity": {
"name": "Ops",
"theme": "operations diagnostics and safe change planning",
"emoji": "⚙️"
},
"skills": [
"using-superpowers",
"healthcheck",
"github"
],
"tools": {
"deny": [
"message",
"gateway",
"cron",
"nodes",
"sessions_spawn"
]
},
"subagents": {
"allowAgents": []
}
}
]
},
"tools": {
"sessions": {
"visibility": "all"
},
"agentToAgent": {
"enabled": true,
"allow": [
"coder",
"prompt-optimizer",
"reviewer",
"research",
"engineering",
"ops"
]
}
}
}

View File

@@ -0,0 +1,52 @@
# 2026-04-08 OpenClaw Apply-Ready Patch Runbook
這份文件的用途,是把 `2026-04-08-openclaw-config-apply-ready-patch.json` 的使用方式講清楚。
## 1. 定位
- 這份 `apply-ready patch` 是**純 payload**
- 不包含設計說明、備忘、註解或非 schema 欄位
- 目標:在總管明確批准後,可直接作為 `gateway config.patch` 的候選輸入
## 2. 套用前條件
套用前應先確認:
- 各 agent workspace 已存在
- prompt / workflow 檔案已建立
- 總管已明確批准進行 config 變更
- 已準備好套用後驗證步驟
## 3. 套用前建議順序
1. 重新讀取目前 live config 的 `agents` / `tools.sessions` / `tools.agentToAgent`
2. 再次確認這份 patch 仍符合最新設計
3. 取得總管明確批准
4. 執行 `gateway config.patch`
5. 套用後立刻做驗證
## 4. 套用後必驗項
### 4.1 結構驗證
- `agents.list` 應為 6 個 agent
- `agents.defaults.workspace` 應被刪除
- 每個 agent 應有自己的 `workspace`
- `tools.sessions.visibility` 應為 `all`
- `tools.agentToAgent.enabled` 應為 `true`
### 4.2 行為驗證
- `coder``reviewer``sessions_spawn` 應成功
- `reviewer``engineering``sessions_spawn` 應失敗
- 下游 agent 呼叫 `message` / `gateway` / `cron` / `nodes` 應被拒絕
- 下游 agent 呼叫 `sessions_spawn` 應被拒絕
### 4.3 邊界驗證
- `skills` allowlist 應如預期生效
- `tools.deny` 應如預期生效
- 子代理不應直接越過 Eve 對上回話
## 5. 失敗時回退策略
如果套用後驗證失敗:
1. 先停止繼續擴大測試
2. 立即回報總管與 Eve 的驗證結果
3. 重新讀取 live config 差異
4. 視情況用新的 `config.patch` 修正,或回退到先前配置
## 6. 注意
- 這份檔案雖然叫 apply-ready但**仍不等於已批准套用**
- 真正執行 `gateway config.patch` 前,仍需總管明確同意