Claude Skills tutorial: building, pitfalls, best practices, and meta-skills
Nate B Jones of AI News & Strategy Daily presents a complete tutorial on Claude Skills, covering how to build them, common mistakes, and a set of "meta-skills" designed to help manage and improve other skills.
Summary
Nate B Jones walks through everything needed to understand and build Claude Skills — Anthropic's new system for extending Claude's capabilities through specialized instruction files. He opens by cataloguing the top ten pitfalls he has observed since Skills launched, including platform packaging differences, the requirement to enable code execution, vague skill descriptions that prevent correct triggering, and a hard cap of 20 uploaded skills per user. He then demonstrates a live skill-building session in which Claude itself constructs a PowerPoint chunker skill, showing how little manual work is required. The bulk of the video is devoted to a collection of "meta-skills" — skills designed to help build, test, secure, and manage other skills — which Nate has built and is making available. He closes with best practices around versioning, naming, discoverability, and security, and previews a continuous-learning capture skill that enables Claude to identify and document learning opportunities during conversation.
Key Takeaways
FULL TRANSCRIPT
Introduction and Overview
Nate B Jones: Claude Skills took the world by storm last week. This video is all about giving you a complete tutorial so that you know how to build a skill yourself by the end of it. But we're not done there. We are not only going to teach you how to build a skill — I'm going to walk you through the common pitfalls that I see. And I'm also going to make sure that you understand the kinds of skills that you can use to help build other skills. I call them meta-skills. They aren't very widely in circulation yet. I've built a bunch of them for this video and I want to walk through several of them with you, so you one, know they exist and can grab them, and two, know how to make them — because I think that's the more valuable piece. So with that, let's get to it.
The Big Picture: What Claude Skills Are
Nate B Jones: First, the big picture. Skills are a way to extend what Claude can already do by giving it very specialized instructions and tools. They save a lot of weight on the prompt, which is something I pointed out in my first video right after Claude launched. Think of them like plugins or extensions. You have one format and you have three ways to use it.
Fundamentally, Claude Code can read skills directly from folders on your computer. The web or desktop version requires you to upload files through settings — traditionally that has been zip files, and by traditionally I mean for the last week. They can now also accept a skill file type, which is brand new and which Claude has introduced. I'll get to that later. Finally, the API lets you create and version skills programmatically.
One critical requirement: you must enable code execution or file creation in your settings on the app, or skills will not work at all. I saw people get tripped up by that.
Top 10 Pitfalls Since Claude Skills Launched
Nate B Jones: Speaking of trip-ups, I have now seen a bunch of people's skills in the wild. I've seen people in my DMs asking me about skills since I did my initial video. I want to give you the top ten things that have tripped people up since Claude Skills launched and how to address them.
Number one: every platform wants skills packaged differently, and that is super annoying, but it remains true. Claude Code expects folders in specific locations like `/skills`, and web and desktop apps will only accept zip files or skill files. If you're wondering what a skill file is — it looks like it is just a fancy extension on the end of a zip. I know that because I threw a skill file into ChatGPT and, guess what, it still works. ChatGPT can crack it open if you tell it it's a zip file and can look inside and tell you what's in there. So that hack I gave you last week where I said you can use these skills in ChatGPT chats — yeah, you can still do that. That still works.
If you upload a zip file to the web version, Claude Code will not see it unless you extract it to the right folder. This is another thing that trips people up. Basically, Claude lives locally on your computer but also in the web. If you upload a skill, it doesn't magically transfer to both places. You have to think about where you want the skill to be accessible — do you need to put it in a local folder, or do you need to upload it to the web or the desktop so you can chat with it in the interface? I'm going to demonstrate the interface because it's easier for people to understand, but I wanted to give you a sense of the breadth of Claude so you understand why people get tripped up.
Number two: people forget to enable code execution. I said this at the top of the video — you have to enable code execution. If it isn't enabled, you can't upload skills and you can't run them.
Number three: skills don't trigger when you expect them to. This one's trickier. Claude decides which skill to use regardless of the surface — whether you're on Claude Code, on the web, whatever. It decides to use a skill based on your description. A vague description means Claude might not pick your skill, or might pick the wrong skill. That means the first lines of your `skill.md` need to be extremely specific about what it does. Your `skill.md`, by the way, is just a plain text file that Claude can help you build, or that you can build directly, and that then gets zipped up into a zip file which Claude will accept — or this fancy new `.skill` ending on the file type, which is basically the same as a zip but Claude decided to make it fancy. If that first line of text isn't super clear, you're going to miss out. You'll see in the tutorial in a second what I mean by super specific, because I have an example.
Number four: versioning chaos matters. If you are someone who uses Claude Code and the interface and the app, you need to think about which version is true and real and how you version these things. Pick a source of truth and then put that skill into every place you can think of if you're one of those users who uses all the surfaces. Otherwise, you're going to get confused.
Number five: there is a limit on the number of skills you can access, at least in the web and app versions. Claude limits you to 20 uploaded skills and it does enforce it. I have already hit that limit and I have to make hard choices. Think about the skills you are going to invest in and make sure you pick the right ones. I expect that to shift as Claude gets more capable over time, but that's the limit we're at today.
Number six: you need to be ready for a team-level confusion around skills if you don't impose a degree of order on common skills, because Claude right now is just going to let everybody upload everything in their own Claude instances. If you're in a Teams instance, that means everyone is going to have their own version. There is no "push to everyone" button for skills yet. I expect we'll get there, but it doesn't exist. Everyone has their own individual skills. If you're an administrator in a Teams instance, if you're trying to manage an enterprise install for Claude, that's something you'll have to think about. That, by the way, is also true if you are one of those people doing the hack I mentioned in my first video where you're using these in ChatGPT. Everyone in ChatGPT is going to be using these skill things individually as a hack, and there isn't going to be a team-wide instance unless you decide to create a repository of skills that everybody draws from. Think about that if you are responsible for a team.
Number seven I'm going to cover in more detail. Security is not automatic, and Claude does warn you. Skills may run code. Skills may run scripts. You are responsible for what you run, and you need to treat third-party skills with care to make sure they're not malicious.
Number eight: documentation is super scattered right now. I could not even find the updated documentation on the skill file structure — I just had to discover it and tell you about it. This is evolving so fast that we don't have consistent documentation. Look at the documentation you can get from Anthropic, and then also look at other excellent sources assembled from the web. I'm going to link to a few in my write-up on the blog, but you have to trust the community on this one to help assemble documentation. I don't think Anthropic realized how big this would be when they let it out.
Those are some of the pitfalls. We've talked about the team side, versioning chaos, skills not triggering when you expect, forgetting to enable code execution. These are all things I have seen in practice and I just wanted to get them out of the way at the top because I don't want you to get tripped up on the value of skills.
Tutorial: Building a PowerPoint Chunker Skill
Nate B Jones: Here we are at the top of a tutorial on building a skill. This is a PowerPoint chunking skill. Remember how I promised to solve some of these meta problems in this video? Here's how I'm doing that.
I found in practice that one of the biggest issues people had using skills was that it was tough to create PowerPoints using skills without running into Claude's context window and generating a really frustrating experience — where you put all the data and all the narrative in, you get your fancy prompt, you put in your Claude skill, and it runs out of space. So I wanted to ask: is there a skill I could build that Claude could use to proactively help avoid that situation? That's what this is all about.
My initial prompt is very simple. There's no magic words here: "Help me build a PowerPoint chunker skill. The idea is it is invoked when a PowerPoint is asked for and it checks how big the ask is." That wording — "invoked when a PowerPoint is asked for" — was very deliberate, because I want the skill to invoke so that any PowerPoint that's asked for gets at least a look.
Then I say, "I have some other skills in my budget here — are there other skills that overlap with this?" The first thing Claude does is look and say, "Well, you have a token budget adviser, which is another custom skill you built. You have a pitch deck builder and you have a general PowerPoint builder. But there doesn't appear to be a general-purpose chunker that triggers on any PowerPoint request." So it understood my original prompt and recommends chunking for large presentations. It sees an angle that the three existing skills don't cover. Then it says, "I understand the challenge. Would you like me to try and build for this?" And I say, "Yep."
It just starts building. It reads the general PowerPoint skill to see if it has chunking logic, takes a few seconds to look at gaps, and you can actually pop this open and it will give you a lot of specifics around how it's thinking about each of those skills' existing chunking logic — which is super helpful. When you look at the three skills together, Claude gives you a state of what each one does. The token and budget adviser triggers on heavy input tasks — which is what I built it to do, it can mention presentations but it's really designed for something more. The pitch deck builder triggers during the workflow once you're already in it. So that's not quite right from a chunking perspective.
One of the things I love is that you can have Claude do so much of the lifting. I don't think people realize this. People think they have to sit down and manually write a markdown file — and you can, but you don't have to. Claude agrees there's a gap, it has a recommendation, it offers to draft it, and it offers a distinctive approach. I say, "This looks good, I don't really have any concerns here." And so it then goes and executes eleven different steps to build it.
It's going to architect the skill, read the skill creator tool, create the PowerPoint chunker skill, look for packaging scripts — all of this in the background. Eventually it comes out with three documents. There's the skill itself with that infamous `.skill` extension — don't worry, that's just a zip in disguise. It comes out with documentation, because if anyone knows Claude, Claude loves documentation. And it actually comes out with a bonus document about how it fits with existing skills.
It then tells you what it does, re-emphasizes my original request that it triggers on any PowerPoint request, and gives me four strategies it's going to use for chunking — sequential, structure-first, and so on. It explains why it's not duplicative. And I can look at the files. I can check out the readme — super clear, I can read it, I can understand it, I can stick this readme somewhere so I can follow it up later. It gives me some examples. I love it.
Then you might think, "Oh, I can look at the zip." The zip is not going to render very pretty — it looks like Dingbats font in there. Don't worry, it's still a functional skill. That is just the way the zip is rendered. That's an example of how easy it is to create a skill, because all I have to do is download that and then upload it into my capabilities section and it will be right there.
Uploading a Skill in the Claude Interface
Nate B Jones: Here I am in my capabilities section on Claude. I got there through the settings section and went down and clicked Capabilities. You might not see where it is right away, but really all you have to do is scroll down to Skills, which is in preview mode. You can upload a skill here if you want. You can also enable or disable skills with the toggle. If you click the dots, you can delete. It's pretty self-explanatory.
And there's our new skill — PowerPoint Chunker. I just created it. You can see what it does very briefly. You can expand the description to see the full thing. It's just there. It's active. And Claude will call it when the time is right. That's it. It's pretty simple.
Meta-Skills: Skills That Help You Build Skills
Nate B Jones: Now, you might wonder what other skills you can build that would help you with building skills — what meta-skills are useful. I have a collection here that I've put together that I'm going to share.
The PowerPoint chunker is super useful. The skill security analyzer is a useful one — I built this because one of the gaps I highlighted earlier is that Claude does run code with this, and we need some kind of security analysis. So why not use a skill to do it?
I have a skill debugging assistant — so when people have trigger failures, parameter problems, or prompt conflicts, how can we start to address that? I have a documentation generator for skills in case people forget their documentation. I have a testing framework that provides test cases for skills so you can actually test them. I have a dependency mapper.
By the way, if this starts to look a little bit like software — this goes back to one of the things I've been calling out with prompts as a whole, which I consider skills a subset of. You're feeding the machine context to work for you. You have to treat it like code. You're giving the machine inputs. Treat prompts like code, treat skills like code. The nice thing about skills is it has never been easier to do that for a non-technical person, because here it is. It will not change on you. You write the skill, you upload it, you get it, and it's just there. You don't have to remember it. And that's why I keep emphasizing this is a substantially easier way to do work — and to do complex work — than we had before, because it makes a lot of the steady context you need something you don't have to worry about. It just sits in skills.
What I'm aiming to do with these meta-skills is to take the steady context of: we have to check for security, we have to debug it, we have to have a testing framework, we have to have a dependency mapper. I'm assuming, because of the response I've seen, that people are starting to build dozens and dozens of skills and they're going to need tools like this to help them track and handle them. I even have a performance profiler, a diagnostic tool for analyzing and optimizing skill prompts, a skill gap analyzer if you're wondering what you can use, and of course everybody's favorite — the token budget adviser. It tells you if you are going to run out of tokens.
My goal here is pretty simple. This is becoming a big part of the ecosystem. There are hacks that take this right away into ChatGPT — as I said, you can just upload the skill file. So this is not going to be limited to Claude for very long. It already isn't, if you want to be adventurous. How do we start to go from "what a cool toy" to "we can do real work with this"? I think so much of that comes down to having useful infrastructure like this that enables us to take skills seriously and actually build with them.
Best Practices for Claude Skills
Nate B Jones: We've done a bit of a tutorial. Next I want to get into some best practices that we're starting to see emerge after the first week or so, with a lot of people beating on Claude Skills and seeing what works.
The first thing I want to call out is in line with that idea of treating skills like code, but I want to make it accessible. You can decide how seriously you want to take skills. If you just want to go ahead and throw a skill in, it will work. If you feel like you need skills to work for serious work all the time, I would encourage you to use version numbers. I would encourage you to keep a change log. I would encourage you to store your skills in some dedicated place with a structure so that you can go back to them and find them again.
I would also encourage you to design for discoverability in your skill markdown file. Make sure that the first paragraph is super clear. Use this format: "Use this skill when you need to [define specific tasks]. It takes specific inputs. It produces specific outputs. Don't use it for [things you don't want it to trigger for]." That is one of the best hacks you can have, because it takes away the missed-trigger issue that people are having with Claude Skills — where the markdown starts with principles or something vague and Claude progressively reads the skill and just doesn't get to the trigger in time.
The other thing that is emerging as a best practice is: the more you can have one workflow for all the places where you use skills, the better. For Claude Code, for the web and the desktop, for the API — have the same skill in a folder somewhere and just copy it into the web and desktop, copy it to the right folder for Code. Just make sure it's not going to be an issue where you have similarly named skills in different versions on different surfaces. A little organization is going to go a long way.
Testing before you ship matters a lot. That's why I created a skill to help with that — there's literally a skill I'm shipping to help you with testing, because I think that's something that's really annoying to do but it needs to be done, and I thought, why not write a skill for it?
For the security side, I also wrote a skill to assess the skills you may create for security. It goes after standard vulnerabilities — are there issues with dependencies we don't trust? Are there issues with code running in ways that would perhaps not be appropriate for a Claude web app to run? There's a lot that goes into the security side.
I would also encourage you — and this is just a small tip — if you're in a team environment, name your skills after jobs, not teams. I know that sounds weird, but the more you can be clear about what the skill does, the more you're likely to keep track of it and use it for that purpose, as opposed to naming it something like "the product management team skill for whatever." Drop the team names, drop your name out of it if you can, and just name the thing for what it does. I think that's going to be useful for you.
Demo: A Continuous Learning Capture Skill
Nate B Jones: Before I go further, let me show you a really cool skill that falls in the meta-skill category but that I don't think anyone is doing. This is the Claude skill for continuous learning.
Here's the idea. I want to take this concept of continual learning as a challenge — what would it look like? — and I want to turn it into a skill because no one's done that and I think it's super interesting. So I take that as a challenge and I say, "Within the constraints that you've got, tell me how you would solve this problem. Think about your current constraints — don't be aspirational."
Claude basically identifies that the key bottleneck is manually adding any new update. But Claude could identify opportunities to create new skills autonomously within natural conversation, which would be a huge plus. Claude can recognize learning moments, document the learning in a structured format, and recommend a skill. It gives me a sample of how this would work.
Then it starts to get into how Claude and I would have to partner to do this, because if you're going to do continual learning with an AI, you have to have a contract or agreement between you and the AI as to what you're going to learn. So I say, "Okay, I can live with uploading this. What if we proceed to write this as a skill? What would that look like?" And it just starts to dig in. It says, "Let's look at these issues — would we want to tackle novel problem solving, repeated patterns, domain-specific?" And you notice that Claude is getting excited about this. This is going way beyond any seed of text I found. It's getting into how you would actually operationalize this.
Then I read through and give my opinion. I say, "This is the goal that I have: I want you to start at being able to identify 80% of tasks that hit the context window before 10% of the response tokens are used." Claude says, "Thank you for the clear constraint. You're basically asking: when you have complex, challenging pieces of work, how do we identify that in a way that's useful and generate a skill opportunity — something we can learn and drive?" And then Claude says, "Okay, this is great," and starts to build. Long story short, I can build a continual learning capture skill and stick it into Claude, which I think is super cool.
Closing Thoughts
Nate B Jones: So there you go. We've gotten through two different skill tutorials. You've seen how it works. I've given you some of the pitfalls that have caused people to trip up on Claude Skills and I've given you some best practices.
If we zoom out the camera lens just a minute from all of this tactical stuff — the reason why I think this matters is because Claude's skills are one of the handiest ways to extend our prompting power that I have ever seen. It is so easy now to do harder pieces of work, because you can write one skill for all of the stuff that you don't want to just repeat yourself on over and over again. That's why people have gotten excited about this. That's why it is worth it to dig in and learn this. And I don't want you to lose the value there just because you have to wade into some of the detail. This is absolutely worth it.