Installs a skill from a GitHub repository or a local directory into a skills directory.
Arguments
- source
One of:
A GitHub URL pointing to a repo, e.g.
"https://github.com/owner/repo".A GitHub URL pointing to a subdirectory, e.g.
"https://github.com/owner/repo/tree/main/path/to/skill".A GitHub shorthand, e.g.
"owner/repo".A local directory path containing a
SKILL.mdfile.
- skill
For multi-skill repositories that store skills under a
skills/subdirectory, the name of the skill to install, e.g.skill = "proofread". When supplied, the skill is read fromskills/<skill>within the repository. Ignored whensourcealready points to a specific subdirectory via/tree/....- path
The skills directory. Can be one of:
A known coding agent name such as
'claude_code','cursor', or'github_copilot'(seeskill_path()for the full list) to use that agent's conventional project-scope path.A character string giving the directory path directly.
NULL(the default), in which case the path is resolved from theWF_AGENTenvironment variable, or by prompting in interactive sessions. SetWF_AGENTin your.Renviron(e.g. withusethis::edit_r_environ()) to avoid the prompt.
- overwrite
If
FALSE(the default), an error is raised if the skill is already installed. Set toTRUEto replace it.
Examples
src <- tempfile()
dir.create(src)
writeLines(
c('---', 'name: example', 'description: An example skill.', '---'),
file.path(src, 'SKILL.md')
)
add_skill(src, path = tempfile())
#> Installed skill "example" to /tmp/Rtmp1p0v0x/file1be56a2584cc/example.
