This document is the maintainer runbook to prepare and submit OpenCode Browser to the Chrome Web Store.
From the repo root:
bun run build:cwsThis generates:
artifacts/chrome-web-store/opencode-browser-cws-v<version>.zipartifacts/chrome-web-store/extension/(staging folder)artifacts/chrome-web-store/manifest.chrome-web-store.json(effective store manifest)
The build script transforms extension/manifest.json for review-friendly defaults:
- Removes
keyfrom the store manifest artifact - Moves broad site access from required
host_permissionstooptional_host_permissions - Moves
nativeMessaging,downloads, anddebuggertooptional_permissions - Drops
notificationsfrom required permissions
The extension requests optional permissions from the extension action click flow.
Prepare these before submission:
- Extension name, short and long descriptions
- 128x128 icon
- Chrome Web Store screenshots
- Support URL (GitHub issues is acceptable)
- Privacy policy URL (host
PRIVACY.mdon a public URL)
OpenCode Browser can handle the following categories when a user asks it to automate pages:
- Website content
- User activity
- Personal communications and PII (possible on user-selected sites)
Use the policy in PRIVACY.md and disclose local native messaging architecture clearly.
scriptingand site access: required to execute user-requested browser actions on pages the user authorizes.nativeMessaging: required to connect Chrome extension commands to a local companion host process.debugger(optional): used only for explicit diagnostics features (console and page errors).downloads(optional): used for automation workflows that initiate downloads.
- Sign in to Chrome Web Store Developer Dashboard.
- Create or open the draft listing.
- Upload
artifacts/chrome-web-store/opencode-browser-cws-v<version>.zip. - Complete privacy/data safety disclosures.
- Add screenshots, descriptions, and support links.
- Submit for review.
After first publish:
- Record the final store extension ID.
- Verify native host install path supports that ID (
--extension-idflow inbin/cli.js). - Update README installation flow to prefer Web Store install + local host install.