Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · api

skills changedmanaged-agents/skills

Nearest release: v2.1.238, published under an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+40added
Lines−35removed
From line 1 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits21to this page, all time

The whole hunk

from line 1, old and new numbered
/
lines
from line 1
11---
22title: Skills
33url: https://platform.claude.com/docs/en/managed-agents/skills
4description: Attach reusable, filesystem-based expertise to your agent for domain-specific workflows.
4description: Attach pre-built or custom skills to an agent in Claude Managed Agents to give it reusable, filesystem-based expertise for domain-specific workflows.
55---
66 
77Skills are reusable, filesystem-based resources that give your agent domain-specific expertise: workflows, context, and best practices that turn a general-purpose agent into a specialist. Each skill you add incurs a modest cost on the session's context window, adding instructions and metadata that help the model use the skill. Learn more in the [Agent Skills](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview) overview.
from line 21
2121 
2222A custom skill is a directory containing a `SKILL.md` file plus any supporting files, uploaded to your workspace as a zip archive or as individual files. Creating the skill returns the `skill_*` ID you reference when attaching it to an agent. Anthropic pre-built skills are already available in every workspace and don't require this step. To use only pre-built skills, skip to [Attach skills to an agent](https://platform.claude.com/docs/en/managed-agents/skills#attach-skills-to-an-agent).
2323 
24The Skills API doesn't require a beta header. The cURL example still sends `anthropic-beta: skills-2025-10-02`, and the CLI and SDK `beta` commands add it automatically; requests that include it continue to work unchanged.
24The Skills API doesn't require a beta header. Requests that still send `anthropic-beta: skills-2025-10-02` keep working and return the earlier response fields.
2525 
26These examples omit the optional `display_title` field, so the skill's title is derived from `SKILL.md`. An explicitly passed `display_title` must be unique among the custom skills in your workspace.
26These examples omit the optional `display_name` field, so the skill's display name is derived from the `name` field in `SKILL.md`. An explicit `display_name` can be up to 255 characters and doesn't need to be unique within your workspace.
2727 
2828<CodeGroup defaultLanguage="CLI">
2929 ```bash cURL
from line 30
3030 curl -X POST "https://api.anthropic.com/v1/skills" \
3131 -H "x-api-key: $ANTHROPIC_API_KEY" \
3232 -H "anthropic-version: 2023-06-01" \
33 -H "anthropic-beta: skills-2025-10-02" \
3433 -F "files[]=@example_skill.zip"
3534 ```
3635 
3736 ```bash CLI
38 ant beta:skills create \
37 ant skills create \
3938 --file example_skill.zip
4039 ```
4140 
from line 44
4544 
4645 client = anthropic.Anthropic()
4746 
48 skill = client.beta.skills.create(
47 skill = client.skills.create(
4948 files=files_from_dir("example_skill"),
5049 )
5150 
5251 print(f"Created skill: {skill.id}")
53 print(f"Latest version: {skill.latest_version}")
52 print(f"Latest version: {skill.latest_version_id}")
5453 ```
5554 
5655 ```typescript TypeScript
from line 59
6059 
6160 const client = new Anthropic();
6261 
63 const skill = await client.beta.skills.create({
62 const skill = await client.skills.create({
6463 files: [await toFile(fs.createReadStream("example_skill.zip"), "example_skill.zip")]
6564 });
6665 
6766 console.log(`Created skill: ${skill.id}`);
68 console.log(`Latest version: ${skill.latest_version}`);
67 console.log(`Latest version: ${skill.latest_version_id}`);
6968 ```
7069 
7170 ```csharp C#
7271 using System.IO;
7372 using Anthropic;
74 using Anthropic.Models.Beta.Skills;
73 using Anthropic.Models.Skills;
7574 
7675 AnthropicClient client = new();
7776 
from line 81
8281 ],
8382 };
8483 
85 var skill = await client.Beta.Skills.Create(parameters);
84 var skill = await client.Skills.Create(parameters);
8685 
8786 Console.WriteLine($"Created skill: {skill.ID}");
88 Console.WriteLine($"Latest version: {skill.LatestVersion}");
87 Console.WriteLine($"Latest version: {skill.LatestVersionID}");
8988 ```
9089 
9190 ```go Go
from line 109
110109 }
111110 defer zipFile.Close()
112111 
113 skill, err := client.Beta.Skills.New(context.TODO(), anthropic.BetaSkillNewParams{
112 skill, err := client.Skills.New(context.TODO(), anthropic.SkillNewParams{
114113 Files: []io.Reader{zipFile},
115114 })
116115 if err != nil {
from line 117
118117 }
119118 
120119 fmt.Printf("Created skill: %s\n", skill.ID)
121 fmt.Printf("Latest version: %s\n", skill.LatestVersion)
120 fmt.Printf("Latest version: %s\n", skill.LatestVersionID)
122121 }
123122 ```
124123 
from line 125
126125 import com.anthropic.client.AnthropicClient;
127126 import com.anthropic.client.okhttp.AnthropicOkHttpClient;
128127 import com.anthropic.core.MultipartField;
129 import com.anthropic.models.beta.skills.SkillCreateParams;
130 import com.anthropic.models.beta.skills.SkillCreateResponse;
128 import com.anthropic.models.skills.Skill;
129 import com.anthropic.models.skills.SkillCreateParams;
131130 import java.io.IOException;
132131 import java.io.InputStream;
133132 import java.nio.file.Files;
from line 143
144143 .build())
145144 .build();
146145 
147 SkillCreateResponse skill = client.beta().skills().create(params);
146 Skill skill = client.skills().create(params);
148147 
149148 IO.println("Created skill: " + skill.id());
150 IO.println("Latest version: " + skill.latestVersion().orElseThrow());
149 IO.println("Latest version: " + skill.latestVersionId());
151150 }
152151 ```
153152 
from line 173
174173 
175174 client = Anthropic::Client.new
176175 
177 skill = client.beta.skills.create(
176 skill = client.skills.create(
178177 files: [
179178 File.open("example_skill.zip", "rb")
180179 ]
from line 180
181180 )
182181 
183182 puts "Created skill: #{skill.id}"
184 puts "Latest version: #{skill.latest_version}"
183 puts "Latest version: #{skill.latest_version_id}"
185184 ```
186185</CodeGroup>
187186 
188To list, retrieve, delete, and version custom skills, see [Managing custom skills](https://platform.claude.com/docs/en/build-with-claude/skills-guide#managing-custom-skills). For the full request and response schemas, see the [Create Skill API reference](https://platform.claude.com/docs/en/api/beta/skills/create). Skill bundles upload directly to the Skills API rather than through the [Files API](https://platform.claude.com/docs/en/build-with-claude/files).
187To list, retrieve, delete, and version custom skills, see [Managing custom skills](https://platform.claude.com/docs/en/build-with-claude/skills-guide#managing-custom-skills). For the full request and response schemas, see the [Create Skill API reference](https://platform.claude.com/docs/en/api/skills/create). Skill bundles upload directly to the Skills API rather than through the [Files API](https://platform.claude.com/docs/en/build-with-claude/files).
189188 
190189## Attach skills to an agent
191190 
from line 222
223222 )
224223 ```
225224 
226 ```bash CLI
227 ant beta:agents create <<'YAML'
228 name: Financial Analyst
229 model: claude-opus-5
230 system: You are a financial analysis agent.
231 skills:
232 - type: anthropic
233 skill_id: xlsx
234 - type: custom
235 skill_id: skill_01AbCdEfGhIjKlMnOpQrStUv
236 version: latest
237 YAML
238 ```
225 <MultiFileExample language="cli" label="CLI">
226 ```bash CLI
227 ant beta:agents create < agent.yaml
228 ```
229 
230 <File filename="agent.yaml">
231 ```yaml
232 name: Financial Analyst
233 model: claude-opus-5
234 system: You are a financial analysis agent.
235 skills:
236 - type: anthropic
237 skill_id: xlsx
238 - type: custom
239 skill_id: skill_01AbCdEfGhIjKlMnOpQrStUv
240 version: latest
241 ```
242 </File>
243 </MultiFileExample>
239244 
240245 ```python Python
241246 agent = client.beta.agents.create(
Feedback