docs: add candidate config patch for multi-agent rollout

This commit is contained in:
Eve
2026-04-07 23:02:14 +08:00
parent 1b66a00d22
commit 07971ffe1f
3 changed files with 181 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
# 2026-04-07 OpenClaw Candidate Config Patch Notes
這份 `2026-04-07-openclaw-config-candidate-patch.json` 是**候選版 `config.patch`**,不是可直接套用的授權指令。
## 1. 設計目標
- 將 live config 從單一 `coder` agent 擴展為 6 個 agent
- 強制每個 agent 使用自己的獨立 workspace
- 打開 Eve 跨 agent 協調所需的 session 可見性
- 打開 agent-to-agent allowlist但不假裝只靠 config 就能完成制度約束
## 2. 依 live config 做的最小必要變更
目前 live config 關鍵現況:
- `agents.list` 只有 `coder`
- `tools.sessions.visibility = "self"`
- `tools.agentToAgent.enabled = false`
- `agents.defaults.workspace = "/home/alice/.openclaw/workspace"`
因此候選 patch 只改:
- `agents.defaults.workspace -> null`
- `agents.list -> 整組替換為 6-agent list`
- `tools.sessions.visibility -> "all"`
- `tools.agentToAgent.enabled -> true`
- `tools.agentToAgent.allow -> 6-agent allowlist`
## 3. JSON Merge Patch 語義
這份檔案是按 `config.patch` 的 merge patch 語義設計:
### 3.1 刪除 key
- `"workspace": null` 代表刪除 `agents.defaults.workspace`
- 目的:避免殘留共享 default workspace與「每個 agent 必須獨立 workspace」衝突
### 3.2 陣列會整組替換
- `agents.list` 不是 append而是**整個 list 被替換**
- 所以候選 patch 必須放完整的 6-agent list而不是只補 5 個新 agent
## 4. 這份 patch 故意還沒做的事
以下制度暫不塞進 patch
- 只有 Eve 能對總管回話
- 子代理只能回 Eve
- reviewer 不可越權判定完成
- 失聯 / 超時 / 重派的程序正義
原因:這些主要屬於 prompt / workflow 層,不應假裝只靠 config 就會自動成立。
## 5. 套用前仍需再確認的事項
1. 各 workspace 目錄是否先建立
2. 每個 agent 是否要先補 `identity`
3. 每個 agent 是否要先補 `skills`
4. 是否要加 per-agent `tools` 限制
5. 是否要補 `subagents.allowAgents` 進一步收窄派工邊界
## 6. 建議下一步
- 先建立各 agent workspace 骨架
- 再補各 agent 的核心 prompt / workflow 檔
- 最後才產生真正送進 `gateway config.patch` 的 payload

View File

@@ -0,0 +1,103 @@
{
"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"
]
}
},
{
"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"
]
}
},
{
"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"
]
}
},
{
"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"
]
}
},
{
"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"
]
}
},
{
"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"
]
}
}
]
},
"tools": {
"sessions": {
"visibility": "all"
},
"agentToAgent": {
"enabled": true,
"allow": [
"coder",
"prompt-optimizer",
"reviewer",
"research",
"engineering",
"ops"
]
}
}
}

View File

@@ -383,3 +383,26 @@ Schema 核對後,每個 `agents.list[]` entry
- 失聯 / 超時 / 重派的程序正義 - 失聯 / 超時 / 重派的程序正義
這樣可避免把制度描述誤塞進 schema 不保證存在的欄位,之後真的套用 config 時也較不容易踩坑。 這樣可避免把制度描述誤塞進 schema 不保證存在的欄位,之後真的套用 config 時也較不容易踩坑。
## 13. 已產出的候選 patch 檔
本輪已另外落出兩份審查用文件:
1. `docs/plans/2026-04-07-openclaw-config-candidate-patch.json`
2. `docs/plans/2026-04-07-openclaw-config-candidate-patch-notes.md`
### 13.1 候選 patch 的策略
- 以 live config 為基準做**最小必要變更**
- 使用 JSON Merge Patch 語義
- 明確以 `agents.defaults.workspace: null` 刪除共享 default workspace
- 以完整 `agents.list` 替換現有單一 `coder` list
### 13.2 為什麼這份是 candidate patch不是直接套用版
因為在真正送進 `gateway config.patch` 前,仍需先確認:
- 各工作區是否先建好
- 是否加入 `identity`
- 是否加入 `skills`
- 是否加入 per-agent `tools`
- 是否另外用 prompt / workflow 檔補足制度邊界