From 8acf9db8597fb72bc809fe289f192f63dd374e63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E4=B8=80=E4=B9=8B?= Date: Mon, 26 Oct 2026 09:55:29 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20sctl=20Browser=20=E5=B7=B2?= =?UTF-8?q?=E4=B8=8A=E6=9E=B6=20Chrome=20=E5=BA=94=E7=94=A8=E5=95=86?= =?UTF-8?q?=E5=BA=97=E4=B8=8E=20Edge=20=E5=8A=A0=E8=BD=BD=E9=A1=B9?= =?UTF-8?q?=EF=BC=9AREADME=E3=80=81=E4=B8=AD=E6=96=87=20README=E3=80=81mcp?= =?UTF-8?q?.md=20=E4=B8=8E=20Skill=20=E6=94=B9=E4=B8=BA=E4=BB=8E=E5=95=86?= =?UTF-8?q?=E5=BA=97=E5=AE=89=E8=A3=85=EF=BC=8CGitHub=20Releases=20?= =?UTF-8?q?=E7=9A=84=20zip=20=E4=BD=9C=E4=B8=BA=E6=89=8B=E5=8A=A8=E5=AE=89?= =?UTF-8?q?=E8=A3=85=E5=A4=87=E9=80=89=EF=BC=9Bdevelopment.md=20=E8=AF=B4?= =?UTF-8?q?=E6=98=8E=E5=8F=91=E5=B8=83=E6=B5=81=E7=A8=8B=E4=B8=8D=E4=BC=9A?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=8F=90=E4=BA=A4=E5=95=86=E5=BA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 10 ++++++---- docs/README_zh-CN.md | 8 +++++--- docs/development.md | 2 ++ docs/mcp.md | 24 ++++++++++++++---------- skills/sctl/SKILL.md | 5 +++-- 5 files changed, 30 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 99bbac2..3a4cd4b 100644 --- a/README.md +++ b/README.md @@ -67,10 +67,12 @@ The install script verifies the release archive's sha256 and installs `sctl` int per extension. - **ScriptCat:** enable **External Access** in its options and enter the code. - - **sctl Browser:** download `sctl-browser-extension-.zip` from - [GitHub Releases](https://github.com/scriptscat/sctl/releases), unzip it, load the folder as an unpacked - extension, and enter a code in its popup. It needs **Chrome 125 or newer** (or a Chromium browser of that - version). + - **sctl Browser:** install it from the + [Chrome Web Store](https://chromewebstore.google.com/detail/sctl-browser/biafbcaobbmcodfinffakgpdgaiodbgk) or + [Microsoft Edge Add-ons](https://microsoftedge.microsoft.com/addons/detail/sctl-browser/nbmnkdfbjdhbdjjffgkocfdkemockepa) and + enter a code in its popup. It needs **Chrome 125 or newer** (or a Chromium browser of that version). You can + also load `sctl-browser-extension-.zip` from + [GitHub Releases](https://github.com/scriptscat/sctl/releases) as an unpacked extension. 3. **Check the connection:** diff --git a/docs/README_zh-CN.md b/docs/README_zh-CN.md index 182b80d..74d2f30 100644 --- a/docs/README_zh-CN.md +++ b/docs/README_zh-CN.md @@ -60,9 +60,11 @@ irm https://raw.githubusercontent.com/scriptscat/sctl/main/scripts/install.ps1 | 2. **配对扩展。** `sctl connect` 打印一次性配对码;一个码只能配对一个扩展,每个扩展各运行一次。 - **ScriptCat:** 在选项页启用 **External Access** 并输入配对码。 - - **sctl Browser:** 从 [GitHub Releases](https://github.com/scriptscat/sctl/releases) 下载 - `sctl-browser-extension-.zip` 并解压,把解压后的目录作为“已解压的扩展程序”加载,在其弹窗里输入配对码。 - 要求 **Chrome 125 或更高版本**(或同版本的 Chromium 内核浏览器)。 + - **sctl Browser:** 从 [Chrome 应用商店](https://chromewebstore.google.com/detail/sctl-browser/biafbcaobbmcodfinffakgpdgaiodbgk) + 或 [Microsoft Edge 加载项](https://microsoftedge.microsoft.com/addons/detail/sctl-browser/nbmnkdfbjdhbdjjffgkocfdkemockepa) + 安装,在其弹窗里输入配对码。要求 **Chrome 125 或更高版本**(或同版本的 Chromium 内核浏览器)。也可以从 + [GitHub Releases](https://github.com/scriptscat/sctl/releases) 下载 `sctl-browser-extension-.zip` + 并解压,作为“已解压的扩展程序”加载。 3. **检查连接:** diff --git a/docs/development.md b/docs/development.md index fac8d22..0388812 100644 --- a/docs/development.md +++ b/docs/development.md @@ -146,6 +146,8 @@ It produces 7 artifacts — 6 sctl archives (darwin/linux/windows × amd64/arm64 `sctl-browser-extension-.zip` — plus `checksums.txt`, generates build provenance for the checksum file, and publishes the GitHub Release automatically after the full test gate passes. The extension zip holds one `sctl-browser-extension-/` directory for "Load unpacked"; its manifest version is the release version. +The workflow does not publish to the Chrome Web Store or Microsoft Edge Add-ons: submit each release to both +stores separately, repacking the zip first, because the stores require `manifest.json` at the archive root. Artifacts are built with `-trimpath` and use the commit time as the archive member timestamp, so rebuilding the same tag is byte-for-byte reproducible. Version, commit, and build time are injected into `internal/cli` diff --git a/docs/mcp.md b/docs/mcp.md index 165eca5..99ffb28 100644 --- a/docs/mcp.md +++ b/docs/mcp.md @@ -124,16 +124,20 @@ independently, but both use the same one-time-code flow against the same running 3. Enter the displayed one-time code: - For ScriptCat: open its options page, enable **External Access**, and enter the code in the enrollment dialog. - - For sctl Browser: download `sctl-browser-extension-.zip` from - [GitHub Releases](https://github.com/scriptscat/sctl/releases) (its version matches the sctl release), - unzip it, open your browser's extensions page, enable developer mode, choose "Load unpacked", and select - the unzipped folder. Open the extension's popup and enter the same code. - - sctl Browser requires Chrome 125 or newer and the `debugger` permission. When you update an unpacked copy, - reload it from the extensions page; Chrome will not load a build whose minimum version is above the running - browser's. While the extension has the debugger attached to a page, Chrome shows a "sctl Browser started - debugging this browser" infobar at the top of the window; the extension cannot hide it, and dismissing it - detaches the debugger. Launch Chrome with `--silent-debugger-extension-api` to suppress the infobar. + - For sctl Browser: install it from the + [Chrome Web Store](https://chromewebstore.google.com/detail/sctl-browser/biafbcaobbmcodfinffakgpdgaiodbgk) or + [Microsoft Edge Add-ons](https://microsoftedge.microsoft.com/addons/detail/sctl-browser/nbmnkdfbjdhbdjjffgkocfdkemockepa), + then open the extension's popup and enter the same code. To run a specific release instead, download + `sctl-browser-extension-.zip` from [GitHub Releases](https://github.com/scriptscat/sctl/releases) + (its version matches the sctl release), unzip it, open your browser's extensions page, enable developer mode, + choose "Load unpacked", and select the unzipped folder. + + sctl Browser requires Chrome 125 or newer and the `debugger` permission. Store installs update + automatically; when you update an unpacked copy, reload it from the extensions page. Chrome will not load a + build whose minimum version is above the running browser's. While the extension has the debugger attached to a + page, Chrome shows a "sctl Browser started debugging this browser" infobar at the top of the window; the + extension cannot hide it, and dismissing it detaches the debugger. Launch Chrome with + `--silent-debugger-extension-api` to suppress the infobar. 4. Run `sctl connect` again for the second extension if you want to pair both — the code is valid only for a short enrollment window, and either extension can consume it first. 5. Verify the connection: diff --git a/skills/sctl/SKILL.md b/skills/sctl/SKILL.md index 3505878..28d6526 100644 --- a/skills/sctl/SKILL.md +++ b/skills/sctl/SKILL.md @@ -51,8 +51,9 @@ sctl browsers -o json # paired sctl Browser instances: name, online, product - **Cannot reach the daemon:** it is not running. Ask the user to start it (`sctl serve` in a terminal, or restart the launchd/systemd service that runs it). Do not start one yourself in the background: it dies with your session and can fight the user's service for the port. -- **`NO_BROWSER_CONNECTED`:** no browser is paired or it is closed. Pairing needs the user: they run `sctl connect` - and type the one-time code into the sctl Browser popup. +- **`NO_BROWSER_CONNECTED`:** no browser is paired or it is closed. Pairing needs the user: they install sctl Browser + from the Chrome Web Store or Microsoft Edge Add-ons if needed, run `sctl connect`, and type the one-time code into + the sctl Browser popup. - **ScriptCat commands fail as not connected:** the user enables external access in ScriptCat's settings and pairs it with a code from `sctl connect`.