Personal plugin marketplace for both Claude Code and Codex.
Add the marketplace from inside Claude Code:
/plugin marketplace add tal/plugin-marketplace
Then install a plugin:
/plugin install <plugin-name>@tal-marketplace
For example:
/plugin install sort@tal-marketplace
/plugin install plan-refiner@tal-marketplace
/plugin install smart-notifications@tal-marketplace
Available plugins: tal, smart-notifications, plan-refiner, karabiner, sort.
Alternatively, register the marketplace in ~/.claude/settings.json:
{
"extraKnownMarketplaces": {
"tal-marketplace": {
"source": {
"source": "github",
"repo": "tal/plugin-marketplace"
}
}
},
"enabledPlugins": {
"plugin-name@tal-marketplace": true
}
}Add the marketplace:
codex plugin marketplace add tal/plugin-marketplace
Then install a plugin:
codex plugin install <plugin-name>@tal-marketplace
Each plugin lives under plugins/<plugin-name>/ and can expose metadata for both clients side by side:
plugins/my-plugin/
.claude-plugin/
plugin.json
.codex-plugin/
plugin.json
commands/
skills/
agents/
hooks/
Marketplace catalogs live at:
- Claude Code:
.claude-plugin/marketplace.json - Codex:
.agents/plugins/marketplace.json
- Create a directory under
plugins/. - Add a Claude manifest at
plugins/my-plugin/.claude-plugin/plugin.jsonif the plugin should be installable from Claude Code. - Add a Codex manifest at
plugins/my-plugin/.codex-plugin/plugin.jsonif the plugin should be installable from Codex. - Register the plugin in the relevant marketplace files:
Claude entry:
{
"name": "my-plugin",
"source": "./plugins/my-plugin",
"description": "What the plugin does",
"version": "0.1.0"
}Codex entry:
{
"name": "my-plugin",
"source": {
"source": "local",
"path": "./plugins/my-plugin"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
},
"category": "Productivity"
}