Submit Your Extension

The Plasmo Framework ships with a convenient GitHub action called Browser Platform Publish (opens in a new tab) or BPP. This action will automatically publish your extension to all supported browser extension stores. It runs on a manual trigger by default, but changing its config can make it run on every push.

To start publishing your Plasmo extension, set up a keys.json file with the following schema:

  "$schema": ""

This schema is helpful if your editor supports JSON schema (opens in a new tab). Make sure to only declare valid submission credentials. Otherwise, the action will fail.


NOTE: git ignores this file thanks to our friendly neighborhood .gitignore

Check out our token guide (opens in a new tab) to learn more about the tokens required to submit.

The final key might look like this:

  "$schema": "",
  "chrome": {
    "clientId": "123",
    "refreshToken": "789",
    "extId": "abcd",
    "clientSecret": "efgh"
  "edge": {
    "clientId": "aaaaaaa-aaaa-bbbb-cccc-dddddddddddd",
    "clientSecret": "abcdefg",
    "productId": "aaaaaaa-aaaa-bbbb-cccc-dddddddddddd",
    "accessTokenUrl": ""

Copy this key, and add it as a repository secret on GitHub (opens in a new tab) called SUBMIT_KEYS

Then, go on GitHub and trigger the action manually when you need to submit a new extension version!