Create and develop a Paperclip plugin
Use this skill when the task is to create, scaffold, or iterate on a Paperclip plugin against a local Paperclip instance.
1. Default: build the plugin OUTSIDE Paperclip core
Plugins are their own packages. Unless the task explicitly asks for a bundled in-repo example, do not add plugin source under packages/plugins/ in this repo.
- Scaffold the plugin into a directory outside the Paperclip checkout (e.g.
~/dev/paperclip-plugins/<name>). - Install it into the running Paperclip instance by local absolute path.
- Edit code in the external package; let Paperclip pick up rebuilt output.
Only edit Paperclip core itself when the user asks to surface a plugin as a bundled example (server/src/routes/plugins.ts, in-repo example lists, docs).
2. Ground rules
Reference docs when you need detail:
doc/plugins/PLUGIN_AUTHORING_GUIDE.mdpackages/plugins/sdk/README.mddoc/plugins/PLUGIN_SPEC.md— future-looking context only
Current runtime assumptions:
- plugin workers are trusted code
- plugin UI is trusted same-origin host code
- worker APIs are capability-gated
- plugin UI is not sandboxed by manifest capabilities -…