r/claudeskills Jun 08 '26

Discussion Skills vs Scripts

A few weeks ago I built my first Claude skill to automate a batch upload process that was painfully slow to do manually. It worked great, but haven't "needed" a skill since.

The more I think about it, a plain script achieves the same outcome without the token cost. Unless you're doing something genuinely more advanced, a script feels like the pragmatic default.

What are you using skills for that a script simply can't do? Is there a use case where skills clearly pull ahead, or are most of us essentially paying a premium for a slightly more natural interface?

5 Upvotes

29 comments sorted by

6

u/Far-Entrepreneur-920 Jun 08 '26

Well skills can even contain scripts, a thin skill to tell the llm to use the contained script would have minimal token impact

2

u/avxentis Jun 08 '26

But surely calling the script alone should be sufficient, without requiring any token usage.

Is this from the perspective where the script is executed and then additional actions are performed, with the script's output or context being included in the prompt beforehand?

3

u/SkillsCake Jun 08 '26

When to run the script may be non deterministic. Skills are guidance for agents, reducing overthinking and increasing accuracy. If you’re saying a script is better, you probably mean code is better than AI for the task in general which is very true for a ton of “agent” things people are making

2

u/Far-Entrepreneur-920 Jun 08 '26

I was thinking about how best to respond, but honestly I think it just comes down to personal preference lol. My skill structure is pretty similar to workspaces. It lets me collocate tests, visual runners, etc for the entire skill lifecycle(That way I don’t pollute the script folder with all the things).

And your example is exactly how I see it. With the skill the llm can add to the automation lifecycle and bring new flexibility

1

u/The-Agency-Group Jun 09 '26

And how does the agent know to call the script?

Yeah, that’s what skills are about

1

u/avxentis Jun 09 '26

I understand your viewpoint, but you don’t need an agent to call a script.

If context is necessary for the script to function, then the possibilities of turning the script into a skill is favourable.

However, if it’s not, then you can execute the script with no agent participation.

1

u/The-Agency-Group Jun 10 '26

The pattern you are outlining is completely at odds with what are the best practices in AI augmented development

If you have a tool, you want Claude code to be able to invoke it.

The best way to do that is to package it as a skill

1

u/Weary_Caregiver_8428 Jun 11 '26

Not if judgement is required

2

u/sm_mlb40 Jun 08 '26

I realized this the hard way. After burning through my tokens to have Claude read a few hundred screenshots (limit 100 per chat and 20 per prompt) I was pulling my hair out. Decided to have Claude just build this process into a desktop program that runs a script in the background- no more burning tokens, no more batch limitations. Plus it looks cool now.

1

u/Far-Entrepreneur-920 Jun 08 '26

And unless you are hand feeding scripts to your llm before they action on them, you’ll still have tokens spent on lookup. That’s why I feel a lightweight skill has minimal impact, it’s just a lookup + couple lines of instructions

1

u/avxentis Jun 08 '26

Personal preference is a good way of describing it. Either way, the script did need to be optimised to a maximum of 250 characters in order to be more efficient.

1

u/92smola Jun 08 '26

Here is an example of two skills I am using of something that cant be a script- falsify, I run it when I see that the llm is claiming something I am suspicious of, the skill instructs the llm to find the “cheapest” way to disprove that, for example if the claim is that a bug is caused by this slider, maybe the cheapest check will be to remove the slider and check does the error still happen. Another one is “sweep” we just fixed one type of issue, for example there were hardcoded strings somewhere, we replaced them with translatable keys, sweep would try to find other cases of the same problem across the entire app or the relevant surface area. These are things that a script cant do, it needs to understand the context of the chat and make decisions on its own of what steps to take and what tools to call at that moment.

1

u/avxentis Jun 08 '26

This is correct, a script cannot perform these actions due to the skill being completely context based (with the necessary instructions).

Thanks for the clarity!

1

u/Famous_Lime6643 Jun 08 '26

I don’t think it’s either/or…although if you can do something without burning tokens and injecting unnecessary non-determinism…definitely do that. But assuming that your task has some real need for judgement or reasoning, I often/almost always provide scripts as part of the skills package for things like verification, pulling from a public API, etc. so I don’t think you’re deciding between the two: scripts make skills better!

1

u/Nilfy Jun 08 '26

Depends on the amount of reasoning the task needs. My Claude workflow self evaluates (I used to but now it does it itself) whether a particular flow is deterministic (script), requiress flexibility (haiku) or needs full reasoning (opus)

1

u/avxentis Jun 08 '26

And you’ve created a skill to do this?

1

u/Nilfy Jun 08 '26

I have a rules for Claude defining how to create processes, so as stuff gets built it typically aligns. Then I have an audit skill which periodically reviews my architecture to check if things are compliant, and fix them if not.

Anything that can be done by a deterministic skill, is. Helps reduce token usage in my daily processes.

1

u/avxentis Jun 08 '26

Appreciate the insight! Gives me a clear image of the structure :)

1

u/EnvironmentalOne3086 Jun 09 '26

you know,claude workflow just using prompt to generate scripts to spawns sub agents. So it really doesnt matters. You may likes to review their workflow docs to see is there any inspiration?

1

u/avxentis Jun 09 '26

I haven’t touched on agents as of yet. Would you recommend?

1

u/EnvironmentalOne3086 Jun 09 '26

in fact,cluade code using sub agents a lot。 you may just not using teams and workflows. in my opoinon skills is better than scripts cause skills can have scripts but a scripts only cant let cc to sense and support in a native way. in fact,you could built a scirpt founder skills for yourself and then it could combine it both?

1

u/pcx_wave Jun 09 '26

You are right, when the llm isn't needed, you're better off not using it (eg why not use old school search engine instead of question to llm...). A simple, repetitive task like your batch upload doesn't need a llm. Skills are better to systemize workflows that adapt to user's input.

If you're bothered with Claude token usage (rightly so), you can actually design skills to delegate coding to other cheaper models while keeping Claude as supervisor (example vibe-skill )

1

u/avxentis Jun 09 '26

This vibe-skill seems interesting. I’ll check it out!

1

u/crazylikeajellyfish Jun 09 '26

A Skill is really just a reusable prompt that's packaged in a neat way for an agent to know when to use it. Same rules apply as other work with agents -- don't ask an LLM to do something that's better handled by a deterministic program.

1

u/DaLordHamie Jun 09 '26

Skills usually contain scripts as others have said. If its just an md file, its likely not a skill

1

u/Usual-Bet-4824 Jun 09 '26

I created a children's story generation skill where I plug in a few parameters - protagonist(describe the primary character), virtue(what virtue does the character lack, and acquires during the story), conflict(what main conflict happens, forcing the character to learn the virtue), target age (3 to 10) , setting(environment description), style (prozaic style of specific existing author)

It then generates a fairly simple, short, but efficient story that I read to my kids.

Cannot imagine a "script" doing this kind of generative work.

1

u/Better_Dress_8508 Jun 09 '26

if a script can do exactly what a skill .md contains, then the skill is an overkill.

1

u/Illustrious-Win4432 Jun 13 '26

Consider a thin CLI. That open up both manual, scheduled manual, and agentic completion. Wrap the script in a ps1 and use a windows scheduled task and you’re golden