Back to Skills

create-cowork-plugin

Guide users through creating a new plugin from scratch in a cowork session. Use when users want to create a plugin, build a plugin, make a new plugin, develop a plugin, scaffold a plugin, start a plugin from scratch, or design a plugin. This skill requires Cowork mode with access to the outputs directory for delivering the final .plugin file.

22,126stars2,591forksUpdated 6/29/2026

Security Assessment

Safe(100/100)
Security Score100/100

About create-cowork-plugin

A guided workflow for building a Claude Cowork plugin from scratch through conversation, taking the user from initial idea to a ready-to-install .plugin file. The skill encodes the full plugin architecture and a five-phase process: Discovery (understanding the problem and audience), Component Planning (deciding which component types are needed), Design and Clarifying Questions, Implementation (writing all plugin files), and Review and Package. It is intended for the Cowork desktop app environment and requires access to the outputs directory so the finished package can be delivered.

Plugins are self-contained directories that extend Claude with skills, agents, hooks, and MCP server integrations. The skill documents the canonical layout, where the manifest at .claude-plugin/plugin.json is always required (its only mandatory field is name), and component directories such as skills/ and agents/ live at the plugin root. It favors the skills/*/SKILL.md format over the legacy single-file commands/ directory, since skills support progressive disclosure through references/. Naming follows kebab-case, versions follow semver starting at 0.1.0, and ${CLAUDE_PLUGIN_ROOT} is used for intra-plugin path references rather than hardcoded absolute paths.

Use it when someone wants to create, scaffold, design, or start a plugin and would benefit from being walked through the decisions. The conversation is meant to stay in plain language, hiding file paths and schema details unless asked, and uses AskUserQuestion for each prompt rather than assuming defaults. For plugins meant to be shared outside an organization, an optional ~~ placeholder pattern lets workflows reference tool categories (for example ~~project tracker) instead of specific products, documented in a CONNECTORS.md file. Detailed component schemas live in references/component-schemas.md.

FAQ

What environment does this skill require?

It requires the Cowork desktop app environment with access to the outputs directory, which is where the finished .plugin file is delivered.

What is the only required field in plugin.json?

The manifest at .claude-plugin/plugin.json always requires the name field. Other fields like version, description, and author are optional, though version should follow semver starting at 0.1.0.

Should new plugins use the commands/ directory or skills/?

New plugins should use skills/*/SKILL.md. The legacy single-file commands/ format still works but is only recommended when the user explicitly needs it, since the skills format supports progressive disclosure via references/.

What are the five phases of the workflow?

Discovery, Component Planning, Design and Clarifying Questions, Implementation, and Review and Package. Each phase confirms understanding before moving on, ending with delivery of the .plugin file.

When should the ~~ placeholder pattern be used?

Only when the user explicitly wants people outside their organization to use the plugin. It marks tool references by category (for example ~~chat or ~~project tracker) and is documented in a CONNECTORS.md file at the plugin root.

All Files

3 files
references/component-schemas.md11.3 KB
View
references/example-plugins.md7.8 KB
View
SKILL.md12.9 KB
View

Install create-cowork-plugin

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill