问题描述
MacAssistant 应用启动后,CPU 占用率立即飙升至 100%,导致系统严重卡顿,鼠标持续显示 loading 状态,应用无法正常交互。
重现步骤
- 从 main 分支构建 Release 版本
- 安装应用到 /Applications
- 启动应用
- 观察 CPU 占用率
预期行为: 应用正常启动,CPU 占用率在正常范围 (< 10%)
实际行为: CPU 占用率 95-100%,系统响应缓慢
环境信息
- macOS 版本: macOS 15.7.2 (Build 24G325)
- 设备型号: Apple Silicon (arm64)
- 应用版本: 1.0 (main 分支最新)
- 构建配置: Release
问题分析
通过 sample 和 ps aux 命令观察到:
PID %CPU %MEM
16021 95.9 2.7 MacAssistant
堆栈跟踪显示问题可能与以下组件相关:
OpenClawGatewayRuntimeManager 的健康检查循环
AgentStore 的初始化逻辑
AutoAgent 的定时器设置
可疑代码位置:
OpenClawGatewayRuntimeManager.swift:777 - while Date() < deadline 循环
OpenClawGatewayRuntimeManager.swift:694 - waitUntilHealthy() 中的循环
AgentStore.init() - 可能触发了循环依赖
可能的根本原因
- 初始化死锁: SettingsManager / AgentStore / OpenClawGatewayRuntimeManager 之间可能存在循环依赖
- 定时器未正确设置: 定时器间隔可能设置为0或触发频率过高
- Gateway 启动失败重试: Gateway 启动失败后无限重试
日志片段
[2026-03-14 16:07:56] [INFO] OpenClawGatewayRuntimeManager.swift:689 - 已启动 OpenClaw gateway wrapper 进程,PID: 13591
[2026-03-14 16:07:56] [DEBUG] OpenClawGatewayRuntimeManager.swift:121 - 生成 OpenClaw wrapper 配置
...
日志显示 Gateway 进程已启动,但随后出现高 CPU 占用。
建议修复方向
- 在
waitUntilHealthy() 中添加最大重试次数限制
- 检查
AgentStore.init() 中的 refreshAvailability() 是否触发循环
- 检查 SettingsManager 的
@Published 属性是否触发级联更新
- 添加初始化超时保护
相关文件
MacAssistant/Services/OpenClawGatewayRuntimeManager.swift
MacAssistant/Services/AgentStore.swift
MacAssistant/AutoAgent/AutoAgent.swift
严重性
🔴 Critical - 应用完全无法使用
问题描述
MacAssistant 应用启动后,CPU 占用率立即飙升至 100%,导致系统严重卡顿,鼠标持续显示 loading 状态,应用无法正常交互。
重现步骤
预期行为: 应用正常启动,CPU 占用率在正常范围 (< 10%)
实际行为: CPU 占用率 95-100%,系统响应缓慢
环境信息
问题分析
通过
sample和ps aux命令观察到:堆栈跟踪显示问题可能与以下组件相关:
OpenClawGatewayRuntimeManager的健康检查循环AgentStore的初始化逻辑AutoAgent的定时器设置可疑代码位置:
OpenClawGatewayRuntimeManager.swift:777-while Date() < deadline循环OpenClawGatewayRuntimeManager.swift:694-waitUntilHealthy()中的循环AgentStore.init()- 可能触发了循环依赖可能的根本原因
日志片段
日志显示 Gateway 进程已启动,但随后出现高 CPU 占用。
建议修复方向
waitUntilHealthy()中添加最大重试次数限制AgentStore.init()中的refreshAvailability()是否触发循环@Published属性是否触发级联更新相关文件
MacAssistant/Services/OpenClawGatewayRuntimeManager.swiftMacAssistant/Services/AgentStore.swiftMacAssistant/AutoAgent/AutoAgent.swift严重性
🔴 Critical - 应用完全无法使用