Your SKILLs don't matter
Or better said: you are sharing them with the wrong goal.
Every other LinkedIn/Slack post is talking about LLMs. But most specifically, it's dozens of developers sharing their SKILLs repo as the best SKILLs ever that will make you write the perfect code.
I've written only a very few of them, and I am already tired of copying them over from project to project. So I might create the next best-drupal-skills-ever repo. And you might look at it. But I'm 90% sure it won't work for you. Because my preferences and code quirks aren't yours.
Code standards should be (and they are) enforced. We have PHP_CodeSniffer for that. We have PHPStan for that. Don't write a non-deterministic skill. If you really care about enforcing it, write a deterministic rule. LLMs are pretty good at creating these.
If you can't write a deterministic rule, or you think it's not worth it, probably it's just your personal preference.
Deterministic checks (a Drupal Canvas story)
The Drupal Canvas module has created quite a few phpstan custom rules and phpcs custom rules.
There's some team consensus on them. We've suffered bugs because of their absence. Most of the time, they are caught in code reviews, but that requires an extra back and forth. With LLMs becoming more and more popular, I'm not discovering anything new to you: the open source bottleneck is code reviews, not creating code. You should avoid at all costs an extra code review.
As an example, we are disallowing implementing hook_schema for Drupal Canvas and its submodules. In this case, we are leaping ahead of Drupal core, but we don't know when that will land and become the standard way in the Drupal ecosystem. We just think it benefits us already, and that becomes our standard. And we deterministically enforce it. Having this as a SKILL would be just useless context 95% of the time, burning your tokens, and only applied to AI-generated code, not any human written code: humans still write code, right? RIGHT?
Share your SKILLs
Don't get me wrong, share your SKILLs. Use permissive licenses for them. Share knowledge with others and learn from others.
But at the end of the day, when the hype ends, I'd expect SKILLs repos to become like dotfiles repos. Everyone has their preferences. Each project has different needs. Starting from someone else's might be a good starting point if you aren't familiar with the tech. But at the end, you MUST customize them to your own preferences and your project needs.
Comments