Skip to content

fix(macos): 修复临时隧道 OAuth 启动时序 - #56

Merged
uvwt merged 1 commit into
uvwt:mainfrom
weieast1314:fix/macos-quick-tunnel-oauth-bootstrap
Sep 3, 2026
Merged

fix(macos): 修复临时隧道 OAuth 启动时序#56
uvwt merged 1 commit into
uvwt:mainfrom
weieast1314:fix/macos-quick-tunnel-oauth-bootstrap

Conversation

@weieast1314

Copy link
Copy Markdown

问题背景

macOS 图形安装器在“临时公网地址(Quick Tunnel)”模式下,会在 cloudflared 生成公网 Origin 前启用 OAuth。

AGENTDOCK_OAUTH_ENABLED=trueAGENTDOCK_SERVER_URL 尚未写入时,Core 的 OAuth 配置校验会失败,导致服务健康检查失败。

另外,App Bundle 被替换后,SMAppService 可能仍显示 Tunnel 已注册,但 cloudflared 实际没有运行;此前 Quick Tunnel 不会进行自愈重启,最终只会等待地址生成超时。

修改内容

  • Quick Tunnel 初始启动时清除旧的 AGENTDOCK_SERVER_URL,并暂时关闭 OAuth,使 Core 能先以本地配置恢复健康。
  • 保留现有 Bearer Token、OAuth 密码和 OAuth token secret;Tunnel 运行流程在获取真实公网 Origin 后再写回地址并启用 OAuth。
  • 对 Quick 与 Named Tunnel 统一检查 cloudflared 进程;若 SMAppService 已注册但进程不存在,则重新注册并启动 Tunnel。
  • 在现有 macOS 服务控制器验证中补充 Quick Tunnel 引导配置回归测试。

验证

  • scripts/test/test-macos-app.sh 通过。
  • 手动端到端验证:本地与公网健康检查通过,OAuth 元数据可用,ChatGPT 完成 OAuth 连接并通过 AgentDock 执行只读 pwd 命令。

@uvwt
uvwt merged commit 552dbff into uvwt:main Sep 3, 2026
11 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants