I feel that skills should live in the repo folder so they can be used by everyone on the project.
I completely agree and sx tries to make it easier to share, not just on one project/repo but across teams.
For example, we have a collection of skills that have to do with brand marketing and blog writing. But developers use these too when blogging. That way all skills and knowledge in the org are shared. Not just with the folks who have git access and know where to look.
I can't think of anything worse than sharing skills via Dropbox. The version management and AIBoM problems that generates is extremely painful. There's no way to track which version LLM is being used or match it against the skill, and people will likely load up too many skills. You don't have to expose git repos to end users to use git, or some other database, to provision skills.
It would probably be worse to fax them to your teammates
We've adopted a simple/similar Dropbox-based approach for skills and rules - each person's ~/.claude/skills is actually symlinked to a folder just for them inside a shared Dropbox folder, one that others on our (small) team can see and edit as well. This solves a set of problems around people writing skills that reference artifacts or other skills that only exist on their system, and/or that reference their own name/…
The one place I’ve seen this break down on teams is when a skill gets improved or adjusted. If everyone is copying it you end up not knowing which the best and most accurate. We worked with a team that had 5 copies that had all drifted. That is why we built the deduplicator extension for sx. It finds the dups and lets you use the llm to build the consolidated “best” version of the skill.
To the point of people overtuning/overfitting skills that were once generic, to overly reference and draw upon their private preferences and workflows... sometimes having "installation = effectively forking" for a known-good skill is a feature, not a bug!
I feel that skills should live in the repo folder so they can be used by everyone on the project.
I landed on this too. An advantage of this is when you got to hotfix an old customer, the skills align with how the code was authored at that point in time.
A repo, if it’s not overly complex, is a great place to store skills for all the reasons you list. It’s just not the only place where skills are super valuable.
Why not a private GitHub repo? It's hard to believe that the technical team could not write 1 skill which all non-technical teams could use to sync their skills to GitHub.
I can't think of anything worse than sharing skills via Dropbox. The version management and AIBoM problems that generates is extremely painful. There's no way to track which version LLM is being used or match it against the skill, and people will likely load up too many skills. You don't have to expose git repos to end users to use git, or some other database, to provision skills.
How do you concretely solve this for your marketing team? What’s the tech stack you have in place to support them?
I can't think of anything worse than sharing skills via Dropbox. The version management and AIBoM problems that generates is extremely painful. There's no way to track which version LLM is being used or match it against the skill, and people will likely load up too many skills. You don't have to expose git repos to end users to use git, or some other database, to provision skills.
How do you concretely solve this for your marketing team? What’s the tech stack you have in place to support them?
Librechat self-hosted in our cluster that points to our ZDR ai gateway. They have SSO logins.