Awesome-omni-skill create-plugin-scaffold
Create a new Cursor plugin scaffold with a valid manifest, component directories, and marketplace wiring. Use when starting a new plugin or adding a plugin to a multi-plugin repository.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/create-plugin-scaffold" ~/.claude/skills/diegosouzapw-awesome-omni-skill-create-plugin-scaffold && rm -rf "$T"
manifest:
skills/tools/create-plugin-scaffold/SKILL.mdsource content
Create plugin scaffold
Trigger
You need to create a new Cursor plugin from scratch and make it ready for local use or marketplace submission.
Required Inputs
- Plugin name (lowercase kebab-case)
- Plugin purpose and target users
- Component set to include (
,rules
,skills
,agents
,commands
,hooks
)mcpServers - Repository style (
orsingle-plugin
)multi-plugin marketplace
Output Location
By default, create the plugin inside the user's local plugin directory:
~/.cursor/plugins/local/<plugin-name>/
This path makes the plugin immediately available to Cursor without any install step. If the user explicitly asks to create the plugin elsewhere (e.g. inside an existing repo or a specific directory), respect that choice instead.
Workflow
- Validate plugin name format: lowercase kebab-case, starts and ends with an alphanumeric character.
- Determine the target directory:
- Default:
~/.cursor/plugins/local/<plugin-name>/ - Override: use the path the user specifies, if any.
- Create the directory (and parents) if it does not exist.
- Default:
- Create base files inside the target directory:
.cursor-plugin/plugin.jsonREADME.mdLICENSE- optional
CHANGELOG.md
- Populate
:plugin.json- Required:
name - Recommended:
,version
,description
,author
,licensekeywords - Add explicit component paths only when non-default discovery is needed.
- Required:
- Create component files with valid frontmatter:
- Rules:
with.mdc
,description
, optionalalwaysApplyglobs - Skills:
withskills/<skill-name>/SKILL.md
,namedescription - Agents:
withagents/*.md
,namedescription - Commands:
withcommands/*.(md|txt)
,namedescription
- Rules:
- If repository uses
, add plugin entry:.cursor-plugin/marketplace.jsonnamesource- optional metadata (
,description
,keywords
,category
)tags
- Ensure all manifest paths are relative, valid, and do not use absolute paths or parent traversal.
Guardrails
- Keep the plugin focused on one use case.
- Prefer concise, actionable skill and rule text over long prose.
- Do not reference files that do not exist.
- Use folder discovery defaults unless custom paths are required.
- Always save to
unless the user provides a different path.~/.cursor/plugins/local/<plugin-name>/
Output
- Created file tree for the plugin (with full path to the output directory)
- Final
plugin.json - Marketplace entry (if applicable)
- Short validation report of required fields and component metadata
- Confirmation that the plugin is saved under
and ready for use~/.cursor/plugins/local/