Repository navigation
v0.4.0: Linuxの開発者操作を、Chrome Opsが持つ開発用Chromeで行う - #2
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
Linuxでも拡張の読み込み・再読み込み・エラー取得・削除を自動化します。
Waylandでは他のプログラムがChromeのボタンを押せません。Chromeが中身をAT-SPIへ出すのも
--force-renderer-accessibility付きで起動したときだけです。そこでLinuxでは、利用者の普段のChromeを操作しません。代わりにChrome Opsが専用プロファイルの開発用Chromeを起動し、DevToolsパイプから操作します。src/os/linux-chrome.ts:chrome-ops-chromesystemdユーザーサービス。専用プロファイルのChromeを--remote-debugging-pipe --enable-unsafe-extension-debuggingで起動し、デベロッパーモードをオンにして、Bridgeをこのチェックアウトから読み込みます。ポートは開けません。src/os/linux-helper.ts: ヘルパー。本人専用のUnixソケットへ1操作を渡し、他OSのヘルパーと同じ形の結果JSONを返します。必要ならサービスを起動します。Extensions.loadUnpacked、削除はExtensions.uninstall(開発版のみ)を使います。再読み込みとエラー取得は、裏のタブで開いたchrome://extensionsのdeveloperPrivateを使います。エラーの取得元は「エラー」表示と同じです。usesManagementTabとstartBrowserを加えました。macOSとWindowsの動作は変えていません。確認
npm run setupによる開発用Chromeの起動とBridge接続を確かめました。MCPからの4操作も通りました。test/linux-chrome.test.mjs)を加えました。🤖 Generated with Claude Code