Skip to content

Commit 7a5018d

Browse files
authored
Merge pull request #28 from jaysunmah/main
Default new plugins to ~/.cursor/plugins/local/ for immediate availab…
2 parents 46c85c6 + 82d7c79 commit 7a5018d

3 files changed

Lines changed: 24 additions & 7 deletions

File tree

create-plugin/agents/plugin-architect.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Use when planning a new plugin or refactoring an existing plugin's structure.
1717

1818
1. Clarify plugin goal, users, and expected outcomes.
1919
2. Recommend component mix (`rules`, `skills`, `agents`, `commands`, `hooks`, `mcpServers`) based on need.
20-
3. Propose directory layout and manifest shape.
20+
3. Propose directory layout and manifest shape. The default output location for new plugins is `~/.cursor/plugins/local/<plugin-name>/`.
2121
4. Flag potential discoverability or metadata issues early.
2222
5. Return a concrete implementation checklist.
2323

create-plugin/rules/plugin-quality-gates.mdc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,4 @@ When creating or editing Cursor plugins:
1212
3. Match declared component paths to real files and folders.
1313
4. Include YAML frontmatter for rules, skills, agents, and commands with required metadata.
1414
5. Keep plugin scope focused and document installation and usage in `README.md`.
15+
6. Save new plugins to `~/.cursor/plugins/local/<plugin-name>/` by default so they are immediately available to Cursor. Only use a different location when the user explicitly requests it.

create-plugin/skills/create-plugin-scaffold/SKILL.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,39 +16,55 @@ You need to create a new Cursor plugin from scratch and make it ready for local
1616
- Component set to include (`rules`, `skills`, `agents`, `commands`, `hooks`, `mcpServers`)
1717
- Repository style (`single-plugin` or `multi-plugin marketplace`)
1818

19+
## Output Location
20+
21+
By default, create the plugin inside the user's local plugin directory:
22+
23+
```
24+
~/.cursor/plugins/local/<plugin-name>/
25+
```
26+
27+
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.
28+
1929
## Workflow
2030

2131
1. Validate plugin name format: lowercase kebab-case, starts and ends with an alphanumeric character.
22-
2. Create base files:
32+
2. Determine the target directory:
33+
- Default: `~/.cursor/plugins/local/<plugin-name>/`
34+
- Override: use the path the user specifies, if any.
35+
- Create the directory (and parents) if it does not exist.
36+
3. Create base files inside the target directory:
2337
- `.cursor-plugin/plugin.json`
2438
- `README.md`
2539
- `LICENSE`
2640
- optional `CHANGELOG.md`
27-
3. Populate `plugin.json`:
41+
4. Populate `plugin.json`:
2842
- Required: `name`
2943
- Recommended: `version`, `description`, `author`, `license`, `keywords`
3044
- Add explicit component paths only when non-default discovery is needed.
31-
4. Create component files with valid frontmatter:
45+
5. Create component files with valid frontmatter:
3246
- Rules: `.mdc` with `description`, `alwaysApply`, optional `globs`
3347
- Skills: `skills/<skill-name>/SKILL.md` with `name`, `description`
3448
- Agents: `agents/*.md` with `name`, `description`
3549
- Commands: `commands/*.(md|txt)` with `name`, `description`
36-
5. If repository uses `.cursor-plugin/marketplace.json`, add plugin entry:
50+
6. If repository uses `.cursor-plugin/marketplace.json`, add plugin entry:
3751
- `name`
3852
- `source`
3953
- optional metadata (`description`, `keywords`, `category`, `tags`)
40-
6. Ensure all manifest paths are relative, valid, and do not use absolute paths or parent traversal.
54+
7. Ensure all manifest paths are relative, valid, and do not use absolute paths or parent traversal.
4155

4256
## Guardrails
4357

4458
- Keep the plugin focused on one use case.
4559
- Prefer concise, actionable skill and rule text over long prose.
4660
- Do not reference files that do not exist.
4761
- Use folder discovery defaults unless custom paths are required.
62+
- Always save to `~/.cursor/plugins/local/<plugin-name>/` unless the user provides a different path.
4863

4964
## Output
5065

51-
- Created file tree for the plugin
66+
- Created file tree for the plugin (with full path to the output directory)
5267
- Final `plugin.json`
5368
- Marketplace entry (if applicable)
5469
- Short validation report of required fields and component metadata
70+
- Confirmation that the plugin is saved under `~/.cursor/plugins/local/` and ready for use

0 commit comments

Comments
 (0)