一句话结论:subAgent 配置了目标模型不等于实际会使用该模型,需要确保:1) 显式指定正确的 agentId;2) main agent 被允许 spawn 该 subAgent。否则可能回退到 main agent 的模型执行或超时失败。
在 OpenClaw 架构中:
wiki-recorder 作为独立 agent,配置了主模型 opencode-go/kimi-k2.5关键区别:
| 调用方式 | 实际执行环境 | 模型 | 结果 |
|---|---|---|---|
泛用 subagent(未指定 agentId) |
默认模型链路 | 可能是 openai-plus/gpt-5.4 |
❌ 未走专用 agent,可能超时 |
显式 agentId: wiki-recorder |
wiki-recorder 专用链路 | opencode-go/kimi-k2.5 |
✅ 正确执行 |
错误示例:
# ❌ 错误:未指定 agentId,实际走默认链路
工具调用: subagent
参数: {
task: "把刚才的排障过程写入 Wiki.js"
}
# 实际执行:运行在默认模型链路,可能超时失败
正确示例:
# ✅ 正确:明确指定使用 wiki-recorder agent
工具调用: subagent
参数: {
agentId: wiki-recorder,
task: "把刚才的排障过程写入 Wiki.js"
}
# 实际执行:运行在 wiki-recorder 链路,使用 Kimi 模型
检查调用参数是否包含:
agentId: wiki-recorder # 必须显式指定
如果没有指定,任务可能运行在错误的链路。
检查 subAgent 的模型配置:
# 查看 agent 配置
cat /root/.openclaw/workspace-wiki-recorder/.openclaw/agents.yaml
应包含:
default_model: opencode-go/kimi-k2.5
models:
fallback: opencode-go/glm-5
main agent 需要被允许 spawn 目标 subAgent:
# 在 main agent 的配置中
allowlist:
- sessions_spawn # 允许 spawn 会话
# 或更细粒度的控制
allowAgents:
- wiki-recorder # 允许 spawn 特定 agent
用户请求
↓
main agent (telegram:direct)
↓ 检查: 是否显式指定 agentId?
├─ 未指定 agentId ──▶ 走默认链路(可能超时)
│
└─ 指定了 agentId ──▶ 检查: 是否允许 spawn 该 agent?
├─ 不允许 → 直接在 main agent 上下文中执行
│ (使用 main agent 的模型)
│
└─ 允许 → 创建 subAgent 会话
↓
wiki-recorder (opencode-go/kimi-k2.5)
在 OpenClaw 日志中查找:
# 成功的 subAgent 调用应包含
agent=wiki-recorder | model=opencode-go/kimi-k2.5
# 如果看到以下情况,说明未正确 spawn
agent=main:telegram:direct | model=... # 直接在 main agent 执行
agentId not specified | ... # 未指定 agentId
修改 OpenClaw 配置,添加 allowlist / allowAgents:
# /root/.openclaw/agents.yaml 或相关配置
sessions:
spawn:
allowlist:
- sessions_spawn
allowAgents:
- wiki-recorder
openclaw gateway restart
触发一次 wiki-recorder 调用,检查日志:
agent=wiki-recorder | model=opencode-go/kimi-k2.5 | ...
位置:/root/.openclaw/workspace-wiki-recorder/.openclaw/agents.yaml
default_model: opencode-go/kimi-k2.5
models:
fallback: opencode-go/glm-5
identity:
name: wiki-recorder
emoji: "🗂️"
确保 main agent 配置中包含:
allowlist:
- sessions_spawn
allowAgents:
- wiki-recorder
现象:subAgent 配置了 Kimi,但日志中没有 Kimi 调用
根因:
agentId: wiki-recorder修复:
agentId: wiki-recorderallowAgents 配置并重启 gateway方法:查看会话日志中的 model= 字段
agent=wiki-recorder | model=opencode-go/kimi-k2.5 | ... ✅ 正确
agent=main:telegram:direct | model=opencode-go/glm-5 | ... ❌ 未正确 spawn
| 配置 | 作用 |
|---|---|
allowlist: [sessions_spawn] |
允许调用 spawn 工具 |
allowAgents: [agent-name] |
允许 spawn 特定 agent |
两者通常需要配合使用。
参见 wiki-recorder 使用说明 - FAQ 中的 Q5。
主要检查点:
agentId: wiki-recorderagentIddefault_modelallowAgentsagent=subAgentName 且 model=配置的模型风险:
allowAgents 可能带来安全问题回滚:
allowAgents 中的条目| 页面 | 说明 |
|---|---|
| ops/2026/04/2026-04-10-wikijs-full-deployment-chain | 本次修复的完整上下文 |
| knowledge/wiki-recorder/usage-guide | wiki-recorder 使用说明(含 FAQ) |
openclaw subagent 模型路由 故障排查 kimi glm 知识库 faq