Create and scaffold Codex plugin folders, configs, and marketplace metadata entries.
The materials indicate this is an open-source, highly adopted prompt/scaffolding skill for creating local plugin structures, with no required secrets and no declared remote endpoints. Its main security consideration is routine local file creation or updates to plugin directories and marketplace configuration, so overall risk is low.
The materials explicitly state that no keys or environment variables are required, and the README does not request logins, tokens, or external credentials, so there is no evident credential collection, storage, or abuse surface.
No remote endpoints are declared, and the documentation focuses on local scaffolding and local marketplace.json updates; based on the provided materials, there is no evidence of user data being sent to external services.
The README explicitly runs a local Python script, create_basic_plugin.py, to generate the structure, which is standard local code execution capability; the materials do not show requests for unusual system privileges, but executing a local script still warrants caution.
This skill creates plugin directories under user-specified paths, writes .codex-plugin/plugin.json, and can create or update .agents/plugins/marketplace.json under the repo root or home; this local file write scope matches its stated purpose, and no out-of-scope data access is described.
The source is the open-source GitHub repository openai/skills with high community adoption (~22k stars), providing strong auditability and source credibility; license and maintenance status are not clearly stated, but that uncertainty alone does not materially raise the risk.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "plugin-creator" skill from askskill: 1. Download https://raw.githubusercontent.com/openai/skills/main/skills/.system/plugin-creator/SKILL.md 2. Save it as ~/.claude/skills/plugin-creator/SKILL.md 3. Reload skills and tell me it's ready
# Plugin names are normalized to lower-case hyphen-case and must be <= 64 chars.
# The generated folder and plugin.json name are always the same.
# Run from repo root (or replace .agents/... with the absolute path to this SKILL).
# By default creates in <repo_root>/plugins/<plugin-name>.
python3 .agents/skills/plugin-creator/scripts/create_basic_plugin.py <plugin-name>
Open <plugin-path>/.codex-plugin/plugin.json and replace [TODO: ...] placeholders.
Generate or update the repo marketplace entry when the plugin should appear in Codex UI ordering:
# marketplace.json always lives at <repo-root>/.agents/plugins/marketplace.json
python3 .agents/skills/plugin-creator/scripts/create_basic_plugin.py my-plugin --with-marketplace
For a home-local plugin, treat <home> as the root and use:
python3 .agents/skills/plugin-creator/scripts/create_basic_plugin.py my-plugin \
--path ~/plugins \
--marketplace-path ~/.agents/plugins/marketplace.json \
--with-marketplace
python3 .agents/skills/plugin-creator/scripts/create_basic_plugin.py my-plugin --path <parent-plugin-directory> \
--with-skills --with-hooks --with-scripts --with-assets --with-mcp --with-apps --with-marketplace
<parent-plugin-directory> is the directory where the plugin folder <plugin-name> will be created (for example ~/code/plugins).
/<parent-plugin-directory>/<plugin-name>/./<parent-plugin-directory>/<plugin-name>/.codex-plugin/plugin.json.interface section.<repo-root>/.agents/plugins/marketplace.json when --with-marketplace is set.
name plus interface.displayName placeholders before adding the first plugin entry.<plugin-name> is normalized using skill-creator naming rules:
My Plugin → my-pluginMy--Plugin → my-plugin-skills/hooks/scripts/assets/.mcp.json.app.jsonmarketplace.json always lives at <repo-root>/.agents/plugins/marketplace.json.<home> as the root:
~/.agents/plugins/marketplace.json plus ./plugins/<plugin-name>.name plus optional interface.displayName.plugins[] as render order in Codex. Append new entries unless a user explicitly asks to reorder the list.displayName belongs inside the marketplace interface object, not individual plugins[] entries.policy.installationpolicy.authenticationcategorypolicy.installation: "AVAILABLE"policy.authentication: "ON_INSTALL"policy.installation values:
NOT_AVAILABLEAVAILABLEINSTALLED_BY_DEFAULTpolicy.authentication values:
ON_INSTALLON_USEpolicy.products as an override. Omit it unless the user explicitly requests product gating.{
"name": "plugin-name",
"source": {
"source": "local",
"path": "./plugins/plugin-name"
},
"policy": {
"installation": "AVAILABLE",
…
Deploy apps or websites to Vercel and generate live or preview links.
Stage, commit, push, and open a GitHub pull request in one flow.
Connect to Figma, fetch design assets, and turn nodes into production code.
Generate or edit bitmap images for illustrations, photos, textures, mockups, and cutouts.
Create a composable CLI from docs, specs, SDKs, apps, or scripts.
Read, create, and update Linear issues, projects, and team workflows.
Guide users to build a plugin from scratch and deliver a .plugin file.
Build, update, test, and release Claude Code plugins efficiently end to end.
Generate or update chat customization files for AI coding agents.
Discover Claude Code plugins to extend commands, agents, hooks, and MCP tools.
Discover Claude Code plugins to extend commands, agents, hooks, and MCP capabilities.
Scaffold, validate, and manage plugins for the Motor Agéntico ecosystem.