Add extension licensing documentation (#39373)

Joseph T. Lyons created

Release Notes:

- N/A

Change summary

docs/src/extensions/developing-extensions.md | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Detailed changes

docs/src/extensions/developing-extensions.md 🔗

@@ -113,6 +113,22 @@ git submodule init
 git submodule update
 ```
 
+## Extension License Requirements
+
+As of October 1st, 2025, extension repositories must include one of the following licenses:
+
+- [MIT](https://opensource.org/license/mit)
+- [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)
+
+This allows us to distribute the resulting binary produced from your extension code to our users.
+Without a valid license, the pull request to add or update your extension in the following steps will fail CI.
+
+Your license file should be at the root of your extension repository with a filename like `LICENSE`, `LICENSE.txt`, `LICENSE-MIT`, etc. For the logic on how license files are identified, see the [license validation source code](https://github.com/zed-industries/extensions/blob/main/src/lib/license.js).
+
+> This license requirement applies only to your extension code itself (the code that gets compiled into the extension binary).
+> It does not apply to any tools your extension may download or interact with, such as language servers or other external dependencies.
+> If your repository contains both extension code and other projects (like a language server), you are not required to relicense those other projects—only the extension code needs to be one of the aforementioned accepted licenses.
+
 ## Publishing your extension
 
 To publish an extension, open a PR to [the `zed-industries/extensions` repo](https://github.com/zed-industries/extensions).
@@ -155,3 +171,5 @@ In your PR do the following:
    - Make sure the `version` matches the one set in `extension.toml` at the particular commit.
 
 If you'd like to automate this process, there is a [community GitHub Action](https://github.com/huacnlee/zed-extension-action) you can use.
+
+> **Note:** If your extension repository has a different license, you'll need to update it to be one of the [accepted extension licenses](#extension-license-requirements) before publishing your update.