Skip to content

Commit f81540d

Browse files
committed
Release v0.1.20 skill bundle
1 parent f0daa69 commit f81540d

17 files changed

Lines changed: 237 additions & 19 deletions

File tree

.github/workflows/release.yml

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,20 @@ jobs:
8888
echo "Chrome extension crx not found" >&2
8989
exit 1
9090
fi
91+
skill_zip="dist/skills/open-browser-use-skill.zip"
92+
if [ ! -f "${skill_zip}" ]; then
93+
echo "Open Browser Use skill zip not found" >&2
94+
exit 1
95+
fi
96+
skill_bundle="dist/skills/open-browser-use.skill"
97+
if [ ! -f "${skill_bundle}" ]; then
98+
echo "Open Browser Use .skill bundle not found" >&2
99+
exit 1
100+
fi
91101
echo "chrome_extension_zip=${chrome_extension_zip}" >> "${GITHUB_OUTPUT}"
92102
echo "chrome_extension_crx=${chrome_extension_crx}" >> "${GITHUB_OUTPUT}"
103+
echo "skill_zip=${skill_zip}" >> "${GITHUB_OUTPUT}"
104+
echo "skill_bundle=${skill_bundle}" >> "${GITHUB_OUTPUT}"
93105
94106
- name: 生成 SBOM
95107
uses: anchore/sbom-action@e22c389904149dbc22b58101806040fa8d37a610 # v0.24.0
@@ -109,6 +121,9 @@ jobs:
109121
dist/chrome-extension/*.zip
110122
dist/chrome-extension/*.crx
111123
dist/chrome-extension/*.json
124+
dist/skills/*.zip
125+
dist/skills/*.skill
126+
dist/skills/*.json
112127
dist/sbom.spdx.json
113128
114129
- name: 生成 build provenance
@@ -118,14 +133,21 @@ jobs:
118133
subject-path: |
119134
dist/chrome-extension/*.zip
120135
dist/chrome-extension/*.crx
136+
dist/skills/*.zip
137+
dist/skills/*.skill
121138
122139
- name: 创建 GitHub Release
123140
env:
124141
GH_TOKEN: ${{ github.token }}
125142
RELEASE_TAG: ${{ steps.release.outputs.tag }}
126143
RELEASE_TITLE: ${{ steps.release.outputs.title }}
127144
run: |
128-
assets=(dist/chrome-extension/*.zip dist/chrome-extension/*.crx)
145+
assets=(
146+
dist/chrome-extension/*.zip
147+
dist/chrome-extension/*.crx
148+
dist/skills/*.zip
149+
dist/skills/*.skill
150+
)
129151
130152
if gh release view "${RELEASE_TAG}" >/dev/null 2>&1; then
131153
gh release upload "${RELEASE_TAG}" "${assets[@]}" --clobber

apps/chrome-extension/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"manifest_version": 3,
33
"name": "Open Browser Use",
44
"description": "Open Browser Use Chrome automation extension.",
5-
"version": "0.1.19",
5+
"version": "0.1.20",
66
"icons": {
77
"16": "icons/icon-16.png",
88
"32": "icons/icon-32.png",

cmd/open-browser-use/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"github.com/spf13/cobra"
2626
)
2727

28-
const version = "0.1.19"
28+
const version = "0.1.20"
2929
const defaultChromeExtensionID = "bgjoihaepiejlfjinojjfgokghnodnhd"
3030
const chromeWebStoreUpdateURL = "https://clients2.google.com/service/update2/crx"
3131
const betaExtensionPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnBLT95WWVnHYH0pOBRH/eP+BWtlKVmLE/RHkERUTI2+PGDSQrbWVabmTw4CZ3yhjko04dijSX2Az8cnp65xh23Dh5mP5TCtiP9LexRFJokd8EsyeFdtKamMYr0hF1ZUc1/8ZpLnetAU65ZMB9VzHQBqpJWeUwuIvecgfRtGklDgJMjnvcq5J6pttZrzWrI/2B0BNufwsTQfEt7qLtDFPHXmUdtZfQbc2EfYFvkXLDAXicYviiocedrsAGIKUxpyQegobhUFL+tNLOuXKBpZlLFQn3xgm5CyGZwN6bueiV/S7reigVTKAMQ8BX0eacT22e8r0UzjsjkugeHOIonIvtQIDAQAB"

docs/CHROME_WEB_STORE_RELEASE.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,21 @@ open-browser-use setup beta --extension-id <extensionId>
8282
## GitHub Release
8383

8484
推送 `v*` tag 或手动触发 `.github/workflows/release.yml` 后,GitHub Release
85-
页面放两个 extension 制品:
85+
页面放两个 extension 制品和两个 agent skill 制品:
8686

8787
- `dist/chrome-extension/open-browser-use-chrome-extension-<version>.zip`
8888
- `dist/chrome-extension/open-browser-use-chrome-extension-<version>.crx`
89+
- `dist/skills/open-browser-use-skill.zip`
90+
- `dist/skills/open-browser-use.skill`
91+
92+
skill 两种文件名内容一致,解压后顶层目录都是 `open-browser-use/`。提供
93+
`.zip` 是为了通用下载和手工解压;提供 `.skill` 是为了让支持 skill bundle
94+
扩展名的 agent installer 可以直接识别。
8995

9096
`release-manifest.json``package-manifest.json``crx-manifest.json`
91-
`repo-metadata.tgz``sbom.spdx.json` 会保留在 workflow 的
97+
`skills/package-manifest.json``repo-metadata.tgz``sbom.spdx.json` 会保留在 workflow 的
9298
`release-evidence` artifact 中,用于追溯和排查,不作为用户下载项展示。
93-
release workflow 会对 Chrome extension zip 和 CRX 生成 provenance attestation。
99+
release workflow 会对 Chrome extension zip/CRXskill 包生成 provenance attestation。
94100

95101
workflow 新建 GitHub Release 时使用 `gh release create --generate-notes`,由
96102
GitHub 自动生成 `What's Changed``New Contributors``Full Changelog`

docs/CICD.md

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88
打包、脚本语法、Go 测试、JS/TypeScript package 测试和 Python SDK smoke。
99
- `supply-chain-security.yml`:在 PR 上做依赖变更检查,并在 PR、定时任务和手动触发时运行 OSV 扫描。
1010
- `release.yml`:tag `v*` 推送或手动触发的 release 流水线,用来打包仓库级制品、
11-
Chrome extension zip、内部 CRX evidence、生成 provenance,并创建 GitHub
12-
Release;Release 页面暴露 zip 和 CRX,普通安装入口使用 zip/unpacked,其他
13-
manifest、SBOM 和 repo metadata 留在 workflow artifact 里。手动触发时按输入参数可把
11+
Chrome extension zip、内部 CRX evidence、Open Browser Use skill 包、
12+
生成 provenance,并创建 GitHub Release;Release 页面暴露 extension zip/CRX
13+
和 skill 下载包,普通安装入口使用 zip/unpacked,其他 manifest、SBOM 和 repo
14+
metadata 留在 workflow artifact 里。手动触发时按输入参数可把
1415
extension 上传并提交到 Chrome Web Store。新建 GitHub Release 时使用
1516
`gh release create --generate-notes`,交给 GitHub 自动生成 `What's Changed`
1617
`New Contributors``Full Changelog`
@@ -51,14 +52,22 @@
5152

5253
- `chrome-extension/open-browser-use-chrome-extension-<version>.zip`
5354
- `chrome-extension/open-browser-use-chrome-extension-<version>.crx`
55+
- `skills/open-browser-use-skill.zip`
56+
- `skills/open-browser-use.skill`
57+
58+
`open-browser-use-skill.zip``open-browser-use.skill` 都是
59+
`skills/open-browser-use/` 的可安装 skill 包,解压后的顶层目录固定为
60+
`open-browser-use/``.skill` 文件和 zip 内容一致,只是使用 agent skill
61+
installer 更容易识别的扩展名。
5462

5563
workflow 还会在 `release-evidence` artifact 中保留内部追溯材料:
5664

5765
- `release-manifest.json`
5866
- `repo-metadata.tgz`
5967
- `chrome-extension/package-manifest.json`
6068
- `chrome-extension/crx-manifest.json`
69+
- `skills/package-manifest.json`
6170
- `sbom.spdx.json`
62-
- 对 zip 和 CRX 生成的 GitHub artifact attestation
71+
-extension zip/CRXskill 包生成的 GitHub artifact attestation
6372

6473
也就是说,即使项目还没进入真实部署阶段,这个模板也已经把“可追溯的制品封装”这一步准备好了。

docs/SUPPLY_CHAIN_SECURITY.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@
2222

2323
- Dependency Review 在 public repo 可以直接使用;private repo 通常需要 GitHub Advanced Security 或对应的代码安全能力。
2424
- OSV 和 SBOM 的效果依赖仓库里存在可识别的依赖清单或 lockfile。
25-
- `scripts/release-package.sh` 当前会产出 Chrome extension zip、CRX
26-
和内部追溯 manifest;release workflow 会把 zip 和 CRX 放到 GitHub Release
27-
页面,并对它们生成 provenance。user-owned private repository 不支持 GitHub
25+
- `scripts/release-package.sh` 当前会产出 Chrome extension zip、CRX、
26+
Open Browser Use skill zip、`.skill` 包和内部追溯 manifest;release workflow
27+
会把 extension 与 skill 用户可下载包放到 GitHub Release 页面,并对它们生成
28+
provenance。user-owned private repository 不支持 GitHub
2829
artifact attestation,release workflow 会在 private repo 下跳过 provenance。
2930
后续新增 native host 二进制发布时,也要把对应制品纳入同一套 attestation。
3031
- OpenSSF Scorecard 默认不启用,因为新模板仓库还没有真实分支保护、release 历史和 SAST 姿态可以评分;等仓库规则配置完成后再按需加回。
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
## [2026-05-09 19:44] | Task: package skill release bundle
2+
3+
### 🤖 Execution Context
4+
5+
- **Agent ID**: `Codex`
6+
- **Base Model**: `GPT-5`
7+
- **Runtime**: `Codex CLI`
8+
9+
### 📥 User Query
10+
11+
> 发版时把 `skills/open-browser-use` 打包成 `open-browser-use-skill.zip``open-browser-use.skill`,一起作为 GitHub Release 产物发布;解压后的目录名应为 `open-browser-use/*`
12+
13+
### 🛠 Changes Overview
14+
15+
**Scope:** release packaging, GitHub Actions, CI, release docs
16+
17+
**Key Actions:**
18+
19+
- **[Packaging]**: 新增 `scripts/package-skill.sh`,校验 `SKILL.md` frontmatter,并生成内容一致的 zip 与 `.skill` 包。
20+
- **[Release]**: 将 skill zip 和 `.skill` 纳入 `scripts/release-package.sh`、release manifest、release-evidence artifact、provenance attestation 和 GitHub Release assets。
21+
- **[Version]**: 将 Open Browser Use 发布版本元数据提升到 `0.1.20`,用于触发新的 tag release。
22+
- **[Docs]**: 同步 CI/CD、供应链、GitHub Release 文档和用户可见 release note。
23+
24+
### 🧠 Design Intent (Why)
25+
26+
Skill 是 Agent 安装 Open Browser Use 的直接入口,放进正式 release assets 可以让用户不用 checkout 仓库或手工整理目录。打包脚本强制 archive 顶层目录为 `open-browser-use/`,避免 installer 解包后目录名不稳定。
27+
28+
### 📁 Files Modified
29+
30+
- `.github/workflows/release.yml`
31+
- `package.json`
32+
- `scripts/ci.sh`
33+
- `scripts/package-skill.sh`
34+
- `scripts/release-package.sh`
35+
- `docs/CICD.md`
36+
- `docs/CHROME_WEB_STORE_RELEASE.md`
37+
- `docs/SUPPLY_CHAIN_SECURITY.md`
38+
- `docs/releases/feature-release-notes.md`

docs/releases/feature-release-notes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
| 日期 | 功能域 | 用户价值 | 变更摘要 |
66
| --- | --- | --- | --- |
7+
| 2026-05-09 | Skill Release Bundle | Agent 用户可以直接从 GitHub Release 下载 Open Browser Use skill,不需要从源码仓库手工拷贝 `skills/open-browser-use/`| 发布 `0.1.20` patch 版本,release workflow 新增 `open-browser-use-skill.zip``open-browser-use.skill` 两个产物,二者解压后都是 `open-browser-use/` 顶层目录,并纳入 release manifest、evidence artifact 和 provenance。 |
78
| 2026-05-09 | CLI Action Runner | Shell-first agent runtime 和 CI 可以用 `open-browser-use run -c/--file` 编排多步浏览器动作,不必额外引入 JS/Python runtime。 | 发布 `0.1.19` patch 版本,新增 line-oriented action plan、共享 session/turn、默认 tab 传递、`wait-load`/`page-info` 等 action,并补齐 CLI README、skill 指南和 fake socket 测试。 |
89
| 2026-05-09 | Cursor Overlay Polish | 页面里的 Agent cursor 更接近官方 Codex Chrome 插件表现,尺寸、方向、移动质感和闲置摆动都更自然。 | 发布 `0.1.18` patch 版本,将 cursor overlay 改为 24px 中心锚点结构,补齐弹簧移动、短距离 scoot、长距离 bezier 曲线、移动拉伸和落点后钟摆摆动。 |
910
| 2026-05-09 | Beta ZIP Naming | 审核期安装只暴露一个可拖入 Chrome 的 release ZIP,避免同时看到普通 zip 和 `-manual.zip` 造成误解。 | 发布 `0.1.17` patch 版本,npm postinstall/Homebrew caveats 改回英文提示,release zip 直接写入稳定 key 并保持 `open-browser-use-chrome-extension-<version>.zip` 文件名,`setup beta` 不再生成 `*-manual.zip`|

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"build": "pnpm -r --if-present build",
1010
"generate:chrome-extension-icons": "node scripts/generate-chrome-extension-icons.mjs",
1111
"package:chrome-extension": "./scripts/package-chrome-extension.sh",
12+
"package:skill": "./scripts/package-skill.sh",
1213
"chrome-web-store:oauth": "node scripts/chrome-web-store-oauth.mjs",
1314
"publish:chrome-web-store": "node scripts/publish-chrome-web-store.mjs",
1415
"typecheck": "pnpm -r --if-present typecheck",

packages/browser-client-rewrite/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@open-browser-use/browser-client-rewrite",
3-
"version": "0.1.19",
3+
"version": "0.1.20",
44
"private": true,
55
"type": "module",
66
"scripts": {

0 commit comments

Comments
 (0)