agentscope-ai / agentscope-ai/QwenPaw
[Feature]: agent.json 配置热加载范围应覆盖 MCP、Skills 等更多配置项
- Linguagem predominante
- Python
- Estrelas
- 34.9k
- Forks
- 3.1k
- Merge médio
- 1d 15h
- PRs com merge (30d)
- 225
Descrição
## 背景
当前 QwenPaw 的 `agent_config_watcher`(agent.json 文件监控)每2秒轮询一次,但仅监控 `channels` 和 `heartbeat` 两个配置项的 hash 变化(源码见 `app/agent_config_watcher.py`):
```python
def _channels_hash(channels):
return hash(str(channels.model_dump(mode="json")))
def _heartbeat_hash(hb):
return hash(str(hb.model_dump(mode="json")))
```
在实际的使用过程中,存在通过agent访问mcp市场,拉取需要的mcp服务,通过这种方式修改的`mcp.clients`、`skills` 等配置项的修改不会被检测到,导致用户只能通过重启 QwenPaw 来使这些配置生效。
## 建议
扩展 `agent_config_watcher` 的监控范围,增加以下配置项的 hash 检测:
1. `mcp.clients` — MCP 客户端配置变更(增删改 MCP)
2. `skills` — Skills 配置变更
3. 其他高频修改的配置节
## 预期收益
- agent修改 MCP/Skills 配置后无需重启即可生效
- 减少因频繁重启导致的 agent记忆混乱等问题
- 提升 Agent 和用户的配置修改体验
## 备选方案
如果全量监控有性能考虑,也可以:
1. 提供一个 CLI 命令(如 `qwenpaw reload-config`)来手动触发热重载
2. 或者在 QwenPaw 控制台增加"重载配置"按钮
## 参考
当前 `agent_config_watcher.py` 已有完整的 workspace reload 机制(`MultiAgentManager.reload_agent`),只需要扩展触发条件即可。
Guia de contribuição
Avaliação
Esta issue ainda não foi avaliada.