State of Codex Plugins 2026: what 339 open-source ChatGPT and Codex plugins actually look like
We pulled GitHub data for every plugin in the PickAPlugin catalog and ran the same checks we'd run before installing one. Here's what came back. Every number on this page was computed from that pull. Nothing is estimated or surveyed.
The short version
This ecosystem is brand new: 329 of 339 repos (97%) were created in 2026, and 50% got a push in the last 7 days.
Attention is wildly lopsided. The median plugin has 6 stars, 52 have zero, and the top 10% of repos hold 94% of all stars.
Licensing is mostly fine: 79% are MIT. But 6 have no license file at all and 22 have one GitHub can't identify, which is 8% where reuse rights are unclear.
105 repos (31%) have no copyable install command in their README.
145 READMEs (43%) mention an API key or token, and 61 (18%) wire up a remote MCP server over HTTP.
Manifests are in better shape than we expected: of 274 plugin.json files, only 3 had a hard error, though 23 had at least one warning.
1. It's all new
329 of the 339 repos we could reach were created this year. 245 (72%) were pushed to in the last 30 days. On the other end, 55 (16%) haven't had a push in 90+ days, 13 in 180+, and 7 are archived. In a space this young, 90 days without a commit usually means the author moved on.
n = 339 repos · PickAPlugin, 2026-10-27 · CC BY 4.0
2. Stars: a few giants, a long tail
Across 339 repos there are 97,833 stars in total, but the median is 6. The top tenth of repos hold 94% of them. Stars measure attention, not quality, and most plugins here are small projects by one person. That's not bad, it just means you should read the code instead of trusting the count.
n = 339 repos · PickAPlugin, 2026-10-27 · CC BY 4.0
3. Licenses
268 repos use MIT and 38 use Apache-2.0. 6 have no license file GitHub can find, which legally means "all rights reserved". Another 22 have a license file GitHub couldn't match to a standard license, often a custom or modified text, so check it yourself.
n = 339 repos · PickAPlugin, 2026-10-27 · CC BY 4.0
4. Languages
Python and JavaScript lead. 50 repos have no primary language at all, meaning they're mostly Markdown skills, prompts and config. That's normal for plugins that are really instructions for the agent, not code.
n = 339 repos · PickAPlugin, 2026-10-27 · CC BY 4.0
5. Can you actually install it?
We look for an install command in a fenced code block in the README: codex plugin install, codex/claude mcp add, /plugin install, /plugin marketplace add or npx skills add. 234 repos (69%) have one. The other 105 may still install fine, but you have to work it out. 334 repos ship some plugin or marketplace manifest. 209 (62%) also ship a Claude Code manifest, so a lot of "Codex plugins" are cross-host. 117 have an AGENTS.md at the root.
6. plugin.json health
We ran the rules from our free plugin.json validator against the 274 repos with a manifest at plugin.json, .codex-plugin/plugin.json or .claude-plugin/plugin.json (220 use the .codex-plugin folder). All of them parsed as valid JSON. 251 passed with no notes.
n = 274 manifests · the first 2 rows are errors, the rest warnings · CC BY 4.0
7. Network access and API keys
This one's a rough signal. 145 READMEs (43%) mention an API key, access token or a SOMETHING_API_KEY style variable. 61 (18%) configure a remote MCP server over HTTP or SSE, so your agent talks to someone else's server. Neither is a red flag on its own, but it's where you should slow down and read what gets sent where.
8. Categories
How we sort the catalog, by hand. Agent workflow tools (orchestration, planning, subagents) are the biggest group by far.
n = 346 catalog entries · PickAPlugin, 2026-10-27 · CC BY 4.0
Methodology
Population: the 346 plugins in the PickAPlugin catalog on 2026-10-27, gathered from public lists like awesome-codex-plugins and from maker submissions. 339 were reachable GitHub repos; 7 weren't (deleted, private or not on GitHub) and are left out.
Data: one GitHub GraphQL pull on 2026-10-27: stars, archived flag, last push, creation date, license detection, primary language, README.md, and the files plugin.json, .codex-plugin/plugin.json, .claude-plugin/plugin.json, .agents/plugins/marketplace.json, .claude-plugin/marketplace.json, .mcp.json and AGENTS.md at the default branch root.
Checks: install commands are matched with a regex on README code blocks. plugin.json rules are a Python port of our public validator. API-key and remote-MCP flags are keyword matches on the README and .mcp.json.
Limits
Our catalog isn't every plugin out there. It leans toward plugins listed on GitHub lists, so it's a sample, not a census.
We only read root-level files. Monorepos or plugins in subfolders can be missed, which undercounts manifests and install commands.
The API-key and network numbers are keyword heuristics. They miss plugins that don't document it, and can count a README that only mentions keys in passing.
"Last push" counts any push, including small doc edits. Stars can be gamed. Licenses are what GitHub detects.