Skip to content

Conversation

@joshprice
Copy link

@joshprice joshprice commented Oct 19, 2025

Experiment to generate Claude skills from Usage Rules. For an example of the output check out this repo https://github.com/joshprice/claude-skills-from-usage-rules

else
igniter.args.positional.packages || []
cond do
# For claude-skills, manually parse from argv since Igniter misparses positional args as flags
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seeing the disagreement with argument/options in generating Claude skills vs the current usage_rules.sync task makes me think perhaps this would make sense as its own task instead. mix usage_rules.sync_claude_skills.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Think that makes sense, there is a non trivial overlap in capabilities though.

# Ignore HTML comments when finding the first line
description =
content
|> String.split("\n")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

talked about it in discord, but for this to make sense I think it should be some text suited to this purpose, either the package description plus some static text, or configured by the library providing these rules.

@forest
Copy link

forest commented Dec 28, 2025

I did this manually the other day using the create-skill skill and the usage rules files and was thinking it would be great to have this built in. Glad you all are on it.

What are your thoughts on usage rules being skills instead of linked or included in the AGENTS.md?

@zachdaniel
Copy link
Contributor

I'm not sold that it's the best way vs just one big-ass context file in all honesty 😆 But I don't mind making it an option in usage_rules. I think maybe we should consider making this an entirely separate task though.

mix usage_rules.gen.skill <skill_name> <pkg1, pkg2, pkg3>

which could then create or update a skill with the usage rules for some list of packages. The reason I say that is that I think it makes sense for skills to be curated. Alternatively, we can support some metadata by package authors of what "skill" their package should be included in? Not sure TBH.

@forest
Copy link

forest commented Dec 29, 2025

I like the separate mix task. Also experimenting and not sold either way, but having easy ways to keep things syncd from a single source is very nice.

@zachdaniel
Copy link
Contributor

Yeah, reflecting I agree on a separate mix task. Closing this PR, open to another PR that implements this as a separate task!

@zachdaniel zachdaniel closed this Dec 30, 2025
@joshprice
Copy link
Author

Totally agree with separate mix task, also another mix task could be generating Claude plugins.

Thinking about both of these things are actually quite model specific (Claude in this case) and so the mix tasks should probably mention this. No doubt other frontier model providers will emulate this in a similar but slightly different way, and it will also evolve over time too (probably relatively quickly).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants