Can I Fork and Modify Existing OpenAI Plugins? A Complete Guide
You can fork the openai/plugins repository freely, but modifying and redistributing individual plugins depends entirely on each plugin's specific license—MIT-licensed plugins allow modification while proprietary ones (like Figma) restrict it.
The openai/plugins repository hosts a collection of Codex plugins that enable AI agents to interact with external APIs and services. Because the repository is publicly available on GitHub, developers often ask whether they can fork and modify existing OpenAI plugins to suit custom workflows. The answer hinges on understanding the repository structure and, critically, the licensing terms governing each individual plugin.
Understanding the Repository Structure
The openai/plugins repository organizes each plugin as a self-contained module under the plugins/<name>/ directory. Every plugin directory contains:
.codex-plugin/plugin.json– The core manifest declaring version, description, interface, and required assetsskills/– Subdirectories containing skill definitions and documentationLICENSE– The legal terms governing modification and redistribution- Assets and configuration files – Supporting resources for the plugin's operation
This architecture means that while the repository is a monorepo, each plugin operates as an independent unit with its own governance model.
License Requirements for Modification
Whether you can legally modify an OpenAI plugin depends strictly on the license declared in its plugin.json or LICENSE file. The repository contains a mix of open-source and proprietary licenses.
Permissive Open-Source Licenses
Most plugins in the repository use permissive licenses like MIT or Apache 2.0, which grant broad rights to fork, modify, and redistribute. For example:
notion– Licensed under MIT (specified inplugins/notion/.codex-plugin/plugin.json), allowing free modification provided you retain copyright noticessupabase,expo,shopify– Typically MIT or similar, permitting commercial use and inclusion in other projects
Under these terms, you can legally modify source code, alter skill behaviors, and redistribute your versions without restriction beyond attribution requirements.
Proprietary License Restrictions
Some plugins carry proprietary licenses that limit modification rights:
figma– UsesLicenseRef-Figma-Developer-Terms, a proprietary license defined by Figma. While you may use the plugin as-is, modification and redistribution are strictly limited to Figma's developer termszoom,temporal,superhuman– Varying license terms; some may restrict commercial redistribution or require separate agreements
Always inspect the LICENSE file or the license field in plugin.json before modifying any plugin to ensure compliance with upstream provider terms.
How to Fork and Modify a Plugin
When working with permissively licensed plugins, you can customize behavior by editing the manifest and skill definitions.
Forking the Repository
Fork the entire openai/plugins repository or extract a single plugin directory. The monorepo structure at https://github.com/openai/plugins allows you to inherit the standardized directory layout while selecting specific plugins for modification.
Modifying Plugin Configuration
The plugin.json file controls plugin behavior. To customize a plugin like Notion, edit plugins/notion/.codex-plugin/plugin.json to change default prompts, update API endpoints, or modify skill metadata.
Running Modified Plugins Locally
After forking and editing, test your changes using the Codex SDK:
import codex
# Initialize the client
client = codex.Client()
# Load the modified plugin from your local fork
plugin = client.load_plugin("./plugins/notion")
# Invoke a specific skill
result = plugin.skills.search_pages(query="project roadmap")
print(result)
This workflow allows you to iterate on plugin behavior before deploying to production environments.
Key Architecture Files for Developers
Understanding these specific file paths helps you navigate the codebase effectively when forking:
README.md– Repository overview and highlighted plugin listplugins/<name>/.codex-plugin/plugin.json– Core manifest defining the plugin interface and versionplugins/<name>/skills/.../SKILL.md– Human-readable skill documentation describing input/output schemasplugins/<name>/LICENSE– Legal terms for that specific plugin.agents/plugins/marketplace.json– Default marketplace configuration pointing to theplugins/directory
These files collectively define how the Codex system discovers, loads, and executes plugin capabilities.
Summary
- Forking the openai/plugins repository is always permitted because the code is publicly hosted on GitHub.
- Modifying plugins requires checking individual licenses; MIT and Apache 2.0 plugins allow free modification while proprietary ones (like Figma) restrict redistribution.
- Each plugin lives in
plugins/<name>/with its ownLICENSEandplugin.jsonmanifest. - Use
codex.Client().load_plugin()to test modified plugins locally before deployment. - Always review the license field in
plugin.jsonor theLICENSEfile before distributing modified versions.
Frequently Asked Questions
Can I fork the entire openai/plugins repository?
Yes. Because the repository is publicly hosted on GitHub, you can fork the entire monorepo or individual plugin directories without restriction. The repository structure places each plugin under plugins/<name>/, making it easy to isolate specific components for your projects.
Do all OpenAI plugins use the same license?
No. Each plugin maintains its own license specified in either the plugin.json manifest or a dedicated LICENSE file within the plugin directory. While many use permissive open-source licenses like MIT, others such as the Figma plugin use proprietary licenses that restrict modification and redistribution.
How do I check if I can legally modify a specific plugin?
Examine the license field in plugins/<name>/.codex-plugin/plugin.json or read the LICENSE file in the plugin's root directory. MIT, Apache 2.0, and BSD licenses generally permit modification, while licenses marked as proprietary or LicenseRef-* typically impose restrictions requiring you to adhere to the original provider's developer terms.
Can I redistribute a modified version of a plugin?
Redistribution rights depend entirely on the plugin's license. MIT-licensed plugins (like Notion) allow redistribution with proper attribution, while proprietary plugins (like Figma) prohibit redistribution of modified versions without explicit permission from the license holder.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →