Claude Skills vs Projects vs Plugins: Which Feature to Choose?
By Dorian Laurenceau
Updated
Claude Skills vs Projects vs Plugins: Which Feature to Choose?
π Last reviewed: April 24, 2026. Updated with April 2026 findings and community feedback.
π Related articles: Skills User Guide | Building Skills, Technical Guide | Cowork Plugins
Overview: The 4 Features
Claude offers four customization mechanisms, each with a different scope:
| Feature | Scope | Persistence | Activation |
|---|---|---|---|
| Custom Instructions | Global | Permanent | Always active |
| Projects | Per project | Persistent | Manual (open the project) |
| Skills | Per task | On demand | Automatic (trigger) |
| Plugins | Per service | Installed | Manual or automatic |
The honest read on Claude's four customization layers, tracked across r/ClaudeAI, r/Anthropic, and the Anthropic Skills documentation: most users pick the wrong layer for their problem the first time, and the resulting frustration is usually blamed on the model. The canonical mistake is putting everything in Custom Instructions β because it's the first thing you see β until the instructions balloon past 1,500 tokens and Claude starts ignoring the middle of them (lost-in-the-middle again, Liu et al., 2023).
Where the community correctly pushes back on the "just use Skills for everything" take: Skills are the newest layer and they're excellent for deterministic, procedure-heavy tasks β but they require discipline to write (good YAML frontmatter, scoped triggers, clean references) and they don't replace the other three layers. The right mental model from people who've built real automation stacks: Custom Instructions for who you are, Projects for what you're working on, Skills for how to do a specific task, Plugins/MCP for what external systems you can reach. Mix up those axes and your setup will feel "almost working" forever.
Pragmatic rule: start with Custom Instructions, move repeated context into a Project, extract deterministic procedures into Skills, and add Plugins/MCP servers only when you need real data access. Adding the layers in reverse order is how people end up with brittle stacks that nobody else on the team can use.
Detailed Comparison Table
| Criterion | Custom Instructions | Projects | Skills | Plugins |
|---|---|---|---|---|
| Description | Global preferences applied to all conversations | Workspaces with shared context and files | Modular packages of specialized procedures | Connections to external services and APIs |
| Complexity | β Simple | ββ Medium | βββ Advanced | ββ Medium |
| Reusability | Global | Per project | Multi-project | Multi-context |
| Sharing | No | Team (Enterprise) | Marketplace / GitHub | Catalog |
| Attached files | No | Yes (PDFs, docs) | Yes (scripts, refs) | No (APIs) |
| Executable scripts | No | No | Yes | Via API |
| Automatic trigger | Always | No | Yes | Configurable |
| Versioning | No | No | Yes (semver) | By provider |
| API access | Limited | Yes | Yes | Yes |
| Typical use case | "Always respond in English" | "Website redesign project" | "Code review with checklist" | "Search Google Drive" |
When to Use Each Feature
Custom Instructions, Global Preferences
Use when: you want behaviors applied to all conversations.
Examples:
- β"Always respond in formal English"
- β"Use 2-space indentation for code"
- β"I'm a senior Python developer"
- β"Include code examples in every answer"
Limitations:
- βNo attached files
- βNo conditional logic
- βNo scripts
- βLoaded for every conversation (wastes tokens if too long)
Projects, Workspaces
Use when: you're working on a long-term topic requiring shared context.
Examples:
- βWriting a book (chapters as files)
- βDeveloping an application (specs, architecture)
- βAcademic research (papers, notes)
- βProject management (roadmap, meeting notes)
Limitations:
- βStatic context (files are not auto-updated)
- βNo automatic trigger
- βNo executable scripts
Skills, Specialized Procedures
Use when: you have recurring tasks requiring a structured procedure.
Examples:
- βCode review with quality checklist
- βContent writing with brand voice
- βData analysis with standardized reports
- βTechnical documentation generation
Limitations:
- βRequires initial creation effort
- βTrigger must be well-calibrated
- βMay not fire on ambiguous requests
Plugins, External Connections
Use when: you need external data or actions in third-party services.
Examples:
- βSearch Google Drive / Notion
- βSend Slack messages
- βREST API queries
- βDatabase reads
Limitations:
- βDepends on plugin availability
- βSensitive data passes through the plugin
- βNetwork latency
To standardize code review across your team with a precise checklist, which feature is most appropriate?
Decision Tree
Use this guide to choose the right feature:
Combining Features
The real power comes from combining them:
Example 1: Full-Stack Developer
| Layer | Feature | Configuration |
|---|---|---|
| Global | Custom Instructions | "I'm a TypeScript/React dev, use ESLint" |
| Project | Project | "E-commerce redesign, specs, architecture, components" |
| Task | Skill | "Code Reviewer" with quality checklist |
| External | Plugin | "GitHub Integration" to read issues |
Example 2: Marketing Writer
| Layer | Feature | Configuration |
|---|---|---|
| Global | Custom Instructions | "Write in professional tone, US English" |
| Project | Project | "Q2 2026 Campaign, brief, assets, calendar" |
| Task | Skill | "Brand Writer" with voice guide |
| External | Plugin | "Google Analytics" for metrics |
Example 3: Data Analyst
| Layer | Feature | Configuration |
|---|---|---|
| Global | Custom Instructions | "Always display statistics in tables" |
| Project | Project | "Customer retention analysis, datasets, reports" |
| Task | Skill | "Data Profiler" with automatic reporting |
| External | Plugin | "SQL Connector" for DB queries |
Concrete Use Cases
Case 1: "I want Claude to code like my team"
| Option | Suitable? | Why |
|---|---|---|
| Custom Instructions | β οΈ Partially | Good for basic preferences (indentation, naming) |
| Project | β οΈ Partially | Good for sharing guidelines as files |
| Skills | β Ideal | Review checklist, lint scripts, PR templates |
| Plugins | β No | No external service connection needed |
Case 2: "I want to connect Claude to our Notion"
| Option | Suitable? | Why |
|---|---|---|
| Custom Instructions | β No | No access to external services |
| Project | β No | Static files only |
| Skills | β No | No native API connection |
| Plugins | β Ideal | Notion plugin to read/write pages |
Case 3: "I'm writing a 100-page thesis"
| Option | Suitable? | Why |
|---|---|---|
| Custom Instructions | β οΈ Supplement | Academic style preferences |
| Project | β Ideal | Chapters, sources, notes as shared files |
| Skills | β οΈ Supplement | "Academic Writer" Skill for formatting |
| Plugins | β οΈ Optional | Zotero plugin for citations |
A user wants to search Google Drive for information and format it according to brand guidelines. What's the optimal combination?
Which feature uses progressive disclosure to save tokens?
In the decision tree, if your need requires data from an external service, which feature is recommended?
What is the main limitation of Custom Instructions?
Limitations Summary Table
| Limitation | Custom Instructions | Projects | Skills | Plugins |
|---|---|---|---|---|
| Attached files | β | β | β | β |
| Executable scripts | β | β | β | β |
| Dynamic data | β | β | β | β |
| Automatic trigger | β (always) | β | β | β οΈ |
| Marketplace sharing | β | β | β | β |
| Setup effort | β | ββ | βββ | β |
| Versioning | β | β | β | β |
In Summary
There's no "best" feature, each answers a specific need. The key is combining them intelligently:
- βCustom Instructions for your permanent preferences
- βProjects for your lasting work contexts
- βSkills for your reusable specialized procedures
- βPlugins for your external service connections
Start simple (Custom Instructions), then add layers as your needs grow.
Next steps:
- βCreate your first Skill with our user guide
- βDiscover available Cowork plugins
- βRead the technical Skills guide for developers
Module 0 β Prompting Fundamentals
Build your first effective prompts from scratch with hands-on exercises.
Dorian Laurenceau
Full-Stack Developer & Learning DesignerFull-stack web developer and learning designer. I spent 4 years as a freelance full-stack developer and 4 years teaching React, JavaScript, HTML/CSS and WordPress to adult learners. Today I design learning paths in web development and AI, grounded in learning science. I founded learn-prompting.fr to make AI practical and accessible, and built the Bluff app to gamify political transparency.
One practical AI workflow in your inbox
Methods, resources and new exercises. Free, unsubscribe at any time.
βRelated articles
FAQ
What's the main difference between Skills and Projects?+
Skills are modular packages with automatic triggers that activate on demand. Projects are persistent workspaces with shared context for organizing files and conversations around a topic.
Can you combine Skills and Projects?+
Yes, and it's recommended. You can attach Skills to a Project to benefit from the project's persistent context and the Skills' specialized procedures.
Are Plugins different from Skills?+
Yes. Plugins connect Claude to external services (Google Drive, Slack, etc.) via APIs. Skills add internal procedures and knowledge. They are complementary.
Do Custom Instructions still exist?+
Yes, but they are now considered the simplest form of customization. For advanced needs, Skills offer more structure and maintainability.
How do I choose between these features?+
Use Custom Instructions for global preferences, Projects for contextual work, Skills for reusable specialized procedures, and Plugins for connecting external services.