claude-skills-cli 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/dist/skills/skill-creator/skill-creator/SKILL.md +0 -143
- package/dist/skills/skill-creator/skill-creator/references/anthropic-resources.md +0 -504
- package/dist/skills/skill-creator/skill-creator/references/cli-reference.md +0 -507
- package/dist/skills/skill-creator/skill-creator/references/skill-examples.md +0 -413
- package/dist/skills/skill-creator/skill-creator/references/writing-guide.md +0 -619
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-skills-cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "CLI toolkit for creating and managing Claude Agent Skills",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
},
|
|
47
47
|
"scripts": {
|
|
48
48
|
"build": "tsc",
|
|
49
|
-
"postbuild": "
|
|
49
|
+
"postbuild": "rm -rf dist/skills && cp -r .claude/skills dist/skills",
|
|
50
50
|
"dev": "tsc --watch",
|
|
51
51
|
"start": "node ./dist/index.js",
|
|
52
52
|
"format": "prettier --write .",
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: skill-creator
|
|
3
|
-
description:
|
|
4
|
-
Design and create Claude Skills using progressive disclosure
|
|
5
|
-
principles. Use when building new skills, planning skill
|
|
6
|
-
architecture, or writing skill content.
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Skill Creator
|
|
10
|
-
|
|
11
|
-
Principles and patterns for designing effective Claude Skills.
|
|
12
|
-
|
|
13
|
-
## Quick Start
|
|
14
|
-
|
|
15
|
-
Creating a minimal skill:
|
|
16
|
-
|
|
17
|
-
1. Create directory: `.claude/skills/my-skill/`
|
|
18
|
-
2. Create `SKILL.md` with frontmatter (name, description) and body
|
|
19
|
-
3. Test in conversation
|
|
20
|
-
4. Add references/ as content grows
|
|
21
|
-
|
|
22
|
-
## When to Create a Skill
|
|
23
|
-
|
|
24
|
-
Create a skill when you notice:
|
|
25
|
-
|
|
26
|
-
- **Repeating context** across conversations (same schema, patterns,
|
|
27
|
-
rules)
|
|
28
|
-
- **Domain expertise** needed repeatedly (API integration, framework
|
|
29
|
-
conventions)
|
|
30
|
-
- **Project-specific knowledge** that Claude should know automatically
|
|
31
|
-
|
|
32
|
-
Example: "I keep explaining this database schema" → Create a
|
|
33
|
-
database-schema skill.
|
|
34
|
-
|
|
35
|
-
## Skill Architecture
|
|
36
|
-
|
|
37
|
-
Skills are directories with this structure:
|
|
38
|
-
|
|
39
|
-
```
|
|
40
|
-
my-skill/
|
|
41
|
-
├── SKILL.md # Required: Instructions + metadata
|
|
42
|
-
├── references/ # Optional: Detailed documentation
|
|
43
|
-
├── scripts/ # Optional: Executable operations
|
|
44
|
-
└── assets/ # Optional: Templates, images, files
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
**SKILL.md** - Core instructions with YAML frontmatter (name,
|
|
48
|
-
description) + markdown body
|
|
49
|
-
|
|
50
|
-
**references/** - Detailed docs loaded only when Claude needs them
|
|
51
|
-
(schemas, API docs, guides)
|
|
52
|
-
|
|
53
|
-
**scripts/** - Deterministic operations Claude can execute without
|
|
54
|
-
generating code (validation, generation)
|
|
55
|
-
|
|
56
|
-
**assets/** - Files used directly in output without loading into
|
|
57
|
-
context (templates, images)
|
|
58
|
-
|
|
59
|
-
## Progressive Disclosure
|
|
60
|
-
|
|
61
|
-
Skills load in 3 levels:
|
|
62
|
-
|
|
63
|
-
**Level 1: Metadata** (~100 tokens, always loaded) - YAML frontmatter
|
|
64
|
-
determines skill triggering
|
|
65
|
-
|
|
66
|
-
**Level 2: Instructions** (<5k tokens, when triggered) - SKILL.md body
|
|
67
|
-
with core patterns and links
|
|
68
|
-
|
|
69
|
-
**Level 3: Resources** (unlimited, as needed) - references/ scripts/
|
|
70
|
-
assets/ loaded only when used
|
|
71
|
-
|
|
72
|
-
**Key principle**: Keep Levels 1 & 2 lean. Move details to Level 3.
|
|
73
|
-
|
|
74
|
-
## Development Process
|
|
75
|
-
|
|
76
|
-
1. **Recognize** - Notice repeated context or domain needs
|
|
77
|
-
2. **Gather** - Collect 3-5 concrete examples of skill usage
|
|
78
|
-
3. **Plan** - Decide what goes in SKILL.md vs references/ vs scripts/
|
|
79
|
-
4. **Structure** - Create directory with SKILL.md and needed
|
|
80
|
-
subdirectories
|
|
81
|
-
5. **Write** - Craft description, then SKILL.md body following
|
|
82
|
-
patterns
|
|
83
|
-
6. **Enhance** - Add references, scripts, assets as needed
|
|
84
|
-
7. **Iterate** - Test in conversations, refine based on actual usage
|
|
85
|
-
|
|
86
|
-
## Writing Effective Content
|
|
87
|
-
|
|
88
|
-
**Descriptions**: Include "Use when..." triggers, <200 chars optimal.
|
|
89
|
-
Format: [Domain] + [Operations] + [Trigger keywords]
|
|
90
|
-
|
|
91
|
-
**SKILL.md Body**: Target ~50 lines, max ~150. Structure: Quick
|
|
92
|
-
Start + Core Patterns (3-5) + Links. Use imperative voice, concrete
|
|
93
|
-
examples.
|
|
94
|
-
|
|
95
|
-
**References**: Detailed docs with no size limit. Use descriptive
|
|
96
|
-
filenames.
|
|
97
|
-
|
|
98
|
-
## Common Patterns
|
|
99
|
-
|
|
100
|
-
**Succeeds**: Domain expertise, concrete examples, keyword-rich
|
|
101
|
-
descriptions, clear triggers, scripts for deterministic tasks
|
|
102
|
-
|
|
103
|
-
**Fails**: Generic descriptions, bloated SKILL.md, second person
|
|
104
|
-
voice, missing triggers, vague content
|
|
105
|
-
|
|
106
|
-
See [skill-examples.md](references/skill-examples.md) for detailed
|
|
107
|
-
patterns.
|
|
108
|
-
|
|
109
|
-
## Implementation
|
|
110
|
-
|
|
111
|
-
Skills can be created manually (mkdir, touch SKILL.md) or using tools
|
|
112
|
-
like `claude-skills-cli`.
|
|
113
|
-
|
|
114
|
-
For tool usage, see [cli-reference.md](references/cli-reference.md).
|
|
115
|
-
|
|
116
|
-
## Reference Documentation
|
|
117
|
-
|
|
118
|
-
For detailed guidance:
|
|
119
|
-
|
|
120
|
-
- [anthropic-resources.md](references/anthropic-resources.md) -
|
|
121
|
-
Official Anthropic best practices
|
|
122
|
-
- [writing-guide.md](references/writing-guide.md) - Voice, structure,
|
|
123
|
-
and code examples
|
|
124
|
-
- [skill-examples.md](references/skill-examples.md) - Real-world
|
|
125
|
-
patterns and anti-patterns
|
|
126
|
-
- [cli-reference.md](references/cli-reference.md) - Tool commands
|
|
127
|
-
(claude-skills-cli)
|
|
128
|
-
- [cli-feedback.md](references/cli-feedback.md) - Real-world CLI usage
|
|
129
|
-
patterns
|
|
130
|
-
|
|
131
|
-
## Notes
|
|
132
|
-
|
|
133
|
-
- Skills are iterative - start minimal, refine through real usage
|
|
134
|
-
- Description drives discovery - invest time in crafting it
|
|
135
|
-
- Test in actual conversations to validate effectiveness
|
|
136
|
-
- Progressive disclosure is key - resist urge to front-load everything
|
|
137
|
-
|
|
138
|
-
<!--
|
|
139
|
-
PROGRESSIVE DISCLOSURE:
|
|
140
|
-
- This is Level 2 - principles and architecture only
|
|
141
|
-
- Tool-specific details are in references/
|
|
142
|
-
- Target: ~75 lines for optimal scannability
|
|
143
|
-
-->
|
|
@@ -1,504 +0,0 @@
|
|
|
1
|
-
# Anthropic Resources - Official Guidance
|
|
2
|
-
|
|
3
|
-
Key insights from Anthropic's official Agent Skills documentation.
|
|
4
|
-
|
|
5
|
-
**Sources**:
|
|
6
|
-
|
|
7
|
-
- [Agent Skills Overview](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview)
|
|
8
|
-
- [Engineering Blog](https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
|
|
9
|
-
- [Product Announcement](https://www.anthropic.com/news/skills)
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## The Progressive Disclosure System
|
|
14
|
-
|
|
15
|
-
**Core Design Principle**: Skills load information in stages as
|
|
16
|
-
needed, rather than consuming context upfront.
|
|
17
|
-
|
|
18
|
-
### The 3-Level Loading System
|
|
19
|
-
|
|
20
|
-
| Level | File | Context Window | Token Budget | When Loaded |
|
|
21
|
-
| ------ | ---------------------------------------------- | -------------------------- | ------------ | ------------- |
|
|
22
|
-
| **1** | SKILL.md Metadata (YAML) | Always loaded | ~100 tokens | At startup |
|
|
23
|
-
| **2** | SKILL.md Body (Markdown) | Loaded when skill triggers | <5k tokens | When relevant |
|
|
24
|
-
| **3+** | Bundled files (references/, scripts/, assets/) | Loaded as needed by Claude | Unlimited\* | On-demand |
|
|
25
|
-
|
|
26
|
-
\*No practical limit - files only load when accessed
|
|
27
|
-
|
|
28
|
-
### Why This Matters
|
|
29
|
-
|
|
30
|
-
> "Like a well-organized manual that starts with a table of contents,
|
|
31
|
-
> then specific chapters, and finally a detailed appendix, skills let
|
|
32
|
-
> Claude load information only as needed."
|
|
33
|
-
>
|
|
34
|
-
> — Anthropic Engineering Blog
|
|
35
|
-
|
|
36
|
-
**Benefits**:
|
|
37
|
-
|
|
38
|
-
- You can install many skills without context penalty
|
|
39
|
-
- Claude only knows each skill exists and when to use it (Level 1)
|
|
40
|
-
- Detailed content doesn't consume tokens until needed
|
|
41
|
-
- Effectively unbounded context per skill (via Level 3)
|
|
42
|
-
|
|
43
|
-
---
|
|
44
|
-
|
|
45
|
-
## How Skills Work
|
|
46
|
-
|
|
47
|
-
### Skill Discovery and Loading
|
|
48
|
-
|
|
49
|
-
1. **Startup**: Claude pre-loads `name` and `description` of every
|
|
50
|
-
installed skill into system prompt
|
|
51
|
-
2. **User request**: User makes a request that might need a skill
|
|
52
|
-
3. **Skill matching**: Claude scans available skills to find relevant
|
|
53
|
-
matches
|
|
54
|
-
4. **Skill loading**: If relevant, Claude reads SKILL.md from
|
|
55
|
-
filesystem via bash
|
|
56
|
-
5. **On-demand access**: Claude reads additional files (references/,
|
|
57
|
-
scripts/) as needed
|
|
58
|
-
|
|
59
|
-
### The Filesystem Architecture
|
|
60
|
-
|
|
61
|
-
Skills run in a code execution environment where Claude has:
|
|
62
|
-
|
|
63
|
-
- **Filesystem access**: Skills exist as directories on a virtual
|
|
64
|
-
machine
|
|
65
|
-
- **Bash commands**: Claude uses bash to read files and execute
|
|
66
|
-
scripts
|
|
67
|
-
- **Code execution**: Scripts run without loading code into context
|
|
68
|
-
|
|
69
|
-
**How Claude accesses content**:
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
# Claude triggers skill by reading SKILL.md
|
|
73
|
-
bash: cat pdf-skill/SKILL.md
|
|
74
|
-
|
|
75
|
-
# Claude reads additional references if needed
|
|
76
|
-
bash: cat pdf-skill/references/forms.md
|
|
77
|
-
|
|
78
|
-
# Claude executes scripts (only output enters context)
|
|
79
|
-
bash: node pdf-skill/scripts/validate_form.js
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
**Key insight**: Script code never enters the context window. Only the
|
|
83
|
-
output does. This makes scripts far more token-efficient than
|
|
84
|
-
generating equivalent code on the fly.
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## Official Best Practices
|
|
89
|
-
|
|
90
|
-
From Anthropic's engineering team:
|
|
91
|
-
|
|
92
|
-
### 1. Start with Evaluation
|
|
93
|
-
|
|
94
|
-
> "Identify specific gaps in your agents' capabilities by running them
|
|
95
|
-
> on representative tasks and observing where they struggle or require
|
|
96
|
-
> additional context. Then build skills incrementally to address these
|
|
97
|
-
> shortcomings."
|
|
98
|
-
|
|
99
|
-
**Process**:
|
|
100
|
-
|
|
101
|
-
- Use Claude on real tasks
|
|
102
|
-
- Notice where it struggles
|
|
103
|
-
- Create skills to fill gaps
|
|
104
|
-
- Test and iterate
|
|
105
|
-
|
|
106
|
-
### 2. Structure for Scale
|
|
107
|
-
|
|
108
|
-
> "When the SKILL.md file becomes unwieldy, split its content into
|
|
109
|
-
> separate files and reference them."
|
|
110
|
-
|
|
111
|
-
**Guidelines**:
|
|
112
|
-
|
|
113
|
-
- Keep SKILL.md under ~5k words
|
|
114
|
-
- Split mutually exclusive contexts into separate files
|
|
115
|
-
- Use code for both execution and documentation
|
|
116
|
-
- Make it clear whether Claude should run or read scripts
|
|
117
|
-
|
|
118
|
-
### 3. Think from Claude's Perspective
|
|
119
|
-
|
|
120
|
-
> "Monitor how Claude uses your skill in real scenarios and iterate
|
|
121
|
-
> based on observations: watch for unexpected trajectories or
|
|
122
|
-
> overreliance on certain contexts."
|
|
123
|
-
|
|
124
|
-
**Key areas**:
|
|
125
|
-
|
|
126
|
-
- `name` and `description` drive skill triggering
|
|
127
|
-
- Claude decides whether to use the skill based on metadata
|
|
128
|
-
- Observe actual usage patterns, not assumed ones
|
|
129
|
-
|
|
130
|
-
### 4. Iterate with Claude
|
|
131
|
-
|
|
132
|
-
> "As you work on a task with Claude, ask Claude to capture its
|
|
133
|
-
> successful approaches and common mistakes into reusable context and
|
|
134
|
-
> code within a skill."
|
|
135
|
-
|
|
136
|
-
**Workflow**:
|
|
137
|
-
|
|
138
|
-
1. Work on task with Claude
|
|
139
|
-
2. Notice successful patterns
|
|
140
|
-
3. Ask Claude to capture them in skill
|
|
141
|
-
4. Test and refine
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
## Writing for Claude
|
|
146
|
-
|
|
147
|
-
### Skills as "Onboarding Guides"
|
|
148
|
-
|
|
149
|
-
> "Building a skill for an agent is like putting together an
|
|
150
|
-
> onboarding guide for a new hire."
|
|
151
|
-
>
|
|
152
|
-
> — Anthropic Engineering Blog
|
|
153
|
-
|
|
154
|
-
**What this means**:
|
|
155
|
-
|
|
156
|
-
- Focus on procedural knowledge ("how to do X")
|
|
157
|
-
- Include workflows, not just facts
|
|
158
|
-
- Provide examples of actual usage
|
|
159
|
-
- Capture organizational context
|
|
160
|
-
|
|
161
|
-
### Skills Transform General → Specialized Agents
|
|
162
|
-
|
|
163
|
-
> "Skills extend Claude's capabilities by packaging your expertise
|
|
164
|
-
> into composable resources for Claude, transforming general-purpose
|
|
165
|
-
> agents into specialized agents that fit your needs."
|
|
166
|
-
|
|
167
|
-
**Examples**:
|
|
168
|
-
|
|
169
|
-
- General Claude + Database skill = Database specialist
|
|
170
|
-
- General Claude + Auth skill = Security specialist
|
|
171
|
-
- General Claude + UI skill = Frontend specialist
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## The Skill Anatomy
|
|
176
|
-
|
|
177
|
-
### Required Structure
|
|
178
|
-
|
|
179
|
-
Every skill must have:
|
|
180
|
-
|
|
181
|
-
```
|
|
182
|
-
skill-name/
|
|
183
|
-
└── SKILL.md # Required
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
SKILL.md must have:
|
|
187
|
-
|
|
188
|
-
```markdown
|
|
189
|
-
---
|
|
190
|
-
name: skill-name
|
|
191
|
-
description: What it does and when to use it
|
|
192
|
-
---
|
|
193
|
-
|
|
194
|
-
# Skill content...
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
### Frontmatter Limits
|
|
198
|
-
|
|
199
|
-
| Field | Limit | Required |
|
|
200
|
-
| ------------- | --------------- | -------- |
|
|
201
|
-
| `name` | 64 characters | Yes |
|
|
202
|
-
| `description` | 1024 characters | Yes |
|
|
203
|
-
|
|
204
|
-
Only `name` and `description` are supported. No other YAML fields.
|
|
205
|
-
|
|
206
|
-
### Optional Bundled Content
|
|
207
|
-
|
|
208
|
-
```
|
|
209
|
-
skill-name/
|
|
210
|
-
├── SKILL.md # Level 2: Instructions
|
|
211
|
-
├── references/ # Level 3: Documentation
|
|
212
|
-
│ ├── detailed-guide.md
|
|
213
|
-
│ └── api-reference.md
|
|
214
|
-
├── scripts/ # Level 3: Executable code
|
|
215
|
-
│ ├── validate.js
|
|
216
|
-
│ └── generate.sh
|
|
217
|
-
└── assets/ # Level 3: Resources
|
|
218
|
-
├── template.json
|
|
219
|
-
└── diagram.png
|
|
220
|
-
```
|
|
221
|
-
|
|
222
|
-
---
|
|
223
|
-
|
|
224
|
-
## Context Window Behavior
|
|
225
|
-
|
|
226
|
-
### How the Context Window Changes
|
|
227
|
-
|
|
228
|
-
From Anthropic's documentation:
|
|
229
|
-
|
|
230
|
-
**Initial state**:
|
|
231
|
-
|
|
232
|
-
```
|
|
233
|
-
[System Prompt]
|
|
234
|
-
[Skill 1 Metadata]
|
|
235
|
-
[Skill 2 Metadata]
|
|
236
|
-
[Skill N Metadata]
|
|
237
|
-
[User Message]
|
|
238
|
-
```
|
|
239
|
-
|
|
240
|
-
**After skill triggers**:
|
|
241
|
-
|
|
242
|
-
```
|
|
243
|
-
[System Prompt]
|
|
244
|
-
[Skill Metadata (all skills)]
|
|
245
|
-
[User Message]
|
|
246
|
-
[SKILL.md Body] ← Loaded via bash
|
|
247
|
-
[references/forms.md] ← Loaded as needed
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
**Key point**: Metadata for ALL skills is always loaded. Only
|
|
251
|
-
triggered skills load their SKILL.md body.
|
|
252
|
-
|
|
253
|
-
---
|
|
254
|
-
|
|
255
|
-
## Progressive Disclosure in Practice
|
|
256
|
-
|
|
257
|
-
### Example: PDF Skill
|
|
258
|
-
|
|
259
|
-
**Level 1 (Always):**
|
|
260
|
-
|
|
261
|
-
```yaml
|
|
262
|
-
name: pdf
|
|
263
|
-
description:
|
|
264
|
-
Extract text and tables from PDF files, fill forms, merge documents.
|
|
265
|
-
Use when working with PDF files.
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
~100 tokens
|
|
269
|
-
|
|
270
|
-
**Level 2 (When triggered):**
|
|
271
|
-
|
|
272
|
-
```markdown
|
|
273
|
-
# PDF Processing
|
|
274
|
-
|
|
275
|
-
## Quick Start
|
|
276
|
-
|
|
277
|
-
Use pdfplumber to extract text...
|
|
278
|
-
|
|
279
|
-
For form filling, see [forms.md](forms.md)
|
|
280
|
-
```
|
|
281
|
-
|
|
282
|
-
~3k tokens
|
|
283
|
-
|
|
284
|
-
**Level 3 (As needed):**
|
|
285
|
-
|
|
286
|
-
- `references/forms.md` - Form-filling guide (only if filling forms)
|
|
287
|
-
- `scripts/extract_fields.js` - Executable script (runs, doesn't load)
|
|
288
|
-
|
|
289
|
-
**Total token cost if NOT filling forms**: ~3,100 tokens (Level 1 +
|
|
290
|
-
Level 2) **Total token cost if filling forms**: ~6,000 tokens (Level
|
|
291
|
-
1 + Level 2 + forms.md)
|
|
292
|
-
|
|
293
|
-
---
|
|
294
|
-
|
|
295
|
-
## Code Execution in Skills
|
|
296
|
-
|
|
297
|
-
### Why Include Scripts
|
|
298
|
-
|
|
299
|
-
> "Large language models excel at many tasks, but certain operations
|
|
300
|
-
> are better suited for traditional code execution. For example,
|
|
301
|
-
> sorting a list via token generation is far more expensive than
|
|
302
|
-
> simply running a sorting algorithm."
|
|
303
|
-
>
|
|
304
|
-
> — Anthropic Engineering Blog
|
|
305
|
-
|
|
306
|
-
**When to use scripts**:
|
|
307
|
-
|
|
308
|
-
- **Efficiency**: Operations that are cheaper to execute than generate
|
|
309
|
-
- **Determinism**: Tasks requiring consistent, repeatable results
|
|
310
|
-
- **Complexity**: Algorithms better suited to code than token
|
|
311
|
-
generation
|
|
312
|
-
|
|
313
|
-
### Script Execution Model
|
|
314
|
-
|
|
315
|
-
```bash
|
|
316
|
-
# Claude runs script
|
|
317
|
-
bash: node scripts/validate_form.js form.pdf
|
|
318
|
-
|
|
319
|
-
# Output (only this enters context)
|
|
320
|
-
✅ All form fields valid
|
|
321
|
-
Found 12 fillable fields
|
|
322
|
-
```
|
|
323
|
-
|
|
324
|
-
**Context consumed**: ~20 tokens (just the output) **Alternative
|
|
325
|
-
(Claude generates validation code)**: ~500 tokens
|
|
326
|
-
|
|
327
|
-
**50x more efficient**
|
|
328
|
-
|
|
329
|
-
---
|
|
330
|
-
|
|
331
|
-
## Security Considerations
|
|
332
|
-
|
|
333
|
-
From Anthropic's security guidelines:
|
|
334
|
-
|
|
335
|
-
### Trusted Sources Only
|
|
336
|
-
|
|
337
|
-
> "We strongly recommend using Skills only from trusted sources: those
|
|
338
|
-
> you created yourself or obtained from Anthropic."
|
|
339
|
-
|
|
340
|
-
**Risk**: Malicious skills can:
|
|
341
|
-
|
|
342
|
-
- Direct Claude to invoke tools in harmful ways
|
|
343
|
-
- Execute code with unintended effects
|
|
344
|
-
- Exfiltrate data to external systems
|
|
345
|
-
- Compromise system security
|
|
346
|
-
|
|
347
|
-
### Auditing Third-Party Skills
|
|
348
|
-
|
|
349
|
-
If you must use untrusted skills:
|
|
350
|
-
|
|
351
|
-
1. **Review all files**: SKILL.md, scripts, images, bundled resources
|
|
352
|
-
2. **Check for unusual patterns**:
|
|
353
|
-
- Unexpected network calls
|
|
354
|
-
- File access beyond skill scope
|
|
355
|
-
- Operations not matching stated purpose
|
|
356
|
-
3. **Examine external sources**: Skills fetching from URLs are risky
|
|
357
|
-
4. **Verify dependencies**: Check code dependencies and imports
|
|
358
|
-
|
|
359
|
-
### Runtime Constraints
|
|
360
|
-
|
|
361
|
-
Skills run in the code execution container with:
|
|
362
|
-
|
|
363
|
-
- ❌ **No network access**: Cannot make external API calls
|
|
364
|
-
- ❌ **No runtime package installation**: Only pre-installed packages
|
|
365
|
-
available
|
|
366
|
-
- ✅ **Sandboxed execution**: Isolated from host system
|
|
367
|
-
|
|
368
|
-
---
|
|
369
|
-
|
|
370
|
-
## Skills are Composable
|
|
371
|
-
|
|
372
|
-
> "Skills stack together. Claude automatically identifies which skills
|
|
373
|
-
> are needed and coordinates their use."
|
|
374
|
-
>
|
|
375
|
-
> — Anthropic Product Announcement
|
|
376
|
-
|
|
377
|
-
### Example: Multi-Skill Task
|
|
378
|
-
|
|
379
|
-
**User request**: "Create a GitHub contact card with database-backed
|
|
380
|
-
favorites"
|
|
381
|
-
|
|
382
|
-
**Skills activated**:
|
|
383
|
-
|
|
384
|
-
1. `github-integration` - Fetch profile data
|
|
385
|
-
2. `database-patterns` - Query favorites table
|
|
386
|
-
3. `ui-components` - Build card component
|
|
387
|
-
4. `styling-patterns` - Apply CSS/styles
|
|
388
|
-
|
|
389
|
-
**Result**: Skills work together naturally, each handling its domain.
|
|
390
|
-
|
|
391
|
-
---
|
|
392
|
-
|
|
393
|
-
## Where Skills Work
|
|
394
|
-
|
|
395
|
-
### Claude.ai
|
|
396
|
-
|
|
397
|
-
- **Pre-built Skills**: PowerPoint, Excel, Word, PDF (automatic)
|
|
398
|
-
- **Custom Skills**: Upload as zip (Settings > Features)
|
|
399
|
-
- **Sharing**: Individual user only (not org-wide)
|
|
400
|
-
|
|
401
|
-
### Claude API
|
|
402
|
-
|
|
403
|
-
- **Pre-built Skills**: Reference by `skill_id` (e.g., `pptx`, `xlsx`)
|
|
404
|
-
- **Custom Skills**: Upload via `/v1/skills` endpoints
|
|
405
|
-
- **Sharing**: Workspace-wide
|
|
406
|
-
|
|
407
|
-
### Claude Code
|
|
408
|
-
|
|
409
|
-
- **Custom Skills only**: Filesystem-based (`.claude/skills/` or
|
|
410
|
-
`~/.claude/skills/`)
|
|
411
|
-
- **Sharing**: Via git/version control
|
|
412
|
-
|
|
413
|
-
**Important**: Skills don't sync across surfaces. Upload separately
|
|
414
|
-
for each platform.
|
|
415
|
-
|
|
416
|
-
---
|
|
417
|
-
|
|
418
|
-
## Future of Skills
|
|
419
|
-
|
|
420
|
-
From Anthropic:
|
|
421
|
-
|
|
422
|
-
> "Looking further ahead, we hope to enable agents to create, edit,
|
|
423
|
-
> and evaluate Skills on their own, letting them codify their own
|
|
424
|
-
> patterns of behavior into reusable capabilities."
|
|
425
|
-
|
|
426
|
-
**Coming soon**:
|
|
427
|
-
|
|
428
|
-
- Simplified skill creation workflows
|
|
429
|
-
- Enterprise-wide deployment
|
|
430
|
-
- Skills complement MCP for complex workflows
|
|
431
|
-
- Agents creating their own skills
|
|
432
|
-
|
|
433
|
-
---
|
|
434
|
-
|
|
435
|
-
## Key Quotes
|
|
436
|
-
|
|
437
|
-
### On Progressive Disclosure
|
|
438
|
-
|
|
439
|
-
> "Progressive disclosure is the core design principle that makes
|
|
440
|
-
> Agent Skills flexible and scalable."
|
|
441
|
-
|
|
442
|
-
### On Simplicity
|
|
443
|
-
|
|
444
|
-
> "Skills are a simple concept with a correspondingly simple format.
|
|
445
|
-
> This simplicity makes it easier for organizations, developers, and
|
|
446
|
-
> end users to build customized agents and give them new
|
|
447
|
-
> capabilities."
|
|
448
|
-
|
|
449
|
-
### On Filesystem Architecture
|
|
450
|
-
|
|
451
|
-
> "Agents with a filesystem and code execution tools don't need to
|
|
452
|
-
> read the entirety of a skill into their context window when working
|
|
453
|
-
> on a particular task. This means that the amount of context that can
|
|
454
|
-
> be bundled into a skill is effectively unbounded."
|
|
455
|
-
|
|
456
|
-
### On Purpose
|
|
457
|
-
|
|
458
|
-
> "Think of Skills as custom onboarding materials that let you package
|
|
459
|
-
> expertise, making Claude a specialist on what matters most to you."
|
|
460
|
-
|
|
461
|
-
---
|
|
462
|
-
|
|
463
|
-
## Official Resources
|
|
464
|
-
|
|
465
|
-
### Documentation
|
|
466
|
-
|
|
467
|
-
- [Agent Skills Overview](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview)
|
|
468
|
-
- [Quickstart Tutorial](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/quickstart)
|
|
469
|
-
- [Best Practices](https://docs.claude.com/en/docs/agents-and-tools/agent-skills/best-practices)
|
|
470
|
-
- [API Skills Guide](https://docs.claude.com/en/api/skills-guide)
|
|
471
|
-
|
|
472
|
-
### Examples
|
|
473
|
-
|
|
474
|
-
- [Skills Repository](https://github.com/anthropics/skills)
|
|
475
|
-
- [Skills Cookbook](https://github.com/anthropics/claude-cookbooks/tree/main/skills)
|
|
476
|
-
|
|
477
|
-
### Articles
|
|
478
|
-
|
|
479
|
-
- [Product Announcement](https://www.anthropic.com/news/skills)
|
|
480
|
-
- [Engineering Blog](https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)
|
|
481
|
-
|
|
482
|
-
---
|
|
483
|
-
|
|
484
|
-
## Summary: The Anthropic Philosophy
|
|
485
|
-
|
|
486
|
-
**Skills are**:
|
|
487
|
-
|
|
488
|
-
- Composable (stack together)
|
|
489
|
-
- Portable (same format everywhere)
|
|
490
|
-
- Efficient (only load what's needed)
|
|
491
|
-
- Powerful (include executable code)
|
|
492
|
-
|
|
493
|
-
**Build like**:
|
|
494
|
-
|
|
495
|
-
- Onboarding guides (procedural knowledge)
|
|
496
|
-
- Specialized tools (domain expertise)
|
|
497
|
-
- Reference manuals (progressive detail)
|
|
498
|
-
|
|
499
|
-
**Optimize for**:
|
|
500
|
-
|
|
501
|
-
- Token efficiency (3-level loading)
|
|
502
|
-
- Claude's perspective (discovery via metadata)
|
|
503
|
-
- Real usage (iterate based on observation)
|
|
504
|
-
- Scalability (split when too large)
|