Alternatively, if all you want is a consistent ID during development (which doesn't need to match a CWS deploy), a team who are all using the same OS could just have the extension installed in the same path across all machines.
This is because the ID during development is actually derived from a hash of the path the extension is sideloaded from.
Although this isn't as "powerful" as the key-based method, there are a couple of advantages:
* I've had problems testing the various "update/restart" flows with extensions that have a "key" provided in the manifest (the extension ends up uninstalled on browser restart). Not sure whether this is still a problem (or whether it was ever intentional on Google's part), but this would avoid issues caused by this.
* For the right team, it could take a lot less work to figure out.
npm run build:local-dev will fix your extension ID as part of a local build, setting the appropriate property in the manifest output.
npm run build:initial-deploy will build a deploy that's ready to send up to CWS.