Skip to content

fix: Chrome 进程使用独立 session 避免被父进程组回收#60

Open
yskhhh wants to merge 1 commit intoautoclaw-cc:mainfrom
yskhhh:fix/chrome-process-session-isolation
Open

fix: Chrome 进程使用独立 session 避免被父进程组回收#60
yskhhh wants to merge 1 commit intoautoclaw-cc:mainfrom
yskhhh:fix/chrome-process-session-isolation

Conversation

@yskhhh
Copy link
Copy Markdown

@yskhhh yskhhh commented Mar 25, 2026

问题

在 openclaw、Claude Code 等 Agent 平台中执行 skill 命令时,
平台在命令结束后会清理整个进程组(SIGTERM/SIGKILL),
导致通过 subprocess.Popen 启动的 Chrome 子进程随之退出。

表现为:每次调用 CLI 命令后 Chrome 自动关闭,
下一条命令不得不重新冷启动 Chrome,增加延迟且体验差。

修复

launch_chrome()subprocess.Popen 中加入 start_new_session=True

这会让 Chrome 成为新进程组的领导者,与 Python 父进程完全解耦。
父进程(或其所在进程组)被终止时,Chrome 不受影响,可持续在后台运行,
实现跨命令复用同一 Chrome 实例。

影响范围

仅影响 launch_chrome() 的启动行为,对 CDP 连接、端口复用逻辑无任何改动。

使用 start_new_session=True 启动 Chrome,使其成为独立进程组的领导者。
在 openclaw、Claude Code 等 Agent 平台中,命令执行完毕后平台会
清理整个进程组,导致 Chrome 子进程随之退出。

加入此参数后 Chrome 与 Python 父进程解耦,可在后台持续运行,
支持跨命令复用同一 Chrome 实例。
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.

1 participant