The distribution problem is harder than it looks because it's actually a composition problem in disguise. A single skill is trivially shareable — zip it, gist it, whatever.
But in practice you end up with skills that depend on other skills, or a skill that assumes specific instructions are already loaded, conflicting skills, versioning and supply chain issues - and suddenly you need dependency resolution.
I've built a package-manager approach for this (APM - github.com/microsoft/apm) and the thing that surprised me most was how quickly even small teams end up with config sprawl - and how much a manifest that travels with the project helps.
The "too small for a repo" thing is real, but one pattern that works is having a monorepo per dev team or org with all skills and building jointly over there.
Thinking about what manzanarama mentioned regarding checking skills into a repo, that's exactly how I look at it. To me, these skills are just specialized configuration. We've been versioning configuration for decades because it's critical to reproducibility and maintainability.
The "cognitive load" problem latand6 raised for reviewing every skill is real. That's where you integrate security and quality gates – treat these skills like any other software artifact. You wouldn't manually review every line of every dependency, so automate the validation here too.
Most of this discourse feels like some kind of religious ritual built on the foundation of authority bias. Where is the evidence that skills improves performance over any other methodology outside of the fact of its nascent popularity?
I do agree with Jacques Ellul in Technological Society that technique precedes science, and that's certainly the case with LLMs; however, this whole industry waves off rigorous validation in favor of personal anecdotes ("it feels more productive to me!" "they didn't study after Opus 4.5 was released").
Yeah, that's the default way to approach it, but the cognitive load is still a problem. Manually reviewing every single skill I might need just for one task is tedious. GitHub stars won't give you any useful signal. I actually started building a product that solves this.
The distribution problem is harder than it looks because it's actually a composition problem in disguise. A single skill is trivially shareable — zip it, gist it, whatever.
But in practice you end up with skills that depend on other skills, or a skill that assumes specific instructions are already loaded, conflicting skills, versioning and supply chain issues - and suddenly you need dependency resolution.
I've built a package-manager approach for this (APM - github.com/microsoft/apm) and the thing that surprised me most was how quickly even small teams end up with config sprawl - and how much a manifest that travels with the project helps.
The "too small for a repo" thing is real, but one pattern that works is having a monorepo per dev team or org with all skills and building jointly over there.
Thinking about what manzanarama mentioned regarding checking skills into a repo, that's exactly how I look at it. To me, these skills are just specialized configuration. We've been versioning configuration for decades because it's critical to reproducibility and maintainability.
The "cognitive load" problem latand6 raised for reviewing every skill is real. That's where you integrate security and quality gates – treat these skills like any other software artifact. You wouldn't manually review every line of every dependency, so automate the validation here too.
Most of this discourse feels like some kind of religious ritual built on the foundation of authority bias. Where is the evidence that skills improves performance over any other methodology outside of the fact of its nascent popularity?
I do agree with Jacques Ellul in Technological Society that technique precedes science, and that's certainly the case with LLMs; however, this whole industry waves off rigorous validation in favor of personal anecdotes ("it feels more productive to me!" "they didn't study after Opus 4.5 was released").
Will skills replace MCP servers eventually?
How would it replace something that is not used widespread yet? I think both skills and MCP already have similar levels of adoption.
What do you think about checking the skills directly into the repo where they are useful?
Yeah, that's the default way to approach it, but the cognitive load is still a problem. Manually reviewing every single skill I might need just for one task is tedious. GitHub stars won't give you any useful signal. I actually started building a product that solves this.
How are skills different from Having the agent create todo-the-ticket.md (with me) that contain the work scope and steps.
That’s what I do for each ticket.